У меня Windows и Linux машины в одной подсети. Моя конфигурация маршрутизатора правильно сообщает мне как имена их компьютеров, так и их IP-адреса. Однако, когда я пытаюсь пропинговать компьютер с Linux или с компьютера с Windows, или пинговать компьютер с Windows с компьютера с Linux, мне нужно использовать IP-адреса, а не имена. Если я проверяю связь с машиной Windows с машины Windows или машиной Linux с машины Linux, имя машины правильно разрешается без каких-либо записей файла hosts.
Почему это?
Я бы подумал, что мой маршрутизатор (D-Link DIR-655) будет действовать как сам DNS-сервер. Я вижу, что у него есть опция под названием «Включить DNS Relay», но из того, что я прочитал, это мне не поможет. Если это уместно, DIR-655 используется для внутреннего трафика, а Netgear DGN1000 моего интернет-провайдера используется в качестве шлюза в Интернет. Однако он находится в другой подсети, и все мои машины подключаются к моему DIR-655, а не к DGN1000.
Что мне нужно сделать, чтобы имена хостов автоматически разрешались в моей подсети независимо от операционной системы, в которой они работают?
источник
Имена хостов ARP отличаются от имен NetBIOS.
Windows основывается на именах NetBIOS, а Linux основывается на именах хостов.
Ваш маршрутизатор получает имена хостов через ARP / DHCP; да, в Windows тоже есть имена хостов.
Вам нужно, чтобы ваш маршрутизатор размещал имена хостов в его DNS, или вам нужно настроить все файлы hosts.
Если ваш роутер не поддерживает его, вы можете посмотреть на установку
DD-WRT
на вашем роутере и использоватьdnsmasq
вместе сhosts
файлом, в котором вы будете заполнять хосты. Я бы посчитал, что это в значительной степени обходной путь, вы действительно хотите сделать это, чтобы иметь возможность пинговать? Не ежедневная компьютерная активность ...источник
Я знаю вашу боль, это совершенно безумие, что в 2011 году имена хостов не просто «работают», прямо из коробки.
Другим вариантом является Bonjour. Это технология Apple, но есть реализации для Linux ( Avahi ) и Windows ( Bonjour для Windows ). Bonjour позволяет вам получить доступ к другим компьютерам, используя синтаксис:
Я пошел с этим решением, потому что у меня нет DD-WRT-совместимого маршрутизатора или постоянно включенного сервера для запуска DNS. Кроме того, после его настройки вам не нужно беспокоиться о том, изменяется ли IP, как в случае с файлом hosts.
источник