以前碰到一个问题,希望能够重用UDP的端口号,但一直没有成功。
今天偶然看到一段代码,竟然可以达到目的,欣喜中记下:
希望对有这个需求的TX有所帮助 :)
今天偶然看到一段代码,竟然可以达到目的,欣喜中记下:
- IPAddress groupAddress = IPAddress.Parse( "239.0.84.11" );
- Socket Listener = new Socket( AddressFamily.InterNetwork,SocketType.Dgram, ProtocolType.Udp );
- Listener.SetSocketOption( SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1 );
- Listener.Bind( new IPEndPoint( IPAddress.Any, 8411 ) );
- MulticastOption multicastOption = new MulticastOption( groupAddress );
- Listener.SetSocketOption( SocketOptionLevel.IP,SocketOptionName.AddMembership,multicastOption );
本文介绍了一种通过设置Socket选项来复用UDP端口的方法,并提供了具体的C#代码示例。该方法允许在同一端口上运行多个UDP监听器,这对于实现组播或多播的应用场景非常有用。

被折叠的 条评论
为什么被折叠?



