Protokoll und Nachrichten

In dieser interaktiven Lerneinheit tauchst du tief in den Aufbau von DNS-Nachrichten ein und lernst die verschiedenen Abschnitte wie Header, Question und Answer kennen. Du verstehst, wie DNS-Nachrichten strukturiert sind und wie die einzelnen Komponenten zusammenspielen - ein wichtiges Grundlagenwissen für die Analyse und Fehlersuche in DNS-Systemen.

Einführung

Du rufst eine Webseite auf – und nichts passiert. Dein Gerät ist mit dem Internet verbunden, aber die Seite lädt nicht. Die Fehlermeldung lautet: DNS-Adresse konnte nicht gefunden werden.

Ohne DNS keine Verbindung. Doch wie genau funktioniert eine DNS-Anfrage? Was unterscheidet rekursive von iterativen Anfragen? Und wie sorgen moderne Erweiterungen wie EDNS dafür, dass auch komplexe Anforderungen wie DNSSEC oder große Datenmengen verarbeitet werden können?

Diese Lerneinheit vermittelt dir genau das: das technische Fundament, das du brauchst, um DNS-Prozesse zu verstehen und analysieren zu können.

Lernziele

Nach dieser Lerneinheit kannst du:

  • den Aufbau einer DNS-Nachricht beschreiben und die Funktion jedes Abschnitts (Header, Question, Answer, Authority, Additional) erklären,
  • zwischen rekursiven und iterativen DNS-Anfragen unterscheiden und ihren Ablauf analysieren,
  • die verschiedenen Typen von DNS-Antworten (autoritative, nicht-autoritative, Referral) erkennen und einordnen,
  • die Rolle und Funktionsweise von EDNS (EDNS0) erläutern und dessen Bedeutung für moderne DNS-Kommunikation bewerten.

Überleitung

Wenn ein Gerät im Internet eine Domain wie example.com auflösen möchte, wird eine DNS-Nachricht verschickt. Diese Nachricht ist das zentrale Kommunikationsmittel im Domain Name System und ermöglicht die Übersetzung zwischen Domainnamen und IP-Adressen. Damit diese Kommunikation funktioniert, ist jede DNS-Nachricht klar strukturiert.

Aufbau einer DNS-Nachricht

Jede DNS-Nachricht besteht aus fünf standardisierten Abschnitten. Sie treten sowohl bei Anfragen als auch bei Antworten auf:

AbschnittBeschreibung
HeaderEnthält Steuerinformationen zur Nachricht (z. B. ID, Flags, Anzahl der Felder)
QuestionBeschreibt die eigentliche DNS-Anfrage (z. B. angefragter Domainname, Typ)
AnswerEnthält die Antwort(en) auf die Anfrage, z. B. IP-Adresse(n)
AuthorityVerweist auf autoritative Nameserver für die angefragte Domain
AdditionalLiefert Zusatzinformationen, z. B. IP-Adressen der Nameserver zur Beschleunigung der Auflösung

Diese Struktur ermöglicht eine skalierbare und flexible Kommunikation innerhalb des DNS-Systems.

Der Header – Steuerzentrale der DNS-Nachricht

Der Header umfasst genau 12 Byte und enthält zentrale Steuerinformationen:

  • Transaction ID: Eindeutige Kennung zur Zuordnung von Anfrage und Antwort
  • Flags: Binäre Steuerbits (z. B. Anfrage/Antwort, rekursiv ja/nein, DNSSEC)
  • Counts: Je ein Zähler für die folgenden vier Abschnitte (Anzahl an Fragen, Antworten etc.)

Der Header legt fest, wie die restliche Nachricht interpretiert wird.

Der Question-Abschnitt – Was wird gefragt?

Hier gibst du an, was du wissen möchtest:

  • QNAME: Der vollständige Domainname (z. B. www.example.com)
  • QTYPE: Der gesuchte Record-Typ (z. B. A für IPv4, AAAA für IPv6, MX für Mailserver)
  • QCLASS: Meist „IN“ für Internet

Beispiel: Du möchtest die IPv4-Adresse von example.com, also wird QTYPE = A.

Der Answer-Abschnitt – Die Antwort(en) zur Anfrage

Hier steht das Ergebnis deiner Anfrage. Ein Resource Record (RR) besteht aus:

  • NAME: Der Name, auf den sich der Eintrag bezieht
  • TYPE & CLASS: Typ des Eintrags (A, MX …) und Datenklasse (meist IN)
  • TTL: Wie lange diese Antwort gültig ist (in Sekunden)
  • RDLENGTH & RDATA: Länge und Inhalt der Antwort (z. B. IP-Adresse)

Ein A-Record könnte z. B. als Antwort 93.184.216.34 enthalten.

Authority & Additional – Weiterleitungen und Hilfsinfos

  • Authority: Enthält die autoritativen Nameserver für die Domain. Besonders bei rekursiven Abfragen wichtig, um herauszufinden, welcher Server als Nächstes gefragt werden muss.
  • Additional: Liefert direkte Zusatzinfos wie die IP-Adressen dieser Nameserver, um weitere Auflösungen zu sparen.

Beispiel einer vollständigen Kommunikation

Eine DNS-Anfrage zu example.com startet mit einem Header und einem Question-Teil. Die Antwort vom Server enthält dann wieder einen Header (angepasst), die zurückgespiegelte Frage und typischerweise einen A-Record im Answer-Abschnitt. Dazu können Hinweise auf den zuständigen Nameserver im Authority-Teil sowie die IP-Adresse dieses Servers im Additional-Teil folgen.

Transportprotokolle für DNS: UDP, TCP und EDNS0

DNS-Nachrichten werden über Netzwerkprotokolle übertragen. Standardmäßig kommt UDP zum Einsatz, bei Bedarf auch TCP oder EDNS0.

a) UDP (User Datagram Protocol)

  • Port: 53 (Standardport für DNS)
  • Verbindungsart: Verbindungslos, kein Aufbau nötig
  • Vorteil: Schnell, wenig Overhead
  • Limit: Maximal 512 Byte große Nachrichten (ohne EDNS0)

b) TCP (Transmission Control Protocol)

  • Einsatz: Wenn Nachrichten zu groß für UDP sind oder bei Zonentransfers
  • Merkmal: Verbindungsorientiert, zuverlässiger Datenstrom
  • Beispiel: AXFR (Zone Transfer)

c) EDNS0 (Extension Mechanisms for DNS)

  • Ziel: Überwindung der 512-Byte-Grenze bei UDP
  • Vorteil: Ermöglicht größere Nachrichten (z. B. 4096 Byte), DNSSEC und moderne Erweiterungen
  • Hinweis: Muss von Client und Server unterstützt werden

Best Practices für die DNS-Kommunikation

  • UDP zuerst: Für Performance bei Standardabfragen
  • Fallback auf TCP: Wenn Nachrichten zu groß oder kritisch sind
  • EDNS0 aktivieren: Für DNSSEC und moderne Anforderungen

Diese Kombination sorgt für schnelle, zuverlässige und zukunftsfähige Namensauflösung im Internet.

⏳ Lädt Dataview-Inhalt...

Überleitung

Im Domain Name System (DNS) läuft jede Namensauflösung über strukturierte Anfragen und Antworten. Ein Client – oft dein Betriebssystem oder ein lokaler Resolver – stellt eine DNS-Anfrage, um eine IP-Adresse zu einem Domainnamen zu bekommen. Die Antwort enthält die gesuchten Informationen – oder Hinweise, wo sie zu finden sind.

Rekursive vs. Iterative DNS-Anfragen

Rekursive Anfrage

Bei einer rekursiven DNS-Anfrage übernimmt der DNS-Server die komplette Auflösung. Wenn er die Antwort nicht kennt, fragt er andere Server in der DNS-Hierarchie (Root → TLD → autoritativer Server), bis er das Ergebnis hat und es dem Client zurückmeldet.

Typisch bei Endgeräten, die an einen lokalen DNS-Resolver angebunden sind.

Iterative Anfrage

Bei einer iterativen Anfrage fragt der Client selbst Schritt für Schritt weiter. Der angefragte DNS-Server liefert nur Verweise auf andere Server, aber keine direkte Antwort.

Typisch bei öffentlichen Resolvern, die im Auftrag des Clients selbst iterieren.

Antworttypen im DNS

Autoritative Antwort

Der Server ist für die angefragte Domain verantwortlich und liefert eine verbindliche Antwort direkt aus seiner Zonendatei.

Nicht-autoritative Antwort

Der Server liefert eine Antwort aus seinem Cache. Diese ist schneller verfügbar, aber möglicherweise nicht mehr aktuell.

Verweis (Referral)

Der Server kennt die Antwort nicht, verweist aber auf andere zuständige Server – z. B. ein Root-Server auf den TLD-Server .com.

Nachrichtenformat von Anfragen und Antworten

DNS-Anfragen und -Antworten nutzen das bekannte Format, das aus fünf Abschnitten besteht:

  1. Header – Steuerinformationen, z. B. Anzahl der Fragen, Antworten etc.
  2. Question – Enthält den Domainnamen und den Record-Typ (z. B. A, MX)
  3. Answer – Die eigentliche(n) Antwort(en) auf die Anfrage
  4. Authority – Angabe zuständiger Nameserver
  5. Additional – Ergänzende Informationen, z. B. IP-Adressen von Nameservern

Praktisches Beispiel: Was passiert bei einer DNS-Anfrage?

Fall: Du gibst example.com in deinen Browser ein.

  1. Dein Gerät sendet eine rekursive Anfrage an den konfigurierten DNS-Server.
  2. Der Server fragt nötigenfalls weiter (Root → TLD → autoritativ).
  3. Am Ende bekommst du einen A-Record: z. B. 93.184.216.34.

Die Antwort kann weitere Einträge enthalten – etwa Verweise auf Nameserver (Authority) oder deren IPs (Additional).

EDNS (Extension Mechanisms for DNS)

Das ursprüngliche DNS-Protokoll war technisch eingeschränkt – insbesondere durch die Begrenzung von UDP-Nachrichten auf 512 Byte. EDNS (Extended DNS) wurde eingeführt, um diese Limitation zu umgehen und das Protokoll erweiterbar zu machen.

Warum EDNS?

  • Moderne Anforderungen wie DNSSEC oder Clientinformationen benötigen mehr Platz.
  • Das alte DNS-Protokoll bot kaum Möglichkeiten für Erweiterungen.

EDNS (Extension Mechanisms for DNS)

Hauptfunktionen von EDNS0

  • Größere UDP-Pakete: Bis zu 4096 Byte (oder mehr) pro Nachricht
  • Option-Codes: Für zusätzliche Funktionen wie Cookies, Subnetze
  • Versionierung: Aktuell ist nur Version 0 (EDNS0) in Nutzung

Fallback-Mechanismus

Falls ein DNS-Server EDNS nicht unterstützt:

  • Sendet er eine Fehlermeldung (Format Error / FORMERR)
  • Der Client stellt die gleiche Anfrage ohne EDNS erneut

EDNS (Extension Mechanisms for DNS)

EDNS-Cookies

EDNS unterstützt Cookies, um Spoofing zu erschweren:

  • Client und Server generieren Prüfwerte
  • Nur wenn diese passen, wird die Antwort akzeptiert

Beispiel: EDNS im Einsatz

Ein Resolver sendet eine DNS-Anfrage mit EDNS0 und gibt 4096 Byte als maximale UDP-Größe an. Der Server erkennt das und sendet eine Antwort mit umfangreichen DNSSEC-Daten – sicher und effizient, obwohl sie größer als 512 Byte ist.

⏳ Lädt Dataview-Inhalt...

Zusammenfassung und Ausblick

Zusammenfassung:

In dieser Lerneinheit hast du die zentralen Mechanismen der DNS-Kommunikation kennengelernt. Du weißt jetzt, wie DNS-Nachrichten strukturiert sind und wie Clients mit Servern kommunizieren, um Domainnamen in IP-Adressen aufzulösen.

Kernerkenntnisse:

  • DNS-Nachrichten bestehen aus fünf standardisierten Abschnitten: Header, Question, Answer, Authority und Additional. Diese Struktur kommt sowohl bei Anfragen als auch bei Antworten zum Einsatz.

  • Es gibt zwei grundsätzliche Anfragetypen:

    • Rekursiv: Der DNS-Server übernimmt die gesamte Auflösung.
    • Iterativ: Der Client fragt sich schrittweise durch die DNS-Hierarchie.
  • Die Antworttypen umfassen autoritative Antworten, nicht-autoritative (aus dem Cache) und Verweise auf andere Nameserver.

  • Das Protokoll nutzt primär UDP für schnelle Abfragen, fällt aber bei Bedarf auf TCP zurück – z. B. bei Zonentransfers oder großen Nachrichten.

  • Mit EDNS (EDNS0) lassen sich die Limitierungen klassischer DNS-Kommunikation (z. B. 512-Byte-Grenze) überwinden. EDNS ermöglicht moderne Funktionen wie DNSSEC, erweiterte Optionen und größere Nachrichten.

Diese Grundlagen sind entscheidend, um DNS-Kommunikation zu verstehen, Probleme zu analysieren oder eigene DNS-Dienste sicher und effizient zu konfigurieren.

Ausblick:

Im nächsten Abschnitt lernst du, wie DNS-Daten organisiert, delegiert und gepflegt werden. Du wirst verstehen, wie Zonen definiert sind, wie Primary- und Secondary-Server zusammenarbeiten und welche Rolle Zonentransfers und SOA-Records dabei spielen. Das ist die Grundlage für den Aufbau eines autoritativen DNS-Servers und den sicheren Betrieb eigener Domains.