我这里有一些代码在 IPv4 机器上运行良好,但在我们的构建服务器(IPv6)上它失败了。简而言之:
IPHostEntry ipHostEntry = Dns.GetHostEntry(string.Empty);
GetHostEntry 的文档说传入 string.Empty 将为您提供本地主机的 IPv4 地址。这就是我要的。问题是它在我们的 IPv6 机器上返回字符串“::1:”,我相信它是 IPv6 地址。
从任何其他 IPv4 机器 ping 机器会得到一个好的 IPv4 地址……并且从它自己执行“ping -4 machinename”会给出正确的 IPv4 地址……但是从它自己定期 ping 它会得到“::1:”。
我怎样才能从它本身获得这台机器的 IPv4?