Das erweiterte Handbuch zur Verwendung von nslookup unter Linux

Index
  1. Was ist nslookup?
  2. Warum nslookup verwenden?
  3. Installieren von nslookup unter Linux
  4. Durchführen einer einfachen Abfrage
  5. Die Ausgabe verstehen
  6. Verwenden eines bestimmten DNS-Servers
  7. Festlegen des Datensatztyps
  8. Alle DNS-Eintragstypen abfragen
  9. Durchführen eines Reverse-DNS-Lookup
  10. Aktivieren des Debugging-Modus
  11. Protokollieren der Ausgabe in einer Datei
  12. Verwenden des interaktiven Modus
  13. nslookup vs. dig
  14. Häufig gestellte Fragen
    1. Ist nslookup ein DNS?
    2. Wie überprüfe ich meine DNS-Einstellungen unter Linux?
    3. Bei der Verwendung von nslookup ist der Fehler „Servername nicht gefunden…“ aufgetreten. Wie behebe ich das?

Als Netzwerkadministrator werden Sie feststellen, dass der Befehl nslookup eines Ihrer wichtigsten Werkzeuge ist. Mit nslookup können Sie DNS-Einträge überprüfen, um Probleme mit Ihrem DNS-Server oder einem bestimmten DNS-Eintrag zu beheben. In diesem Artikel nehmen wir nslookup genauer unter die Lupe und zeigen Ihnen einige praktische Anwendungsbeispiele.

Was ist nslookup?

Nslookup steht für „Nameserver-Lookup“. Das Befehlszeilentool nslookup wird zum Abfragen des Domain Name System (DNS) verwendet, um Domänennamen- oder IP-Adresszuordnungen oder andere DNS-Einträge zu erhalten. Es ist einfach, aber leistungsstark, und Sie können es verwenden, um mehr Informationen über einen DNS-Eintrag zu erhalten.

Warum nslookup verwenden?

Der Befehl nslookup ist ein sehr leistungsfähiges DNS-Abfragetool. Es kann zur Fehlerbehebung bei DNS-Problemen oder einfach zum Abrufen von Informationen zu einem DNS-Eintrag verwendet werden. Beispielsweise können Sie nslookup verwenden, um die IP-Adresse einer Website oder die DNS-Einträge einer Domain herauszufinden.

Lassen Sie uns einen genaueren Blick darauf werfen, wie nslookup installiert und verwendet wird.

Installieren von nslookup unter Linux

Bei den meisten Linux-Distributionen ist nslookup im Paket bind-utils enthalten.

Unter Debian oder Ubuntu können Sie den apt-Paketmanager verwenden:

sudo apt install dnsutils-y

Auf Centos/RHEL/Fedora können Sie den yum-Paketmanager verwenden:

sudo yum install bind-utils -y

Unter ArchLinux:

Durchführen einer einfachen Abfrage

Die allgemeine Syntax für den Befehl nslookup lautet wie folgt:

nslookup 

ist der Domänenname, den Sie abfragen möchten, und sind alle Optionen, die Sie verwenden möchten. Diese Optionen steuern, wie sich nslookup verhält. In diesem Tutorial erfahren Sie mehr über die Optionen. Beginnen wir zunächst mit einem einfachen Beispiel.

Um eine einfache DNS-Abfrage durchzuführen, geben Sie den Domänennamen an, den Sie abfragen möchten, ohne Optionen anzugeben.

Führen Sie beispielsweise den folgenden Befehl aus, um die DNS-Einträge für den Domainnamen google.com abzufragen:

Dieser Befehl gibt alle DNS-Einträge für den angegebenen Domänennamen zurück.

Die Ausgabe verstehen

Wenn Sie den Befehl nslookup ausführen, ohne Optionen anzugeben, werden standardmäßig viele Informationen zurückgegeben. Schauen wir uns genauer an, was diese Ausgabe bedeutet.

Das erste, was Sie sehen werden, ist der Server und die Adresse, die nslookup verwendet. Standardmäßig verwendet nslookup den DNS-Server, der auf Ihrem System konfiguriert ist. In den meisten Fällen ist dies der DNS-Server Ihres ISP.

In diesem Fall ist der Server „127.0.0.53“, was die IP-Adresse des lokalen Hosts ist. In diesem Tutorial wird nslookup auf demselben Computer ausgeführt, auf dem mein DNS-Server gehostet wird. Wenn Sie keinen eigenen DNS-Server betreiben, sehen Sie die IP-Adresse des DNS-Servers Ihres ISP.

Port 53 ist der Port, der für DNS-Abfragen verwendet wird, und ist der Standardport für DNS-Abfragen.

Nach den Serverinformationen sehen Sie die nicht autoritative Antwortzeile. Diese Zeile zeigt an, dass die Antwort, die nslookup erhalten hat, nicht vom autoritativen DNS-Server für die Domäne stammt. Diese Antwort wird zwischengespeichert und von dem lokalen Server weitergeleitet, den nslookup abgefragt hat.

In den meisten Fällen ist dies völlig in Ordnung und Sie müssen sich keine Sorgen machen. Wenn Sie jedoch DNS-Probleme beheben, möchten Sie möglicherweise die Antwort vom autoritativen DNS-Server für die Domäne erhalten.

Unterhalb der nicht autoritativen Antwortzeile sehen Sie die DNS-Einträge für den angegebenen Domänennamen. In diesem Fall werden zwei A-Datensätze zurückgegeben. Diese A-Einträge enthalten die IP-Adressen für den Domänennamen.

Sie werden auch sehen, dass unterschiedliche IP-Adressen zurückgegeben werden, da Google „DNS-Load-Balancing“ eingerichtet hat. Wenn Sie die DNS-Server von Google abfragen, erhalten Sie jedes Mal eine andere IP-Adresse, um die Last auf ihre Server zu verteilen und die Dinge für alle schneller zu machen.

Notiz: Wenn Sie keine Ergebnisse erhalten, müssen Sie möglicherweise den DNS-Cache auf Ihrem System leeren. Wenn Sie Ihre „/etc/hosts“-Datei bearbeitet haben, kann dies auch die nslookup-Ergebnisse verzerren.

Verwenden eines bestimmten DNS-Servers

Die Verwendung eines bestimmten DNS-Servers kann hilfreich sein, wenn Sie DNS-Probleme im Zusammenhang mit einem bestimmten DNS-Server beheben. Oder vielleicht befinden Sie sich in einem Netzwerk, das einen privaten DNS-Server verwendet, und möchten Abfragen mit diesem Server statt mit den DNS-Servern Ihres Internetdienstanbieters durchführen.

Um einen bestimmten DNS-Server mit nslookup zu verwenden, müssen Sie den Domänennamen angeben, den Sie abfragen möchten, gefolgt vom DNS-Server. Um beispielsweise die DNS-Einträge für superuser.com mithilfe der Google-DNS-Server (8.8.8.8) abzufragen, führen Sie den folgenden Befehl aus:

nslookup superuser.com 8.8.8.8

Die DNS-Server von Google sind eine gute Wahl, da sie schnell und zuverlässig sind, aber Sie können jeden beliebigen DNS-Server verwenden.

Diesmal haben wir die DNS-Einträge von den Google-DNS-Servern erhalten – und vier A-Einträge statt zwei, da superuser.com vier verschiedene DNS-Server verwendet, um den Datenverkehr abzuwickeln.

Sie können dieselbe Technik verwenden, um jeden gewünschten DNS-Server abzufragen. Geben Sie den Domänennamen gefolgt von der IP-Adresse des DNS-Servers an.

Festlegen des Datensatztyps

Standardmäßig gibt nslookup alle A-DNS-Einträge für eine Domain zurück. Was aber, wenn Sie nur nach einem bestimmten Datensatztyp abfragen möchten?

Vielleicht versuchen Sie beispielsweise, auf eine Website zuzugreifen, erhalten aber eine Fehlermeldung, die besagt, dass der DNS-Server den A-Eintrag für die Domain nicht finden kann. In diesem Fall könnten Sie nslookup verwenden, um den A-Eintrag abzufragen und zu sehen, ob er die richtige IP-Adresse zurückgibt.

Um nach einem bestimmten DNS-Eintragstyp abzufragen, verwenden Sie die Option -type. Es benötigt ein Argument, nämlich den Datensatztyp, den Sie abfragen möchten. Die gängigsten DNS-Eintragstypen sind:

  • A: Address Record – ordnet einen Domainnamen einer IPv4-Adresse zu.
  • AAAA: IPv6 Address Record – ordnet einen Domänennamen einer IPv6-Adresse zu.
  • CNAME: Canonical Name Record – ordnet einen Alias ​​einem echten Domainnamen zu und ist hilfreich, wenn Sie einen FPT- oder einen Nginx-Webserver betreiben.
  • MX: Mail Exchange Record – ordnet einen Domainnamen einem E-Mail-Server zu und hilft Ihnen zu überprüfen, ob Ihre E-Mail korrekt eingerichtet ist.
  • NS: Name Server Record – ordnet einen Domainnamen einem DNS-Server zu und gibt an, welcher DNS-Server für eine Domain verantwortlich ist und wo die DNS-Einträge für diese Domain zu finden sind.
  • TXT: Text Record – speichert Textinformationen für eine Domain, kann zum Speichern von Dingen wie SPF-Einträgen verwendet werden und stellt sicher, dass Ihre E-Mail vor Spam oder Phishing-Angriffen geschützt ist.

Verwenden Sie die folgende Syntax, um nach einem bestimmten Datensatztyp abzufragen:

nslookup   set type=

Führen Sie beispielsweise den folgenden Befehl aus, um den CNAME-Eintrag von superuser.com abzufragen:

nslookup superuser.com -type=cname

Führen Sie den folgenden Befehl aus, um den MX-Eintrag von google.com abzufragen:

nslookup google.com -type=mx

Ebenso können Sie jeden anderen gewünschten DNS-Eintragstyp abfragen – achten Sie nur darauf, den richtigen Eintragstyp im Befehl zu verwenden.

Alle DNS-Eintragstypen abfragen

Wenn Sie alle DNS-Eintragstypen für eine Domäne abfragen möchten, müssen Sie die Option -type=any verwenden. Es gibt jeden Datensatztyp für eine Domain zurück, einschließlich A, AAAA, CNAME, MX usw.

Diese Option kann nützlich sein, wenn Sie sich ein vollständiges Bild der DNS-Einträge für eine Domain machen möchten.

Führen Sie beispielsweise den folgenden Befehl aus, um alle DNS-Einträge von google.com abzufragen:

nslookup -type=any superuser.com

Wie Sie unten sehen können, gibt dieser Befehl alle DNS-Einträge für google.com zurück:

Durchführen eines Reverse-DNS-Lookup

Neben der Abfrage von DNS-Servern nach Informationen zu einer Domäne können Sie mit nslookup auch DNS-Server nach Informationen zu einer IP-Adresse abfragen. Dies wird als Reverse-DNS-Lookup bezeichnet.

Angenommen, Sie haben die IP-Adresse eines Servers und möchten den Hostnamen dieses Servers finden. Ein Reverse-DNS-Lookup kann Ihnen dabei helfen.

Um eine umgekehrte DNS-Suche durchzuführen, führen Sie den Befehl nslookup gefolgt von der IP-Adresse aus, die Sie suchen möchten.

Führen Sie beispielsweise den folgenden Befehl aus, um eine Reverse-DNS-Suche nach der IP-Adresse „142.250.204.46“ durchzuführen:

Dies gibt den Hostnamen des Servers mit der IP-Adresse 142.250.204.46 zurück.

Aktivieren des Debugging-Modus

Fortgeschrittene Benutzer können den Debugging-Modus in nslookup aktivieren, um weitere Informationen zu den DNS-Abfragen zu erhalten. Dieser Modus ist hilfreich, wenn Sie DNS-Probleme beheben und sehen möchten, was hinter den Kulissen passiert.

Um den Debugging-Modus zu aktivieren, verwenden Sie die Option -debug. Um beispielsweise den A-Eintrag von google.com abzufragen und den Debugging-Modus zu aktivieren, führen Sie den folgenden Befehl aus:

nslookup -debuggen Sie google.com

Dieser Befehl gibt viele Informationen über die DNS-Abfrage zurück. Diese Informationen können hilfreich sein, wenn Sie versuchen, DNS-Probleme zu beheben.

Protokollieren der Ausgabe in einer Datei

Es kann hilfreich sein, die Ausgabe von nslookup in einer Datei zu protokollieren. Sie können diese Datei speichern und mit anderen Systemadministratoren teilen, damit diese Ihnen bei der Behebung von DNS-Problemen helfen können.

Verwenden Sie die folgende Syntax, um die Ausgabe von nslookup in einer Datei zu speichern:

nslookup  > /Pfad/zu/Datei

Um beispielsweise alle A-DNS-Datensätze für google.com abzufragen und die Ausgabe in einer Datei mit dem Namen „google_dns_records.txt“ zu speichern, führen Sie den folgenden Befehl aus. Das Symbol > wird verwendet, um die Ausgabe eines Befehls in eine Datei umzuleiten.

nslookup -debug google.com > google_dns_records.txt

Führen Sie den folgenden Befehl ls -la aus, um zu überprüfen, ob die Protokolldatei erstellt wurde:

ls -la google_dns_records.txt

Wie Sie unten sehen können, wurde die Datei erfolgreich erstellt.

Führen Sie den folgenden cat-Befehl aus, um den Inhalt der Datei anzuzeigen.

Katze google_dns_records.txt

Wie Sie unten sehen können, enthält die Protokolldatei alle DNS-Einträge für google.com.

Verwenden des interaktiven Modus

In diesem Artikel haben wir den Befehl nslookup mit verschiedenen Optionen verwendet, um DNS-Server im nicht interaktiven Modus abzufragen, wodurch Sie alle Optionen in einem einzigen Befehl angeben können.

Neben dem nicht-interaktiven Modus verfügt nslookup auch über einen interaktiven Modus. Im interaktiven Modus können Sie verschiedene Befehle zum Abfragen von DNS-Servern ausgeben, ohne jedes Mal den gesamten nslookup-Befehl eingeben zu müssen.

Im Allgemeinen ist der nicht-interaktive Modus der richtige Weg, wenn Sie ein paar DNS-Abfragen durchführen möchten. Wenn Sie jedoch viele DNS-Abfragen ausführen oder mit verschiedenen nslookup-Optionen experimentieren möchten, kann der interaktive Modus bequemer und logischer sein.

Führen Sie den folgenden Befehl aus, um in den interaktiven Modus zu wechseln.

Ihre Eingabeaufforderung ändert sich wie unten gezeigt zu >. Dies zeigt an, dass Sie sich jetzt im interaktiven Modus befinden.

Sie können alle nslookup-Befehle ausführen, die wir in diesem Tutorial behandelt haben, ohne jedes Mal nslookup eingeben zu müssen.

Um den interaktiven Modus zu beenden, führen Sie den Befehl exit aus.

Wenn Sie mehr über die Verwendung von nslookup erfahren möchten, lesen Sie weiter die nslookup-Manpage.

nslookup vs. dig

Sowohl nslookup als auch dig sind großartige Tools zum Abfragen von DNS-Servern. Im Allgemeinen liefern beide Tools die gleichen Ergebnisse. Sie können eine Abfrage mit beiden Tools ausführen und die Ergebnisse vergleichen. Dies ist eine großartige Möglichkeit, die Ergebnisse Ihrer Abfrage zu überprüfen.

Wenn Sie ein Tool dem anderen vorziehen müssen, wird empfohlen, dig zu verwenden, da nslookup uralt ist. Es wurde erstmals in den frühen 1980er Jahren veröffentlicht und von seinen Entwicklern weitgehend aufgegeben. Im Gegensatz dazu wird dig immer noch aktiv weiterentwickelt, da es wahrscheinlicher ist, dass Sie neue Funktionen und Fehlerkorrekturen in dig finden als in nslookup.

Notiz: Wenn Sie einen Verbindungsfehler „No Route to Host“ sehen, haben wir hier Lösungen.

Häufig gestellte Fragen

Ist nslookup ein DNS?

Nein. nslookup ist ein Netzwerkverwaltungstool zum Abfragen des Domain Name System (DNS) und erfordert, dass ein DNS-Server ausgeführt wird, um zu funktionieren. nslookup kann jedoch auch eine Datei namens „/etc/hosts“ als Quelle für DNS-Informationen verwenden.

Wie überprüfe ich meine DNS-Einstellungen unter Linux?

In der Datei „/etc/resolv.conf“ werden Ihre DNS-Einstellungen unter Linux gespeichert. Verwenden Sie den cat-Befehl, um den Inhalt dieser Datei anzuzeigen.

Bei der Verwendung von nslookup ist der Fehler „Servername nicht gefunden…“ aufgetreten. Wie behebe ich das?

Dies ist ein bekannter Fehler bei nslookup. Die Problemumgehung besteht darin, Ihren lokalen DNS-Server für die Abfrage zu verwenden. Lassen Sie den IP-Adressparameter des benutzerdefinierten DNS-Servers aus dem Befehl als nslookup google.com weg, und es sollte funktionieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Go up