ubuntuusers.de

dig

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png dig (domain information groper) ist ein Programm/Befehl, mit dem Informationen von DNS-Servern abgefragt werden können. DNS bedeutet Domain Name Service und wird zur Umwandlung von IP-Adressen in Domains bzw. umgekehrt verwendet. Es basiert auf einer Weltweit verteilten Datenbank. Dig ist ein Client-Programm für DNS-Server wie zum Beispiel der Berkeley Internet Name Domain Server (Bind) und unterstützt sowohl IPv4 als auch IPv6. Dig wird hauptsächlich genutzt, um DNS-Server zu analysieren und zu überprüfen.

Installation

dig ist ein Bestandteil der dnsutils und kann über das gleichnamige Paket installiert werden [1]:

  • dnsutils

Paketliste zum Kopieren:

sudo apt-get install dnsutils 

Oder mit apturl installieren, Link: apt://dnsutils

Benutzung

Der Befehl dig hat die folgende, allgemeine Syntax:

dig [@Server] [Domain] [Typ] [-x IP-Adresse] 
  • Server - der Domain-Name oder die IP-Adresse des DNS-Servers, der abgefragt werden soll. Für eine Analyse eines DNS-Servers muss hier der entsprechende Server angegeben werden. Wird kein Server angegeben, wird der im System hinterlegte Server genutzt. Wer ausschließlich an den allgemeinen DNS-Informationen zu einer Adresse interessiert ist, kann den Server also weglassen.

  • Domain - die Domain, die abgefragt werden soll.

  • Typ - Typ des Eintrages, der abgefragt werden soll (ANY, A, MX, etc.). Wenn kein Argument angegeben wird, fragt dig den A-Record ab.

Resource Record / Typ
Typ Beschreibung
ANY alle Einträge
A IPv4 Record eines Hosts
AAAA IPv6 Record eines Hosts
CNAME Kanonischer Name, Zuordnung von Aliassen
MX Mail Exchanger
NS Hostname eines autoritativen Nameservers
PTR Domain Name Pointer (um IP-Adressen Namen zuzuweisen)
SOA Start of Authority
SRV Angebotene Dienste
TXT Beliebiger Text

Weitere Parameter
Typ Beschreibung
+short gibt eine sehr kurze Antwort, zB die reine IP der Domain
-f query.txt file - Eingabe-Datei für mehrere Abfragen
-4 / -6 IPv4 / IPv6
-x Rückwärtssuche... IP der Domain suchen

Beispiele

Situation 1

Abfrage der Statusinformationen eines DNS Servers über das Terminal [2]:

dig @208.67.222.222 
; <<>> DiG 9.6.1-P1 <<>> @208.67.222.222
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31780
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;.				IN	NS

;; ANSWER SECTION:
.			517184	IN	NS	L.ROOT-SERVERS.NET.
.			517184	IN	NS	J.ROOT-SERVERS.NET.
.			517184	IN	NS	H.ROOT-SERVERS.NET.
.			517184	IN	NS	G.ROOT-SERVERS.NET.
.			517184	IN	NS	F.ROOT-SERVERS.NET.
.			517184	IN	NS	D.ROOT-SERVERS.NET.
.			517184	IN	NS	E.ROOT-SERVERS.NET.
.			517184	IN	NS	I.ROOT-SERVERS.NET.
.			517184	IN	NS	B.ROOT-SERVERS.NET.
.			517184	IN	NS	M.ROOT-SERVERS.NET.
.			517184	IN	NS	A.ROOT-SERVERS.NET.
.			517184	IN	NS	C.ROOT-SERVERS.NET.
.			517184	IN	NS	K.ROOT-SERVERS.NET.

;; Query time: 103 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Mon Nov 23 15:50:44 2009
;; MSG SIZE  rcvd: 228

Da keine Domain angegeben wurde, fragt dig die Domain "." ab. Diese ist quasi die Wurzel des DNS-Systems. Als Antwort werden die Root-DNS-Server zurückgegeben. Der Status NOERROR in der 5. Zeile zeigt, dass die Abfrage keine Fehler aufweist.

Situation 2

Welche Antworten liefert der DNS-Server [2]:

dig @208.67.222.222 ubuntuusers.de 
; <<>> DiG 9.6.1-P1 <<>> @208.67.222.222 ubuntuusers.de
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24416
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ubuntuusers.de.			IN	A

;; ANSWER SECTION:
ubuntuusers.de.		86276	IN	A	213.95.41.13

;; Query time: 171 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Mon Nov 23 15:57:40 2009
;; MSG SIZE  rcvd: 48

Die Antwort findet sich in der ANSWER SECTION, wo auch mehrere Antworten aufgeführt werden können. Wenn anstelle von ANSWER SECTION dort AUTHORITY SECTION steht, leitet der DNS-Server die Anfrage an die dort aufgelisteten Server weiter.

Situation 3

Hier soll aufgezeigt werden, wie das DNS-System eine Domain auflöst. Als erstes wird der Root-DNS-Server nach der Domain ubuntuusers.de gefragt:

dig ubuntuusers.de @a.root-servers.net 

Dieser antwortet nun in der AUTHORITY SECTION, dass der Server a.nic.de zuständig ist.

;; AUTHORITY SECTION:
de.			172800	IN	NS	a.nic.de.

Anschließend kann man diesen nach der Domain fragen.

dig ubuntuusers.de @a.nic.de 

Dieser gibt zurück, dass dns1.noris.net zuständig ist.

;; AUTHORITY SECTION:
ubuntuusers.de.		42741	IN	NS	dns1.noris.net.

Fragt man nun diesen, taucht neben der AUTHORITY SECTION auch noch die ANSWER SECTION auf. Hierüber bekommt man die Information des DNS-Servers, dass die aktuelle IP-Adresse zur Domain ubuntuusers.de 213.95.41.13 lautet.

;; ANSWER SECTION:
ubuntuusers.de.		86400	IN	A	213.95.41.13

Diese Revision wurde am 3. Februar 2020 09:32 von noisefloor erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: DNS, Server, Shell, Internet, Netzwerk