Der dig
-Befehl ist ein Netzwerk-Tool, das in der Regel auf Unix-basierten Systemen verwendet wird, um DNS-Abfragen (Domain Name System), sogenannten Querys, durchzuführen. Es wird verwendet, um DNS-Informationen wie IP-Adressen oder andere verfügbaren DNS-Records (wie MX-, NS-, TXT- oder SOA-Records) abzurufen.
Syntax
dig [OPTIONEN] Name/IP [Typ] [Klasse] [@Server]
Name/IP
: Der Domainname oder die IP-Adresse, für die die DNS-Abfrage durchgeführt werden soll.Typ
: Optionaler Parameter, der angibt, welcher DNS-Recordtyp abgefragt werden soll. Wenn nicht angegeben, wird standardmäßig der A-Record abgefragt.Klasse
: Optionaler Parameter, der angibt, welche DNS-Klasse abgefragt werden soll. Der Standardwert ist IN (für Internet).@Server
: Optionaler Parameter, der angibt, welcher DNS-Server für die Abfrage verwendet werden soll. Wenn nicht angegeben, wird der Standard-DNS-Server des Betriebssystems verwendet.
Einige wichtige Optionen:
-x
: Führt eine Reverse-DNS-Abfrage durch, um den Domainnamen zu finden, der zu einer bestimmten IP-Adresse gehört.+
: Gibt nur die Antwort zurück, ohne zusätzliche Informationen oder Kommentare oder doch die lange Antwort.[no]
short+
: Verfolgt bzw. Verfolgt nicht die DNS-Abfrage und zeigt alle verwendeten DNS-Server in der Kette an.[no]
trace+[no]authority
: Zeigt bzw. Verhindert, dass Autoritätsinformationen angezeigt werden.+[no]question
: Zeigt bzw. Verhindert, dass die ursprüngliche Anfrage angezeigt wird.+[no]additional
: Zeigt bzw. Verhindert, dass zusätzliche Informationen angezeigt werden.+time=X
: Setzt das Timeout-Limit für die Abfrage auf X Sekunden. Wenn die Antwort nicht innerhalb dieser Zeit empfangen wird, schlägt die Abfrage fehl.+[no]all
: Deaktiviert alle Standardausgaben, außer die Antwort.+[no]answer
: Versteckt oder zeigt die Antwort auf die DNS-Abfrage an.+[no]nssearch
: Sucht nach autoritativen DNS-Servern, die für die Domain autorisiert sind.+[no]stats
: Zeigt Statistiken über die durchgeführte DNS-Abfrage an, z. B. die Zeit, die für die Abfrage benötigt wurde.+[no]tcp
: Ermöglicht die DNS-Abfrage über TCP anstatt UDP.
Beispiele
DNS-Abfrage für einen A-Record
dig christoph-matt.de +short
Führt eine DNS-Abfrage für den A-Record des Domainnamens christoph-matt.de durch und gibt nur die IP-Adresse zurück, ohne zusätzliche Informationen oder Kommentare.
$ dig christoph-matt.de +short
90.187.121.161
$
DNS-Abfrage verfolgen
dig christoph-matt.de +trace
Verfolgt die DNS-Abfrage für den Domainnamen christoph-matt.de und zeigt alle verwendeten DNS-Server in der Kette an.
$ dig christoph-matt.de +trace @8.8.8.8
; <<>> DiG 9.18.1-1ubuntu1.3-Ubuntu <<>> christoph-matt.de +trace @8.8.8.8
;; global options: +cmd
. 23052 IN NS g.root-servers.net.
. 23052 IN NS l.root-servers.net.
. 23052 IN NS b.root-servers.net.
. 23052 IN NS h.root-servers.net.
. 23052 IN NS c.root-servers.net.
. 23052 IN NS e.root-servers.net.
. 23052 IN NS i.root-servers.net.
. 23052 IN NS f.root-servers.net.
. 23052 IN NS m.root-servers.net.
. 23052 IN NS d.root-servers.net.
. 23052 IN NS j.root-servers.net.
. 23052 IN NS k.root-servers.net.
. 23052 IN NS a.root-servers.net.
de. 172800 IN NS a.nic.de.
de. 172800 IN NS f.nic.de.
de. 172800 IN NS l.de.net.
de. 172800 IN NS n.de.net.
de. 172800 IN NS s.de.net.
de. 172800 IN NS z.nic.de.
de. 86400 IN DS 26755 8 2 F341357809A5954311CCB82ADE114C6C1D724A75C0395137AA397803 5425E78D
;; Received 751 bytes from 199.7.91.13#53(d.root-servers.net) in 28 ms
$
DNS-Abfrage ohne alles
dig christoph-matt.de +noall +answer
Führt eine DNS-Abfrage für den A-Record des Domainnamens christoph-matt.de durch und gibt nur die Antwort zurück, ohne Autoritäts-, Frage- oder zusätzliche Informationen anzuzeigen.
$ dig christoph-matt.de +noall +answer
christoph-matt.de. 2535 IN A 90.187.121.161
$
Timeout-Limit
dig christoph-matt.de +time=5
Setzt das Timeout-Limit für die DNS-Abfrage des Domainnamens christoph-matt.de auf 5 Sekunden. Wenn die Antwort nicht innerhalb dieser Zeit empfangen wird, schlägt die Abfrage fehl.
$ dig christoph-matt.de +time=5
[...]
;; Query time: 3 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Mon Mar 08 17:25:54 EST 2023
;; MSG SIZE rcvd: 52
90.187.121.161
$
Wenn die Antwort nicht innerhalb von 5 Sekunden empfangen wird
$ dig christoph-matt.de +time=5
;; connection timed out; no servers could be reached
$
Links
- https://linux.die.net/man/1/dig: Kurzanleitung zum
dig
-Befehl in Unix-ähnlichen Betriebssystemen. - https://wiki.ubuntuusers.de/dig/: Anleitung zur Verwendung des
dig
-Befehls in Ubuntu. - https://linuxiac.com/dig-command-in-linux/: Einführung in den
dig
-Befehl zur DNS-Abfrage in Linux. - https://www.cyberciti.biz/faq/linux-unix-dig-command-examples-usage-syntax/: Anleitung zur Verwendung des
dig
-Befehls in Linux/Unix mit Syntax, Optionen und Beispielen. - https://linuxwiki.de/dig: Artikel zur Verwendung des
dig
-Befehls in Linux mit Beispielen für DNS-Abfragen.