⚡ Resource Records

DNS 06: CNAME Alias & das Zone-Apex Problem

Verstehe die strikte RFC-Koexistenzregel für CNAMEs, warum CNAME auf der Root-Domain (@) verboten ist und wie ALIAS-Records das Problem lösen.

🔗 1. Wie ein CNAME funktioniert

Ein CNAME (Canonical Name) ist ein reiner Verweiszeiger. Er enthält selbst keine IP-Adresse, sondern leitet den Resolver an ein anderes Ziel weiter:

# BIND Zonendatei:
shop      IN  CNAME  stores.shopify.com.     # shop.firma.de -> stores.shopify.com
webmail   IN  CNAME  mail.google.com.        # webmail.firma.de -> mail.google.com

💥 2. Das Zone-Apex Problem & RFC 1912

⚠️ Die eiserne Regel: Keine Koexistenz für CNAMEs

Ein CNAME darf niemals mit anderen Record-Typen auf demselben Node koexistieren! Da auf der Hauptdomain @ aber zwingend SOA und NS liegen müssen, ist ein CNAME auf @ standardwidrig und zerstört die Namensauflösung der gesamten Zone.

; ❌ SCHWERER FEHLER (Zonendatei lädt nicht in BIND):
@         IN  SOA    ns1.firma.de. admin.firma.de. (...)
@         IN  NS     ns1.firma.de.
@         IN  CNAME  d12345.cloudfront.net.  ; KOLLISION MIT SOA/NS!

; ✅ KORREKTE PRAXIS:
@         IN  A      192.0.2.1               ; Feste IP am Apex
www       IN  CNAME  d12345.cloudfront.net.  ; CNAME auf Subdomain www

📑 3. Cheat-Sheet: CNAME Dos & Don'ts

Regel Status Erklärung & RFC-Grund
blog IN CNAME ... ERLAUBT Reine Subdomain ohne andere Records
@ IN CNAME ... VERBOTEN Zone-Apex kollidiert mit SOA und NS Records (RFC 1912)
sub IN CNAME + sub IN TXT VERBOTEN Keine Koexistenz von CNAME mit anderen Daten
Ziel ohne Schlusspunkt . GEFÄHRLICH BIND hängt Zonennamen an: target.com.firma.de.

🎯 Aufgaben & Checkliste in aufgabe.sh

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