查找所有本地网络广播地址
我正在使用 UDP 广播消息构建设备发现系统。我开始使用 UdpClient
和 IPAddress.Broadcast
。
该解决方案适用于本地计算机上的客户端,但不适用于本地网络上的其他客户端。
通过这个问题,我发现Win 7阻止了广播消息。当我手动输入本地网络广播地址时,效果很好。现在我想编写一些代码来迭代所有本地网络适配器(类似于 NetworkInterfaces.GetAllNetworkInterfaces()),并查找每个适配器连接到的网络的本地网络广播地址,如果任何。
这有道理吗?最好的方法是 ping 与 Win 7、IPv6、IPv4 等兼容的本地子网。换句话说,普遍兼容。
谢谢!
I'm building a device discovery system using a UDP broadcast message. I started out using UdpClient
and IPAddress.Broadcast
.
The solution worked for clients on the local machine, but not other clients on the local network.
Via this question, I discovered that Win 7 blocks broadcast messages. When I manually entered the local network broadcast address it worked great. Now I want to write some code that will iterate through all of the local network adapters (something like NetworkInterfaces.GetAllNetworkInterfaces()
) and find the local network broadcast address for the network each adapter is connected to, if any.
Does this make sense? What's the best was to ping the local subnet that would be compatible with Win 7, IPv6, IPv4, etc. In other words, universally compatible.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,比如……?
Ok, something like...?