Как узнать, как разрешен DNS на клиентском компьютере?

Как узнать, как разрешен DNS на клиентском компьютере?

На клиенте Windows 7, когда я пингую хост LAN MYSTERY, он выдает мне правильный IP. Однако, когда я делаю nslookup MYSTERY, он говорит о несуществующем домене. Я проверил оба DNS, перечисленных в ipconfig, и обнаружил, что имя хоста MYSTERY действительно не указано. На сервере DHCP также нет записи. То же самое поведение происходит после того, как я делаю ipconfig /flushdns. В локальном файле хостов Windows также нет записи.

Как узнать, откуда клиент получает разрешенный IP-адрес?

Примечание. MYSTERY — это Synology Rackstation, настроенная для присоединения к сетевому домену.

решение1

На вашем компьютере с Windows должен быть установлен какой-либо преобразователь mDNS (Бонжур), пусть это будет iTunes, Skype или другое программное обеспечение, которое устанавливает преобразователь mDNS. pingбудет корректно разрешаться, если преобразователь установлен, потому чтоLLMNRтеперь используется в Windows Vista и выше. LLMNR использует преобразователь mDNS для возврата записи.

Synology использует демон под названием avahi, этоМногоадресная DNS-рассылка/mDNS/DNS-SD сервер. Synology поставляется с завода настроенным как "RackStation" или имя хоста, исходя из того, что я испытал.

Если у вас Mac, dns-sd -Bпокажет вам многоадресные службы. Вы увидите службу _http._tcp.local., указанную для RackStation.

dns-sd -G v4 RackStation.localдолжен предоставить вам правильный IP-адрес для вашего RackStation

dns-sd -L RackStation _http._tcp.должен вернуть всю информацию о сервисе, включая номера портов, серийный номер, модель и т. д.

Это также относится и к DiskStation. Я провел тестирование на DiskStation. С RackStation должно быть то же самое.

решение2

(Этот ответ, вероятно, неверный. Кажется, @xeon на правильном пути, и я кое-чему здесь научился.)


Причина сбоя поиска DNS заключается в том, что ping не использует DNS для разрешения этого имени.

nslookupэто команда для поиска DNS. pingс другой стороны также попытается использоватьNetBIOS/ПОБЕДЫифайл хостовдля разрешения имени. Наиболее вероятный сценарий заключается в том, что это имя было получено через первое.

Вы можете использовать nbtstat -cдля перечисления имен NetBIOS и IP-адресов, которые были недавно замечены, или nbtstat -a <device>если вы хотите активно искать имя. Имейте в виду, что это -aзаймет больше времени, так как он должен попытаться сделать это один раз для каждого интерфейса. (вы не можете сказать ему пропустить широковещание/использовать только WINS)

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

решение3

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

Связанный контент