A- og AAAA-records
Modul 3: Records til din hjemmeside · Læsetid: 7 minutter
Læringsmål: Efter denne lektion kan du lade et navn pege mod en IPv4- og en IPv6-adresse, og du ved hvad der går galt, hvis du glemmer AAAA-recorden.
Nøglebegreber: A-record, AAAA-record, IPv4, IPv6, flere A-records, dokumentationsadresser
Den mest brugte record
Vil nogen besøge din hjemmeside, skal browseren vide hvilken adresse serveren har. Den adresse er en IP-adresse, og recorden der kobler et navn til den adresse hedder A-record (A for address). Det er den ældste og mest brugte record i DNS.
En A-record ser sådan ud i en zone:
example.com. 3600 IN A 192.0.2.10
www.example.com. 3600 IN A 192.0.2.10Læs den fra venstre mod højre: navnet example.com., må huskes i 3600 sekunder, i klassen internet (IN, som du næsten aldrig ser anderledes), type A, værdi 192.0.2.10.
En A-record peger altid mod en IPv4-adresse: fire tal fra 0 til 255, adskilt af punktummer. Der findes cirka 4,3 milliarder af disse adresser, og det er for lidt til alle enheder på jorden. Derfor findes IPv6.
AAAA: det samme, men til IPv6
En IPv6-adresse er meget længere: otte grupper af fire hexadecimale tegn, adskilt af kolon. Flere på hinanden følgende grupper med kun nuller må du erstatte med :: én gang. Recorden der kobler et navn til en IPv6-adresse hedder AAAA-record, udtales som "quad-A". Navnet kommer af, at en IPv6-adresse er fire gange så lang som en IPv4-adresse (128 bit mod 32).
example.com. 3600 IN AAAA 2001:db8::10
www.example.com. 3600 IN AAAA 2001:db8::10Et navn må have begge dele: både en A-record og en AAAA-record. Det er endda den normale situation ved moderne hosting. En besøgende med en IPv6-forbindelse (flere og flere hjemmenetværk og næsten alle mobilnetværk) bruger så som regel AAAA-recorden, en besøgende uden IPv6 bruger A-recorden.
I dette kursus bruger vi adresserne 192.0.2.x, 198.51.100.x og 203.0.113.x til IPv4 og 2001:db8:: til IPv6. De er specielt reserveret til dokumentation (RFC 5737 og RFC 3849): de bliver aldrig givet til en rigtig server, så et eksempel kan aldrig ved et uheld pege mod en bestemt persons server.
Faldgruben: den glemte AAAA-record
Dette går ofte galt i praksis. Du flytter din hjemmeside til en ny server, eller du kobler dit domæne til en webshop-platform. Du opdaterer pænt A-recorden til den nye adresse. Men der stod også en AAAA-record til den gamle server, og den lader du blive stående.
Konsekvensen: besøgende uden IPv6 ser den nye side, besøgende med IPv6 (ofte alle på 4G eller 5G) ser den gamle side, eller en fejlmeddelelse hvis den gamle server allerede er lukket ned. Og fordi du måske ikke har IPv6 derhjemme, ser du ikke noget mærkeligt. "På min bærbare virker det, på min telefon ikke" er et klassisk tegn.
Reglen er altså: ændrer du A-recorden, så tjek altid også AAAA-recorden. Der er tre muligheder:
- Den nye server har også en IPv6-adresse: sæt AAAA-recorden til den nye adresse.
- Den nye server har ingen IPv6: fjern den gamle AAAA-record.
- Der var ingen AAAA-record: så behøver du ikke gøre noget.
Flere A-records for ét navn
Et navn må have mere end én A-record:
example.com. 300 IN A 192.0.2.10
example.com. 300 IN A 192.0.2.11DNS'en giver så begge adresser tilbage, og browseren vælger en. Store sider bruger det til at fordele besøgende over flere servere eller til at kunne fortsætte med at køre, hvis en falder ud. For en almindelig hjemmeside vil du som regel ikke have det: hvis en af de to adresser er en gammel server, får halvdelen af dine besøgende den forkerte side. Platforme som webshop-byggere beder derfor ofte eksplicit om: "sørg for at der kun står én A-record på dit domæne".
Hvad der må og ikke må stå i en A-record
- Værdien er altid en IP-adresse, aldrig et navn. Vil du have et navn til at pege mod et andet navn, skal du bruge en CNAME (lektion 3.2).
- Efter en IP-adresse sætter du ikke et punktum. Punktummet til sidst hører kun til navne (lektion 2.2).
- En A-record indeholder ingen port og ingen sti.
192.0.2.10:8080eller192.0.2.10/shopkan ikke lade sig gøre. DNS'en ved kun hvor en server er, ikke hvilken side du vil se (lektion 3.4). - For navnet på selve domænet bruger du i de fleste paneler
@eller lader navnefeltet stå tomt. For et subdomæne udfylder du kun den første del, somwwwellershop.
I praksis: sådan ser det ud i et panel
Som eksempel bruger vi DirectAdmin, et meget brugt hostingpanel. Andre paneler (cPanel, Plesk, Cloudflare og DNS-skærmene hos de fleste registrarer) kalder knapperne noget andet, men felterne er de samme overalt: type, navn, TTL og værdi.
- Åbn DNS-administration og vælg det rigtige domæne.
- Klik på Tilføj post.
- Vælg typen A (eller AAAA til IPv6).
- Udfyld kun den første del i Navn, for eksempel
shoptilshop.example.com. Til selve domænet lader du feltet stå tomt eller skriver@. - Lad TTL stå på standardværdien, for eksempel 3600.
- Udfyld IP-adressen i Værdi, for eksempel
203.0.113.10. - Gem.
En eksisterende record ændrer du med blyanten ved siden af recorden. Tjek derefter i samme liste om der stadig står en AAAA-record for samme navn.
Opsummering
- En A-record kobler et navn til en IPv4-adresse, en AAAA-record til en IPv6-adresse.
- Et navn må have begge dele; det er normalt ved moderne hosting.
- Ændrer du A-recorden, så tjek altid AAAA-recorden: ellers ser IPv6-besøgende den gamle server.
- Værdien er altid en IP-adresse, uden punktum, port eller sti.
- Flere A-records for ét navn kan lade sig gøre, men er som regel en fejl for en almindelig hjemmeside.
Quiz
Opgave
Opgave Z3.1: Slå A og AAAA op. Slå IPv4-adressen (A) og IPv6-adressen (AAAA) op for wikipedia.org. Udfyld begge adresser. Har wikipedia.org mere end én, er en af dem nok.
Opgave O3.1: Indstil selv i din øvelseszone. Opret i din øvelseszone to records for navnet web:
- en A-record med værdien
192.0.2.10 - en AAAA-record med værdien
2001:db8::10
Klik derefter på Kontrollér.
Opgave O3.1
Denne opgave laver du i din egen øvelseszone: en rigtig DNS-zone på WebOkés navneservere, kun til dig. Tilmeld dig med din e-mailadresse. Du får et login-link på mail og kommer derefter tilbage til denne lektion. Vi bruger kun din adresse til kurset.
Læs mere
Disse artikler beskriver trinnene i WebOkés paneler; i andre paneler fungerer de på tilsvarende vis.
