有一个 UDP 客户端(192.168.206.45)和一个 UDP 服务器(192.168.212.21)连接
我想在执行如下命令后“立即”使用 DNAT 规则将 UDP 数据包从一台服务器(192.168.212.21)重定向到另一台服务器(192.168.215.46):
iptables -t nat -A PREROUTING -d 192.168.212.21 -j DNAT --到目的地 192.168.215.46
问题 :
立即重定向数据包很少起作用。DNAT 规则是否及时起作用?因为 DNAT 规则通常仅在 UDP 连接重新启动后才起作用。
我该如何修复该问题以便及时重定向 UDP 数据包?
感谢您的阅读。
答案1
iptables DNAT 目标提供有状态 NAT 功能。任何数据包首先在 conntrack 表上进行匹配,如果存在 NAT 条目,则数据包以相同方式进行 NAT。如果删除前一个连接条目,iptables 规则将应用于下一个数据包,并将创建新的连接条目。
您可以按照说明删除 UDP 的 conntrack 条目这里