使用SNAT 策略配置共享上网
开启网关主机的路由转发功能
Vim /etc/sysctl.conf
Net.ipv4.ip_forward=1(由0改为1)
Sysctl –p //刷新配置文件
添加使用SNAT策略的防火墙规则
iptables -t nat -A POSTROUTING -s 192.168.1.0/24
-o eth0 -j SNAT --to-source 218.29.30.31
验证SNAT结果
在局域网主机中(192.168.1.100)应能够访问外网的Web服务器(218.29.30.29)
命令行执行 “elinks http://218.29.30.29” 进行访问
查看外网测试主机(218.29.30.29)的Web访问日志,记录的应为网关主机的公网IP地址 (218.29.30.31)
tail -f /var/log/httpd/access_log
网关使用动态公网IP地址的情况
只需将 “-j SNAT --to-source 218.29.30.31”的形式改为“-j MASQUERADE”即可
如果是通过ADSL拨号方式连接Internet,则外网接口名称通常为 ppp0、ppp1等
iptables -t nat -A POSTROUTING -s 192.168.1.0/24
-o ppp0 -j MASQUERADE
使用DNAT 策略发布企业内网的应用服务
开启网关主机的路由转发功能
Vim /etc/sysctl.conf
Net.ipv4.ip_forward=1(由0改为1)
Sysctl –p //刷新配置文件
添加使用DNAT策略的防火墙规则
iptables -t nat -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.6
验证DNAT结果
在外网测试机(218.29.30.29)中,应能够通过浏览器访问网关公网IP地址(218.29.30.31)的80端口
命令行执行 “elinks http://218.29.30.31”进行访问
实际网页内容由主机 192.168.1.6 提供
查看局域网内Web服务器(192.168.1.6)的Web访问日志,应记录了外网测试机的IP地址(218.29.30.29)
tail -f /var/log/httpd/access_log
通过DNAT策略修改目标端口号的应用示例
从Internet中访问网关主机(218.29.30.31)的 2222 端口时,实际由运行在局域网主(192.168.1.5)的 22 端口的应用程序提供服务
iptables -t nat -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp --dport 2222 -j DNAT --to-destination 192.168.1.5:22