iptables 端口转发

第一步先开启ip转发

echo 1 > /proc/sys/net/ipv4/ip_forward

1、单网卡

单网卡,访问10.10.10.1:8888 相当于访问 11.11.11.1:80
iptables -t nat -A PREROUTING -d 10.10.10.1 -p tcp –dport 8888 -j DNAT –to-destination 11.11.11.1:80
iptables -t nat -A POSTROUTING -d 11.11.11.1 -p tcp –dport 80 -j SNAT –to 10.10.10.1

单网卡,192.168.1.2端口5555转发到192.168.1.189端口22
iptables -t nat -A PREROUTING -d 192.168.1.2 -p tcp –dport 5555 -j DNAT –to-destination 192.168.1.189:22
iptables -t nat -A POSTROUTING -d 192.168.1.189 -p tcp –dport 22 -j SNAT –to 192.168.1.2
这两句根据具体情况酌情添加:
iptables -A FORWARD -o eth0 -d 192.168.1.189 -p tcp –dport 22 -j ACCEPT
iptables -A FORWARD -i eth0 -s 192.168.1.189 -p tcp –sport 22 -j ACCEPT

(注意:–dport、–to-destination、–to前面是两个小横杠,复制时候会变成一个横杠)

2、双网卡

机器一:
10.10.10.250
11.11.11.250

机器二:
192.168.101.90

需求:通过访问机器一的10.10.10.250:3389,相当于访问机器二的192.168.101.90:3389

iptables -t nat -A PREROUTING -d 10.10.10.250 -p tcp –dport 3389 -j DNAT –to-destination 192.168.101.90:3389
iptables -t nat -A POSTROUTING -d 192.168.101.90 -p tcp –dport 3389 -j SNAT –to 11.11.11.250

(注意:–dport、–to-destination前面是两个小横杠,复制时候会变成一个横杠)

 

发布日期:
分类:Linux-Unix