rhel下的nat端口映射设置

来源:互联网 发布:denuvo加密 知乎 编辑:程序博客网 时间:2024/05/17 09:30


实例:端口转发


环境介绍:


2个网络接口

Lan口:192.168.1.1/24 eth0

Lan内web server: 192.168.1.100:80

Wan口:10.111.1.199/24 eth1


确认linux的各项配置正常;

1. 使用sysctl net.ipv4.ip_forward=1打开linux的转发功能。

2. iptables -P FORWARD DROP 将FORWARD链的策略设置为DROP,这样做的目的是做到对内网ip的控制,你允许哪一个访问internet就可以增加一个规则,不在规则中的ip将无法访问internet

3. iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT 加入确认包和关联包的允许通过

4. iptables -t nat -A PREROUTING -d 10.111.1.199 -p tcp --dport 80 -j DNAT --to 192.168.1.100:80

5. iptables -A FORWARD -d 192.168.1.100 -p tcp --dport 80 -j ACCEPT           FORWARD链在PREROUTING之后,也就是说当这个包到达FORWARD链的时候,目的地址已经变成内网IP了,假如 internet用户的请求是这样202.1.1.1:1333-->10.111.1.199:80,在经过了我们的PREROUTING链之后将变成 202.1.1.1:1333-->192.168.1.100:80,这个时候如果你设置一个目的地址为10.111.1.199的规则没用的

6. iptables -t nat -A POSTROUTING -d 192.168.1.100 -p tcp --dport 80 -j SNAT --to 192.168.1.1  或设置192.168.1.100的网关为 192.168.1.1