如何获取局域网中的所有ip地址

本文关键字:ip 地址 局域网 何获取 获取 | 更新日期: 2023-09-27 18:24:07

我正在获取LAN网络中连接的所有系统名称。我不知道如何获得所有系统名称的IP地址,如(192.168.1.15).

如何获取局域网中的所有ip地址

这可能对有用

foreach(NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces())
{
    foreach (UnicastIPAddressInformation ip in ni.GetIPProperties().UnicastAddresses)
    {
        if(!ip.IsDnsEligible)
        {
            if (ip.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
            {
                // All IP Address in the LAN
            }
        }
    }
}

此代码的唯一缺点是UnicastIPAddressInformation实例返回的信息不适用于Windows XP之前的操作系统。

如果您已经知道主机名(正如您的问题所暗示的那样),您可以使用Dns.GetHostAddresses方法将它们转换为IP地址。