Warum verursacht mein WLAN-Router Fehler bei der Hostnamensuche?

Warum verursacht mein WLAN-Router Fehler bei der Hostnamensuche?

Das Problem: Ich habe zwei Computer in meinem drahtlosen Netzwerk (Domänenname „serenity“, 192.168.1.1), Hostnamen „jayne“ (Arch Linux, 192.168.1.108) und „mal“ (Mac OS X, 192.168.1.101). Wenn ich versuche, die beiden miteinander kommunizieren zu lassen, passiert Folgendes:

jayne$ ping mal
PING mal.serenity (184.106.31.161) ... [pings go through to weird IP]

Und

mal$ ping jayne
PING jayne.serenity (184.106.31.161) ...

Das Pingen des Routers funktioniert jedoch:

jayne or mal$ ping serenity
PING serenity.serenity (192.168.1.1) ...

Und dann wird es merkwürdig:

jayne or mal$ ping google
PING google.serenity (184.106.31.161) ... [same IP as before]

jayne or mal$ ping google.com
PING google.com (74.125.115.106) ... [works as expected]

jayne$ ping 192.168.1.101
PING  192.168.1.101 (192.168.1.101) ... [works as expected]

Warum können Mal und Jayne sich nicht sehen?

Der Fang: Serenity ist derzeit mit einem anderen, bereits vorhandenen Router verbunden (er hat keinen Domänennamen), der das primäre Gateway zum Internet ist und sich unter 192.168.0.1 befindet. Ich habe eine statische DHCP-Regel eingerichtet, um Serenity immer auf 192.168.0.2 abzubilden.

Nun bemerkte ich, dass ich, wenn ich in meinem Browser eine nicht existierende URL aufrufe, auf die Seite „Im Internet nach * suchen“ meines ISPs umgeleitet werde. Ich nahm also an, dass die seltsamen IP-Adressen, zu denen die Pings aufgelöst wurden, wahrscheinlich zu dem Server gehörten, der das beim ISP verwaltete, und änderte die DNS-Server auf dem .0.1-Router zuDas öffentliche DNS von GoogleService.

Jetzt, ping maloder ping jaynewird überhaupt nicht aufgelöst („Ping: unbekannter Host mal“, „Ping: kann Jayne nicht auflösen: Unbekannter Host“), selbst mit „vollständigen“ Namen (wie „mal.serenity“), aber ich kann es immer noch erfolgreich ping serenity.

Warum können Mal und Jayne sich nicht sehen?

Ich kenne mich mit Netzwerken nicht so gut aus, also habe ich wahrscheinlich einfach irgendwo eine falsche Einstellung. In der Zwischenzeit verwende ich hostsDateien, um das Problem zu umgehen, indem ich die Hostnamen manuell den IP-Adressen zuordne. Damit behebe ich allerdings nur das Symptom und nicht das Problem.

Antwort1

Ich kann dies basierend auf Ihrer Antwort auf den obigen Kommentar/die obige Frage ändern oder löschen.

Ich glaube, dass hier Folgendes passiert, und es könnte Ihnen ein wenig helfen. Der erste Teil ist einfach: Sie versuchen, DNS zu verwenden, um Arbeitsstationen anzupingen, die nirgendwo im DNS registriert sind, und Ihr Router/DNS-Server gibt seine externe IP-Adresse zurück (glaube ich, und Ihre Antwort auf die obige Frage wird dies bestätigen).

Der zweite Teil ist, dass wenn Sie zwei Windows-Arbeitsstationen vergleichen, diese sich nicht bei einem lokalen DNS-Server registrieren, NetBIOS über TCP/IP verwenden, um sich gegenseitig zu finden. In Ihrem Fall bin ich mir nicht sicher, ob Sie etwas Ähnliches haben, das Sie verwenden können, da ich kein Linux- oder Mac-Typ bin, und wenn ja, wird es derzeit nicht verwendet.

Was ich sagen kann, ist, dass Sie Ihre Linux-Box so einrichten können, dass sie als DNS-Server fungiert, Ihren eigenen DNS hostet und Ihre Computer bei diesem Server registriert; oder Sie können einfach weiterhin HOSTS-Dateien verwenden. Schließlich wird höchstwahrscheinlich jemand kommen und eine weitere Antwort hinzufügen, die Ihnen erklärt, wie Sie Linux und Macs ohne DNS kommunizieren lassen können, ähnlich wie NetBIOS über TCP/IP.

Wenn niemand mit etwas Ähnlichem wie dem NetBIOS-über-TCP/IP-Konzept daherkommt, dann bin ich persönlich der Meinung, dass die Verwendung von HOSTS-Dateien kein Problem ist und dies die richtige Lösung ist.

Antwort2

Das Bit „.serenity“ wurde möglicherweise als DNS-Suchdomäne angehängt. Dies kann automatisch über DHCP konfiguriert werden, daher beziehen Sie es wahrscheinlich von dort. Löschen Sie in den DHCP-Einstellungen Ihres Routers alle Suchdomänenfelder (falls vorhanden).

Wenn es immer noch angezeigt wird, gehen Sie unter Windows zu Ihren TCP/IP-Einstellungen, klicken Sie auf „Erweitert“ und unter der Registerkarte DNS:

  • Deaktivieren Sie das Kontrollkästchen „Das DNS-Suffix für diese Verbindung“.
  • Wählen Sie „Diese DNS-Suffixe anhängen“ und stellen Sie sicher, dass nichts in der Liste steht

Möglicherweise müssen Sie dies sowohl für IPv4 als auch für IPv6 tun.

Auf einem Mac gehen Sie in den Systemeinstellungen zu „Netzwerk“. Klicken Sie auf die Schaltfläche „Erweitert“ Ihrer Verbindung und klicken Sie unter der Registerkarte „DNS“ auf die Schaltfläche „+“, um einen leeren Eintrag hinzuzufügen. (Sie sollten sehen, dass der falsche Eintrag von DHCP ausgegraut ist, sodass Sie ihn nur auf diese Weise entfernen können.)

Sowohl unter Mac als auch unter Linux müssen Sie möglicherweise auch überprüfen, /etc/resolve.confob die Suchdomäne dort nicht enthalten ist.


Was das mysteriöse DNS-Ergebnis angeht, vermute ich, dass es sich um eine Art „Catch-All“- oder „Domain-Name-Correction“-Dienst handelt, den Ihr DNS-Anbieter verwendet. Normalerweise geben sie dieses Ergebnis für alle nicht existierenden Domains zurück, damit sie Werbeeinnahmen von Ihnen erzielen können. OpenDNS und viele ISPs tun dies.

Der mit der Suchdomäne angehängte Hostname ist kein gültiger lokaler Hostname mehr, sondern sieht für das Betriebssystem wie ein richtiger FQDN aus, sodass letzteres ihn an einen DNS-Server sendet, anstatt NetBIOS zu konsultieren. Wenn Sie diesen „Catch-All“-Dienst nicht haben, wird Ihr Betriebssystem irgendwann erkennen, dass dies keine richtige Domäne ist, und auf NetBIOS oder einen anderen Mechanismus zur Namensauflösung zurückgreifen.

verwandte Informationen