Debian做软路由的好处一是可以解决IP地址不足的问题,内网机器通过软路由共享一个公网IP连入 internet,另外就是软路由本身就是做防火墙,避免内网机器暴露。
其实这功能早在 n 年前就很成熟了,我印象中 99 年左右的 redhat 6 就已经支持的非常不错。
debian 下配置过程如下:
假如你的 debian 已经有了 eth0 并且配置了公网 IP
1 | vim /etc/network/interfaces |
类似 eth0,添加 eth1 为内网ip: 192.168.1.1 ,修改 eth0 为外网ip
1 | vim /etc/sysctl.conf |
去掉 net.ipv4.ip_forward=1 前面的 #
立即生效
1 | echo 1 > /proc/sys/net/ipv4/ip_forward |
防火墙规则设定
1 | iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE |
重启网络
1 | /etc/init.d/networking restart |
设置自启动
1 | vim /etc/rc.local |
将上述最后两个步骤的指令添加到 exit 0 前面实现自启动
这样连接 eth1 的内网机器将网关设置为 192.168.1.1 即可通过该机连入 internet 。
上述指令我是在 exsi 的虚拟系统里做的,所以添加网卡啥的都简单的很,单网卡也可以用类似的方式,只不过不是 eth1 了。可上网搜索之。
刚记录完这篇,顺手搜了下,原来有更简单的 ,配置完了内外网ip之后 apt-get install ipmasq 即可,吐血!