Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
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.
dig ist ein Bestandteil der dnsutils und kann über das gleichnamige Paket installiert werden [1]:
dnsutils
mit apturl
Paketliste zum Kopieren:
sudo apt-get install dnsutils
sudo aptitude install dnsutils
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 | 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 |
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.
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.
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 5. Februar 2016 17:30 von aasche erstellt.