В моей домашней сети у меня есть 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 не разрешит его, пока я не добавлю точку в конце. Этот эффект не происходит для имен из нескольких частей.
Я хотел бы понять: почему это так?