![对称 NAT 与端口转发冲突](https://linux22.com/image/493127/%E5%AF%B9%E7%A7%B0%20NAT%20%E4%B8%8E%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%E5%86%B2%E7%AA%81.png)
我在 NAT 路由器后面有一台服务器,该服务器已设置端口转发到服务器端口 7000(服务器-客户端对话 UDP)。一切正常,只是有时发送到客户端的数据包不是来自端口 7000,因此客户端的防火墙会丢弃它。
当该服务器与多个客户端连接时,对称 NAT 将传出源端口映射到另一个端口。
我已经设置了端口转发并且认为 NAT 不会覆盖我的规则。
有人有想法吗?
提前致谢 ^^ voteforpedro
答案1
对称 NAT 是双向 NAT。端口转发对转发流量的规则库进行两次处理。因此,这种 NAT 中有两条规则在执行;一条在输入端,另一条在输出端。
答案2
最后,我找到了导致这个问题的原因。我用的是Zyxel路由器。我认为这是Zyxel的bug。
有时 zyxel 会将传出端口映射到 7000 以外的其他端口。在我测试过的路由器(如华为)中未发现此行为。更新固件无法修复此问题。我希望 zyxel 团队能尽快修复此错误。