列出连接到单个LAN的所有计算机的IP地址

Blo*_*ust 9 .net c# lan network-programming

我正在编写一个程序,您可以出于各种原因将其连接到LAN中的其他计算机.但是,我不想输入多台计算机的IP地址(这是一个痛苦的屁股),我想知道是否有办法列出局域网中所有计算机的IP地址.我整天都在研究,到目前为止还没有找到合适的东西.这是因为这种类型不存在吗?先感谢您.

编辑:看起来这篇文章有很多观点,我应该发布我的实际解决方案.通常,LAN上计算机IP地址的命名约定是相同的.例如192.168.2.*,*被替换为任何有效数字.我的程序检测到IP地址,将其显示给用户,然后询问前3个IP块.然后通过ping并等待响应,在给定的IP命名约定中依次扫描最多200个.没有回应,没有电脑.一旦知道它背后有计算机,它就能完成你可以用IP做的一切.

Cha*_*tni 7

1)读取子网掩码并计算您所在的子网掩码中的所有IP地址.然后,您可以使用ICMP ping(标准ping)或ARP ping来列出所有有效的IP地址.ARP Ping在子网设置中非常可靠.

2)您可以nmap列出所有主机

nmap -nsP 192.168.10.1/254 | grep ^Host
Run Code Online (Sandbox Code Playgroud)


jas*_*son 6

你不是真的要找到什么比更可靠的ping荷兰国际集团或arping同一子集荷兰国际集团的地址.我在第一次实习的那天实现了这个软件,并且上次我检查了(事实上它是几年前),这就是他们仍在使用这个功能.我认为这意味着他们没有找到更好的东西.

找到这些源代码并将它们转换为C#并不难.ping,arping.或者,您只需执行命令提示符并执行ping然后解析结果.