DNS-onderhoud voor .nl
- Door: Marco Davids
- 19 april 2012 - 12:00 uur
De oplettende .nl-watcher zal het zijn opgevallen dat we bezig zijn met het veranderen van de NS RR-set van de .nl-zone. Twee NS-records uit het 'nic.nl' domein zijn inmiddels (via een zogenaamde IANA-procedure) vervangen door NS-records die eindigen op 'dns.nl'. De overige volgen binnen afzienbare tijd.[meer...]
Voor het .nl-domein is zo’n IANA-procedure af en toe nodig, bijvoorbeeld wanneer een name server een ander IP-adres krijgt.
Ook hebben we in het verleden de name servers uit het 'domain-registry.nl-domein’ gehaald en in het veel kortere 'nic.nl-domein’ geplaatst. Dat scheelde een aantal bytes, die weer van pas kwamen voor het toevoegen van 'AAAA' glue-records ten behoeve van IPV6.
Dit keer was er nog een andere reden. We willen toe naar een andere setup met minder 'name server afhankelijkheden'. Wat we daarmee bedoelen kan het beste duidelijk gemaakt worden aan de hand van een afbeelding. Onze collega's van Verisign Labs hebben daarvoor een mooie tool in het leven geroepen met de indrukwekkende aanduiding: The Transitive Trust and DNS Dependency Graph Portal:
http://trans-trust.verisignlabs.com/
Deze tool visualiseert heel fraai hoe veelzijdig het resolven van een domeinnaam kan verlopen. Voor een .nl-domeinnaam moest eerst 'nic.nl' worden geresolved, maar daarvoor moeten eerst tal van andere domeinnamen worden afgelopen. Al met al vereist dat voor een resolver met een nog lege cache een flink aantal stappen, waarbij de resolver zelfs tot in Japan kan uitkomen alvorens hij resultaat heeft. Dat kan kostbare milliseconden vergen.

http://trans-trust.verisignlabs.com/pix/nl.-names.png
Hoewel het DNS prima werkt in de huidige situatie, geloven we dat het vereenvoudigen van de ‘name server afhankelijkheden’ een goede stap voorwaarts is. Het maakt de situatie meer 'lean and mean' en in het meest gunstigste geval levert het ook nog een sneller DNS op.
Als de transitie straks helemaal is voltooid, zal de situatie voor .nl meer lijken op die van (bijvoorbeeld) Zweden:
http://trans-trust.verisignlabs.com/pix/se.-names.png
De domeinnaam 'dns.nl' die we voor de nieuwe NS records gebruiken, is een zogeheten 'empty non-terminal'. Er is geen 'apex' of ‘start of authority’ en geen aparte zonefile, want de 'ns[13].dns.nl' records staan rechtstreeks in de .nl-zone. Exact zoals de Zweedse collega's al een tijdje doen. Dat heeft een groot voordeel; alles wat belangrijk is voor de .nl-zone staat nu ook in die zone. En passant zijn de nieuwe NS records ook DNSSEC gesigned, wat voor ‘nic.nl’ nog niet het geval was.
We hebben ook nog even overwogen om het model van .fi, de Finse collega's te volgen. Zij gebruiken 1-teken .fi-domeinnamen als NS-records, zoals 'a.fi', b.fi' enz. Daarmee wordt de NS RR-set nog wat compacter.
Uiteindelijk hebben we hier voor niet gekozen, omdat dit effectief zou betekenen dat er voor .nl 1-teken domeinnamen zouden ontstaan en dat zou een nogal revolutionaire, niet geheel onomstreden verandering betekenen.
1-teken domeinnamen zijn tot op de dag van vandaag niet toegestaan in .nl, dank zij een, zo je wilt, ‘voorzienige blik’ van Piet Beertema, die destijds goed op de hoogte was van RFC952, waarin letterlijk staat:
"Single character names or nicknames are not allowed."
Nu hebben we het hier niet over hostnamen, maar over domeinnamen en DNS. In de DNS RFC's, zoals RFC1034 (en haar voorloper RFC882) wordt echter wel naar bovengenoemde RFC verwezen. Er staat dat: 'labels' (de stukjes tekst tussen de punten in een domeinnaam) moeten voldoen aan de eisen voor een hostnaam, dus aan RFC952. Geen 1-teken namen dus.
Piet Beertema en zijn collega Jaap Akkerhuis hadden het dus scherp gezien: “1-teken domeinnamen 'mogen' eigenlijk niet”, constateerden ze (al werkt het technisch prima). Jon Postel, toen nog beheerder van alle gTLD's (.com, .net. enz.), verkreeg dit inzicht pas in 1992, maar toen waren er al enkele 1-teken domeinnamen geregistreerd:
http://en.wikipedia.org/wiki/Single-letter_second-level_domain
Dus, hoewel 1-letter domeinnamen (als NS records) prima hadden kunnen werken, hebben we er vooralsnog voor gekozen het besluit van Piet Beertema van destijds in ere te houden.
DNS.nl en geen NIC.nl
De keuze voor 'dns.nl', een beschermde .nl-domeinnaam, is gemaakt om het transitieproces te vergemakkelijken. Het geeft ons een goede gelegenheid om onder dat domein nieuwe name servers op te tuigen en dan via de IANA-procedure de soepele omzetting te doen van 'nic.nl' naar de 'dns.nl' variant. Uiteraard nemen we deze gelegenheid te baat om ook flink wat verbeteringen in de infrastructuur aan te brengen, zoals nieuwe hardware en clustering. Maar daarover wellicht een volgende keer.





