Zo werken het Domain Name System en DNS-records

Het Domain Name System (DNS) is een cruciaal onderdeel van het internet. Eenvoudig gezegd zorgt het DNS ervoor dat we om een website te bezoeken niet het ingewikkelde IP-adres hoeven te onthouden, maar een domeinnaam

Computers en servers gebruiken namelijk IP-adressen om elkaar te vinden op het internet en geen domeinnamen. DNS vertaalt daarom de domeinnamen die wij in ons browservenster of in ons mailprogramma intikken naar hun IP-adressen.

De bouwstenen van het systeem 

Cruciaal in de werking van DNS zijn DNS-records. Ze zijn als het ware de bouwstenen van het DNS. Wanneer je een website bezoekt, stuurt je browser een verzoek naar een DNS-resolver om het IP-adres van de website te vinden. De DNS-resolver zoekt razendsnel in alle nodige records in alle betrokken DNS-servers om de juiste informatie te vinden en stuurt deze terug naar je browser, zodat de verbinding kan worden gemaakt. 

Stel dat je een brief (nee, geen mail, een echte, ouderwetse brief, op papier en in een envelop met een postzegel) wilt sturen naar een vriend. Je hebt alleen zijn naam en niet zijn adres. Je belt een gemeenschappelijke vriend van wie je weet dat hij zijn notitieboekjes netjes bijhoudt, en vraagt hem om het adres. De vriend zoekt in zijn kast vol notitieboekjes, het adres op in het notitieboekje met adressen en geeft het aan jou door zodat jij je brief kunt versturen. 

In dit voorbeeld is de gemeenschappelijke vriend de DNS-resolver, de kast vol notitieboekjes is het DNS-systeem: de verzameling van alles DNS-servers.  De naam van de vriend van wie je het adres zoekt, is de domeinnaam. Het bewuste notitieboekje zijn de DNS-records en het adres is het IP-adres.

Verschillende types DNS-records

Zoals de vriend uit het voorbeeld een notitieboekje heeft met adressen, maar ook eentje met zijn favoriete gerechten en eentje waar hij het overzicht bewaart van zijn immense platencollectie, zo bestaan er ook heel wat verschillende DNS-records. Die bevatten informatie over een domein en vertellen servers hoe ze moeten reageren op binnenkomende ‘vragen’ van computers. Elk type DNS-record heeft een specifieke functie en helpt verschillende aspecten van een domein te beheren.

A-record (Address Record)

Een A-record (Address Record) zorgt ervoor dat wanneer je een domeinnaam intypt, je naar het juiste IPv4-adres wordt geleid. Bijvoorbeeld, het A-record voor ‘voorbeeld.be’ kan wijzen naar ‘192.0.2.1’.

AAAA-record

Een AAAA-record doet net hetzelfde als een A-record, maar wijst naar een IPv6-adres. Bijvoorbeeld, het AAAA-record voor ‘voorbeeld.be’ kan wijzen naar ‘2001:0db8:85a3:0000:0000:8a2e:0370:7334’.

FeatureA recordAAAA record
Address typeIPv4IPv6
Bit length32-bit128-bit
PurposeMaps domain names to IPv4 addressesMaps domain names to IPv6 addresses
Introduced1983 (with the start of DNS)1999
CapacityOver 4 billion addresses340 undecillion addresses
UsagePredominant during the early years and still widely used nowIncreasingly adopted due to the exhaustion of IPv4 addresses
CompatibilityUniversally supportedSupported by modern systems that have IPv6 capability
NotationDotted decimal (e.g., 192.168.0.1)Hexadecimal with colons (e.g., 2001:0db8:85a3:0000:0000:8a2e:0370:7334)
Transition technologyN/ADual-stack, tunneling, NAT64/DNS64

CNAME-record 

Een CNAME-record (Canonical Name Record) maakt een alias voor een domeinnaam. 

Een alias is een alternatieve naam voor een domein. CNAME-records laten meerdere domeinnamen naar dezelfde inhoud verwijzen zonder dat daarvoor meerdere A- of AAAA-records nodig zijn.

Stel je voor dat je een website hebt ‘voorbeeld.be’ en een blog ‘blog.voorbeeld.be’ op hetzelfde domein. Dan kan je een CNAME-record aanmaken om ‘blog.voorbeeld.be’ als alias te laten verwijzen naar ‘voorbeeld.be’ in plaats van een apart A- of AAAA-record. 

Waarom zou je aliassen gebruiken?

  • Eenvoudig beheer. Met CNAME-records hoef je slechts één set DNS-records te beheren. Als je het IP-adres van ‘voorbeeld.be’ wijzigt, wordt ‘blog.voorbeeld.be’ automatisch bijgewerkt omdat het een alias is.
  • Consistentie. Aliassen zorgen ervoor dat verschillende domeinnamen naar dezelfde inhoud verwijzen.
  • Flexibiliteit. Je kunt gemakkelijk nieuwe subdomeinen toevoegen zonder extra configuratie, zolang ze allemaal naar dezelfde bron verwijzen.

MX-record 

MX-records (Mail Exchange Record) zorgen ervoor dat e-mails naar het juiste adres worden gestuurd door de mailservers voor een domein te specificeren. Bijvoorbeeld, het MX-record voor ‘voorbeeld.be’ kan verwijzen naar ‘mail.registrar.be’.

TXT-record

Een TXT-record kan een willekeurige tekst bevatten en wordt voor verschillende doeleinden gebruikt. Denk daarbij bv. aan een domeineigendom verifiëren en SPF-records instellen voor e-mailverificatie. 

Een TXT-record met een specifieke verificatiecode wordt toegevoegd aan de DNS-instellingen van je domein. Deze code wordt gecontroleerd door de partij die het eigendomsrecht voor je domein nagaat, Google bijvoorbeeld. Dat is essentieel om toegang te krijgen tot bepaalde diensten, zoals bv. Google Search Console. 

Een SPF-record (Sender Policy Framework)is een type TXT-record dat specificeert welke mailservers namens jouw domein e-mails mogen verzenden. Dit helpt e-mailproviders te controleren of een e-mail echt van jouw domein afkomstig is.

Een DKIM-record ondertekent elke e-mail digitaal met een publieke en een private sleutel. Het record toont aan dat de e-mail daadwerkelijk afkomstig is van het domein waarvan het beweert afkomstig te zijn. De publieke sleutel wordt gehost in een TXT-record dat aan het domein is gekoppeld.

Een DMARC-record is een TXT-record dat verwijst naar het SPF- en DKIM-beleid van het domein. Het is een belangrijk document om spam en phishingmail door misbruik van domeinnamen te voorkomen.

Snelheid en betrouwbaarheid

DNS-records spelen bovendien een belangrijke rol in de snelheid en betrouwbaarheid van internetverbindingen. Een goed geconfigureerde DNS – dat wil zeggen met DNS-records die correct zijn ingesteld en de juiste informatie bevatten – kan de laadtijd van websites verkorten en ervoor zorgen dat gebruikers altijd toegang hebben tot de juiste informatie. 

Slecht geconfigureerde DNS-records – waar bijvoorbeeld essentiële informatie ontbreekt – kunnen daarentegen leiden tot trage laadtijden en zelfs onbereikbare websites.