我使用.net 3.5 / c#
我需要获取服务器的IP,我使用的是这段代码:
string strHostName = Dns.GetHostName();
IPHostEntry hostInfo = Dns.GetHostEntry(strHostName);
string serverIpParam = hostInfo.AddressList[0].ToString();
return serverIpParam;
但是,在切换到Windows 2008服务器后,我的IP具有字母格式而不是通常的格式(数字)。 MSDN对此没有任何启示。 有什么想法我应该改变以获得服务器IP? 感谢
答案 0 :(得分:0)
您是否查看了hostInfo.AddressList返回的所有地址?
当我在LinqPad中执行以下操作时:
string strHostName = System.Net.Dns.GetHostName();
System.Net.IPHostEntry hostInfo = System.Net.Dns.GetHostEntry(strHostName);
for(int index=0; index < hostInfo.AddressList.Length; index++) {
Console.WriteLine(hostInfo.AddressList[index]);
}
IT将返回一个完整的网络接口列表。 在您的情况下,我认为第一个条目指向IPV6地址