用iptables进行NAT

时间:2016-09-11 11:17:15

标签: iptables nat

我正在使用iptables这样的服务器端口43上创建一个nat:

iptables -t nat -A PREROUTING -p tcp --dport 43 -j DNAT --to-destination 192.168.1.100:43
iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.100 --dport 43 -j MASQUERADE

这样工作正常,但我还想在端口43上为另一台服务器创建一个nat,但是在传入端口44(我现在占用的端口43)上这样:

iptables -t nat -A PREROUTING -p tcp --dport 44 -j DNAT --to-destination 192.168.1.101:43
iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.101 --dport 44 -j MASQUERADE

但这不起作用,我做错了什么?

1 个答案:

答案 0 :(得分:-1)

首先,这应该更适合SuperUser SE,因为它与编程无关。

问题出在第二行。 PREROUTING DNAT完成后,dport不再是44而是43.你必须改变你的第二行

iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.101 --dport 44 -j MASQUERADE

iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.101 --dport 43 -j MASQUERADE