我通过以下命令配置iptable输出链DNAT转换。
iptables -t nat -A OUTPUT -p tcp --dport 5000 -j DNAT --to 10.100.1.10:2048
当我在客户端10.100.30.5上链接10.100.20.4:5000时,流量成功转发到10.100.1.10:2048。
并且我在服务器10.100.1.10上收到的客户端连接地址是10.100.30.5:27929。
现在我想在客户端通过conntrack命令获取通过10.100.30.5:27929的DNAT记录。命令是
# conntrack -L -s 10.100.30.5 -r 10.100.1.10 -u ASSURED
tcp 6 431995 ESTABLISHED src=10.100.30.5 dst=10.100.20.4 sport=27929 dport=5000 src=10.100.1.10 dst=10.100.30.5 sport=2048 dport=27929 [ASSURED] mark=0 secmark=0 use=2
tcp 6 431987 ESTABLISHED src=10.100.30.5 dst=10.100.20.5 sport=59717 dport=5000 src=10.100.1.10 dst=10.100.30.5 sport=2048 dport=27929 [ASSURED] mark=0 secmark=0 use=2
这里的回包记录里有两条使用27929端口的记录,但是我只想获取一条记录。
我应该怎么做才能避免端口重复。