# DNS Resolution Deep Dive: Rekursion, Iteration & Resolver

TL;DR / Management Summary DNS-Auflösung ist kein einfacher Call-and-Response Prozess. Wir unterscheiden zwischen rekursiver Auflösung (der Server erledigt die gesamte Arbeit für den Client) und iterativer Auflösung (der Server liefert nur Verweise auf den nächsten Experten in der Kette). Ein Senior Admin nutzt dieses Wissen, um die Performance des Unbound Resolvers (Artikel 579) zu optimieren und Sicherheitsrisiken wie DNS-Amplification-Angriffe durch korrekte Konfiguration der Rekursions-Rechte zu minimieren.


# 1. Die zwei Wege der Auflösung

Machtverteilung im DNS.

# 1. Rekursive Auflösung (Der Dienstleister)

Der Client (Ihr PC) stellt eine rekursive Anfrage an den DNS-Server (z.B. OPNsense).

# 2. Iterative Auflösung (Die Schnitzeljagd)

Der DNS-Server der OPNsense fragt nun andere Server iterativ ab.


# 2. Der Resolver im Rechenzentrum

Unbound vs. Bind.

In einer Proxmox/OPNsense Umgebung nutzen wir meist den Unbound DNS Resolver.


# 3. Deep Dive: DNS Caching-Hierarchie

Vom Browser zum Root.

Bevor ein Paket das LAN verlässt, wird an vielen Stellen gesucht:

  1. Browser Cache (Chrome/Firefox halten eigene Tabellen).
  2. OS Resolver Cache (Windows DNS Client Dienst).
  3. Local DNS Server Cache (Ihre OPNsense).
  4. ISP / Upstream DNS Cache.

# 4. Day-2 Operations: Rekursion einschränken

Sicherheit durch Nachbarschaftshilfe.

Ein DNS-Server, der Rekursion für das gesamte Internet erlaubt, ist ein Open Resolver.


# 5. Troubleshooting & “War Stories”

Wenn die Kette reißt.

# Top 3 Fehlerbilder

  1. Symptom: “Recursion disabled” Fehlermeldung im dig Output.

    • Ursache: ACL am DNS-Server blockiert Ihre IP.
    • Lösung: Allow Query und Allow Recursion Einstellungen prüfen.
  2. Symptom: DNS-Hänger bei der ersten Anfrage, Folgeanfragen sind schnell.

    • Ursache: Iterative Suche dauert zu lange (viele Hops im Internet).
    • Lösung: Nutzen Sie stabile Forwarder (Artikel 579) oder aktivieren Sie “Prefetching” in Unbound.
  3. Symptom: “DNSSEC Validation failed”.

    • Lösung: Zeit-Sync (NTP) prüfen! DNSSEC-Signaturen haben einen Gültigkeitszeitraum.

# “War Story”: Der “Loopback” Fluch

Ein Admin konfigurierte seinen internen Windows-DC so, dass er für externe Domains die OPNsense fragte. Die OPNsense war wiederum so konfiguriert, dass sie für alle Anfragen den Windows-DC fragte. Das Ergebnis: Ein Loop. Eine einzige Anfrage für google.de erzeugte innerhalb von Sekunden tausende Pakete zwischen beiden Servern, bis der DNS-Dienst wegen Überlastung abstürzte. Lehre: Definieren Sie eine Einbahnstraße. Clients -> Windows-DC -> OPNsense -> Internet (Root oder Forwarder). Niemals im Kreis routen!


# 6. Monitoring & Reporting

Statistiken der Auflösung.

# Unbound Statistics (Shell)

Nutzen Sie das Kommando unbound-control stats_noreset.


# 7. Fazit & Empfehlung

Verstehen Sie den Weg des Pakets von der Wurzel bis zur IP.


# Anhang: Cheatsheet (Resolution Check)

Aufgabe Befehl
Iteration verfolgen dig +trace google.de
Authoritativen Server finden dig google.de NS +short
DNSSEC Check dig google.de +dnssec
Cache löschen (Linux) systemd-resolve --flush-caches

# Referenzen