1

В моей домашней сети у меня есть DHCP-сервер и DNS-сервер, работающий на маршрутизаторе. Dhcp и доступ в интернет работают нормально.

У меня есть для каждого устройства в моей домашней сети запись DNS, которая связывает некоторое имя с IP-адресом устройства.

Например, мой компьютер разрешает 192.168.0.111.

Однако, когда я выдаю в командной строке в Windows 10:

ping mycomputer

я собираюсь

Ping request could not find host mycomputer. Please check the name and try again.

Я думаю, что это проблема Windows, а не проблема маршрутизатора или конфигурации. Это потому что:

  • ping mycomputer отлично работает из убунту
  • Если я создаю DNS-запись, такую как mycomputer.local или даже mycomputer.bla и назначаю ее на тот же IP-адрес, я могу ping mycomputre.local или ping mycomputre.bla из Windows 10 без проблем.
  • Наконец, ping mycomputer. (обратите внимание на точку в конце) также работает в Windows 10.
  • Если я посмотрю на трафик в Wireshark, то увижу, что ping mycomputer.local приводит к запросу DNS, а ping mycomputer - нет.

Похоже, что если имя целевого компьютера не состоит из нескольких частей, Windows не разрешит его, пока я не добавлю точку в конце. Этот эффект не происходит для имен из нескольких частей.

Я хотел бы понять: почему это так?

1 ответ1

0

Вероятно, у вас нет сервера WINS в сети. Сначала Windows пытается использовать WINS-сервер для имен отдельных частей, поскольку предполагает, что это имена NetBIOS, а в случае сбоя не пытается использовать DNS.

В соответствии с разрешением имен статьи, WINS является первым , что нужно проверить, однако последующий шаг должен сделать запрос DNS. Вполне возможно, что, поскольку эта конкретная статья не содержит много подробностей, существуют некоторые условия, которые нарушают процесс разрешения, прежде чем он достигнет шага DNS.

Это более длинная статья на эту тему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .