С# понимание имени хоста и IP-адреса принтера

 _Printers = new PrintServer().GetPrintQueues(new[] { 
     EnumeratedPrintQueueTypes.Local, EnumeratedPrintQueueTypes.Connections});

Приведенный выше код позволяет мне получить список принтеров, доступных для печати. Одно из описаний принтера приведено ниже:

\\EYZR370\HP Color LaserJet 2605dn,HP Universal Printing PCL 6 (v5.1),

Теперь я пытаюсь найти IP-адрес принтера вручную, используя следующий способ:

1 -> Перейдите на панель управления
2-> Просмотр устройств и принтеров
3-> Щелкните правой кнопкой мыши HP Color LaserJet 2605dn и выберите свойства принтера
4-> Выберите вкладку Порт, чтобы увидеть Айпи адрес

Теперь он показывает IP-адрес, например 192.157.6.8

Мне интересно, 192.157.6.8 == EYZR370?

Поэтому я пробую следующим образом:

string hostName = System.Net.Dns.GetHostEntry("192.157.6.8").HostName;

Удивительно, но hostName имеет другое строковое значение, о котором я понятия не имею.

Может ли кто-нибудь на самом деле объяснить, что это все о моем случае?

Обновления:

Я сделал еще один тест, используя следующий способ

  IPHostEntry hostEntry;

  hostEntry = Dns.GetHostEntry("EYZR370");

  //you might get more than one ip for a hostname since 
  //DNS supports more than one record

  if (hostEntry.AddressList.Length > 0)
  {
      //var ip = hostEntry.AddressList[0];
  }

Я вижу, что есть 6 данных для hostEntry.AddressList, но ни одно из них не соответствует 192.157.6.8?


person SuicideSheep    schedule 26.02.2014    source источник


Ответы (1)


HostName возвращает основное имя хоста.

Возможно, вы захотите проверить свойство Aliases, которое возвращает список возможных псевдонимов. Если ваша машина имеет более одного DNS-имени, которое разрешается в 192.157.6.8, вы найдете его в вышеупомянутом свойстве.

Вы также можете попробовать похожие (хотя и устаревшие) методы, такие как Dns.Resolve и Dns.GetHostByAddress. Некоторые люди сообщают, что эти методы работают по-разному.

Правильно ли настроен принтер? Кажется, принтер не имеет имени хоста или DNS не настроен должным образом? А может быть, у вас вообще неправильное имя? У вас есть доступ к его веб-панели управления?

person Howie    schedule 26.02.2014
comment
Вы пытались преобразовать EYZR370 в IP-адрес? - person Howie; 26.02.2014
comment
Пожалуйста, взгляните на мой обновленный вопрос, чтобы узнать, правильно ли я использую способ поиска IP-адреса. - person SuicideSheep; 26.02.2014