ubuntu下创建ad-hoc无线网络并共享有线网络

发布时间 2023-06-17 16:56:10作者: 大圣2000

1、两台机器都进行如下操作

参考:https://blog.csdn.net/weixin_44038165/article/details/99946033

主机A(sdr2)无线网卡IP设为:192.168.56.2;设有有线网

主机B(sdr)无线网卡IP设为:192.168.56.1;设置无有线网

2、进行完上述连接操作后,互相可以ping通,但是B无法通过A上网。

A(有线)ad-hoc的网关、DNS不用设置;

sudo sysctl -w net.ipv4.ip_forward=1(在主机A上启用IP转发)

sudo iptables --table nat -A POSTROUTING -o enp4s0 -j MASQUERADE

将出口网络接口 enp4s0 的 IP 地址伪装为发送者的公共 IP 地址是 NAT 的一种实现方法。这个命令让数据包在通过 Ubuntu 主机的有线网络出口时将源地址伪装为 enp4s0 网卡的 IP 地址,这样共享无线网络的客户端就可以使用 Ubuntu 主机的有线网络访问互联网。
sudo iptables --append FORWARD --in-interface wlx08beac34d21d -j ACCEPT

这个命令的作用是允许通过无线网络接口 wlx08beac34d21d 进入的数据包被 FORWARD 链转发。因此,共享无线网络的客户端可以像正常情况下一样通过 Ubuntu 主机进行数据交换,实现了无线网络的流量转发和共享。

 

B的ad-hoc网关设为A的IP(192.168.56.2),DNS设为学校的10.3.8.45或10.3.8.44

sudo iptables --append FORWARD --in-interface wlx08beac34d1fe -j ACCEPT

B即可通过A上网