dig — DNS-Einträge gezielt abfragen
Praxis-Guide zu dig — DNS-Auflösung, Eintragstypen, Reverse-Lookup, DNSSEC und Tracing auf der Kommandozeile, mit Diagnose-Beispielen.
dig ist das Standardwerkzeug für DNS-Diagnosen auf der Kommandozeile: Mit einem Befehl fragst du einzelne Einträge ab, prüfst Mail-Server-Konfigurationen, verfolgst die Delegationskette bis zum autoritativen Nameserver oder verifizierst DNSSEC-Signaturen. Das Tool stammt aus dem BIND-Paket und ist auf nahezu jedem Unix-System vorinstalliert. Dieser Guide zeigt dir die wichtigsten Optionen – vom schnellen A-Record-Lookup bis zum vollständigen Zonentransfer.
Grundlegende Abfragen
dig DOMAIN — Fragt den A-Eintrag (IPv4-Adresse) einer Domain über den Standard-DNS-Server ab.
dig example.comdig DOMAIN TYPE — Fragt einen bestimmten Eintragstyp ab (A, AAAA, MX, NS, TXT, CNAME, SOA, SRV, CAA, PTR usw.).
dig example.com MXdig @SERVER DOMAIN — Fragt einen bestimmten DNS-Server ab.
dig @8.8.8.8 example.comdig @SERVER DOMAIN TYPE — Fragt einen bestimmten Eintragstyp bei einem bestimmten Server ab.
dig @1.1.1.1 example.com AAAAdig DOMAIN ANY — Fragt alle verfügbaren Eintragstypen ab. Hinweis: Viele Server schränken ANY-Abfragen ein.
dig example.com ANYHäufige Eintragstypen
dig DOMAIN A — IPv4-Adresseintrag.
dig example.com Adig DOMAIN AAAA — IPv6-Adresseintrag.
dig example.com AAAAdig DOMAIN MX — Mail-Exchange-Einträge. Zeigt Mailserver und ihre Prioritäten.
dig example.com MXdig DOMAIN NS — Nameserver-Einträge. Zeigt die autoritativen DNS-Server.
dig example.com NSdig DOMAIN TXT — Text-Einträge. Enthält oft SPF-, DKIM-, DMARC- und Verifikations-Records.
dig example.com TXTdig DOMAIN SOA — Start of Authority. Zeigt primären Nameserver, Admin-E-Mail, Seriennummer und Timer.
dig example.com SOAdig DOMAIN CNAME — Kanonischer Namenseintrag (Alias).
dig www.example.com CNAMEdig DOMAIN SRV — Diensteintrag. Wird für Service-Discovery verwendet (z. B. SIP, XMPP, LDAP).
dig _sip._tcp.example.com SRVdig DOMAIN CAA — Certificate Authority Authorization. Zeigt, welche CAs Zertifikate ausstellen dürfen.
dig example.com CAAAusgabe steuern
dig +short DOMAIN — Kurze Ausgabe – nur die Antwort, ohne Header oder Metadaten.
dig +short example.comdig +short DOMAIN TYPE — Kurze Ausgabe für einen bestimmten Eintragstyp.
dig +short example.com MXdig +noall +answer DOMAIN — Zeigt nur den Antwortbereich. Kompakt, aber mit Felddetails.
dig +noall +answer example.comdig +noall +answer +authority DOMAIN — Zeigt Antwort- und Autoritätsbereich.
dig +noall +answer +authority example.com NSdig +nocomments +noquestion +noauthority +noadditional +nostats DOMAIN — Unterdrückt alle Bereiche außer der Antwort.
dig +nocomments +noquestion +noauthority +noadditional +nostats example.comdig +multiline DOMAIN SOA — Mehrzeilige Ausgabe mit Kommentaren. Nützlich für SOA- und DNSSEC-Einträge.
dig +multiline example.com SOAdig +yaml DOMAIN — Ausgabe im YAML-Format (dig 9.18+).
dig +yaml example.comdig +json DOMAIN — Ausgabe im JSON-Format (dig 9.18+).
dig +json example.comReverse-DNS-Lookup
dig -x IP — Reverse-DNS-Lookup – findet den Hostnamen zu einer IP-Adresse.
dig -x 8.8.8.8dig -x IP +short — Kurzer Reverse-Lookup – nur der Hostname.
dig -x 8.8.8.8 +shortdig -x IPV6 — Reverse-Lookup für eine IPv6-Adresse.
dig -x 2001:4860:4860::8888Ablaufverfolgung & Diagnose
dig +trace DOMAIN — Verfolgt den vollständigen Delegationspfad von den Root-Servern bis zum autoritativen Server.
dig +trace example.comdig +trace +nodnssec DOMAIN — Tracing ohne DNSSEC-Einträge für eine übersichtlichere Ausgabe.
dig +trace +nodnssec example.comdig +stats DOMAIN — Zeigt Abfragestatistiken (Zeit, Server, Nachrichtengröße).
dig +stats example.comdig +qr DOMAIN — Zeigt die ausgehende Anfrage neben der Antwort.
dig +qr example.comdig +identify DOMAIN — Zeigt den antwortenden Server bei +short-Abfragen.
dig +short +identify example.comDNSSEC
dig +dnssec DOMAIN — Fordert DNSSEC-Einträge an (RRSIG, DNSKEY, DS, NSEC).
dig +dnssec example.comdig DOMAIN DNSKEY — Fragt die öffentlichen DNSSEC-Schlüssel einer Domain ab.
dig example.com DNSKEYdig DOMAIN DS — Fragt Delegation-Signer-Einträge ab (verknüpft untergeordnete mit übergeordneter Zone).
dig example.com DSdig +dnssec +multiline DOMAIN DNSKEY — Zeigt DNSSEC-Schlüssel mit mehrzeiliger Formatierung und Schlüssel-IDs.
dig +dnssec +multiline example.com DNSKEYdig +cd DOMAIN — Deaktiviert die DNSSEC-Prüfung (CD-Flag). Liefert auch bei fehlgeschlagener Validierung eine Antwort.
dig +cd example.comdig +sigchase DOMAIN — Verfolgt die DNSSEC-Signaturkette (sofern von deiner dig-Version unterstützt).
dig +sigchase example.comNetzwerkoptionen
dig +tcp DOMAIN — Verwendet TCP statt UDP für die Abfrage.
dig +tcp example.comdig +notcp DOMAIN — Erzwingt UDP (Standard).
dig +notcp example.comdig -4 DOMAIN — Erzwingt ausschließlich IPv4-Transport.
dig -4 example.comdig -6 DOMAIN — Erzwingt ausschließlich IPv6-Transport.
dig -6 example.comdig -p PORT @SERVER DOMAIN — Verwendet einen nicht standardmäßigen DNS-Port.
dig -p 5353 @127.0.0.1 example.comdig +time=SECONDS DOMAIN — Setzt den Abfrage-Timeout in Sekunden (Standard: 5).
dig +time=10 example.comdig +retry=N DOMAIN — Legt die Anzahl der Wiederholungsversuche fest (Standard: 2).
dig +retry=5 example.comdig +bufsize=N DOMAIN — Setzt die EDNS-UDP-Puffergröße (für große Antworten).
dig +bufsize=4096 example.comBatch- und Mehrfachabfragen
dig DOMAIN1 DOMAIN2 DOMAIN3 — Fragt mehrere Domains in einem einzigen Aufruf ab.
dig google.com github.com example.comdig -f FILE — Liest Domains aus einer Datei (eine pro Zeile) und fragt jede ab.
dig -f domains.txtdig +short DOMAIN A DOMAIN AAAA DOMAIN MX — Fragt mehrere Eintragstypen für eine Domain ab.
dig +short example.com A example.com AAAA example.com MXZonentransfer
dig @NS DOMAIN AXFR — Fordert einen vollständigen Zonentransfer an (erfordert Autorisierung).
dig @ns1.example.com example.com AXFRdig @NS DOMAIN IXFR=SERIAL — Fordert einen inkrementellen Zonentransfer ab einer bestimmten Seriennummer an.
dig @ns1.example.com example.com IXFR=2024010101Typische Einsatzmuster
dig +short DOMAIN NS | while read ns; do echo "$ns:"; dig +short @$ns DOMAIN; done — Prüft, ob alle Nameserver dieselbe Antwort liefern.
dig +short example.com NS | while read ns; do echo "$ns:"; dig +short @$ns example.com; donedig +short DOMAIN TXT | grep 'v=spf' — Prüft den SPF-Eintrag einer Domain.
dig +short example.com TXT | grep 'v=spf'dig +short _dmarc.DOMAIN TXT — Prüft die DMARC-Richtlinie einer Domain.
dig +short _dmarc.example.com TXTdig +short SELECTOR._domainkey.DOMAIN TXT — Prüft einen DKIM-Eintrag.
dig +short google._domainkey.example.com TXTdig +noall +answer +ttlid DOMAIN — Prüft die verbleibende TTL eines gecachten Eintrags.
dig +noall +answer example.comdig @ns1.DOMAIN DOMAIN SOA +short — Liest die Zonen-Seriennummer direkt vom autoritativen Server.
dig @ns1.example.com example.com SOA +short Fazit
dig ist unverzichtbar für jeden, der DNS-Probleme schnell diagnostizieren oder Konfigurationen verifizieren muss. Kombiniert mit +short für Skripte und +trace für die vollständige Delegationskette deckt das Tool praktisch jeden DNS-Diagnosefall ab – ohne grafische Oberfläche, ohne unnötige Abhängigkeiten.
Weiterführende Links
- dig – BIND 9 Dokumentation – offizielle Referenz (englisch)
- dig(1) – Manpage – alle Optionen im Überblick (englisch)
- Domain Name System – Wikipedia – Hintergrund und Funktionsweise