Lassen Sie uns das Stück für Stück zerlegen.
Das alles bedeutet nun Folgendes:
Erste Zeile: Die Version von dig und die abgefragte Domäne.
Globale Optionen: Wie wir sehen werden, können Sie mit dig mehrere Domänen gleichzeitig abfragen. In dieser Zeile werden die Optionen angezeigt, die auf alle Domänenabfragen angewendet wurden. In unserem einfachen Beispiel war es nur die Standardoption +cmd (Befehl).
Opcode: Query: Dies ist die Art der angeforderten Operation, die in diesem Fall eine Abfrage war. Dieser Wert kann auch query für eine inverse Abfrage oder status sein, wenn Sie nur den Status des DNS-Systems testen.
Status: Noerror: Es sind keine Fehler aufgetreten und die Anfrage wurde korrekt gelöst.
ID: 12017: Diese zufällige ID verknüpft Anfrage und Antwort.
Flags: qr rd ra: Diese stehen für Abfrage, Rekursion erwünscht und Rekursion verfügbar. Rekursion ist eine Form der DNS-Suche (die andere ist iterativ). Möglicherweise sehen Sie auch AA, was für autoritative Antwort steht, was bedeutet, dass ein autoritativer Nameserver die Antwort bereitgestellt hat.
Abfrage: 1: Die Anzahl der Abfragen in dieser Sitzung, die einer war.
Antwort: 4: Die Anzahl der Antworten in dieser Antwort beträgt vier.
Autorität: 0: Die Anzahl der Antworten, die von einem autoritativen Nameserver kamen, in diesem Fall null. Die Antwort wurde aus dem Cache eines DNS-Vorläuferservers zurückgegeben. Die Antwort enthält keinen maßgeblichen Abschnitt.
Zusätzlich: 1: Es gibt eine zusätzliche Information. (Seltsamerweise wird nichts aufgelistet, es sei denn, dieser Wert ist zwei oder höher.)
Inhaltsverzeichnis
Pseudosektion aktivieren
Als nächstes sehen wir Folgendes im Opt-Pseudo-Abschnitt:
;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494
Lassen Sie uns das aufschlüsseln:
EDNS: Version 0: Die Version von Erweiterungssystem für DNS das wird verwendet. EDNS überträgt erweiterte Daten und Flags, indem es die Größe des Benutzer-Datagramm-Protokoll (UDP-)Pakete. Dies wird durch ein Flag variabler Größe angezeigt.
flags: Es werden keine Flags verwendet.
udp: 4096: Die UDP-Paketgröße.
Fragenbereich
Im Abschnitt Frage sehen wir Folgendes:
;; QUESTION SECTION: ;wdzwdz.com. IN A
Das bedeutet:
wdzwdz.com: Der Domainname, den wir abfragen.
IN: Wir machen eine Internetklassenabfrage.
A: Sofern nicht anders angegeben, fordert dig einen A-(Adress-)Eintrag vom DNS-Server an.
Antwortbereich
Der Abschnitt Antwort enthält die folgenden vier Antworten, die wir vom DNS-Server erhalten haben:
wdzwdz.com. 3551 IN A 151.101.194.217 wdzwdz.com. 3551 IN A 151.101.130.217 wdzwdz.com. 3551 IN A 151.101.66.217 wdzwdz.com. 3551 IN A 151.101.2.217
Das bedeuten diese Antworten:
3551: Dies ist die Time to Live (TTL), eine 32-Bit-Ganzzahl mit Vorzeichen, die das Zeitintervall enthält, für das ein Datensatz zwischengespeichert werden kann. Wenn sie abläuft, müssen die Daten in einer Antwort auf eine Anfrage verwendet werden, bis sie vom DNS-Server aktualisiert werden.
IN: Wir haben eine Internet-Klassen-Abfrage gemacht.
A: Wir haben nach einem A-Eintrag vom DNS-Server gefragt.
Statistikbereich
Statistik ist der letzte Abschnitt und enthält die folgenden Informationen:
;; Query time: 0 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Sun Mar 22 07:44:37 EDT 2020 ;; MSG SIZE rcvd: 106
Das haben wir:
Abfragezeit: 0 ms: Die Zeit, die zum Erhalt der Antwort benötigt wurde.
SERVER: 127.0.0.53#53(127.0.0.53): Die IP-Adresse und Portnummer des DNS-Servers, der geantwortet hat. In diesem Fall zeigt es auf den lokalen Caching-Stub-Resolver. Dadurch werden DNS-Anfragen an die konfigurierten Upstream-DNS-Server weitergeleitet. Auf dem Manajro-Testcomputer lautete die hier aufgeführte Adresse 8.8.8.8#53, also Der öffentliche DNS-Dienst von Google.
WANN: So, 22. März, 07:44:37 EDT 2020: Wann die Anfrage gestellt wurde.
MSG SIZE rcvd: 106: Die Größe der vom DNS-Server empfangenen Nachricht.
Selektiv sein
Sie müssen sich nicht mit den beiden Extremen von schmallippig und geschwätzig zufrieden geben. Mit dem Befehl dig können Sie Abschnitte selektiv in die Ergebnisse ein- oder ausschließen.
Die folgenden Abfrageoptionen entfernen diesen Abschnitt aus den Ergebnissen:
+keine Kommentare: Keine Kommentarzeilen anzeigen.
+noauthority: Autoritätsabschnitt nicht anzeigen.
+noadditional: Den zusätzlichen Abschnitt nicht anzeigen.
+nostats: Den Statistikbereich nicht anzeigen.
+noanswer: Den Antwortabschnitt nicht anzeigen.
+noall: Nichts anzeigen!
Die Abfrageoption +noall wird normalerweise mit einer der obigen kombiniert, um einen Abschnitt in die Ergebnisse einzuschließen. Anstatt also eine lange Zeichenfolge von Abfrageoptionen einzugeben, um mehrere Abschnitte zu deaktivieren, können Sie +noall verwenden, um sie alle zu deaktivieren.
Sie können dann die folgenden inklusiven Abfrageoptionen verwenden, um diejenigen zu aktivieren, die Sie wieder anzeigen möchten:
+Kommentare: Kommentarzeilen anzeigen.
+Autorität: Zeigt den Autoritätsabschnitt an.
+zusätzlich: Zeigt den zusätzlichen Abschnitt an.
+Statistik: Zeigt den Statistikbereich an.
+Antwort: Zeigt den Antwortabschnitt an.
+all: Alles anzeigen.
Wir geben Folgendes ein, um eine Anfrage zu stellen und die Kommentarzeilen auszuschließen:
dig wdzwdz.com +nocomments
Wenn wir die Abfrageoption +noall allein verwenden, wie unten gezeigt, erhalten wir keine nützliche Ausgabe:
dig wdzwdz.com +noall
Wir können selektiv die Abschnitte hinzufügen, die wir sehen möchten. Um den Antwortabschnitt hinzuzufügen, geben wir Folgendes ein:
dig wdzwdz.com +noall +answer
Wenn wir Folgendes eingeben, um +Statistiken zu aktivieren, sehen wir auch den Statistikabschnitt:
dig wdzwdz.com +noall +answer +stats
Die Kombination +noall +answer wird häufig verwendet. Sie können der Befehlszeile nach Bedarf weitere Abschnitte hinzufügen. Wenn Sie vermeiden möchten, bei jeder Verwendung von dig +noall +answer in der Befehlszeile einzugeben, können Sie sie in eine Konfigurationsdatei namens „.digrc“ einfügen. Es befindet sich in Ihrem Home-Verzeichnis.
Wir geben Folgendes ein, um einen mit echo zu erstellen:
echo "+noall +answer" > $HOME/.digrc
Wir können dann Folgendes eingeben, um den Inhalt zu überprüfen:
cat .digrc
$HOME/.digrc“- und „cat .digrc“-Befehle in einem Terminalfenster.“ width=“646″ height=“122″ >
Diese beiden Optionen werden nun auf alle zukünftigen Verwendungen von dig angewendet, wie unten gezeigt:
dig ubuntu.org
dig linux.org
dig github.com
Diese dig-Konfigurationsdatei wird für die verbleibenden Beispiele in diesem Artikel verwendet.
DNS-Einträge
Die an Ihre Dig-Anfragen zurückgegebenen Informationen stammen aus verschiedenen Arten von Datensätzen, die auf dem DNS-Server gespeichert sind. Sofern wir nicht nach etwas anderem fragen, fragt dig den Datensatz A (Adresse) ab. Die folgenden Arten von Datensätzen werden häufig mit dig verwendet:
A Record: Verknüpft die Domäne mit einer IP-Adresse der Version 4.
MX-Eintrag: Mail-Austausch-Einträge leiten E-Mails, die an Domänen gesendet werden, an den richtigen Mailserver.
NS-Eintrag: Nameserver-Einträge delegieren eine Domäne (oder Unterdomäne) an eine Reihe von DNS-Servern.
TXT-Record: Text-Records speichern textbasierte Informationen zur Domain. In der Regel werden sie verwendet, um gefälschte oder gefälschte E-Mails zu unterdrücken.
SOA-Record: Der Beginn von Normdatensätzen kann viele Informationen über die Domäne enthalten. Hier finden Sie den primären Nameserver, die verantwortliche Partei, einen Zeitstempel für Änderungen, die Häufigkeit von Zonenaktualisierungen und eine Reihe von Zeitlimits für Wiederholungen und Abbrüche.
TTL: Time to live ist eine Einstellung für jeden DNS-Eintrag, die angibt, wie lange ein DNS-Vorläuferserver jede DNS-Abfrage zwischenspeichern darf. Nach Ablauf dieser Zeit müssen die Daten für nachfolgende Anforderungen aktualisiert werden.
ANY: Dies weist dig an, jeden möglichen DNS-Eintrag zurückzugeben.
Die Angabe des A-Datensatztyps ändert nichts an der Standardaktion, die darin besteht, den Adressdatensatz abzufragen und die IP-Adresse abzurufen, wie unten gezeigt:
dig redhat.com A
Um die E-Mail-Austauschdatensätze abzufragen, verwenden wir das folgende MX-Flag:
dig yahoo.com MX
Das Nameserver-Flag gibt den folgenden Namen der Root-Nameserver zurück, die der Top-Level-Domain zugeordnet sind:
dig fedora.com NS
Um den Beginn des Normdatensatzes abzufragen, geben wir das folgende SOA-Flag ein:
dig manjaro.com SOA
Das TTL-Flag zeigt uns die Lebensdauer der Daten im Cache des DNS-Servers an. Wenn wir eine Reihe von Anfragen stellen, sehen wir, wie sich die Lebenszeit auf null reduziert, und springen dann zu ihrem Ausgangswert zurück.
Wir geben folgendes ein:
dig usa.gov TTL
Um die Textdatensätze anzuzeigen, geben wir das TX-Flag ein:
dig usa.gov TXT
Angabe des DNS-Servers
Wenn Sie einen bestimmten DNS-Server für Ihre Anfrage verwenden möchten, können Sie ihn mit dem at-Zeichen (@) als Befehlszeilenparameter an dig übergeben.
Mit dem Standard-DNS-Server (siehe unten) verweist dig auf den lokalen Caching-Stub-Resolver bei 127.0.0.53.
dig usa.gov +stats
Jetzt geben wir Folgendes ein, um den öffentlichen DNS-Server von Google unter 8.8.8.8 zu verwenden:
dig @8.8.8.8 usa.gov +stats
Verwenden von dig mit mehreren Domänen
Wir können mehrere Domänen an die Befehlszeile übergeben, wie unten gezeigt:
dig ubuntu.org fedora.org manjaro.com
Wenn Sie regelmäßig eine Reihe von Domänen überprüfen, können Sie diese in einer Textdatei speichern und an dig übergeben. Alle Domänen in der Datei werden der Reihe nach überprüft.
Unsere Datei heißt „domains.txt“. Wir verwenden cat, um den Inhalt anzuzeigen, und übergeben es dann mit der Option -f (Datei) an dig. Wir geben folgendes ein:
cat domains.txt
dig -f domains.txt
Reverse DNS-Lookups
Wenn Sie eine IP-Adresse haben und wissen möchten, wohin sie geht, können Sie eine Reverse-DNS-Suche versuchen. Wenn es zu einem Server aufgelöst wird, der bei einem DNS-Server registriert ist, können Sie möglicherweise seine Domäne herausfinden.
Ob Sie dies können, hängt vom Vorhandensein eines PTR (Pointer Record) ab. PTRs lösen eine IP-Adresse in a . auf vollqualifizierter Domainname. Da diese jedoch nicht obligatorisch sind, sind sie nicht immer in einer Domäne vorhanden.
Mal sehen, ob wir herausfinden, wohin uns die IP-Adresse 209.51.188.148 führt. Wir geben Folgendes mit der Option -x (Reverse Lookup) ein:
dig -x 209.51.188.148
Presto! Die IP-Adresse wird zu gnu.org aufgelöst.
Da ein PTR ein DNS-Eintrag ist und wir wissen, dass dig bestimmte DNS-Einträge anfordern kann, könnten wir dig nicht einfach bitten, den PTR für uns abzurufen? Ja, das können wir, aber es braucht ein bisschen mehr Arbeit.
Wir müssen die IP-Adresse in umgekehrter Reihenfolge angeben und .in-addr.arpa am Ende anheften, wie unten gezeigt:
dig ptr 148.188.51.209.in-addr.arpa
Wir erhalten das gleiche Ergebnis; es hat nur etwas mehr aufwand gekostet.
Kannst du es graben?
Wir alle nutzen das Internet täglich, und neugierige Köpfe haben sich oft gefragt, wie die Magie passiert, wenn wir den Namen einer Website in einen Browser eingeben. Mit dig können Sie die Prozesse der Netzwerkbeschwörung erkunden.