如何在C#中获取计算机的IP地址?
答案 0 :(得分:33)
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
您的计算机没有单个IP地址,某些返回的地址可能是IPv6。
MSDN链接:
或者,正如MSalters提到的那样,127.0.0.1
/ ::1
是loopback address,并且始终会引用本地计算机。但是,由于显而易见的原因,它不能用于从远程计算机连接到本地计算机。
答案 1 :(得分:9)
我想要的答案是
string ipAddress = "";
if (Dns.GetHostAddresses(Dns.GetHostName()).Length > 0)
{
ipAddress = Dns.GetHostAddresses(Dns.GetHostName())[0].ToString();
}
答案 2 :(得分:1)
IPHostEntry ip = DNS.GetHostByName (strHostName);
IPAddress [] IPaddr = ip.AddressList;
for (int i = 0; i < IPaddr.Length; i++)
{
Console.WriteLine ("IP Address {0}: {1} ", i, IPaddr[i].ToString ());
}
答案 3 :(得分:0)
string hostName = Dns.GetHostName(); // Retrive the Name of HOST
// Get the IP
string myIP = Dns.GetHostByName(hostName).AddressList[0].ToString();
//使用以下命名空间 - 使用System.Net;