Conversio

Den ultimative begynder-guide til at forstå DNS

20 September, 2023

  • Andet

Skrevet af: Kasper Tang Højriis

I dagligdagen bruger vi konstant DNS, og dog er vi sjældent klar over det.

Som ejer af et domæne kan det virke uoverskueligt at lære, hvordan DNS spiller ind i din webshop. Mange kigger aldrig nærmere på det, efter det er sat op og virker.

Dog kan en basal forståelse af DNS-zoner og -records spare dig og din webshop for mange kvaler hen ad vejen.

Jeg håber, at denne guide for begyndere vil give dig en bedre forståelse for internettets rygrad.

Hvad er DNS?

DNS står for Domain Name System, som også kan kaldes for Domain Name Service. Det primære formål med DNS er at oversætte domænenavne til IP-adresser. Dette er smart, fordi domænenavne generelt er nemmere at huske end IP-adresser.

En IP-adresse er 4 tal mellem 0-255, som står i forlængelse af hinanden og er adskilt af et punktum, fx 192.112.36.4. Uden DNS ville det altså være nødvendigt at kende den specifikke IP-adresse for hver eneste web-server, hvor der ligger en hjemmeside, du ønsker at besøge.

Hvad gør DNS?

DNS består af en enorm mængde DNS-servere, også kaldet navneservere, som konstant kommunikerer med hinanden i et hierarkisk system.

Når du indtaster et domænenavn i din browser, vil din PC eller lokale DNS-server lave en forespørgsel (query), altså spørge en højt rangeret DNS-server omkring IP-adressen på den web-server, hvor det ønskede domæne ligger. Den højtrangerende DNS-server henviser så til en lavere rangeret DNS-server, som til sidst henviser til en DNS-server på det laveste niveau i hierarkiet.

Hver højere rangeret DNS-server hjælper altså med at indsnævre mængden af mulige navneservere, der kan indeholde IP-adressen, som din PC eller DNS-server leder efter. DNS-serverne på laveste niveau i hierarkiet er de navnservere, som forbinder domænenavne med IP-adresser.

Din PC eller lokale DNS-server bliver nu henvist til en af de navneservere, som faktisk kender den søgte IP-adresse. Fra denne navneserver bliver IP-adressen udleveret, og det indtastede domæne kan nu tilgås.

Dette lyder meget omstændigt, så lad mig lige skære det helt ud i pap:

Forestil dig, at internettet er en stor by, og hver hjemmeside er et hus i denne by. Hvert hus (hjemmeside) har en adresse, men i stedet for gadenavne og husnumre bruger vi IP-adresser. IP-adresserne fungerer som et koordinatsæt på internettets “bykort”.

En DNS-server er en avanceret telefonbog eller kort for internettet. Når du indtaster et domænenavn, fx www.conversio.dk, i din webbrowser, kan du forestille dig, at din computer ringer rundt til forskellige DNS-servere og spørger om du kan få adressen på conversio.dk. Det forløber sig således:

  1. Spørgsmål: Din computer spørger: “Hvor kan jeg finde ‘www.conversio.dk’?”
  2. DNS-serveren: DNS-serveren kigger i sin avancerede telefonbog. Hvis den ikke kender IP-adressen direkte, spørger den en anden DNS-server, der måske kender bydelen (domænet) bedre.
  3. Finde den rigtige adresse: Disse DNS-servere arbejder sammen, nogle gange spørger de hinanden, indtil en af dem siger: “Ah, det hus kender jeg! Det ligger på denne IP-adresse.”
  4. Tilbage med svaret: DNS-serveren fortæller din computer IP-adressen, som svarer til ‘www.conversio.dk’.
  5. Besøg hjemmesiden: Nu hvor din computer kender IP-adressen, kan den besøge hjemmesiden, ligesom du ville køre til en adresse, efter du har fundet den på et kort.

DNS-serverer oversætter altså domænenavne til IP-adresser som din computer kan bruge til at finde og indlæse hjemmesider.

En af grundene til, at DNS er så effektiv på trods af denne længere proces, er, at man har fundet en måde at undgå en stor mængde trafik mellem DNS-serverne. Det er her, cache kommer ind i billedet. Din cache husker nemlig IP-adressen på de domæner, du har besøgt, så din PC undgår at skulle spørge andre DNS-servere end din egen næste gang, du vil besøge domænet. Dette gør, at DNS-serverne bliver betydeligt mindre belastet, og at vi som brugere kan tilgå vores favorit-hjemmesider endnu hurtigere.

Hvad er DNS-records for en størrelse? Og hvad kan de?

Når du ejer et domæne, får du også noget, der hedder en DNS-zone. Tænk på en DNS-zone som en detaljeret kortlægning af dit domæne, som fortæller internettet, hvordan det skal finde de forskellige dele af dit website. Dette kort (DNS-zone) opbevares på noget, der hedder en navneserver.

For at sikre, at dit website altid er tilgængeligt, bliver dit domæne og dets DNS-zone ikke kun gemt på én navneserver, men på flere. Det er lidt som at have flere kopier af di husnøgle. Hvis én navneserver (en nøgleholder) har problemer eller “går ned”, kan en anden navneserver træde til og sikre, at folk stadig kan finde og besøge dit website. På denne måde forbliver dit domæne aktivt og tilgængeligt, selv hvis der er problemer med en af navneserverne.

DNS-zonen er en samling af noget, der kaldes for DNS-records. DNS-records fungerer som en form for ”indstillinger” for et domæne. Der findes mange forskellige slags records, som alle udfører forskellige funktioner. De vigtigste DNS-records er:

  • NS-records
  • A-records
  • CNAME-records
  • MX-records
  • TXT-records

NS-records

NS-records, eller Name Server-records, fortæller, hvilke navneservere domænet ligger på. Ændres NS-records, ændres domænets navneservere også. Når et domæne er flyttet til andre navneservere, betyder det også, at DNS-zonen (og alle tilhørende records) på de oprindelige navneservere ikke længere er gældende. Den gældende DNS-zone er nu på de nye navneservere. Det er ikke altid muligt at ændre NS-records i selve DNS-zonen. Med danske og norske domæner er det nødvendigt at ændre navneserverne igennem henholdsvis DK-Hostmaster og Norid, som er organisationer, der administrerer danske og norske domæner (.dk og .no-domæner).

A-records

A-records, eller Address-records, bliver brugt til at pege et domæne mod en bestemt IP-adresse – altså hvad navneserverne ”læser” for at forbinde det indtastede domæne med en tilhørende IP-adresse. For dig som domæneejer er det altafgørende, at der i DNS-zonen er opsat et A-record, som peger på IP-adressen for den webserver, hvor hjemmesiden ligger. Er dette A-record ikke opsat korrekt, vil det ikke være muligt at tilgå hjemmesiden.

CNAME-records

CNAME-records, eller Canonical Name-records, er også kendt som et alias record og bruges typisk til at pege subdomæner mod noget andet. Det mest kendte og almindelige eksempel på dette er ”www.”. Når fx subdomænet www.conversio.dk gør det muligt at komme ind på domænet conversio.dk, er det fordi et CNAME-record er sat op. Dette CNAME-record fortæller ganske enkelt navneserverne, at hvis conversio.dk bliver skrevet med www. foran, skal det henvises til conversio.dk.

MX-records

MX-records, eller Mail Exchange-records, er et mail-record, som fungerer meget ligesom et A-record. Dog peger MX-records på den/de mailservere, som skal modtage mails på vegne af domænet. MX-records gør det også muligt at prioritere mailservere frem for andre.

TXT-records

TXT-records, eller Text-records, har op til flere funktioner. Hvad man oftest ser det brugt til er SPF (Sender Policy Framework). SPF er en effektiv måde at beskytte sig imod mailspam, som fungerer ved at begrænse hvilke IP-adresser og servicer, som er godkendt til at sende mails fra domænet. Derudover ser man ofte TXT-records fungere som verifikationsnøgler til servicer, som man vil forbinde til sit domæne.