与SNAT不同,DNAT是通过修改数据包的目标IP地址和目标端口。DNAT与SNAT应用非常相似,只是应用的方向相反。
SNAT只能用在nat表的postrouting链,而DNAT只能用在nat表的prerouting链和output链。
DNAT的作用一般是用来将公司内网中的服务器发布到外网中,原理为,当internet中的客户机提交的http请求到达企业的网关服务器时,网关首先判断数据包的目标地址和端口号,若发现该数据包需要访问本机的80端口,则将其目标ip地址(如218.29.30.31)修改为内网中真正的网站服务器的ip地址(如192.168.1.6),然后才发送给内部的网站服务器。
案例1
发布企业内部的web服务器
首先开启路由转发,开启方法请参照上篇SNAT的文章,
其次设置正确的DNAT策略
iptables -t -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp –dport 80 -j DNAT –to-destination 192.168.1.6
案例2
发布企业内部的OpenSSH服务器
iptables -t nat -A PREROUTING -i eth0 -d 218.29.30.31 -p tcp –dport 2346 -j DNAT –to-destination 192.168.1.6:22
关于DNAT策略的简单应用(发布公司内网中的服务器)
最新推荐文章于 2024-06-28 10:08:50 发布