2014-04-03 65 views
-1

我想弄清楚如何添加与IPTables 1:1 NAT,但只在一个端口上,我知道如何转发所有流量,但似乎无法找到在单一端口上的内容,如IPTables 1:1 NAT在单个端口

192.168.1.1:21 -> 172.16.1.1:21 
192.168.1.2:21 -> 172.16.1.2:21 
192.168.1.3:21 -> 172.16.1.3:21 
192.168.1.4:21 -> 172.16.1.4:21 

我不能用做说,因为还有其他的应用也做其他端口的流量重定向只允许一个端口。

我到目前为止的所有内容都是这样的,但它没有指定它最初作为参数登陆的IP。

sysctl net.ipv4.ip_forward=1 
iptables -t nat -A PREROUTING -p tcp --dport port -j DNAT --to-destination ip:port 
iptables -t nat -A POSTROUTING -j MASQUERADE 

回答

2

使用-d标志指定原始目标。

iptables -t nat -A PREROUTING -d <external-ip> -p tcp --dport port -j DNAT --to-destination <internal-ip>:port