Linux共享网络给其它主机
文章目录
前言
本文主要讲解如何快速配置共享网络给同网段内其它主机,主要有如下几种情况:
- 本机有无线和有线网卡,无线能上网有线不能上网,有线网段内其它主机共享网络
- 本机有多有线网卡,其中一个网段能上网,共享网络给另一网段内其它主机
具体配置过程如下。
设置有网主机转发
配置本机网络允许转发,修改/etc/sysctl.conf
bash
sudo vim /etc/sysctl.conf
# 增加或解屏蔽下边这行
net.ipv4.ip_forward=1
查看本机可以上网网卡的id
bash
ip a
或
ifconfig
或
ipconfig
博主能上网的网卡名为wlan0,则配置iptables如下:
bash
# 配置基本规则,允许进及转发
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
# 允许所有主机均可用该转发
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
# 删除用 -D 参数,后续同理
# sudo iptables -t nat -D POSTROUTING -o wlan0 -j MASQUERADE
# 只允许特定网段主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o wlan0 -j MASQUERADE
# 只允许特定主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.11,192.168.100.11 -o wlan0 -j MASQUERADE
# 只允许特定某几个主机访问网络
sudo iptables -t nat -A POSTROUTING -s 192.168.100.11-192.168.100.100 -o wlan0 -j MASQUERADE
iptables固化^1^配置如下:
bash
sudo apt-get install iptables-persistent
sudo iptables-save -f /etc/iptables/rules.v4
如果需要重启恢复初始路由或卸载,使用下边命令:
bash
$ sudo apt-get remove iptables-persistent
$ sudo rm -rf /etc/iptables/
设置无网主机接入
设置有两种工具ip route
或route
ip route设置
bash
# 查看当前路由表
sudo ip route
# 添加转发路由
sudo ip route add default via 192.168.10.50
# 删除转发路由
sudo ip route del default via 192.168.10.50
route设置
如果有安装net-tools
可以使用如下^4^
bash
# 查看当前路由表
sudo route
# 添加转发路由
sudo route add default gw 192.168.10.50 # 192.168.10.50 即主机A的IP地址
# 删除转发路由
sudo route del default gw 192.168.10.50 # 192.168.10.50 即主机A的IP地址
固化配置
bash
# 修改开机自启
sudo vim /etc/rc.local
# 增加如下,根据上边选择的方式配置下边这行
# BEGIN: ADD ROUT FOR NETWORK
sudo ip route add default via 192.168.10.50
# END: ADD ROUT FOR NETWORK
总结
此时配置的无网主机已经能够连接到网络里了,大家也可以在此基础上再做进一步的配置,有问题欢迎留言交流。