我正在运行一个服务器,并且希望显示我的自身IP地址。
获取计算机的(如果可能,外部)IP地址的语法是什么?
有人编写了以下代码。
IPHostEntry host;
string localIP = "?";
host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily.ToString() == "InterNetwork")
{
localIP = ip.ToString();
}
}
return localIP;
然而,我通常不信任这个作者,也不理解这段代码。是否有更好的方法?
Dns.GetHostEntry(Dns.GetHostName()).AddressList.Where(o => o.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork).First().ToString()
- Luis Perez