使用树莓派共享上网

目前入手一个树莓派4B,有两个网卡,一个有线,一个无线,正好手头上也有一个机器不能使用无线,就想到了让这个派帮忙共享网络,连接有线使用。

这样,网络环境就是这样:

无线->外网  ip:192.168.1.5

有线->内网机器 ip : 192.168.2.1

其实Linux下做网络共享非常方便,首先要做的就是开启IP转发。

两种方式:

方法一:


sudo echo "1" > /proc/sys.Net/ipv4/ip_forward

使用sudo是个好习惯。这里的1表示开启。0表示关闭。

方式二:

sudo nano /etc/sysctl.conf

然后找到# net.ipv4.ip_forward = 0这一行,把注释去掉,并把0改为1

然后

sudo sysctl -p

这一行是使修改生效,就用重启系统了。

接下来就是要修改iptables规则,让数据包可以在内网外网间互相联通,也就是通过两个网卡进行转发,其本质是修改网络包的转发链,使用的命令如下:

iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE #打开NAT

这里的wlan0是连接外网的网卡。

如果不知道网卡名称,可以用ifconfig命令查看,直接运行就即可。

到这里,如果没有什么问题,就需要配置内网机器的IP地址和网关上网了。

注意,内网机器,也就是通过网线连接树莓派的机器的地址需要和eth0的地址在同一个网段

例子:

IP:192.168.2.5

Mask:255.255.255.0

gateway:192.168.2.1   // 这个网关也就是eth0的ip地址

还需要设置路由:192.168.1.1    // 这里我是设置的路由器地址,其它值没试过。

到这里,客户机就可以正常上网了。

------------------------------------------------------我是问题分隔线-------------------------------------------------------------

不过我还遇到了别的问题。树莓派自己不能上外网,经过查看,是找不到路由导致,这时候就需要再树莓派上手动添加,使用命令如下:

sudo route add default gw 192.168.1.1

同样,使用的是路由器的地址。

最终,在客户机上打开浏览器,访问网页,正常了。

 

参考网址:https://www.jianshu.com/p/54b923c82f97

你可能感兴趣的:(玩Linux)