Har du læst kapitlet om DNS-posttyper, ved du allerede, at hver post på en nameserver har sit eget job. En A-post kobler et domænenavn til en IP-adresse. En MX-post styrer e-mailruting. En CNAME-post virker anderledes end begge. I stedet for at pege på en IP-adresse eller en mailserver peger den et domænenavn på et andet domænenavn. Den enkle forskel gør den til en af de mest nyttige og mest misforståede poster i DNS.
Hvad står CNAME for?
CNAME står for canonical name. I den sammenhæng betyder "canonical" den officielle eller primære version. Når du opretter en CNAME-post, siger du, at et værtsnavn blot er et alias for et andet. Målets værtsnavn er det kanoniske navn, og aliasset følger det, hvorhen det går.
Hvis du for eksempel sætter en CNAME-post op, så "www.dinside.dk" peger på "dinside.dk", fortæller du DNS, at "www.dinside.dk" er et alias. Det kanoniske navn er "dinside.dk". Hver gang nogen slår www-versionen op, følger DNS aliasset og slår det kanoniske navn op i stedet.
Hvordan virker en CNAME-post?
En CNAME-post forklaret enkelt virker som en videresendelsesadresse. Browseren spørger DNS om IP-adressen på et værtsnavn. DNS finder en CNAME-post på det værtsnavn. I stedet for at give en IP-adresse tilbage giver den et andet domænenavn. Browseren slår så det andet domænenavn op og følger dets A-post for at nå den egentlige server.
Sådan foregår det trin for trin.
- En besøgende skriver "blog.dinside.dk" i en browser
- Browseren beder DNS slå "blog.dinside.dk" op
- DNS finder en CNAME-post, der peger "blog.dinside.dk" på "dinside.dk"
- DNS slår derefter A-posten for "dinside.dk" op
- A-posten giver serverens IP-adresse
- Browseren forbinder til den IP-adresse og indlæser siden
Det ekstra trin sker i baggrunden og tager kun millisekunder. Den besøgende ser det aldrig. Fordelen er, at hvis du ændrer IP-adressen på A-posten for "dinside.dk", følger alle CNAME-aliasser, der peger på den, automatisk med. Du opdaterer én post i stedet for mange.
Hvordan ser en CNAME-post ud?
En CNAME-post har fire dele. Hver har sit formål.
- Værtsnavn (name) er det alias, du opretter. Det er det domænenavn, der skal pege et andet sted hen. Eksempel på værdi er "www" eller "blog"
- Type fortæller DNS, at det er en CNAME-post
- Mål (value) er det kanoniske domænenavn, aliasset peger på. Eksempel på værdi er "dinside.dk"
- TTL (time to live) styrer, hvor længe DNS-servere gemmer denne post, før de tjekker for opdateringer. Den måles i sekunder. En almindelig værdi er 3600, som er en time
I et DNS-panel ville en typisk CNAME-post vise "www" som værtsnavn, "CNAME" som type, "dinside.dk" som mål og "3600" som TTL.
Hvornår skal du bruge en CNAME-post?
CNAME-poster er nyttige, hver gang du vil have et værtsnavn til at følge et andet. De mest almindelige situationer er følgende.
Peg www på dit rodomæne
Den mest almindelige brug af en CNAME-post er at få "www.dinside.dk" til at pege på "dinside.dk". Rodomænet har en A-post med serverens IP-adresse. www-versionen har en CNAME, der peger på roden. Skifter serverens IP, opdaterer du kun A-posten. www-aliasset følger automatisk med.
Forbind subdomæner til eksterne tjenester
Mange tjenester fra tredjepart beder dig oprette en CNAME-post for at forbinde dit subdomæne til deres platform. Du kan for eksempel pege "shop.dinside.dk" på en ekstern tjenestes serveradresse. CNAME'en lader dig bruge dit eget domænenavn, mens tjenesten klarer hostingen i baggrunden.
Sæt et CDN op
Et content delivery network (CDN) gør din hjemmeside hurtigere ved at levere filer fra servere tættere på hver besøgende. For at bruge et CDN opretter du ofte en CNAME-post, der peger dit domæne eller subdomæne på CDN-udbyderens adresse. Det leder din trafik gennem deres netværk uden at ændre din egentlige hostingopsætning.
Styr mange subdomæner nemt
Har du flere subdomæner, der alle skal nå samme server, kan du pege dem alle som CNAME-aliasser på ét domæne, der har A-posten. Når serverens IP-adresse ændres, opdaterer du én A-post i stedet for hvert subdomæne for sig.
Hvad er forskellen på en CNAME-post og en A-post?
Hovedforskellen er, hvad hver post peger på. En A-post kobler et domænenavn direkte til en IP-adresse. En CNAME-post kobler et domænenavn til et andet domænenavn. A-posten er den endelige destination. CNAME'en er en videresendelse, der fører til den endelige destination.
Her er de vigtigste forskelle.
- En A-post har en IP-adresse. En CNAME har et domænenavn
- En A-post kan ligge på ethvert værtsnavn, også rodomænet. En CNAME kan ikke ligge på rodomænet
- En A-post slås op i ét trin. En CNAME lægger et ekstra opslag til, fordi DNS skal følge aliasset og derefter slå målets A-post op
- En A-post skal opdateres manuelt, hvis IP-adressen ændres. En CNAME følger automatisk den IP-adresse, målet peger på
Brug en A-post, når du kender IP-adressen, og den næppe ændres. Brug en CNAME, når du vil have et værtsnavn til at følge et andet, især når IP-adressen bagved styres af en anden.
Hvilke regler og begrænsninger gælder for CNAME-poster?
CNAME-poster har bestemte regler i DNS-specifikationen, som gør dem anderledes end andre posttyper. Brydes reglerne, opstår der fejl, der kan tage din hjemmeside eller e-mail offline.
En CNAME kan ikke ligge på rodomænet
DNS-specifikationen tillader ikke en CNAME-post på rodomænet (apex). Rodomænet er den blotte udgave af dit domæne uden præfiks, som "dinside.dk" i stedet for "www.dinside.dk". Begrænsningen findes, fordi CNAME-poster ikke kan ligge sammen med andre posttyper på samme værtsnavn, og rodomænet har brug for andre poster (som MX-poster til e-mail og NS-poster til nameservere) for at fungere.
Skal rodomænet pege et sted hen, så brug en A-post i stedet. Nogle DNS-udbydere har en løsning kaldet ALIAS- eller ANAME-poster, som virker som en CNAME, men er tilladt på rodomænet. Ikke alle udbydere understøtter det.
En CNAME kan ikke dele værtsnavn med andre poster
Har et værtsnavn en CNAME-post, kan det ikke have andre posttyper på samme værtsnavn. Ingen A-poster, ingen MX-poster, ingen TXT-poster. CNAME'en skal være den eneste post på det navn. Derfor kan du ikke lægge en CNAME på rodomænet, for rodomænet har allerede brug for NS-poster og som regel også MX- og TXT-poster.
CNAME-kæder bør undgås
En CNAME-kæde opstår, når en CNAME peger på en anden CNAME, som peger på en tredje CNAME, før den til sidst når en A-post. DNS kan teknisk følge sådanne kæder, men hvert led lægger opslagstid til og øger risikoen for timeout eller fejl. Hold det enkelt. Peg hver CNAME direkte på et værtsnavn, der har en A-post.
Hvordan tilføjer du en CNAME-post?
At tilføje en CNAME-post følger de samme overordnede trin hos de fleste DNS-udbydere. Indstillingssidens layout varierer, men de oplysninger, du indtaster, er de samme alle steder.
- Log ind i det DNS-panel, hvor dit domænes nameservere er sat. Det er som regel din domæneregistrar eller din hostingudbyder
- Find afsnittet med DNS-poster eller DNS-zoneeditoren
- Klik på muligheden for at tilføje en ny post
- Vælg CNAME som posttype
- Indtast det værtsnavn, du vil oprette som alias (for eksempel "www" eller "blog")
- Indtast det måldomænenavn, aliasset skal pege på (for eksempel "dinside.dk" eller en tjenesteudbyders adresse)
- Sæt TTL. Er du i tvivl, så brug den standardværdi, din udbyder foreslår, eller sæt den til 3600 (en time)
- Gem posten
DNS-ændringer kan tage fra nogle få minutter op til 48 timer at sprede sig ud over internettet. Forsinkelsen kaldes DNS-propagering. I den tid kan nogle besøgende stadig se de gamle indstillinger, mens andre ser de nye. Vil du vide mere om, hvordan det foregår, så læs kapitlet om hvordan DNS virker.
Hvad er almindelige fejl med CNAME?
De fleste CNAME-problemer kommer af nogle få gentagne fejl. At kende dem på forhånd sparer tid og forhindrer nedetid.
- At lægge en CNAME på rodomænet. Det ødelægger DNS. Brug en A-post på rodomænet i stedet
- At tilføje andre poster ved siden af en CNAME. Har et værtsnavn en CNAME, skal den være den eneste post på det værtsnavn. En MX- eller TXT-post på samme værtsnavn giver konflikter
- At lave CNAME-kæder. At pege en CNAME på en CNAME på en CNAME giver unødvendige opslag. Peg hver CNAME direkte på et værtsnavn, der slås op med en A-post
- At glemme det afsluttende punktum. Nogle DNS-udbydere kræver et punktum til sidst i måldomænet (som "dinside.dk.") for at vise, at det er et fuldt kvalificeret domænenavn. Udelader du det, kan udbyderen tilføje ekstra tekst til målet
- At bruge en CNAME, hvor en A-post er bedre. Styrer du serveren, og IP-adressen er stabil, er en A-post enklere og slås hurtigere op. Brug en CNAME, når mål-IP'en kan ændres eller styres af en tredjepart
Sådan håndterer WEMASY CNAME-poster
Når du forbinder et eget domæne til din WEMASY-hjemmeside, fortæller WEMASY dig præcis, hvilke DNS-poster du skal tilføje. For subdomæner betyder det som regel at oprette en CNAME-post, der peger på WEMASYs servere. WEMASY klarer hosting, SSL og routing i den anden ende, så når CNAME'en er på plads, forbinder dit subdomæne automatisk til din hjemmeside.
For rodomæner giver WEMASY i stedet A-post-værdierne, fordi CNAME-poster ikke kan bruges på roden. Opsætningsguiden fører dig gennem begge muligheder, afhængigt af hvilken slags domæne du forbinder. Se, hvad der er med i hver plan, på siden WEMASY-priser.
Hvad kommer så
Nu hvor du ved, hvordan CNAME-poster laver aliasser mellem domænenavne, handler næste kapitel om en anden vigtig posttype. MX-poster styrer, hvor dit domænes e-mail leveres, og de følger deres egne regler. Det handler næste kapitel om, hvad en MX-post er. For et overblik over alle posttyper og hvornår du bruger hver af dem, se kapitlet om DNS-posttyper.
Kan en CNAME-post pege på en IP-adresse?
Nej. En CNAME-post kan kun pege på et andet domænenavn, aldrig på en IP-adresse. Skal du pege et værtsnavn direkte på en IP-adresse, så brug en A-post (til IPv4) eller en AAAA-post (til IPv6). Formålet med en CNAME er at lave et alias mellem to domænenavne.
Påvirker en CNAME-post hjemmesidens hastighed?
En CNAME lægger et ekstra DNS-opslag til, fordi browseren først skal slå aliasset op og derefter målet. I praksis tager det ekstra trin kun få millisekunder og kan som regel ikke mærkes. Er hastighed vigtig, så undgå CNAME-kæder, hvor flere aliasser peger på hinanden, for hvert led lægger endnu et opslag til.
Hvad sker der, hvis målet for en CNAME-post går offline?
Hvis det domænenavn, en CNAME peger på, ikke længere kan slås op, eller serveren bagved går ned, holder dit alias også op med at virke. CNAME'en følger målet, hvorhen det går, også ved nedetid. Der er ingen reserveløsning indbygget i selve CNAME-posten.
Er en CNAME det samme som en omdirigering?
Nej. En CNAME er et alias på DNS-niveau, der fortæller browseren, hvor den finder serveren. URL'en i browseren forbliver den samme. En omdirigering er en instruktion på serverniveau, der sender browseren til en helt anden URL, og URL'en i browseren ændres. En CNAME forbinder domænenavne i baggrunden. En omdirigering sender besøgende til en ny adresse.
Kan du bruge en CNAME og en A-post på samme værtsnavn?
Nej. DNS-specifikationen tillader ikke, at en CNAME ligger sammen med nogen anden posttype på samme værtsnavn. Har et værtsnavn en CNAME, skal den være den eneste post på det navn. Det er en af grundene til, at en CNAME ikke kan lægges på rodomænet, som allerede har brug for NS-poster og ofte MX- og TXT-poster.