
Wenn ich auf einem Windows 7-Client einen LAN-Host MYSTERY anpinge, erhalte ich die richtige IP. Wenn ich jedoch nslookup MYSTERY ausführe, wird eine nicht vorhandene Domäne angezeigt. Ich habe beide in ipconfig aufgeführten DNS überprüft und festgestellt, dass der Hostname MYSTERY tatsächlich nicht aufgeführt ist. Der DHCP-Server hat den Eintrag ebenfalls nicht. Dasselbe Verhalten tritt auf, nachdem ich ipconfig /flushdns ausführe. In der lokalen Windows-Hostdatei ist ebenfalls kein Eintrag vorhanden.
Wie kann ich herausfinden, woher der Client die aufgelöste IP erhält?
Hinweis: MYSTERY ist eine Synology Rackstation, die für den Beitritt zur Netzwerkdomäne konfiguriert ist.
Antwort1
Ihr Windows-Computer muss über eine Art mDNS-Resolver verfügen (Bonjour), sei es von iTunes, Skype oder einer anderen Software, die einen mDNS-Resolver installiert. ping
wird korrekt aufgelöst, wenn ein Resolver installiert ist, weilLLMNRwird jetzt in Windows Vista und höher verwendet. LLMNR nutzt den mDNS-Resolver, um den Datensatz zurückzugeben.
Synology verwendet einen Daemon namens avahi, dies ist einMulticast-DNS/mDNS/DNS-SD-Server. Werkseitig ist Synology meiner Erfahrung nach als „RackStation“ oder Hostname konfiguriert.
Wenn Sie einen Mac haben, dns-sd -B
werden Ihnen Multicast-Dienste angezeigt. Sie sehen den Dienst _http._tcp.local. für RackStation aufgelistet.
dns-sd -G v4 RackStation.local
sollte Ihnen die richtige IP-Adresse für Ihre RackStation geben
dns-sd -L RackStation _http._tcp.
sollte alle Informationen des Dienstes zurückgeben, dazu gehören Portnummern, Seriennummer, Modell usw.
Dies gilt auch für DiskStation. Ich habe meine Tests auf einer DiskStation durchgeführt. Bei RackStation sollte es genauso sein.
Antwort2
(Diese Antwort ist wahrscheinlich falsch. @xeon scheint auf dem richtigen Weg zu sein und ich habe hier etwas gelernt.)
Der Grund für das Fehlschlagen einer DNS-Suche liegt darin, dass Ping zum Auflösen des Namens kein DNS verwendet.
nslookup
ist ein Befehl für DNS-Lookups. ping
Andererseits wird auch versucht,NetBIOS/GEWINNTund dasHosts-Dateizur Namensauflösung. Das wahrscheinlichste Szenario ist, dass dieser Name über ersteres erhalten wurde.
Sie können verwenden nbtstat -c
, um die NetBIOS-Namen und IP-Adressen aufzulisten, die kürzlich gesehen wurden, oder nbtstat -a <device>
wenn Sie aktiv nach einem Namen suchen möchten. Bedenken Sie, dass dies -a
länger dauert, da dies einmal pro Schnittstelle versucht werden muss. (Sie können nicht sagen, dass Broadcasts übersprungen/nur WINS verwendet werden sollen)
Mit dieser -r
Option können Sie vergleichen, was per Broadcast gelöst wurde und was über WINS gelöst wurde. Das ist allerdings schon etwas fortgeschrittener.
Antwort3
Überprüfen Sie Ihre FensterGastgeberDatei, um sicherzustellen, dass Sie dort keinen Eintrag fest codiert haben. Dadurch wird die Namensauflösung erzwungen, auch wenn der Name dort nicht auflösbar ist.