Wat is DNS (Domain Name System)? DNS staat voor Domain Name System en doet onder andere de vertaalslag van een domeinnaam – of hostnaam – naar een IP-adres. Dit heet ook wel forward DNS. De vertaling van het IP-adres naar een hostnaam heet reverse DNS. Door deze vertaalslag wordt DNS ook wel het telefoonboek van internet genoemd. Vaak zie je dat de termen “nameserver” en “DNS-server” door elkaar worden gebruikt. Ze betekenen hetzelfde. Wil je weten wat DNS is? Lees dan verder …

DNS grondbeginselen

De grondbeginselen van DNS staan beschreven in technische documentatie, genaamd RFC’s (of Request for Comments,) nummers 1034 en 1035. RFC’s zijn een set van technische en organisatorische documenten over internet, inclusief de technische specificatie- en policy-documenten opgesteld door de IETF (de Internet Engineering Task Force). Erg droge stof…

Een DNS-server werkt met zogenoemde zonefiles: bestanden met informatie (records) over een zone of domeinnaam.

DNS-server software

BIND en PowerDNS zijn twee veelgebruikte softwarepakketten voor het beheren van DNS-instellingen en zones, en het opzetten van DNS-servers.

Het belang van DNS

“Wat is er nou zo belangrijk aan DNS?”, vraag je je wellicht af. Wij mensen kunnen nou eenmaal beter namen onthouden dan nummers. Het is dus makkelijker om “www.itfaq.nl” te onthouden dan “77.94.248.188”. Hierom heeft een zekere Paul Mockapetris dit DNS-systeem bedacht.

Deze vertaalslag – of DNS lookup – doet jouw computer vrijwel iedere keer als je een website opvraagt. Om dataverkeer te besparen wordt de gevonden informatie wel enige tijd gecachet op jouw computer, zodat je een website voor de tweede keer nét iets sneller bereikt.

De geschiedenis van DNS

In de beginjaren van het internet waren er slechts enkele honderden computers permanent op het netwerk aangesloten. Iedere computer had een unieke naam (‘flat name’) en een adres in getallen. Alle adressen en bijbehorende namen werden destijds opgeslagen in een groot tekstbestand met de naam HOSTS.TXT.

Dit tekstbestand werd onderhouden en opgeslagen op een computer van het Stanford Research Institute & Network Information Centre (SRI-NIC). Alle andere machines op het netwerk haalden dit bestand met enige regelmaat via FTP van de SRI-NIC-server.

Dit ging prima, omdat het hosts.txt tekstbestand niet vaker dan één of twee keer per week aangepast hoefde te worden. Maar plotseling nam het internet een vlucht: het aantal computers dat permanent aangesloten was groeide explosief. Hierdoor werd het bestand steeds groter en daardoor moesten alle computers die op het netwerk waren aangesloten ook steeds vaker de nieuwe versie ophalen. Alle computers bleven afhankelijk van dezelfde SRI-NIC-server en uiteindelijk ging dit problemen opleveren. Paul Mockapetris heeft een oplossing voor dit probleem bedacht in de vorm van het Domain Name System (RFC1034 en RFC1035).

DNS-zonefiles

In een zonefile vinden we veel informatie. Dat kan bestaan uit address-, mail exchanger-, nameserver-, text– of pointer records. De afkortingen van deze records komen je vast bekender voor: A, MX, NS, TXT en PTR. De verschillende DNS-records worden hieronder wat meer uitgelegd.

Enkele van de meer bekendere DNS-records zijn:

DNS A-records, of Address-records

Een Address-, of A-record vertaalt een DNS hostnaam zoals itfaq.nl naar een IP-adres:
host www.itfaq.nl

www.itfaq.nl has address 77.94.248.188host is een Linux command-line programma om dit op te vragen. Op Windows gebruik je hiervoor – via de Windows opdrachtprompt cmd.exenslookup:

C:\Users\Jan\Desktop\Tools>nslookup www.itfaq.nl
Server: my.internal.lan.local
Address: 192.168.46.1
Non-authoritative answer:
Name: www.itfaq.nl
Address: 77.94.248.188

Er is een speciaal A-record: het @-record. Dit staat voor de betreffende zone zelf, dus in dit geval “itfaq.nl.”. Dit @-teken is een relatieve vermelding van de zone. Als de zone voluit geschreven wordt (dus absoluut), dan moet deze afgesloten worden met een punt (“.“).

MX-records, of Mail eXchanger-records

Het Mail eXchanger, of MX, -record vertelt ons welke mailserver e-mail voor deze zone verwerkt. Oftewel: welke inkomende mailserver accepteert e-mail voor het domein? Voor itfaq.nl is dat:

host -t mx itfaq.nl
itfaq.nl mail is handled by 10 mx3.vevida.com.
itfaq.nl mail is handled by 10 mx4.vevida.com.
itfaq.nl mail is handled by 20 backup-mx.vevida.com.
itfaq.nl mail is handled by 10 mx1.vevida.com.
itfaq.nl mail is handled by 10 mx2.vevida.com.

De getallen “10” en “20” is de preference van het record, en geeft daarmee de zwaarte of voorkeur aan. Hoe lager het getal hoe belangrijker het MX-record.

NS-records, of Name Server

Name Server records geven – zoals de naam al doet vermoeden – aan welke nameservers verantwoordelijk zijn voor de host- of domeinnaam. In andere woorden; welke nameservers zorgen ervoor dat een domein überhaupt bestaat?

TXT-records, of Text-records

In TXT-records kun je allerlei tekstuele informatie kwijt. Een bekend TXT-record is SPF. SPF staat voor Sender Policy Framework en heeft tot doel te helpen spam te verminderen. Men hoopt spam te verminderen door vast te stellen of de verzender van een mailbericht gerechtigd is om een bericht te verzenden.

PTR-records, of Pointer-records

Een pointer record is het omgekeerde van een Address (A) record: het vertaalt een IP-adres naar een hostnaam:

$ host 77.94.248.188
188.248.94.77.in-addr.arpa domain name pointer net3-nl-iis-224.vevida.net.

Hieruit kunnen we afleiden dat het IP-adres waarop www.itfaq.nl gehost wordt de naam net3-nl-iis-224.vevida.net heeft.

DNS hiërarchie

Het Domain Name System is hiërarchisch opgebouwd. Dat wil zeggen dat er bepaalde nameservers informatie over de root bevatten, en informatie over sub-levels doorgeven aan onderliggende name- of DNS-servers.

De root wordt aangegeven met een punt (‘.‘). De root-zone wordt geserveerd door meerdere root-servers. Doordat de root nameservers geplaatst zijn op verschillende continenten in de wereld, en load-balanced opgezet zijn, maakt dit een erg robuust systeem. Er kan gerust een root-server uitvallen.

De hiërarchie is wellicht het beste weer te geven in de uitvoer van een DNS trace:

dig +trace itfaq.nl
; >> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5 <> +trace itfaq.nl
;; global options: printcmd
. 175572 IN NS k.root-servers.net.
. 175572 IN NS j.root-servers.net.
. 175572 IN NS g.root-servers.net.
. 175572 IN NS d.root-servers.net.
. 175572 IN NS c.root-servers.net.
. 175572 IN NS i.root-servers.net.
. 175572 IN NS a.root-servers.net.
. 175572 IN NS f.root-servers.net.
. 175572 IN NS b.root-servers.net.
. 175572 IN NS m.root-servers.net.
. 175572 IN NS e.root-servers.net.
. 175572 IN NS h.root-servers.net.
. 175572 IN NS l.root-servers.net.
;; Received 228 bytes from 192.168.46.1#53(192.168.46.1) in 0 ms
nl. 172800 IN NS nl1.dnsnode.net.
nl. 172800 IN NS ns1.dns.nl.
nl. 172800 IN NS ns2.dns.nl.
nl. 172800 IN NS ns3.dns.nl.
nl. 172800 IN NS ns4.dns.nl.
nl. 172800 IN NS ns5.dns.nl.
nl. 172800 IN NS ns-nl.nic.fr.
nl. 172800 IN NS sns-pb.isc.org.
;; Received 499 bytes from 2001:7fd::1#53(k.root-servers.net) in 16 ms
itfaq.nl. 7200 IN NS ns2.vevida.net.
itfaq.nl. 7200 IN NS ns1.vevida.net.
itfaq.nl. 7200 IN NS ns3.vevida.com.
;; Received 100 bytes from 2001:67c:1010:10::53#53(nl1.dnsnode.net) in 17 ms
itfaq.nl. 900 IN A 77.94.248.188
itfaq.nl. 900 IN NS ns2.vevida.net.
itfaq.nl. 900 IN NS ns3.vevida.com.
itfaq.nl. 900 IN NS ns1.vevida.net.
;; Received 248 bytes from 2a00:f60::31#53(ns2.vevida.net) in 14 ms

Evenals host is ook dig een tool om DNS-informatie mee op te vragen. Wat we hierin zien is de route die het DNS-systeem aflegt, vanaf de root (.), via de .nl. zone naar de itfaq.nl. zone, om tot het IP-adres en bijbehorende nameservers te komen.

Publieke DNS-servers – surf en browse veiliger en sneller?!

Er zijn twee aanbieders van publieke DNS-servers die door iedereen gebruikt mag worden:

  • Quad9 (9.9.9.9 en 149.112.112.112, 2620:fe::fe en 2620:fe::9)
  • Google Public DNS (8.8.8.8 en 8.8.4.4)
  • OpenDNS (208.67.222.222 en 208.67.220.220)

Je kunt de IP-adressen van deze openbare DNS-server-aanbieders toevoegen aan jouw netwerkkaart internetinstellingen. Soms zorgt dit ervoor dat je sneller surft omdat DNS-informatie sneller gevonden is.

Zowel Google als OpenDNS houden lijsten bij van kwalijke domeinnamen en websites, hierdoor surf je veiliger. Je krijgt een waarschuwingsmelding te zien als je een gehackte, of met een virus besmette, website bezoekt.

Of het echter ook beter is voor jouw privacy?… Immers, voor niets gaat de zon op.

Wat is een subdomein

Een subdomein is ook gelieerd aan DNS. Wat een subdomein is, lees je hier.

Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *