通过一台公网主机实现内网其他主机上网

【场景】

因业务需要,需要连接外网平台来进行许可认证以完成程序的初始化,但是业务梭子啊主机处在内网中,但其内网中的某台主机可以上网,因公网地址有限,需要内网主机通过该可上网主机来进行外网认证,完成初始化。

【处理】

1)在带外主机执行:

sed -i ‘$a net.ipv4.ip_forward = 1’ /etc/sysctl.conf //开启路由转发
cat /etc/sysctl.conf |grep ipv4 //验证
sysctl -p //使上述配置立即生效

2)在带外主机配置内网转发到本机路由:

iptables -t nat -nL //iptables规则检查确认
iptables -t nat -F //情况规则,生产禁用
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 公网ip
如果带外主机出口公网ip属于动态获取的,则执行:
iptables -t nat -A POSTROUTING -s 172.10.0/24 -o eth0 -j MASQUERADE
这样就会每次从服务器的网卡上,自动获取当前ip地址来做NAT,不管现在eth0的出口获得了怎样的动态ip,MASQUERADE会自动读取eth0现在的ip地址然后做SNAT出去
从而实现了动态SNAT地址转换。

3)内网地址配置到带外主机路由

route add default gw 172.10.1.2
或route add -net 172.10.0.0/24 gw 172.10.1.2(带外主机ip)

4)内网验证屏www.baidu,con,这时已经可通。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章