0

假设我有一个 IP 为 42.98.1.70 的路由器,连接了 2 个 NiC,IP 为 192.168.1.200 和 192.168.1.300。路由器在端口 10433 上进行端口转发,以将数据包重定向到 192.168.1.200。路由器内网IP为192.168.1.100。

当网卡 192.168.1.300 向套接字 42.98.1.70:10433 发送数据包时。主机 192.168.1.200 从套接字 192.168.1.100:48900 获取数据包,据我所知,这看起来像是路由器设置的打孔套接字。

所以理论上,如果主机 192.168.1.200 向套接字 192.168.1.100:48900 回复一个数据包,该数据包最终应该返回到主机 192.168.1.300,因为路由器应该通过其内部表映射桥接两者,也就是“UDP 打孔” '。

但是,从 192.168.1.200 发回 192.168.1.100:48900 的数据包永远不会到达 192.168.1.300。

我怀疑可能发生的情况是 UDP 打孔在同一网络上的 NIC 之间不起作用。它仅适用于网络外部的来源和网络内部的来源。是这样吗?

4

1 回答 1

0

在阅读了这个 RFC - https://www.rfc-editor.org/rfc/rfc5128之后,看起来我试图做的事情被称为“发夹”。尽管有些路由器支持它,但并非所有路由器都支持。显然我的就是其中之一。

于 2013-12-23T19:46:00.917 回答