retrAIt Plan jouw dag ↗
Blog / Je eigen server

Een domeinnaam koppelen aan je eigen server

5 minuten lezenDelen

Wit emaille huisnummerbordje met het zwarte nummer 36 op een witgeschilderde bakstenen muur in de zon
Foto Jan van der Wolf via Pexels
Het korte antwoord

Je koppelt een domeinnaam aan je server met twee A-records bij je registrar, één voor de naam zelf en één voor www, allebei naar het IP-adres van je server. AAAA-records die naar een parkeerpagina wijzen haal je weg, en de MX-records voor je mail laat je staan. Met dig zie je wanneer de wijziging is doorgekomen, meestal binnen een paar minuten tot een paar uur.

Je domeinnaam en je server zijn twee losse dingen. De naam koop je bij een registrar, een bedrijf dat domeinnamen voor je vastlegt. De server huur je ergens anders, zoals beschreven in Wat is een VPS. Om ze aan elkaar te koppelen, zet je bij je registrar twee regels: een A-record voor de naam zelf en een A-record voor www, allebei met het IP-adres van je server. Daarna wacht je even, en zet je je site live met een slotje.

Wat DNS doet

Mensen onthouden namen, computers werken met nummers. Het systeem dat een naam vertaalt naar een nummer heet DNS. Voor elk domein bestaat een lijstje regels, de DNS-records, die zeggen waar de naam naartoe wijst. Meestal beheer je die in het beheerscherm van je registrar.

Computers onthouden zo’n regel een tijdje, zodat ze hem niet bij elk bezoek opnieuw hoeven op te vragen. Hoe lang, staat in de TTL van het record: het aantal seconden dat een ander het record mag bewaren. Daardoor is een wijziging niet meteen overal te zien. Reken op een paar minuten, soms een paar uur.

Ga vooraf één ding na: worden de DNS-records van je domein echt bij je registrar beheerd? Soms staan ze bij een andere partij, bijvoorbeeld bij de bouwer van je vorige site. Dan doen wijzigingen bij de registrar niets. Op je server zie je met dig NS mijndomein.nl +short welke nameservers je domein gebruikt. Dat zijn de servers waar de records echt staan, en daar pas je ze dus aan.

De records die je zet

Dit zijn de twee regels die je nodig hebt, met het IP-adres van jouw server:

Type   Naam   Waarde
A      @      123.45.67.89
A      www    123.45.67.89

Een A-record koppelt een naam aan een IPv4-adres, het gewone nummer van je server. Het eerste record is voor de naam zelf, mijndomein.nl. Bij de ene registrar schrijf je dat als @, bij de andere laat je het naamveld leeg. Het tweede is voor www.mijndomein.nl.

Sommige registrars zetten www standaard neer als CNAME, een verwijzing naar een andere naam. Wijst die naar je domein zelf, dan is dat prima, want dan volgt www gewoon het eerste record. Wijst hij naar een parkeerpagina van de registrar, maak er dan een A-record van zoals hierboven.

Staan er al A-records voor de naam zelf of voor www, pas die dan aan in plaats van er een tweede naast te zetten. Met twee A-records voor dezelfde naam gaan bezoekers soms naar de ene plek en soms naar de andere. Een subdomein, zoals agenda.mijndomein.nl, krijgt een eigen A-record, met agenda als naam.

AAAA, MX en de rest

Een AAAA-record doet hetzelfde als een A-record, maar dan voor IPv6, de nieuwere vorm van internetadressen. Veel registrars zetten er standaard een neer die naar hun parkeerpagina wijst. Laat je die staan, dan komt iedereen die via IPv6 binnenkomt op die parkeerpagina uit, en mislukt vaak ook de aanvraag van het certificaat voor je slotje. Haal zo’n AAAA-record dus weg. Wil je je site later ook via IPv6 bereikbaar maken, dan zet je er het IPv6-adres van je eigen server in.

De records van het type MX laat je met rust. Die bepalen waar mail voor je domein naartoe gaat. Hetzelfde geldt voor de TXT-records die bij je mail horen, zoals een regel die begint met v=spf1. Je verandert alleen waar je website staat, niet waar je mail binnenkomt.

Een voorbeeld. Pieter is keramist en heeft zijn domein al jaren, met zijn mail bij een maildienst. Zijn site verhuist van een websitebouwer naar zijn eigen server. Bij zijn registrar past hij het A-record voor de naam zelf en dat voor www aan, en hij haalt een AAAA-record weg dat nog naar de websitebouwer wees. Zijn MX-records laat hij staan. Zijn mail merkt van de hele verhuizing niets.

Controleren met dig

Of je wijziging is doorgekomen, zie je met dig, een programma dat DNS-records opvraagt. Je typt het op je server:

dig +short mijndomein.nl
dig +short www.mijndomein.nl
dig +short AAAA mijndomein.nl
dig +short MX mijndomein.nl

De eerste twee horen het IP-adres van je server te geven. De derde hoort niets te geven, of het IPv6-adres van je eigen server. De vierde laat je mailrecords zien, en die horen nog precies hetzelfde te zijn als voor je wijziging.

Zie je bij de eerste twee een ander nummer of helemaal niets, dan is de wijziging nog onderweg, of klopt er iets niet bij je registrar. Wacht een kwartier en probeer het opnieuw; met het pijltje omhoog haal je het vorige commando terug. Staat het oude nummer er na een paar uur nog, kijk dan of je de records bij de goede partij hebt aangepast.

Ziet jouw laptop de nieuwe site al en een vriend nog de oude, dan is er niets mis. Computers en internetproviders onthouden een record tot de TTL verloopt, en dat lost zichzelf op.

Daarna: je site live met een slotje

Wijzen beide namen naar je server, dan kan het certificaat worden aangevraagd dat je site het slotje in de adresbalk geeft. Op een server van retrAIt doet één commando dat:

sudo publish mijndomein.nl

Dat zet de webserver goed voor je domein en vraagt één certificaat aan voor de naam zelf en voor www. Daarna stuurt je server iedereen die het adres zonder slotje intypt door naar de versie met slotje.

Het certificaat komt van Let’s Encrypt, en die controleert eerst of het domein echt naar jouw server wijst. Daarvoor zet je server een klein bestand klaar dat Let’s Encrypt via poort 80 ophaalt, zo staat in de uitleg over die controle. Wijst een van de twee namen nog ergens anders heen, dan mislukt de aanvraag en meldt publish Cert overgeslagen. Wacht dan tot dig bij allebei het goede nummer geeft, en draai hetzelfde commando nog een keer. Er gaat niets dubbel.

Blijf het intussen niet steeds opnieuw proberen. Let’s Encrypt staat per naam vijf mislukte controles per uur toe, volgens de limieten van Let’s Encrypt; daarna moet je even wachten. Meer over het slotje en hoe het vanzelf wordt vernieuwd, lees je in Het slotje in je adresbalk.

Verhuis je later naar een andere server, dan doe je hetzelfde nog een keer: de A-records naar het nieuwe adres, en daar publish draaien. Je domeinnaam blijft van jou, waar je site ook staat. Twijfel je nog tussen een eigen server en een hostingpakket, lees dan Eigen server of gewone hosting.

Zet vandaag de records bij je registrar goed en ga daarna iets anders doen. Geeft dig voor allebei de namen het nummer van je server, dan zet je je site live met publish. Wil je daarna weten hoe je site er verder voor staat, test hem dan op internet.nl, een initiatief van de internetgemeenschap en de Nederlandse overheid.

Foto bovenaan: Jan van der Wolf via Pexels

Delen

Ken je iemand die hier iets aan heeft?

Stuur het door, of deel het als beeld in je story of op LinkedIn.

Als beeld, voor je story of een post

Op een telefoon deel je het beeld meteen, bijvoorbeeld als story op Instagram of in je WhatsApp-status. Op een computer bewaar je het. Zet de link erbij, in je bericht of als sticker.

Meer over je eigen server

Alles over je eigen server