← Zurück zum Wiki
Wie DNS funktioniert Record-Typen Intern vs. extern Fehlersuche DNS-Sicherheit

Wie DNS funktioniert

Vom Namen zur IP, die verteilte Datenbank des Internets.

Rekursiv vs. iterativ

DNS übersetzt Namen (www.example.com) in IP-Adressen. Der Client fragt seinen rekursiven Resolver (z. B. den DNS-Server im Router oder einen internen DNS). Dieser übernimmt die ganze Arbeit und liefert am Ende die fertige Antwort zurück, das ist die rekursive Abfrage.

Der Resolver selbst arbeitet iterativ: Er fragt sich von oben durch die Hierarchie:

  1. Root-Server (·), kennt die zuständigen TLD-Server.
  2. TLD-Server (.com), kennt die autoritativen Nameserver der Domain.
  3. Autoritativer Nameserver (example.com), liefert den tatsächlichen Record.

Jede Ebene verweist auf die nächste, bis der autoritative Server die verbindliche Antwort gibt.

Caching & TTL

Damit nicht jede Anfrage die ganze Kette durchläuft, wird jede Antwort zwischengespeichert (Caching). Wie lange, bestimmt die TTL (Time To Live) in Sekunden, die im Record hinterlegt ist:

  • Hohe TTL (z. B. 86400 = 24 h): weniger Anfragen, schnelle Auflösung, aber Änderungen brauchen lange, bis sie überall greifen.
  • Niedrige TTL (z. B. 300 = 5 min): Änderungen wirken schnell, mehr Last. Vor einer geplanten Umstellung (Migration, IP-Wechsel) die TTL vorab senken.

Wichtig: Der Resolver und das Betriebssystem cachen unabhängig. Nach einer Änderung sieht man Altes oft noch aus dem lokalen Cache, daher beim Testen den Cache leeren (siehe Fehlersuche).

💡
Faustregel für Migrationen: TTL 24–48 h vorher auf 300 s senken, umstellen, prüfen, danach wieder erhöhen. So minimierst du das Zeitfenster, in dem Clients noch die alte IP nutzen.

Record-Typen

Die Bausteine einer DNS-Zone, jeder Typ mit Zweck und Beispiel.

Typ Zweck Beispiel
A Name → IPv4-Adresse www.example.com. A 203.0.113.10
AAAA Name → IPv6-Adresse www.example.com. AAAA 2001:db8::10
CNAME Alias auf einen anderen Namen (nie am Zone-Apex, nie neben anderen Records) shop.example.com. CNAME www.example.com.
MX Mailserver der Domain, mit Priorität (kleinere Zahl = höher) example.com. MX 10 mail.example.com.
TXT Freitext, u. a. SPF, DKIM, DMARC, Domain-Verifizierung example.com. TXT "v=spf1 mx -all"
NS Autoritative Nameserver der Zone / Delegation example.com. NS ns1.provider.net.
SOA Start of Authority, Zonen-Metadaten (Primary-NS, Serial, Refresh, TTL) example.com. SOA ns1… hostmaster… (Serial …)
PTR Reverse-Lookup: IP → Name (in in-addr.arpa / ip6.arpa) 10.113.0.203.in-addr.arpa. PTR mail.example.com.
SRV Dienst-Lokalisierung (Protokoll, Port, Ziel), z. B. AD, SIP, XMPP _sip._tcp.example.com. SRV 10 5 5060 sip.example.com.
CAA Legt fest, welche CA Zertifikate für die Domain ausstellen darf example.com. CAA 0 issue "letsencrypt.org"

Häufige Stolperfallen

  • CNAME am Apex: ein CNAME darf nicht auf der „nackten" Domain (example.com) stehen, weil dort schon SOA/NS liegen. Provider bieten dafür „ALIAS"/„ANAME"-Records an.
  • PTR gehört dem IP-Inhaber: Reverse-Records verwaltet i. d. R. der Provider/Hoster des IP-Bereichs, nicht der Domain-Inhaber, relevant für die Mail-Zustellbarkeit.
  • Trailing Dot: voll qualifizierte Namen enden in der Zonendatei mit einem Punkt (mail.example.com.), sonst wird die Zone angehängt.

Records erzeugen und Mail-Records prüfen: siehe die Tools DNS-Record-Generator und DNS-Lookup.

Interne vs. externe DNS

Warum drinnen andere Antworten kommen als draußen, Split-Horizon.

Split-Horizon (Split-DNS)

Beim Split-Horizon-DNS liefert der Server je nach Herkunft der Anfrage unterschiedliche Antworten. Beispiel: portal.firma.de löst intern auf die private LAN-IP (10.0.30.20) auf, extern auf die öffentliche IP der Firewall. So erreichen interne Clients den Dienst direkt, ohne den Umweg über das Internet („Hairpin/NAT-Loopback"), und die interne Struktur bleibt außen verborgen.

AD-integriertes DNS

In Windows-Domänen ist DNS die Grundlage von Active Directory: Domänencontroller registrieren ihre Dienste über SRV-Records (z. B. _ldap._tcp.dc._msdcs.firma.local), die Clients zur DC-Lokalisierung nutzen. Wichtig:

  • Domänen-Clients müssen den internen AD-DNS als primären Resolver haben, niemals direkt öffentliche Resolver (8.8.8.8 etc.), sonst finden sie die Domäne nicht.
  • Der interne DNS leitet unbekannte (externe) Namen per Forwarder an einen Upstream-Resolver weiter.
  • AD-integrierte Zonen replizieren automatisch zwischen allen DCs und erlauben sichere dynamische Updates.
⚠️
Klassischer Fehler: ein Domänen-Client bekommt per DHCP zusätzlich einen öffentlichen DNS-Server. Sobald der zuerst antwortet, brechen Anmeldung, GPOs und Freigaben scheinbar zufällig ab. In der Domäne ausschließlich interne DNS-Server verteilen.

Fehlersuche

Auflösung gezielt prüfen, nslookup, Resolve-DnsName und dig.

Windows, nslookup

Schneller Standard-Check. Wichtig: einen bestimmten Server gezielt abfragen, um Caching zu umgehen.

# A-Record über den Standard-Resolver nslookup www.example.com # Gezielt einen bestimmten Nameserver fragen nslookup www.example.com 1.1.1.1 # Bestimmten Record-Typ (z. B. MX) abfragen nslookup -type=MX example.com # Reverse-Lookup (PTR) nslookup 203.0.113.10

Windows / PowerShell, Resolve-DnsName

Moderner und skriptfreundlicher als nslookup, umgeht optional den lokalen Cache.

# A- und AAAA-Records Resolve-DnsName www.example.com # Nur MX-Records Resolve-DnsName example.com -Type MX # Direkt beim autoritativen Server, ohne Cache Resolve-DnsName www.example.com -Server 1.1.1.1 -DnsOnly # Lokalen DNS-Cache anzeigen / leeren Get-DnsClientCache Clear-DnsClientCache

Linux / macOS, dig

Das Standardwerkzeug für DNS-Analyse. +short für knappe Ausgabe, +trace folgt der Delegation von der Root an.

# A-Record, knappe Ausgabe dig www.example.com +short # MX-Records dig example.com MX +short # Gezielt einen Resolver fragen dig @1.1.1.1 www.example.com # Auflösung von der Root-Zone an nachverfolgen dig example.com +trace # Reverse-Lookup dig -x 203.0.113.10 +short
🧪
Vergleicht ein Client eine andere Antwort als der autoritative Server, liegt es fast immer am Caching: OS-Cache (ipconfig /flushdns bzw. Clear-DnsClientCache) und den Resolver-Cache berücksichtigen. Mit @server bzw. -Server gezielt am autoritativen NS gegenprüfen.

DNS-Sicherheit

Antworten absichern und Anfragen verschlüsseln.

DNSSEC, Integrität der Antworten

DNSSEC signiert DNS-Einträge kryptografisch. Ein validierender Resolver kann so prüfen, dass eine Antwort wirklich vom zuständigen autoritativen Server stammt und unterwegs nicht manipuliert wurde (Schutz gegen Cache-Poisoning/Spoofing). DNSSEC verschlüsselt nicht, es garantiert nur Echtheit und Unversehrtheit. Die Vertrauenskette läuft über DS-Records vom Parent zur Zone (Chain of Trust bis zur Root).

DoH & DoT, Vertraulichkeit der Anfragen

  • DoT (DNS over TLS, Port 853): verschlüsselt die DNS-Anfrage in einem eigenen TLS-Tunnel. Als DNS erkennbar, dadurch im Netz filterbar/blockierbar.
  • DoH (DNS over HTTPS, Port 443): verpackt DNS in normalen HTTPS-Verkehr, kaum von Web-Traffic zu unterscheiden. Gut für Privatsphäre, aber im Unternehmen problematisch, weil es interne DNS-Richtlinien und -Filter umgehen kann.

Im Firmennetz DoH auf Clients meist gezielt deaktivieren, damit die Auflösung über den kontrollierten internen DNS läuft. DNSSEC dagegen kann man serverseitig aktivieren, ohne die Clients zu ändern.

🔒
Merke: DNSSEC = Echtheit der Antwort, DoH/DoT = Vertraulichkeit der Anfrage. Sie ergänzen sich, ersetzen sich aber nicht.