我需要在某些IP范围内在本地网络中查找设备。设备可以响应Udp datagramm。我接下来做了:
var udpSend = new UdpClient();
foreach (string ip in list)
udpSend.Send(new byte[] { 0xCE, 0x56, 0x01 },3, ip, 33333);
列表中有许多地址(10.0.1.1 - 10.0.255.255)。 但并非所有设备都收到我的消息。 我尝试了另一种方式:
foreach (string ip in list)
{
var udpSend = new UdpClient();
udpSend.Send(new byte[] {0xCE, 0x56, 0x01}, 3, ip, 33333);
udp.Close();
}
但经过255个包udp.Close();开始很慢。
我如何创建像udp扫描仪?
答案 0 :(得分:0)
UDP不保证邮件传递。不是每个数据包都能得到的事实应该是预期的,你只需重试即可。关于多播/广播的评论是一个很好的评论;这样的事情通常是通过多播或广播来完成的。