【问题标题】:How to get all active IP address available on the network?如何获取网络上所有可用的活动 IP 地址?
【发布时间】:2020-09-23 03:47:52
【问题描述】:

在此代码中仅查找系统 IP 地址和系统名称,我想查找网络上可用的所有 IP 地址和名称。

String StringHost;

StringHost = System.Net.Dns.GetHostName();

IPHostEntry ipEntry =System.Net.Dns.GetHostEntry(StringHost);

IPAddress[] address = ipEntry.AddressList;

for (int i = 1; i < address.Length; i++)
{

    IP_Address_Datagridview.Rows.Add();
    IP_Address_Datagridview.Rows[i].Cells[0].Value = StringHost;
    IP_Address_Datagridview.Rows[i].Cells[1].Value = address[i].ToString();

}

【问题讨论】:

  • 您的意思是要查找网络上的其他计算机?
  • “我想查找网络上所有可用的 IP 地址和名称”是什么意思。 ?
  • Angry IP Scanner 是我在 pass 中用于此类搜索的实用程序。 Github 上有可用的源代码,可能会对您有所帮助:angryip.org
  • 你可以使用nmap,例如,看看它的输出

标签: c# .net networking ip-address


【解决方案1】:

查看计算机是否在本地网络上的最简单方法是使用 ICMP 来“ping”您子网上的每个地址。如果在您尝试的 IP 地址上启用了 ICMP 服务(通常在工作站上,但并不总是在服务器上),那么您将收到响应。

然后您将需要获取每个有效的 IP 地址并进行反向命名空间查找。

【讨论】:

  • Syed:如果您发现您有已停用 ICMP 的节点,您可能需要探测开放的知名端口。
  • ICMP 并非始终处于活动状态。这就是为什么 nmap 派上用场的原因,它测试发送带有标志的不同数据包,使主机发送某种响应。永远不要相信 ICMP 会执行此任务。
猜你喜欢
  • 2018-09-01
  • 2016-11-02
  • 1970-01-01
  • 2013-03-31
  • 1970-01-01
  • 2019-09-02
  • 2014-11-05
  • 2013-02-24
  • 2011-11-04
相关资源
最近更新 更多