Einführung
Die dig
Befehl in Linux wird verwendet, um DNS-Informationen zu sammeln. Es steht für Domain Information Groper und sammelt Daten über Domain Name Server. Die dig
Der Befehl ist hilfreich bei der Behebung von DNS-Problemen, wird aber auch zur Anzeige von DNS-Informationen verwendet.
Diese Anleitung hilft Ihnen dabei, Linux dig
zu verstehen und zu verwenden Befehl.
Voraussetzungen
- Ein System, auf dem Linux ausgeführt wird
- Ein Benutzerkonto mit sudo- oder root-Berechtigungen
- Zugriff auf ein Terminalfenster / eine Befehlszeile
Installieren Sie dig unter Linux (optional)
Die meisten modernen Linux-Systeme enthalten dig
Befehl.
Überprüfen Sie, ob es installiert ist, indem Sie die Softwareversion überprüfen. Öffnen Sie dazu eine Befehlszeile und geben Sie Folgendes ein:
dig -v
Das System sollte mit einem Zahlencode antworten. Wenn das System den angegebenen Befehl nicht finden kann, installieren Sie dig, indem Sie Folgendes eingeben:
Debian/Ubuntu:
sudo apt-get install dnsutils
CentOS/RedHat:
sudo yum install bind-utils
Überprüfen Sie nach Abschluss der Installation die Installation mit dem folgenden Befehl:
dig -v
Weitere Informationen zu CentOS und RHEL finden Sie in unserem Artikel How to Install dig on CentOS 7 and 8.
dig-Syntax
Die dig
Befehl wird wie folgt verwendet:
dig [server] [name] [type]
[server]
– Der Hostname oder die IP-Adresse, an die die Abfrage gerichtet ist
[name]
– Der DNS (Domain Name Server) des abzufragenden Servers
[type]
– Der Typ des abzurufenden DNS-Eintrags. Standardmäßig (oder falls leer gelassen) dig
verwendet den A-Datensatztyp
Die dig
Der Befehl löst den Hostnamen auf, bevor er mit der Abfrage des Nameservers fortfährt.
Verwendung des dig-Befehls mit Beispielen
Schauen wir uns die grundlegende Verwendung von dig
an Befehl.
DNS-Lookup
Die dig
Der Befehl ermöglicht die Suche nach einem Domänennamen. Um eine DNS-Suche durchzuführen, öffnen Sie das Terminal und geben Sie Folgendes ein:
dig google.com
Sie sollten etwas Ähnliches wie das Folgende sehen:
Der wichtigste Abschnitt ist die ANTWORT Abschnitt:
- Die erste Spalte listet den Namen des abgefragten Servers auf
- Die zweite Spalte ist dieLebensdauer , ein festgelegter Zeitraum, nach dem der Datensatz aktualisiert wird
- Die dritte Spalte zeigt die Klasse der Abfrage – in diesem Fall steht „IN“ für Internet
- Die vierte Spalte zeigt die Art der Abfrage an – in diesem Fall steht „A“ für einen A-Datensatz (Adresse)
- Die letzte Spalte zeigt die mit dem Domainnamen verknüpfte IP-Adresse
Andere Zeilen können wie folgt übersetzt werden:
Die erste Zeile zeigt die Version von dig
an Befehl.
Der HEADER Abschnitt zeigt die vom Server empfangenen Informationen. Flags beziehen sich auf das Antwortformat.
Die OPT PSEUDOSECTION zeigt erweiterte Daten an:
- EDNS – Erweiterungssystem für DNS, falls verwendet
- Flags – leer, da keine Flags angegeben wurden
- UDP – UDP-Paketgröße
Die FRAGE Abschnitt zeigt die gesendeten Abfragedaten an:
- Erste Spalte ist der abgefragte Domainname
- Zweite Spalte ist der Typ (IN =Internet) der Anfrage
- Die dritte Spalte gibt den Datensatz an (A =Adresse), sofern nicht anders angegeben
Die STATISTIK Abschnitt zeigt Metadaten über die Abfrage:
- Abfragezeit – Die Zeit, die für eine Antwort benötigt wurde
- SERVER – Die IP-Adresse und der Port des antwortenden DNS-Servers. Möglicherweise bemerken Sie in dieser Zeile eine Loopback-Adresse – dies bezieht sich auf eine lokale Einstellung, die DNS-Adressen übersetzt
- WHEN – Zeitstempel, wann der Befehl ausgeführt wurde
- MSG SIZE rcvd – Die Größe der Antwort vom DNS-Server
DNS-Server angeben
Standardmäßig dig
verwendet die lokale Konfiguration, um zu entscheiden, welcher Nameserver abgefragt wird. Verwenden Sie den folgenden Befehl, um den Domainserver von Google anzugeben:
dig @8.8.8.8 google.com
Das Terminal gibt die folgende Ausgabe aus:
JEDE Option
Um alle Ergebnisse der Abfrage zurückzugeben, verwenden Sie Folgendes:
dig google.com ANY
Das System listet alle google.com
auf DNS-Einträge, die es findet, zusammen mit den IP-Adressen.
Kurze Antwortoption
Geben Sie Folgendes ein, um nur die mit dem Domänennamen verknüpfte IP-Adresse anzuzeigen:
dig google.com +short
Die Ausgabe zeigt den Inhalt wie im Bild unten:
Detaillierte Antwortmöglichkeit
Führen Sie +noall +answer
aus mit dig
Befehl, um auf detaillierte Informationen in den Antworten zuzugreifen Abschnitt:
dig google.com +noall +answer
Das folgende Beispiel zeigt die erwartete Ausgabe.
Trace-Option
Der +trace
listet jeden Server auf, den die Abfrage bis zu ihrem endgültigen Ziel durchläuft. Verwenden Sie diese Befehlsoption, um die IP-Adresse zu identifizieren, an der der Datenverkehr unterbrochen wird.
dig google.com +trace
Die Ausgabe sollte der folgenden ähneln:
Umgekehrter DNS-Lookup
Geben Sie Folgendes ein, um einen Domänennamen anhand seiner IP-Adresse zu suchen:
dig -x 172.217.14.238
Die Ausgabe zeigt den Inhalt wie im Bild unten an:
Das -x
Option können Sie die IP-Adresse anstelle eines Domänennamens angeben. Dies kann mit anderen Optionen kombiniert werden:
dig +noall +answer -x 172.217.14.238
Das folgende Beispiel zeigt die erwartete Ausgabe.
Batch-Modus zum Lesen von Hostnamen aus einer Datei
Um mehrere Einträge nachzuschlagen, erstellen Sie zunächst eine Datei zum Speichern der Domänennamen:
sudo nano domain_research.txt
Siehe Beispiel auf dem Bild unten:
Fügen Sie mehrere interessante Websites wie im Bild unten hinzu:
Speichern Sie die Datei und beenden Sie sie. Geben Sie nun die Datei mit -f
an Option in dig
Befehl:
dig -f domain_research.txt +short
Sehen Sie sich ein Beispiel für die Ausgabe des folgenden Befehls an:
Standardoptionen dauerhaft anpassen
Die von dig angezeigten Informationen können in der ~/.digrc
geändert werden Datei. Öffnen Sie die Datei zum Bearbeiten mit dem folgenden Befehl:
sudo nano ~/.digrc
Fügen Sie die folgenden Zeilen hinzu:
+noall
+answer
Sehen Sie sich ein Beispiel im Bild unten an:
Schreiben Sie die Datei (ctrl
–o
) und beenden (ctrl
–x
).
Führen Sie dig
aus Befehl erneut:
dig google.com
Sie sollten nur den Antworten-Befehl sehen, als ob Sie +noall
manuell hinzugefügt hätten und +answer
.