Module 3 · 3.1
A- en AAAA-records
Module 3: Records voor je website · Leestijd: 7 minuten
Leerdoel: Na deze les kun je een naam naar een IPv4- en een IPv6-adres laten wijzen, en weet je wat er misgaat als je het AAAA-record vergeet.
Kernbegrippen: A-record, AAAA-record, IPv4, IPv6, meerdere A-records, documentatieadressen
Het meest gebruikte record
Wil iemand je website bezoeken, dan moet de browser weten op welk adres de server staat. Dat adres is een IP-adres, en het record dat een naam aan dat adres koppelt heet het A-record (A van address). Het is het oudste en meest gebruikte record in de DNS.
Een A-record ziet er in een zone zo uit:
example.com. 3600 IN A 192.0.2.10
www.example.com. 3600 IN A 192.0.2.10Lees het van links naar rechts: de naam example.com., mag 3600 seconden onthouden worden, in de klasse internet (IN, die zie je bijna nooit anders), type A, waarde 192.0.2.10.
Een A-record wijst altijd naar een IPv4-adres: vier getallen van 0 tot 255, gescheiden door punten. Er bestaan ongeveer 4,3 miljard van die adressen, en dat is te weinig voor alle apparaten op aarde. Daarom is er IPv6.
AAAA: hetzelfde, maar voor IPv6
Een IPv6-adres is veel langer: acht groepen van vier hexadecimale tekens, gescheiden door dubbele punten. Opeenvolgende groepen met alleen nullen mag je één keer vervangen door ::. Het record dat een naam aan een IPv6-adres koppelt heet het AAAA-record, uitgesproken als "quad-A". De naam komt doordat een IPv6-adres vier keer zo lang is als een IPv4-adres (128 bits tegenover 32).
example.com. 3600 IN AAAA 2001:db8::10
www.example.com. 3600 IN AAAA 2001:db8::10Een naam mag allebei hebben: een A-record én een AAAA-record. Dat is zelfs de normale situatie bij moderne hosting. Een bezoeker met een IPv6-verbinding (steeds meer thuisnetwerken en bijna alle mobiele netwerken) gebruikt dan meestal het AAAA-record, een bezoeker zonder IPv6 het A-record.
In deze cursus gebruiken we de adressen 192.0.2.x, 198.51.100.x en 203.0.113.x voor IPv4 en 2001:db8:: voor IPv6. Die zijn speciaal gereserveerd voor documentatie (RFC 5737 en RFC 3849): ze worden nooit aan een echte server gegeven, dus een voorbeeld kan nooit per ongeluk naar iemands server wijzen.
De valkuil: het vergeten AAAA-record
Dit gaat in de praktijk vaak mis. Je verhuist je website naar een nieuwe server, of je koppelt je domein aan een webwinkelplatform. Je past het A-record netjes aan naar het nieuwe adres. Maar er stond ook nog een AAAA-record naar de oude server, en dat laat je staan.
Het gevolg: bezoekers zonder IPv6 zien de nieuwe site, bezoekers met IPv6 (vaak iedereen op 4G of 5G) zien de oude site, of een foutmelding als de oude server al weg is. En omdat jij thuis misschien geen IPv6 hebt, zie jij niets vreemds. "Op mijn laptop werkt het, op mijn telefoon niet" is een klassiek teken.
De regel is dus: wijzig je het A-record, kijk dan altijd ook naar het AAAA-record. Er zijn drie mogelijkheden:
- De nieuwe server heeft ook een IPv6-adres: zet het AAAA-record op dat nieuwe adres.
- De nieuwe server heeft geen IPv6: verwijder het oude AAAA-record.
- Er was geen AAAA-record: dan hoef je niets te doen.
Meerdere A-records voor één naam
Een naam mag meer dan één A-record hebben:
example.com. 300 IN A 192.0.2.10
example.com. 300 IN A 192.0.2.11De DNS geeft dan beide adressen terug, en de browser kiest er een. Grote sites gebruiken dat om bezoekers over meerdere servers te verdelen of om door te kunnen draaien als er een uitvalt. Voor een gewone website wil je dat meestal niet: als een van de twee adressen een oude server is, krijgt de helft van je bezoekers de verkeerde site. Platforms zoals webwinkelbouwers vragen daarom vaak expliciet: "zorg dat er maar één A-record op je domein staat".
Wat er in een A-record wel en niet mag
- De waarde is altijd een IP-adres, nooit een naam. Wil je een naam naar een andere naam laten wijzen, dan heb je een CNAME nodig (les 3.2).
- Achter een IP-adres zet je geen punt. De punt aan het eind hoort alleen bij namen (les 2.2).
- Een A-record bevat geen poort en geen pad.
192.0.2.10:8080of192.0.2.10/shopkan niet. De DNS weet alleen waar een server staat, niet welke pagina je wilt zien (les 3.4). - Voor de naam van het domein zelf gebruik je in de meeste panelen
@of laat je het naamveld leeg. Voor een subdomein vul je alleen het eerste deel in, zoalswwwofshop.
In de praktijk: zo ziet het eruit in een paneel
Als voorbeeld gebruiken we DirectAdmin, een veelgebruikt hostingpaneel. Andere panelen (cPanel, Plesk, Cloudflare en de DNS-schermen van de meeste registrars) noemen de knoppen anders, maar de velden zijn overal dezelfde: type, naam, TTL en waarde.
- Open DNS Beheer en kies het juiste domein.
- Klik op Record toevoegen.
- Kies bij het type A (of AAAA voor IPv6).
- Vul bij Naam alleen het eerste deel in, bijvoorbeeld
shopvoorshop.example.com. Voor het domein zelf laat je het leeg of typ je@. - Laat de TTL op de standaardwaarde staan, bijvoorbeeld 3600.
- Vul bij Waarde het IP-adres in, bijvoorbeeld
203.0.113.10. - Sla op.
Een bestaand record wijzigen gaat met het potlood achter het record. Controleer daarna in dezelfde lijst of er nog een AAAA-record voor dezelfde naam staat.
Samenvatting
- Een A-record koppelt een naam aan een IPv4-adres, een AAAA-record aan een IPv6-adres.
- Een naam mag allebei hebben; dat is bij moderne hosting normaal.
- Wijzig je het A-record, controleer dan altijd het AAAA-record: anders zien IPv6-bezoekers de oude server.
- De waarde is altijd een IP-adres, zonder punt, poort of pad.
- Meerdere A-records voor één naam kan, maar is voor een gewone website meestal een fout.
Quiz
Opdracht
Z3.1 (opzoeken): Zoek het IPv4-adres (A) en het IPv6-adres (AAAA) van wikipedia.org op. Vul beide adressen in. Heeft wikipedia.org er meer dan één, dan is één ervan genoeg.
O3.1 (instellen): Maak in je oefenzone twee records voor de naam web:
- een A-record met de waarde
192.0.2.10 - een AAAA-record met de waarde
2001:db8::10
Klik daarna op Controleren.
Verder lezen
Deze artikelen beschrijven de stappen in de panelen van WebOké; in andere panelen werken ze vergelijkbaar.
