Iptables udp 端口​​转发

Iptables udp 端口​​转发

我正在使用最新的 Debian 版本,我需要进行一些端口转发,但我不知道该怎么做。我有 2 个流源通过同一个 udp 端口​​从 2 个不同的 ip 进入我的服务器

192.168.1.2:1003 via udp to 192.168.1.4 (server)  
192.168.1.3:1003 via udp to 192.168.1.4 (server)

我的问题是:如何将来自 1.2 的端口 1003 转发到其他端口(例如 1004)?

答案1

您需要使用PREROUTING链来转发端口:

iptables -t nat -A PREROUTING -p udp -i eth0 -d 192.168.1.2 --dport 1003 -j DNAT --to-destination 192.168.1.2:1004

顺便说一句,过滤似乎直接在目标主机上进行,因此REDIRECT在这种情况下您可以使用:

iptables -t nat -A PREROUTING -i eth0 -d 192.168.1.2 -p udp --dport 1003 -j REDIRECT --to-ports 1004

在这两种情况下,不要忘记允许UDP/1004NAT 之后的端口上的流量(假设UDP/1003已经允许):

iptables -A FORWARD -i eth0 -p udp -d 192.168.1.2 --dport 1004 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

相关内容