我想使用c#查找本地网络上的所有设备。
目前的解决方案是基于ping我本地网络上的每个ip。这里有一些解释:
如何执行多个"ping"c#
问题是,如果我有一个以上的网络接口在我的电脑(例如一个wifi和一个以太网),我怎么知道我应该ping哪一个?如何为每个网络找到合适的地址范围?等等......如果子网掩码非常大(例如子网为255.255.0.0时),则需要花费大量时间。
还有其他一些建议的解决方案,如:
在子网/网络中定位计算机
但是我如何ping广播地址并找到应答者呢?Ping在c#中只返回一个IP的结果(我是对的吗)?
有更好的解决方案吗?
"但是我怎样才能ping广播地址并找到应答者呢?"没有广播ping这样的东西。如果您查看像nmap这样具有"ping扫描"功能的网络扫描工具,它识别网络上节点的方式是通过单个ping。