DNS sett med en nettsurfers øyne

Oppdatert 09.02.2024

Resepsjonen i en bedrift.
Illustrasjon: Rodrigo Salomón Cañas – Pixabay.com

DNS (Domain Name System) er en slags nummeropplysning for utstyr som er tilkoblet internett. Uten DNS – intet internett.

Hvis jeg vil besøke en nettsiden Blacklight hos nettstedet The Markup, må nettleseren min først finne ut hva som er IP-adressen til The Markup. Det gjør den ved å spørre en DNS-server, også kalt navneserver og navnetjener.

Når DNS-serveren har funnet ut hvilken IP-adresse nettstedet The Markup har, gir den beskjed til nettleseren min.

Nå kan nettleseren kontakte nettstedet The Markup ved hjelp av nettstedets IP-adresse, og oppgi at det er Blacklight-siden som ønskes.

Dette ligner mye på hva som skjer hvis jeg vil ringe til Kim Fagerlie som jobber hos ABB Oslo. Da må jeg først finne ut hva som er telefonnummeret til ABB Oslo. Deretter kan jeg ringe til ABB Oslo og be om å få snakke med Kim Fagerlie.

DNS-systemet er en superviktig del av infrastrukturen på internett.

DNS – et desentralisert system

DNS-systemet er et desentralisert system. Det består ikke av kun 1 kjempestor DNS-server, men av mange. Og det er ulike DNS-nivåer og ulike typer DNS-server.

DNS-klienten

På det aller laveste nivået finnes DNS-klienten som ikke gjør annet enn å sende DNS-forespørselen til et høyere nivå i DNS-systemet. En DNS-klient kalles ofte for en stub resolver på engelsk.

DNS-klienten (stub resolveren) finnes i operativsystemet i alle PCer / nettbrett / smarttelefoner. I de aller fleste tilfeller sender DNS-klienten spørsmålet til DNS-serveren hos din internettleverandør / mobiloperatør. Det skjer enten direkte (på mobilnett) eller via en ruter (på WiFi-nett / kabelnett).

Hvis utstyret er tilkoblet internett via mobildata, sender operativsystemet spørsmålet til mobiloperatørens DNS-server. Men nå for tiden er det også mulig å overstyre dette ved hjelp av en spesiell app, og heller sende DNS-spørringen til en helt annen DNS-server, f.eks. til Cloudflare (1.1.1.1).

Hvis utstyret er koblet til et WiFi-nett, sender operativsystemet vanligvis spørsmålet til WiFi-ruteren som typisk bare videresender spørsmålet til en DNS-server hos internettleverandøren. Men det er også fullt mulig å stille inn operativsystemet på enheten din til å sende spørringen til en helt annen DNS-server, f.eks. til Quad9 (9.9.9.9).
Også på WiFi-ruteren er det fullt mulig å stille inn at spørringen skal sendes til en annen DNS-server enn internett-tilbyderen sin.

DNS-serveren hos ISPen

En ISP (Internet Service Providers) er en internettilbyder eller internettleverandør, altså en kabelnett-operatør, bredbånds-leverandør eller en mobil-operatør som gir oss tilgang til internett. Eksempler på ISPer er Telenor, Telia, Altibox, NextGenTel osv.

DNS-serveren som finnes hos en ISP, gjør en mye mer avansert jobb enn en slavisk videresending. En slik DNS-server kalles DNS resolver eller recursive resolver eller recursive DNS-server. Ordet resolver betyr at den forsøker å finne ut av ting. Ordet recursive sikter til at spørringen skjer gjentatte ganger.

Riktignok er DNS-serveren hos en ISP nødt til å spørre DNS-servere som ligger på høyere nivåer, men de må spørre og grave på en mye mer finurlig måte enn en slavisk videresender gjør. En recursive DNS-server må «jobbe for føden».

Høyere DNS-nivåer

På høyere nivå enn ISPens DNS-server ligger DNS-servere som er mer spesialiserte.

En hel drøss av disse spesialiserte DNS-serverne vet hva som er IP-adressen til noen få nettsteder, og ganske mange vet IP-adressen til mange nettsteder. Men ingen av dem vet IP-adressen til alle nettstedene som finnes her på kloden. Slike spesialiserte DNS-servere som har førstehånds kunnskap om IP-adressen til en viss mengde nettsteder, kalles autoritative DNS-servere.

Siden hver og en autoritativ DNS-server ikke har kjennskap til mer enn en bitte liten andel av verdens nettsteder, må de ha hjelp av et overordnet system som holder rede på hvilken autoritativ DNS-server som kan komme med riktig svar.

DNS-prosedyre

Når min mobil / nettbrett / PC trenger å finne IP-adressen til nettstedet wikipedia.org, må ISPens recursive DNS-server spørre de høyere DNS-nivåene slik:

  1. Spørre en root-server om hvilken TLD-server som nå for tiden holder oversikt over nettsteder som slutter på .org
  2. Spørre TLD-server som nå for tiden håndterer .org, om hvilken autoritative server som nå for tiden holder rede på wikipedia.org
  3. Spørre den autoritative serveren som nå for tiden holder rede på wikipedia.org, om hva som nå for tiden er IP-adressen til nettstedet wikipedia.org
  4. Gi beskjed til min mobil / nettbrett / PC om hvilken IP-adresse wikipedia.org har nå for tiden 
Skjematisk framstilling av spørreprosedyren.
Illustrasjon: Wikimedia.org

Litt omstendelig, men det går som regel temmelig fort — som oftest mye mindre enn ett sekund.

Hukommelse (cache)

Og for at det skal gå enda fortere neste gang noen trenger å vite IP-adressen til wikipedia.org, husker (cacher) ISPens DNS-server som regel svaret et par timer. Da kan ISPens DNS-server nemlig hoppe bukk over de 3 første trinnene, for den husker fremdeles hva IP-adressen er.

Siden det er besparende å huske svarene en viss tid, er det selvsagt tilsvarende hukommelse (cache) på alle DNS-nivåene. Men tiden adressene huskes må ikke være for lang, for da blir det veldig upraktisk når nettsteder av og til skifter adresse.

Knutepunkt

En nettsurfer må nesten alltid gå veien om en DNS-server hos sin ISP. Dermed blir den recursive DNS-serveren et knutepunkt hvor eieren har en teknisk mulighet for overvåking, filtrering og omdirigering av internett-trafikken.

Filtrering

Et eksempel på nyttig filtrering er å blokkere nettsteder som er kjent for å spre virus og lignende. Familiefilter-tjenesten som mange ISPer tilbyr, filtrerer bort enda flere typer nettsteder, f.eks. porno.

I mange land ønsker myndighetene at visse nettsteder skal være blokkert for nettsurfere. Det kan f.eks. være nettstedene til politiske opposisjonspartier.

Sporing

Hvilke nettsider du besøker, kan være interessant å vite for visse aktører, f.eks. markedsføringsbedrifter. Mange store og små ISPer i USA har solgt slike opplysniger i årevis.

Dessverre er det ikke bare markedsførere som er interessert i disse opplysningene. Også skurker finner dem interessante.

Og siden dette kan være interessante opplysninger for myndigheter, kan det også oppstå situasjoner hvor myndigheter pålegger ISPer å oversende innhentede opplysninger.

Omdirigering

Den som har kontroll over en recursive DNS-server, har også muligheten til å overstyre spørreresultatene. Dermed kan vi risikere å få et falskt svar og dermed bli omdirigert til en annen nettside enn den vi forsøker å besøke.

F.eks. kan myndigheter i mange land beordre ISPer til å omdirigere visse DNS-forespørsler. Et hypotetisk eksempel kunne være at jeg forsøker å gå til et utenlandsk nettsted som tilbyr et aggresivt pengespill, og at DNS-serveren omdirigerer meg til en nettside som forteller at det finnes hjelp mot spillavhengighet.

Også for skurker kan DNS-omdirigering være veldig interessant, se neste avsnitt.

Datakriminalitet

Siden recursive DNS-servere vanligvis er forholdsvis store knutepunkter, kan de også bli et interessant mål for datakriminelle.

De kan f.eks. forsøke å forfalske noen av IP-adressene som ligger i DNS-hukommelsen. Dette kalles DNS poisoning eller DNS spoofing. Hvis DNS-serveren gir deg IP-adressen til en falsk utgave av nettbanken i stedet for den ekte, kan falsknerne i verste fall klare å logge seg inn i nettbanken ved å benytte avanserte Man-in-the-middle-metoder i tillegg.

Sårbar WiFi-ruter

Vær klar over at også WiFi-ruteren din er et yndet objekt for datakriminelle.

Får en skurk kontroll over ruteren din, kan han stille inn ruteren til å sende alle DNS-forespørsler til en DNS-server som skurken eier. Og i den forbryterske DNS-serveren kan han legge inn så mange omdirigeringer til falske nettsteder som han ønsker. Å ta kontoll over din WiFi-ruters DNS-spørring er en variant av DNS hijacking / DNS redirection.

En annen grunn til at datakriminelle ønsker seg kontroll over din WiFi-ruter, er å benytte den som en ressurs i ulike skurkestreker. F.eks. er det vanlig å bruke kaprede WiFi-rutere i såkalte DDoS-angrep.

Mer info