通过NAT发送UDP数据包

通过NAT发送UDP数据包,udp,ip,protocols,nat,Udp,Ip,Protocols,Nat,我正在尝试向NAT后面的设备发送UDP数据包。使用第三方程序可以向该设备发送数据包,没有问题,数据包以wireshark格式显示 使用我自己的UDP客户端向设备发送数据包不起作用。。。但是如果设备发送给我一个数据包,在onReceive方法中,用这个方法直接发送回设备是可行的……但是有趣的是,如果我使用一个新的UDP客户端连接到这个端点,那么它就不再有效了 似乎只有当设备连接到我时,我才能向下游发送消息,比如TCP中的反向连接,甚至将端点作为“连接”的引用都是不够的 有人能想到为什么我不能直接发

我正在尝试向NAT后面的设备发送UDP数据包。使用第三方程序可以向该设备发送数据包,没有问题,数据包以wireshark格式显示

使用我自己的UDP客户端向设备发送数据包不起作用。。。但是如果设备发送给我一个数据包,在onReceive方法中,用这个方法直接发送回设备是可行的……但是有趣的是,如果我使用一个新的UDP客户端连接到这个端点,那么它就不再有效了

似乎只有当设备连接到我时,我才能向下游发送消息,比如TCP中的反向连接,甚至将端点作为“连接”的引用都是不够的

有人能想到为什么我不能直接发送到设备,即使我知道这是可能的,因为第三方软件可以做到这一点

直接发送到其他IP,如我的本地计算机也可以正常工作,只是这个设备我无法联系。我的本地计算机位于类似192.168.10.2的地址上,设备位于类似12.0.1.5的地址上。当连接时,它会创建自己的LAN


非常感谢

考虑检查第三方是否使用UPnP设置路由器。这都是关于路由器配置的问题。第三方似乎不使用UPnP。但是设备本身确实有一个DHCP服务器,如果有帮助的话,可能在路由器中设置了一个固定的重定向?检查具有相应UDP TCP/UDP端口的所有虚拟服务器。