🌐 DNS & Infrastruktur

DNS 03: UDP vs. TCP Port 53, Truncation & EDNS0

Lerne, wann DNS von UDP auf TCP umschaltet, wie Truncation (TC=1) funktioniert und warum EDNS0 den Puffer auf 4096 Bytes erweitert.

⚡ 1. Port 53: Wann UDP, wann TCP?

Ein weit verbreiteter Irrglaube ist, DNS laufe ausschließlich über UDP. In der Praxis benötigt jeder vollwertige DNS-Server beide Transportprotokolle auf Port 53:

# 1. Normale Abfrage über UDP (Standard):
dig +bufsize=512 www.it-praxisportal.de

# 2. Explizite Abfrage über TCP erzwingen (+tcp):
dig +tcp www.it-praxisportal.de

# 3. Zonentransfer (AXFR) läuft IMMER über TCP:
dig AXFR @ns1.it-praxisportal.de it-praxisportal.de

📦 2. Das 512-Byte Limit & EDNS0 (RFC 6891)

Historisch passte in Ethernet-Frames (unter Berücksichtigung des minimalen IPv4-MTU von 576 Bytes) nur ein 512-Byte UDP-Payload. Mit der Einführung von DNSSEC (kryptografische 2048-Bit RSA-Schlüssel) reichte dieser Platz nicht mehr aus.

📦 Analogie: Der Briefumschlag und das Paket

Standard UDP: Ein Standard-Briefumschlag (512 Bytes). Passt der Vertrag nicht hinein, schneidet der Postbote die Seiten ab, klebt den Stempel TC=1 (Truncated) drauf und sagt: „Komm bitte mit einem Paketwagen (TCP) wieder!“

EDNS0: Mit EDNS0 schreibt der Empfänger auf den Umschlag: „Ich habe einen großen Briefkasten (4096 Bytes). Du kannst mir dicke Briefe per Standard-Post senden!“

📑 3. Cheat-Sheet: Transport-Entscheidungsmatrix

Szenario Protokoll Grund & Verhalten
Standard-Query (≤ 512 Bytes) UDP / 53 Maximale Performance ohne TCP-Handshake
Antwort > 512 Bytes (ohne EDNS0) UDP -> TCP Server setzt TC=1; Client wiederholt per TCP
Antwort > 512B (mit EDNS0 ≤ 4096B) UDP (EDNS0) Erweiterter Puffer via OPT Pseudo-Record
Zonentransfer (AXFR / IXFR) TCP / 53 Zwingend TCP wegen Zuverlässigkeit & Datenmenge

🎯 Aufgaben & Checkliste in aufgabe.sh

In Web-IDE öffnen → Weiter zu Modul 04 →