Dig führt DNS-Lookups durch und zeigt die Antworten an, die von den abgefragten Nameservern zurückgegeben werden. Dig ist die Kurzform von 'Domain Information Groper'.
Dieses Tool ist ein alternatives DNS-Lookup-Tool, nslookup. Sofern es nicht angewiesen wird, einen bestimmten Nameserver abzufragen, wird dig jeden der in '/etc/resolv.conf' aufgelisteten Server ausprobieren.
Im Tutorial werde ich anhand von Beispielen erklären, wie der Befehl dig unter Linux verwendet wird.
dig-Befehl
Führen Sie dig ohne Optionen aus (standardmäßig)
Ohne Optionen führt dig eine NS-Abfrage nach „.“ durch. (der Ursprung).
Hier ist eine Beispielausgabe.
$ dig
; <> DiG 9.9.2-P1 <> linux.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21655
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;linux.com. IN A
;; ANSWER SECTION:
linux.com. 1786 IN A 140.211.167.51
linux.com. 1786 IN A 140.211.167.50
;; AUTHORITY SECTION:
linux.com. 86386 IN NS ns1.linux-foundation.org.
linux.com. 86386 IN NS ns2.linux-foundation.org.
;; ADDITIONAL SECTION:
ns1.linux-foundation.org. 261 IN A 140.211.169.10
ns2.linux-foundation.org. 262 IN A 140.211.169.11
;; Query time: 258 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sat Feb 8 21:35:35 2014
;; MSG SIZE rcvd: 158
Jetzt lesen wir die Ausgabe :
; <> DiG 9.9.2-P1 <> linux.com
;; global options: +cmd
Dieser Abschnitt erzählt uns von dig selbst. Wir wissen, dass die von uns verwendete dig-Version 9.9.2 ist und die von uns verwendete globale Option +cmd.
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21655
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3
Dieser Abschnitt informiert uns über die technische Antwort des DNS.
;; QUESTION SECTION:
;linux.com. IN A
In diesem Abschnitt erfahren Sie, welche Suchanfrage wir ausgraben wollten
.;; ANSWER SECTION:
linux.com. 1786 IN A 140.211.167.51
linux.com. 1786 IN A 140.211.167.50
Dieser Abschnitt informiert uns über die Antwort auf die von uns durchgeführte Abfrage. „Linux.com“ hat zwei Adressen. Die IP 140.211.167.51 und 140.211.167.50.
;; AUTHORITY SECTION:
linux.com. 86386 IN NS ns1.linux-foundation.org.
linux.com. 86386 IN NS ns2.linux-foundation.org.
In diesem Abschnitt erfahren Sie, welche DNS (oder wer) die Befugnis hat, die Frage „Was ist die IP-Adresse von Linux.com?“ zu beantworten.
;; ADDITIONAL SECTION:
ns1.linux-foundation.org. 261 IN A 140.211.169.10
ns2.linux-foundation.org. 262 IN A 140.211.169.11
Dieser Abschnitt informiert uns über die IP-Adresse des oben genannten Autoritäts-DNS. Wir können diese Informationen durch +[no]additional option.
deaktivieren;; Query time: 258 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sat Feb 8 21:35:35 2014
;; MSG SIZE rcvd: 158
Dieser Abschnitt informiert uns über einige statistische Informationen. Wir können diese Informationen deaktivieren, indem wir die Option +[‘no]stats.
verwendenDig-Befehlsabfrage (am häufigsten)
Dig-Handbuchseiten zeigen Ihnen viele gültige Abfragen. Aber in der Praxis gibt es 5 häufige Abfragen.
1) Abfrage des NS
NS ist die Abkürzung für Nameserver. Dies zeigt Ihnen den Namen des Servers, der für die Domain linux.com verantwortlich ist
$ dig linux.com NS
2) Fragen Sie den MX ab
MX ist kurz von Mail Exchanger. Die Abfrage von MX zeigt Ihnen den SMTP-Namen von linux.com
$ dig linux.com MX
3) Adresse abfragen
Um die IP-Adresse von linux.com anzuzeigen, können wir A verwenden Stichwort. A ist eine Abkürzung für Adresse
$ dig linux.com A
4) TXT abfragen
TXT ist eine Textanmerkung.
$ dig linux.com TXT
5) Alles abfragen
Wenn Sie sich nicht sicher sind, wonach Sie suchen, können Sie JEDE auswählen Schlüsselwort.
Optionen der Dig-Befehlsabfrage
Beim Ausführen einer Abfrage bietet dig Optionen zum Anpassen der Ausgabe. Hier sind einige beliebte Fälle im Alltag.
6) Nur die Antwort auf die Frage anzeigen
$ dig linux.com +noall +answer
7) Zeigen Sie die Antwort und die Frage an
$ dig ubuntu.com MX +noall +answer +question
8) Anzeige im Kurzmodus
Diese Option wird verwendet, wenn Sie eine schnelle Antwort wünschen
$ dig linux.com +short
9) Nur Antwort und Autorität anzeigen
Dazu können wir diese Optionen kombinieren:
$ dig ubuntu.com MX +noall +answer +authority
10) Mehrzeilige Abfragen anzeigen
Dieses +mehrzeilige Option zeigt Ihnen Datensätze wie die SOA-Datensätze in einem ausführlichen mehrzeiligen Format mit für Menschen lesbaren Kommentaren. Hier ist ein Beispiel davon.
$ dig ibm.com +multiline +noall +answer
Führen Sie eine umgekehrte Suche durch
Dig dient nicht nur zum Abfragen eines Namens in eine IP-Adresse. Dig kann eine Rückwärtssuche durchführen, bei der die IP-Adresse in einen Namen abgefragt wird. Verwenden Sie dazu -x Option.
$ dig -x 140.211.167.51 +noall +answer
Die Ausgabe zeigt uns, dass die IP „140.211.167.51“ zu „load2d.linux-foundation.org“ gehört
Verwenden Sie für die Abfrage ein bestimmtes DNS
Standardmäßig verwendet dig DNS-Server, die in Ihrer /etc/resolv.conf definiert sind
Wenn Sie einen anderen DNS-Server verwenden möchten, um Ihre Abfrage durchzuführen, können Sie das Schlüsselwort @name_of_DNS_server verwenden. Hier ist ein Beispiel.
$ dig @ns2.google.com gmail.com +nostat
Massensuchen durchführen
Um dies zu tun, können wir es auf 2 Arten tun. Verwenden Sie zunächst die Befehlszeile.
$ dig linux.com +noall +answer ubuntu.com +noall +answer
Zweiter , können wir die Hostnamen oder Domänen in eine Textdatei einfügen. Verwenden Sie dann -f Option zum Einschließen der Datei.
$ dig -f hostnames.txt +noall +answer
Die Datei hostnames.txt enthält diese Zeilen:
linux.com
ubuntu.com
Wenn nach ubuntu.com eine Leerzeile vorhanden ist, fragt dig den NS nach dem "." (root) auch.
Schlussfolgerung
Dig ist eines der im Linux-Betriebssystem verfügbaren Tools zum Abfragen von DNS-Servern. Mit der Dig-Flexibilität können Administratoren die Dig-Ausgabe anpassen. Wie üblich können wir immer man dig oder dig -h eingeben, um mehr Details über den dig-Befehl zu erfahren.