拓扑图
实现目标
公网用户通过Firewall服务器(iptables实现)访问内网http服务
配置
#iptables iptables -t nat -A PREROUTING -p tcp -d (eth0 ip) -i eth0 -o eth1 --dport 8080 -j DNAT --to-destination 192.168.10.55:8080 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
解释说明
用户请求firewall服务器公网ip的8080端口
PREROUTING:目地nat firewall接收到目地ip为eth0的8080的包 iptables修改包目地ip为内网的HTTP服务器的ip地址 路由决定后forward
POSTROUTING:源nat 要让HTTP服务器知道8080包的回路 必须修改请求包的源ip(这时的ip是请求用户的公网ip) iptables修改源ip为firewall的eth1网卡ip 然后将请求包转发给HTTP服务器
MASQUERADE: 动态获取指定出口网卡的ip做源nat