Naar de inhoud
Actuele kortingscode:10% kortingGebruiken bij je bestelling

DNS-records uitgelegd: A, AAAA, CNAME, SRV, TXT, MX en PTR

Hoe DNS werkt, wat elk recordtype doet, wat TTL is en waarom een wijziging even duurt, hoe je een record controleert met nslookup of dig en welke fouten je beter kunt vermijden.

  • beginner
  • ~15 min
  • Bijgewerkt op 1-10-2026

DNS zet namen als example.cz om in IP-adressen die computers begrijpen. In dit artikel leggen we uit wat elk recordtype doet, waarom een wijziging niet meteen zichtbaar is en hoe je een record zelf controleert. Op deze basis bouwen de handleidingen over een domein voor je VPS en een domein voor je Minecraft-server voort.

Wat je nodig hebt

  • Een eigen domein (bij welke registrar dan ook), of gewoon zin om te begrijpen hoe DNS werkt
  • Toegang tot het beheer van de DNS-records van je domein
  • Een computer met Windows, macOS of Linux om records te controleren
  • Ongeveer 15 minuten

Hoe DNS werkt#

Als een speler in Minecraft mc.example.cz typt of een bezoeker in de browser example.cz, vraagt de computer het aan een resolver (de DNS-server van de internetprovider, of een openbare zoals 1.1.1.1). De resolver zoekt uit welke autoritatieve DNS-server de records van het domein heeft, vraagt het daar na en bewaart het antwoord een tijdje.

Drie rollen die vaak door elkaar worden gehaald:

RolWat die doetVoorbeeld
RegistrarHier heb je het domein gekocht en betaal je ervoor. De registrar stelt in welke nameservers het domein beheren.Het bedrijf waar je je .cz- of .com-domein hebt.
DNS-hosting (nameservers)De server waar de records van het domein staan (A, MX …). Hier pas je de records aan.Vaak dezelfde registrar, of Cloudflare.
ResolverZoekt antwoorden op voor gebruikers en bewaart ze in de cache.De DNS van je internetprovider, 1.1.1.1, 8.8.8.8.

Pas records aan waar de nameservers naartoe wijzen

Als het domein de nameservers van Cloudflare heeft, worden de records bij de registrar helemaal niet gebruikt, ook al zie je ze daar staan. Zoek eerst uit waar de DNS echt draait (het commando voor het NS-record vind je hieronder).

Recordtypen#

TypeWaarvoorVoorbeeldwaardeLet op
AZet een naam om in een IPv4-⁠adres.203.0.113.10Maar één record per naam, tenzij je de adressen wilt laten afwisselen.
AAAAZet een naam om in een IPv6-⁠adres.2001:db8::10Als de dienst niet op IPv6 luistert, krijgen clients met IPv6 geen verbinding.
CNAMEDe naam is een alias voor een andere naam.example.cz.Mag niet op de root van het domein staan en ook niet naast een ander record met dezelfde naam.
SRVWaar (naam en poort) een bepaalde dienst draait.0 5 25570 mc.example.cz.Het doel moet een naam met een A/AAAA-record zijn, geen IP-adres en geen CNAME.
MXWaar de e-mail van het domein wordt afgeleverd.10 mail.example.cz.Het doel moet een A/AAAA-record hebben, het mag geen CNAME of IP zijn.
TXTWillekeurige tekst: domeinverificatie, SPF, DKIM, DMARC."v=spf1 mx -all"Een domein mag maar één SPF-record hebben.
NSWelke nameservers het domein beheren.ns1.example.net.Wijzig dit alleen als je de DNS ergens anders onderbrengt.
CAAWelke certificaatautoriteiten een certificaat mogen uitgeven.0 issue "letsencrypt.org"Als je CAA instelt, vergeet dan niet de autoriteit toe te staan die je gebruikt.
PTRZet een IP-adres om in een naam (reverse DNS).mail.example.cz.Wordt ingesteld door de eigenaar van het IP-adres, niet door jou in je domein. Zie rDNS.

A en AAAA#

De basis van alles: ze geven aan op welk IP-adres een naam draait. Het IPv4-⁠adres van je VPS vind je in je klantaccount op het tabblad Netwerk (bijvoorbeeld 203.0.113.10), net als het IPv6-⁠adres (bijvoorbeeld 2001:db8::10).

Voeg een AAAA-record alleen toe als de dienst waar de naam voor bedoeld is echt op het IPv6-⁠adres luistert. Apparaten met IPv6 proberen IPv6 namelijk meestal als eerste.

CNAME#

Een CNAME zegt “deze naam is alleen een andere naam voor die naam”. Typisch www.example.cz als alias voor example.cz. De resolver zoekt daarna het A/AAAA-record van de doelnaam op.

Regels:

  • Een naam met een CNAME mag geen enkel ander record hebben (volgens de DNS-standaard, RFC 1034). Daarom kan een CNAME niet op de root van het domein staan (example.cz), waar altijd NS- en SOA-records staan.
  • Sommige DNS-providers omzeilen dat met een eigen functie (Cloudflare noemt die CNAME flattening): op de root geven ze direct het IP-adres van het doel terug.

SRV#

Een SRV-record geeft aan op welke naam en poort een bepaalde dienst draait. Minecraft Java Edition gebruikt het bijvoorbeeld: daardoor hoeven spelers de poort niet te typen.

text
_minecraft._tcp.mc.example.cz.  300  IN  SRV  0 5 25570 mc.example.cz.
OnderdeelBetekenis
_minecraftDe naam van de dienst, altijd met een underscore.
_tcpHet protocol, altijd met een underscore.
mc.example.cz.De naam waarvoor het record geldt (wat de speler in het spel invoert).
300TTL in seconden.
0Prioriteit – de client probeert eerst het doel met de laagste prioriteit.
5Gewicht – tussen doelen met dezelfde prioriteit beslist de verhouding van de gewichten. Bij één doel maakt het niet uit.
25570De poort waarop de dienst echt draait.
mc.example.cz.Het doel – een naam met een A/AAAA-record met het IP-adres van de server.

In de webinterface van een DNS-provider heten de velden ongeveer hetzelfde (Name / Service / Protocol, Priority, Weight, Port, Target). De volledige werkwijze voor Minecraft vind je in het artikel Serveradres en eigen domein. Bedrock Edition gebruikt geen SRV-records.

MX en TXT#

  • MX bepaalt de mailserver van het domein. Een lager getal (prioriteit) gaat voor. Het doel moet een naam met een A/AAAA-record zijn.
  • TXT bevat tekst. Diensten als Google of Microsoft controleren daarmee of het domein van jou is. E-mail gebruikt het voor SPF (wie namens het domein mail mag versturen), DKIM (ondertekening van berichten) en DMARC (wat er met vervalste berichten moet gebeuren, het record _dmarc.example.cz).

Root van het domein en subdomeinen#

  • De root (ook wel het “apenstaartje”, @) is het domein zelf, example.cz.
  • Een subdomein is alles wat ervoor staat: www.example.cz, mc.example.cz, panel.example.cz. Een subdomein hoef je nergens “aan te maken”, een record ervoor is genoeg.
  • Het sterretje (*.example.cz) is een wildcardrecord voor alle namen die geen eigen record hebben.

Typ in het veld Naam alleen het begin

De meeste DNS-webinterfaces vullen het domein zelf achter de naam aan. Typ voor mc.example.cz in het veld Naam (Name, Host) alleen mc, voor de root @. Als je het hele mc.example.cz typt, ontstaat het ongewenste mc.example.cz.example.cz.

De punt aan het einde (example.cz.) betekent in de notatie van een zonebestand “de volledige naam, voeg niets toe”. In webinterfaces hoef je die meestal niet te typen; als de interface de punt vereist, geeft die dat aan.

TTL en “propagatie”#

TTL (time to live) is het aantal seconden dat resolvers een antwoord mogen onthouden. Als je een record wijzigt, blijft een resolver die het op dat moment onthoudt de oude waarde sturen tot de TTL is verlopen. Dat wordt in de volksmond “DNS-propagatie” genoemd.

TTLWanneer gebruiken
300 (5 minuten)Je plant een wijziging (een server verhuizen) of bent nog dingen aan het uitproberen.
3600 (1 uur)Normaal gebruik, je verandert niets.
86400 (1 dag)Records die jarenlang niet veranderen.

Verhuizen zonder storing

Verlaag de TTL van het record de dag voor de verhuizing van de server naar 300. Na de verhuizing is het nieuwe IP-adres binnen 5 minuten overal bekend. Zodra alles werkt, kun je de TTL weer verhogen.

Nog twee situaties:

  • Het wijzigen van de nameservers bij de registrar duurt langer, meestal tot 24 uur.
  • Een negatief antwoord wordt ook onthouden. Als iemand naar een naam vraagt voordat het record bestaat, onthoudt de resolver een tijdje “die naam bestaat niet”. Maak het record daarom eerst aan en test het pas daarna.

Een record controleren#

Vervang example.cz en mc.example.cz in de commando's door je eigen domein.

Windows

Open PowerShell (of Windows Terminal) en gebruik nslookup:

PowerShell
nslookup example.cz
nslookup -type=AAAA example.cz
nslookup -type=SRV _minecraft._tcp.mc.example.cz
nslookup -type=NS example.cz
nslookup example.cz 1.1.1.1
  • nslookup example.cz – vraagt de standaard-DNS-server naar de adressen van de naam.
  • -type=AAAA – het recordtype waarnaar je vraagt (A, AAAA, SRV, MX, TXT, NS, CNAME).
  • 1.1.1.1 aan het einde – vraagt het aan een specifieke resolver in plaats van aan de standaardresolver. Handig als je de cache van je provider wilt omzeilen.
Uitvoertext
Server:  one.one.one.one
Address:  1.1.1.1

Non-authoritative answer:
Name:    example.cz
Address:  203.0.113.10

Non-authoritative answer is in orde: het antwoord kwam van een resolver, niet rechtstreeks van de nameserver van het domein.

In PowerShell kun je ook Resolve-DnsName gebruiken:

PowerShell
Resolve-DnsName -Name example.cz -Type A -Server 1.1.1.1
  • -Name – de naam die je opvraagt.
  • -Type – het recordtype.
  • -Server – de resolver aan wie je het vraagt (optioneel).

macOS

Open de app Terminal. Het programma dig is op macOS vooraf geïnstalleerd:

bash
dig +noall +answer example.cz A
dig +noall +answer example.cz AAAA
dig +noall +answer _minecraft._tcp.mc.example.cz SRV
dig +short example.cz NS
dig @1.1.1.1 +short example.cz A
  • dig – een tool voor DNS-query's.
  • +noall +answer – toont alleen de sectie met het antwoord, zonder technische details.
  • +short – toont alleen de waarde zelf.
  • example.cz A – de naam en het recordtype.
  • @1.1.1.1 – vraagt het aan een specifieke resolver.
Uitvoertext
example.cz.		300	IN	A	203.0.113.10

De kolommen betekenen: naam, resterende TTL in seconden, klasse (altijd IN), recordtype en waarde.

Linux

Installeer op Ubuntu 24.04 en Debian 13 (bijvoorbeeld direct op je VPS) het pakket met het programma dig, als het systeem dat nog niet heeft:

bash
apt update && apt install bind9-dnsutils
  • apt update – haalt de actuele pakketlijst op. Zonder dit commando kan apt install eindigen met de fout Unable to locate package.
  • && – voert het tweede commando alleen uit als het eerste zonder fout is verlopen.
  • apt install – installeert een pakket uit de systeemrepository's. Voer het uit als root; zet als gewone gebruiker sudo voor beide commando's.
  • bind9-dnsutils – het pakket met de tools dig en nslookup.

Gebruik daarna dezelfde commando's als op macOS:

bash
dig +noall +answer example.cz A
dig +noall +answer _minecraft._tcp.mc.example.cz SRV
dig +short example.cz NS
dig @1.1.1.1 +short example.cz A
  • +noall +answer – alleen de sectie met het antwoord.
  • +short – alleen de waarde.
  • @1.1.1.1 – een query aan een specifieke resolver.

Handige openbare resolvers om te controleren: 1.1.1.1 (Cloudflare), 8.8.8.8 (Google), 9.9.9.9 (Quad9). Als het nieuwe record daar zichtbaar is maar bij jou niet, heb je een oud antwoord in de cache.

Voor gevorderden: rechtstreeks de nameserver van het domein bevragen

De cache heeft geen invloed op het antwoord van de autoritatieve nameserver. Zoek de nameserver van het domein op en vraag het daar rechtstreeks. Vervang ns1.example.net door een van de nameservers uit de eerste uitvoer:

bash
dig +short example.cz NS
dig @ns1.example.net +short mc.example.cz A

Staat het record hier wel en elders niet, dan hoef je alleen te wachten tot de TTL is verlopen. Het hele pad vanaf de rootservers zie je met dig +trace example.cz.

Veelgemaakte fouten#

FoutWat je merktOplossing
Het hele domein in het veld NaamEr ontstaat mc.example.cz.example.cz, het adres werkt niet.Typ in het veld Naam alleen mc.
Twee verschillende A-records voor één naamDe ene keer krijg je verbinding, de andere keer niet.Laat alleen het record met het juiste IP staan.
Een vergeten AAAA-record naar de oude serverVanaf IPv6-⁠netwerken (mobiele data) werkt de website of de server niet.Zet het AAAA-record op het nieuwe IPv6-⁠adres, of verwijder het.
Een CNAME naast een ander recordDe DNS-provider weigert het record, of het gedraagt zich onvoorspelbaar.Gebruik voor een naam een CNAME of A/AAAA, niet allebei.
Het doel van een SRV of MX is een IP-adresDe client vindt het adres niet.Het doel moet een naam met een A/AAAA-record zijn.
De proxy van Cloudflare (oranje wolkje) bij een gameserver of SSHDe website werkt, het spel en SSH niet.Stel voor deze records DNS only in (grijs wolkje). Zie domein op een VPS en Cloudflare.
Records aanpassen bij de registrar terwijl de NS ergens anders naartoe wijzenDe wijziging wordt nooit zichtbaar.Pas de records aan waar de NS naartoe wijzen.
Een regel in het bestand hosts op je computerBij jou leidt de naam ergens anders heen dan bij alle anderen.Controleer het bestand hosts (Windows C:\Windows\System32\drivers\etc\hosts, macOS en Linux /etc/hosts).

Als iets niet werkt#

Non-existent domain (Windows) of NXDOMAIN (dig)#

De naam bestaat niet. Controleer of er geen typefout in staat, of het record is opgeslagen en of je het bij de juiste nameservers aanpast. Als je naar de naam hebt gevraagd voordat je het record had aangemaakt, wacht dan een paar minuten (negatief antwoord in de cache).

Het antwoord is leeg, maar de naam bestaat (No answer, ANSWER: 0)#

De naam bestaat, maar heeft geen record van het type waarnaar je vraagt. Je hebt bijvoorbeeld een A-record, maar vraagt naar AAAA. Elke tool laat dat net iets anders zien:

  • dig +short toont niets. In de volledige uitvoer van dig staat status: NOERROR en ANSWER: 0.
  • nslookup op macOS en Linux toont *** Can't find …: No answer.
  • nslookup in Windows toont in plaats van een adres alleen gegevens over de nameserver van het domein (de regel primary name server).

Controleer bij SRV of de naam _minecraft._tcp. en het juiste subdomein bevat.

Bij 1.1.1.1 staat het nieuwe IP, bij mij nog steeds het oude#

Je computer of je internetprovider heeft een oud antwoord in de cache. Wacht tot de TTL is verlopen, of leeg de cache van je computer:

Windows

PowerShell
ipconfig /flushdns
  • ipconfig /flushdns – leegt de DNS-cache in Windows (ook de onthouden negatieve antwoorden).

macOS

bash
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • sudo – voert het commando uit met beheerdersrechten (vraagt om het wachtwoord van je Mac, tijdens het typen verschijnt er niets).
  • dscacheutil -flushcache – leegt de cache van de directoryservice van het systeem.
  • ; – voert na het eerste commando het tweede uit.
  • killall -HUP mDNSResponder – stuurt de DNS-dienst van het systeem een signaal om de cache weg te gooien.

Linux

bash
sudo resolvectl flush-caches
  • sudo – voert het commando uit met beheerdersrechten. Op een VPS waar je als root bent ingelogd, laat je het weg.
  • resolvectl flush-caches – leegt de cache van de dienst systemd-resolved, die Ubuntu en veel andere distributies gebruiken.

Als het commando eindigt met een fout (bijvoorbeeld resolvectl: command not found), gebruikt het systeem de dienst systemd-resolved niet. Dat is bijvoorbeeld zo bij een standaardinstallatie van Debian: het systeem onthoudt DNS-antwoorden zelf niet en je hoeft niets te legen.

Browsers hebben een eigen cache; het helpt om ze te sluiten en opnieuw te openen.

dig: command not found of nslookup: command not found#

Installeer op Linux het pakket bind9-dnsutils (zie het tabblad Linux hierboven). Gebruik in Windows nslookup of Resolve-DnsName in plaats van dig.

De wijziging is na enkele uren nog steeds niet zichtbaar#

  1. Zoek de nameservers van het domein op: dig +short example.cz NS (Windows: nslookup -type=NS example.cz).
  2. Controleer of je de records aanpast bij dezelfde provider als waar de NS naartoe wijzen.
  3. Vraag het rechtstreeks aan de nameserver (zie “Voor gevorderden” hierboven). Staat het record daar niet, dan is de wijziging niet opgeslagen.

Samenvatting

  • A en AAAA leiden een naam naar een IP-adres, CNAME naar een andere naam, SRV geeft de naam en de poort van een dienst en MX leidt de mail.
  • Records pas je aan bij de DNS-provider waar de nameservers van het domein naartoe wijzen, niet per se bij de registrar.
  • De TTL bepaalt hoe lang resolvers de oude waarde onthouden; verlaag hem vóór een wijziging naar 300 s.
  • Een CNAME hoort niet op de root van het domein en het doel van een SRV/MX moet een naam zijn, geen IP.
  • Een record controleer je met het commando nslookup (Windows) of dig (macOS, Linux).

Zoeken in de handleidingen