Sockets UDP打孔是否发生在同一网络内的主机之间?
假设我有一个IP为42.98.1.70的路由器,有两个NIC连接到它,IP为192.168.1.200和192.168.1.300。路由器在端口10433上进行端口转发,以将数据包重定向到192.168.1.200。路由器内部网络IP为192.168.1.100 当NIC 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之间不起作用。它只在网络外部的源和网络内部的源之间工作。是这样吗?读完这篇RFC-,看起来我想做的就是所谓的头发固定。虽然有些路由器支持它,但并非所有路由器都支持。显然我的就是其中之一Sockets UDP打孔是否发生在同一网络内的主机之间?,sockets,networking,router,hole-punching,Sockets,Networking,Router,Hole Punching,假设我有一个IP为42.98.1.70的路由器,有两个NIC连接到它,IP为192.168.1.200和192.168.1.300。路由器在端口10433上进行端口转发,以将数据包重定向到192.168.1.200。路由器内部网络IP为192.168.1.100 当NIC 192.168.1.300向套接字42.98.1.70:10433发送数据包时。主机192.168.1.200从套接字192.168.1.100:48900获取一个数据包,据我所知,它看起来像是路由器设置的穿孔套接字 因此,从