Получение ip сервера с использованием Dns.GetHostEntry в c # - PullRequest
0 голосов
/ 22 июня 2010

Я использую .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-адрес сервера? Спасибо

1 Ответ

0 голосов
/ 22 июня 2010

Вы просматривали все адреса, которые возвращает 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]);

  }

ИТ вернет мне весь список сетиинтерфейсы.В вашем случае, я думаю, что первый вход указывает на адрес IPV6

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...