`
rsljdkt
  • 浏览: 454397 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

C#重用UDP端口号

    博客分类:
  • .NET
阅读更多

以前碰到一个问题,希望能够重用UDP的端口号,但一直没有成功。
今天偶然看到一段代码,竟然可以达到目的,欣喜中记下:

 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);

 

希望对有这个需求的TX有所帮助 :)

分享到:
评论

相关推荐

    在C#中实现Socket端口复用

    在C#中实现Socket端口复用是一项关键的网络编程技术,它允许一个TCP或UDP端口在同一时间处理多个连接请求。端口复用技术在高并发、资源有限的环境中尤其重要,因为它可以提高服务器的效率,减少系统资源的消耗。在...

    c# 做项目工程中封装的udp使用类

    1. **构造函数**:初始化`UdpClient`实例,设置其接收和发送的数据端口号。同时,可以考虑添加一个布尔参数,决定是否启动监听线程。 2. **发送数据**:提供一个方法用于发送数据,例如`SendAsync`,它接受一个字节...

    C#实现UDP套接字的通讯

    为了指定本地端口,可以使用`UdpClient(端口号)`构造函数。例如,`UdpClient udpSocket = new UdpClient(12345);` 创建了一个监听12345端口的UDP套接字。 2. **发送数据**: `UDPSocket.cs`类可能包含一个如`Send...

    用c#实现的udp聊天程序

    为了实现聊天功能,我们通常需要创建一个Socket实例,设置其属性(如IP地址和端口号),然后绑定到指定的网络接口。接着,使用Socket的BeginReceive方法启动异步接收数据,这通常在一个新线程上运行,以避免阻塞主线...

    Socket UDP 服务+客户端 c#

    - 实例化UdpClient对象,指定监听的IP地址和端口号。 - 使用BeginReceive方法启动异步接收数据。当接收到数据时,系统会调用预先定义好的回调函数。 - 在回调函数中,我们可以处理接收到的数据,并使用...

    UDP(C#源码)

    对于服务器端,我们需要绑定到特定的IP地址和端口号,以便接收来自客户端的数据: ```csharp IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Any, 12345); udpSocket.Bind(serverEndPoint); ``` 这里...

    网络通讯支持库(c#),支持udp、tcp、组播

    在C#中,`MulticastSocket`或类似的类通常用于处理组播,它需要设置特定的IP多播地址和端口号,以及加入或离开多播组的逻辑。 在实际项目中,选择使用TCP、UDP还是组播,取决于应用的需求。例如,如果需要高可靠性...

    基于UDP的通信模块.docx

    1. 数据封包:在发送端,将要传输的数据封装成 UDP 数据报文,每个数据报文都包含了目的地的 IP 地址和端口号。 2. 数据传输:将 UDP 数据报文传输到目的地。 3. 数据接收:在接收端,收到 UDP 数据报文并将其解析...

    c# socket demo 已经封装成共通

    2. **连接服务器**:使用Socket的Connect方法连接到指定的服务器IP地址和端口号。 ```csharp socket.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 12345)); ``` 3. **发送数据**:使用Socket的Send...

    C#Socket异步服务器 IOCP 源码

    2. 绑定和监听:调用Socket的Bind方法绑定到特定的IP地址和端口号,然后调用Listen方法启动监听。 3. 配置异步事件:使用SocketAsyncEventArgs类来配置异步事件。这是一个可重用的对象,可以减少内存分配,提高性能...

    c# 服务端client

    然后,使用Connect方法连接到服务器,通常需要提供服务器的IP地址和端口号。发送数据可以通过Socket对象的Send方法完成,接收数据则使用Receive方法。在实际应用中,我们通常会封装这些功能到一个类中,以便于管理和...

    Unity C#的Socket网络模块

    这可以通过调用`Connect`方法完成,传入服务器的IP地址和端口号: ```csharp IPEndPoint serverEndpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 12345); socket.Connect(serverEndpoint); ``` 在连接...

    asp.net面试题

    22. UDP和TCP的区别:UDP是无连接的,不可靠,速度快;TCP是有连接的,可靠,但速度相对较慢。 23. ASP.NET的身份验证方式:Windows身份验证、Forms身份验证、Passport身份验证、None身份验证。 24. 进程和线程:...

Global site tag (gtag.js) - Google Analytics