DNS
Die wichtigsten Befehle zum Merken
dig NAME A— IPv4-Adressrecords abfragen.dig NAME AAAA— IPv6-Adressrecords abfragen.
Befehle und Optionen
| Argument oder Option | Bedeutung |
|---|---|
example.com |
Reservierte Beispieldomain für diese öffentlichen DNS-Abfragen. |
A / AAAA |
IPv4- beziehungsweise IPv6-Adressrecords anfordern. |
+time=2 / +tries=1 |
Zwei Sekunden Abfrage-Timeout und einen UDP-Versuch festlegen. |
Ohne expliziten Server verwendet dig den konfigurierten Resolver. Abfragen können Caches füllen, ändern aber keine autoritativen Records.
Die entscheidenden Konzepte
1. DNS ordnet Namen typisierte Records zu
DNS, das Domain Name System, speichert Records unter Namen. Ein A-Record enthält eine IPv4-Adresse, AAAA eine IPv6-Adresse. Andere Typen beschreiben Mailrouting, Aliasse oder Dienste.
Ein Name entspricht nicht zwingend einer Maschine. Er kann mehrere Adressen besitzen; verschiedene Namen können eine Adresse teilen. Namensauflösung liefert Adressinformationen. Sie lädt keine Webseite und prüft kein Zertifikat.
2. Resolver beschaffen Antworten von autoritativen Servern
Ein rekursiver Resolver antwortet für Clients anhand seines Caches oder durch Abfragen der DNS-Hierarchie. Autoritative Server veröffentlichen Records ihrer Zonen. Delegierungen verbinden die Hierarchie von der Wurzel zur zuständigen Zone.
Dein Laptop fragt üblicherweise einen Resolver statt jeden autoritativen Server selbst. Split DNS kann innerhalb und außerhalb eines privaten Netzes absichtlich unterschiedliche Antworten liefern. Beachte deshalb, welcher Resolver geantwortet hat.
3. TTL begrenzt Wiederverwendung, nicht Paketlebensdauer
Die TTL eines DNS-Records ist seine Cache-Lebensdauer in Sekunden. Resolver können eine Antwort wiederverwenden, solange ihre verbleibende Gültigkeit reicht. Eine Änderung am autoritativen Record ersetzt nicht sofort jede gespeicherte Antwort.
Diese TTL unterscheidet sich vom Hop-Budget im IP-Header. Eine sinkende DNS-TTL kann Cache-Alterung zeigen, keinen schlechteren Netzwerkpfad. Auch negative Antworten können nach DNS-Regeln gespeichert werden.
4. Eine Antwort und ein Fehler sind verschiedene Beobachtungen
NXDOMAIN bedeutet laut Antwort, dass der abgefragte Name nicht existiert. NOERROR ohne passenden Record kann bedeuten, dass der Name existiert, aber nicht dieser Record-Typ. SERVFAIL bedeutet, dass der Resolver die Abfrage nicht erfolgreich abschließen konnte.
Ein Timeout liefert überhaupt keine DNS-Antwort. Gründe können ein unerreichbarer Resolver, Paketverlust oder Überlastung sein. Erfolgreiches DNS beweist trotzdem nicht, dass die gelieferte Adresse Anwendungsverbindungen annimmt.
Ein kleines Beispiel
Optional: Führe die Abfragen in einem Terminal mit BIND dig aus. Sie kontaktieren deinen konfigurierten DNS-Resolver.
dig example.com A +time=2 +tries=1
dig example.com AAAA +time=2 +tries=1
Lies den Header-status und anschließend die ANSWER SECTION. Records zeigen Name, TTL in Sekunden, Klasse (meist IN), Typ und Wert. Die SERVER-Zeile nennt den Antwortenden, möglicherweise einen lokalen Stub statt des eigentlichen rekursiven Resolvers.
Vergleiche A und AAAA unabhängig. Ein erfolgreicher Lookup garantiert keine Antwort des anderen Typs. Adressen, Anzahlen, TTLs und Laufzeiten können wechseln. Fehlende Records sind nicht automatisch ein Fehler: Prüfe Status und Authority-Abschnitt.
Die Befehle umgehen manche anwendungsspezifischen Auflösungswege. Browser-Caches oder die lokale Hosts-Datei können daher anderes Verhalten erzeugen. Aufräumen ist nicht erforderlich.
Merke dir: DNS beantwortet eine Frage nach Name und Record-Typ. Prüfe Resolver, Status und TTL vor der Anwendung.