c#udp的问题
--------------------编程问答-------------------- 任意IP --------------------编程问答-------------------- 其实写为代码IPEndPoint RemoteIpEndPoint = null;
这就可以。画蛇添足创建一个对象反而让你迷惑了。
在执行Receive时,它重新建立了一个 IPEndPoint 对象并赋值给 RemoteIpEndPoint 变量。这个新的对象包含远程客户端的信息,后边就打印了Address和Port。 --------------------编程问答-------------------- 在通信时,服务端收到的客户端信息和你自认为的是不一致的。例如客户端有不止一个网卡(包括用软件虚拟的)、在NAT路由器后边,使用系统随机分配的端口号发送信息,等等。
服务器端socket可以从消息中获得客户端“对外”的地址和端口号。
在NAT路由器上,客户端地址和端口号都被路由器替换为它自己分配的值。例如客户端使用udp方式发送一个信息给服务器,服务器立刻按照所接收到的客户端地址和端口号再反方向发送信息,这就能够从公网向局域网内部“打洞”,服务器需要把这个地址和端口号记录下来,以后就可以主动向局域网内发送消息。 --------------------编程问答--------------------
它是否会告诉udpserver 只接受指定范围的包呢? --------------------编程问答-------------------- sp1234大哥,谢谢你了,学习了 --------------------编程问答-------------------- sp1234 理解的好深刻 受教了 --------------------编程问答-------------------- 答非所问
补充:.NET技术 , C#