在C#中接收UDP广播消息

Bor*_*ris 6 c# udp broadcast udpclient wireshark

我知道很多次都会问过这个问题.我已经阅读了所有答案并尝试了一些我能找到的代码.几天后,我非常绝望,我不得不向你寻求帮助.

我的家庭网络中有一台设备和一台PC.设备发送UDP广播消息.在我的电脑上,我可以在wireshark中看到这些消息:

来源目的地长度

192.168.1.102 0.0.0.0 UDP 60源端口:9050目标端口:0

这意味着数据包到达我的PC.我的下一步是创建一个接收这些数据包的C#应用​​程序.如上所述,我尝试了所有可能的解决方案,但它不会收到任何东西.

所以我想必须有一些非常基本的我做错了.谁能帮我吗?谢谢!

Sli*_*ipe 0

没问题,他们的代码中存在一些导致问题的原因。(我没看过文章,只是复制粘贴)

它总是在本地计算机上工作,但在远程计算机上它会由于某种原因而失败。

要解决此问题:在 Broadcst.cs 中,他们广播了两次。一次用于本地主机,然后用于目标 IP 地址 (iep2)。只需删除

sock.SendTo(data, iep1);  
Run Code Online (Sandbox Code Playgroud)

它应该有效。

不知道为什么。