原创文章,欢迎转载。转载请注明:转载自 祥的博客
原文链接:http://blog.csdn.net/humanking7/article/details/51125620
其实UDP广播就是向255.255.255.255发送数据,接收端只需绑定UDP广播的端口号即可。
发送端,发送的地址,255.255.255.255:Port,即,IPAddress.Broadcast:Port 接收端,接收的地址,0.0.0.0:Port,即,IPAddress.Any:Port
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace Test
{
class Program
{
static void Main(string[] args)
{
UdpClient UDPsend = new UdpClient(new IPEndPoint(IPAddress.Any, 0));
IPEndPoint endpoint = new IPEndPoint(IPAddress.Broadcast, 8080);
//其实 IPAddress.Broadcast 就是 255.255.255.255
//下面代码与上面有相同的作用
//IPEndPoint endpoint = new IPEndPoint(IPAddress.Parse("255.255.255.255"), 8080);
byte[] buf = Encoding.Default.GetBytes("This is UDP broadcast");
Thread receThread = new Thread(new ThreadStart(RecvThread));
receThread.IsBackground = true;
receThread.Start();
while (true)
{
UDPsend.Send(buf, buf.Length, endpoint);
Thread.Sleep(1000);
}
}
static void RecvThread()
{
UdpClient UDPrece= new UdpClient(new IPEndPoint(IPAddress.Any, 8080));
IPEndPoint endpoint = new IPEndPoint(IPAddress.Any, 0);
while (true)
{
byte[] buf = UDPrece.Receive(ref endpoint);
string msg = Encoding.Default.GetString(buf);
Console.WriteLine(msg);
}
}
}
}
关于C#UDP的其它文章可以看: [C#]UDP通讯:http://blog.csdn.net/humanking7/article/details/51024884