Dns.GetHostAddresses()为同一域中的不同主机名提供相同的IP地址

本文关键字:主机 地址 IP GetHostAddresses Dns | 更新日期: 2023-09-27 18:17:31

我试图通过向Dns.GetHostAddresses()成员函数提供主机名来获取同一域中不同计算机的IP地址,但它返回所有计算机的69.172.200.109 IP地址。我不知道它的确切解。非常感谢您的解决方案

IPAddress[]"诱导多能性";ip = Dns.GetHostAddresses(主机名);foreach (ip地址){如果(ip)。AddressFamily == AddressFamily. internetwork){ipAddress = ip.ToString();打破;}}

Dns.GetHostAddresses()为同一域中的不同主机名提供相同的IP地址

如果中间有另一个服务器,根据请求中收到的主机名将请求路由到适当的服务器,那么您遇到的场景是非常可能的。您正在获得的地址可能是该中间服务器的地址。有关详细信息,请参阅虚拟主机。

其次,如果您查询的是本地DNS,请确保您仔细检查那里配置的地址。

你可以尝试下面的代码来获得所有的IP地址你的域

  String strHostName = Dns.GetHostName();
// Find host by name
IPHostEntry iphostentry = Dns.GetHostByName(strHostName);
// Enumerate IP addresses
foreach(IPAddress ipaddress in iphostentry.AddressList)
{
    ....
}