AAAA-Records und IPv6
Ein AAAA-Record ordnet einem Hostnamen eine IPv6-Adresse zu, so wie ein A-Record eine IPv4-Adresse. Hat ein Name beides, entscheidet der Client, welchen Weg er nimmt, und Betriebssysteme bevorzugen IPv6, sobald es verfügbar ist. Viele Mobilfunknetze geben Endgeräten nur noch eine IPv6-Adresse und erreichen IPv4-Ziele über eine Übersetzung beim Provider (DNS64 und NAT64).
beispiel.de. IN A 203.0.113.10
beispiel.de. IN AAAA 2001:db8:10::10
www.beispiel.de. IN AAAA 2001:db8:10::10Warum ein toter AAAA-Record schadet
Der typische Fall: Beim Umzug auf einen neuen Server wird der A-Record umgestellt, der AAAA-Record zeigt weiter auf den alten. Oder der Hoster vergibt eine IPv6-Adresse, der Webserver lauscht aber nur auf IPv4, oder die Firewall lässt Port 443 nur für IPv4 durch.
Wer IPv4 und IPv6 hat, merkt davon kaum etwas: Happy Eyeballs (RFC 8305) versucht beide Wege fast gleichzeitig und nimmt den, der zuerst antwortet. Die Seite lädt, im Büro ist alles grün. In IPv6-only-Mobilfunknetzen dagegen nimmt das Gerät den AAAA-Record direkt; die Übersetzung über NAT64 greift nur, wenn es keinen gibt. Für diese Besucher ist die Seite schlicht nicht erreichbar. Dasselbe gilt für Apps, Skripte und Dienste, die ohne Rückfall auf IPv4 arbeiten.
Was der Check prüft
- AAAA-Records der Domain und von www. Gibst du eine Subdomain ein, etwa shop.beispiel.de, nur die dieses Hosts.
- Jede IPv6-Adresse einzeln: Clients landen auf irgendeiner davon, eine tote unter mehreren genügt für Fehler.
- Keine Antwort oder Serverfehler (5xx) über IPv6: Warnung.
- Weiterleitung auf ein Ziel ohne AAAA-Record: Hinweis. Der Server antwortet über IPv6, schickt die Besucher aber zu einer Adresse, die nur über IPv4 erreichbar ist.
- Keine AAAA-Records: Hinweis. Die Website ist dann nur über IPv4 erreichbar, was dank NAT64 auch für IPv6-only-Netze funktioniert. Im Domain-Check kostet das keine Punkte.
Was „nicht geprüft“ bedeutet
Um eine Website über IPv6 abzurufen, braucht der Prüfstandort selbst eine IPv6-Route. Fehlt sie, listet der Check nur die AAAA-Records und sagt ausdrücklich, dass die Erreichbarkeit über IPv6 nicht geprüft werden konnte. Das ist kein Befund und kostet im Domain-Check keine Punkte; es heißt weder, dass IPv6 funktioniert, noch, dass es kaputt ist. Selbst testen kannst du es von einem Rechner mit IPv6 mit curl -6 -I https://beispiel.de/.
IPv6 richtig einrichten
Die meisten Fehler entstehen nicht beim ersten Einrichten, sondern bei späteren Änderungen am Server:
- Webserver auf beiden Protokollen lauschen lassen: in nginx je eine listen-Zeile für IPv4 und [::], in Apache Listen 443 ohne feste IPv4-Adresse.
- Firewall: IPv4 und IPv6 haben oft getrennte Regeln (iptables und ip6tables, getrennte Einträge in der Hoster-Firewall). Port 80 und 443 müssen in beiden offen sein.
- Virtuelle Hosts: Ein vHost, der an eine IPv4-Adresse gebunden ist, liefert über IPv6 die Standardseite des Servers, oft mit falschem Zertifikat.
- Umzug: A- und AAAA-Record gemeinsam umstellen. Hat der neue Server kein IPv6, den AAAA-Record entfernen statt ihn stehen zu lassen.
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name beispiel.de www.beispiel.de;
}IPv6 dauerhaft überwachen
Ein toter AAAA-Record fällt bei der eigenen Kontrolle fast nie auf, weil Happy Eyeballs ihn überdeckt. Ist IPv6 freigeschaltet, ruft DomainWarn die Websites aller Kundendomains von einem Prüfstandort mit IPv6 über jede IPv6-Adresse ab, im Free-Tarif alle 6 Stunden, sonst stündlich. Vor jedem Befund prüft es den eigenen IPv6-Weg, damit eine Störung beim Prüfstandort keinen Fehlalarm auslöst.
Häufige Fragen
- Muss meine Website über IPv6 erreichbar sein?
- Nein. Ohne AAAA-Record erreichen auch Nutzer in IPv6-only-Netzen die Seite in der Regel über NAT64 beim Provider. Problematisch ist nur ein AAAA-Record, hinter dem nichts antwortet: Er ist schlechter als gar keiner.
- Bei mir lädt die Seite, der Check meldet IPv6 trotzdem als nicht erreichbar?
- Dein Anschluss nutzt vermutlich IPv4, oder der Browser fällt per Happy Eyeballs unbemerkt auf IPv4 zurück. Mit curl -6 https://beispiel.de/ testest du gezielt über IPv6; ohne IPv6 am eigenen Anschluss geht das zum Beispiel von einem Server aus.
- Warum prüft der Check auch www?
- Besucher rufen beide Namen auf, und beide haben oft getrennte Records. Zeigt www per CNAME auf einen Hoster oder ein CDN, kann sein AAAA-Record zu einem ganz anderen Server gehören als der am Apex.