De DNS-server (Domain Name System) is een computer die hostnamen van websites (zoals voorbeeld.com) koppelt aan hun overeenkomstige IP-adressen (Internet Protocol). Op de DNS-server wordt een database met openbare IP-adressen en de bijbehorende domeinnamen bijgehouden.
Volgens de IPv4- of IPV6-protocollen heeft elk apparaat dat is verbonden met internet een uniek IP-adres dat helpt om het te identificeren. Hetzelfde kan gezegd worden voor webservers, die worden gebruikt om websites te hosten. Een CDNetworks-server in Mountain View, Californië heeft bijvoorbeeld een IP-adres van 157.185.170.144.
DNS-servers helpen ons om het onthouden van lange IP-adressen (en zelfs complexere alfanumerieke adressen in het IPV6-systeem) te vermijden door automatisch websitenamen in deze nummers te vertalen, zodat de servers de juiste webpagina's kunnen laden.
Inhoud
Wat is DNS?
Het Domain Name System (DNS) is een database met domeinnamen en IP-adressen waarmee browsers het juiste IP-adres voor een hostnaam-URL kunnen vinden. Wanneer we toegang willen tot een website, typen we meestal de domeinnaam in de webbrowser, zoals cdnetworks.com, wired.com of nytimes.com.

Om inhoud voor een website te laden, moeten webbrowsers echter de specifieke IP-adressen kennen. Het Domain Name System (DNS) zet domeinnamen om in IP-adressen, waardoor bronnen kunnen worden geladen vanaf de server van de website. Websites met meerdere IP-adressen die bij één domeinnaam horen, zijn niet ongewoon.
Grote sites zoals Google zullen bijvoorbeeld gebruikers hebben die een server van over de hele wereld aanvragen. Zelfs als de sitenaam die in de browser is ingevoerd hetzelfde is, zal de server waarmee een computer uit Singapore verbinding probeert te maken hoogstwaarschijnlijk verschillen van de server die een computer uit bijvoorbeeld Toronto probeert te bereiken. Dit is wanneer DNS-caching in beeld komt.
DNS-caching
DNS-caching is de techniek om DNS-gegevens op te slaan op DNS-records die zich dichter bij een verzoekende client bevinden, zodat de DNS-query sneller kan worden opgelost. Dit elimineert de noodzaak voor extra verzoeken verderop in de keten, verbetert de laadtijden van webpagina's en verlaagt het bandbreedtegebruik.
Time to live, of TTL, verwijst naar hoe lang DNS-records in de DNS-cache worden bewaard. Dit tijdsbestek is significant omdat het definieert hoe "vers" DNS-records zijn en of ze overeenkomen met de huidige IP-adresrevisies. DNS-caching kan plaatsvinden in de browser of op het niveau van het besturingssysteem (OS-niveau).
DNS-caching in de browser
Omdat webbrowsers DNS-records voor een bepaalde periode opslaan, is dit vaak de eerste plaats waar een gebruiker kijkt bij het maken van een DNS-record. Er zijn minder stappen nodig bij het verifiëren van de DNS-cache en het doen van een DNS-verzoek aan een IP-adres bij gebruik van een browser.
DNS-caching Het niveau van het besturingssysteem (OS)
Wanneer een DNS-query het werkstation van een eindgebruiker verlaat, gaat deze naar het niveau van het besturingssysteem om naar een match te zoeken. Het "stub-resolver"-proces in het besturingssysteem controleert zijn eigen DNS-cache om te bepalen of het de record heeft. Als dit niet het geval is, wordt de vraag doorgestuurd naar de internetprovider buiten het lokale netwerk (ISP).
Hoe werkt een DNS?
De DNS is verantwoordelijk voor het omzetten van de hostnaam (ook bekend als de naam van de website of webpagina) naar een IP-adres. Het proces van het lokaliseren van het corresponderende IP-adres staat bekend als DNS-resolutie, en het invoeren van de domeinnaam staat bekend als een DNS-query.
Er zijn drie soorten DNS-query's: recursief, iteratief en niet-recursief.
Recursieve query's zijn query 's waarbij een DNS-server moet reageren met het gevraagde bronrecord. Als een record niet kan worden gevonden, moet een foutmelding worden weergegeven aan de DNS-client.
Iteratieve vragen zijn vragen waarbij de DNS-client om reacties vraagt van verschillende DNS-servers totdat de beste reactie wordt ontdekt, of totdat er een fout of time-out optreedt. Als een DNS-server die autoriteit heeft voor een lager niveau van de domeinnaamruimte geen overeenkomst voor de query kan vinden, zal deze verwijzen naar een DNS-server die autoriteit heeft voor een lager niveau van de domeinnaamruimte. De DNS-client vraagt vervolgens naar dit verwijzingsadres en het proces herhaalt zich met meer DNS-servers.
Niet-recursieve query's zijn query's die een DNS-resolver oplost wanneer de gevraagde bron beschikbaar is, hetzij omdat de server gezaghebbend is of omdat de bron al in de cache is opgeslagen.
De verschillende soorten DNS-servers
Een DNS-query wordt naar een paar verschillende servers gestuurd voordat deze wordt opgelost, zonder tussenkomst van de eindgebruiker.
1. DNS recursieve oplosser
Dit is een server die is bedoeld voor het ontvangen van verzoeken van clientcomputers. Het lokaliseert het DNS-record en voert aanvullende verzoeken uit als reactie op de DNS-query's van de client. Wanneer de gevraagde bronnen vroeg in het queryproces worden teruggestuurd naar de recursor, kan DNS-caching het aantal query's verminderen.
2. Root-naamserver
Deze server is verantwoordelijk voor het omzetten van door mensen leesbare hostnamen naar computerleesbare IP-adressen. De rootserver accepteert de query van de recursor en stuurt deze, op basis van de domeinnaam in de query, in de volgende fase door naar de TLD-naamservers.
3. Top-Level Domain (TLD) naamserver
De TLD nameservers zijn verantwoordelijk voor het bijhouden van domeinnaaminformatie. Ze kunnen bijvoorbeeld informatie bevatten over websites die eindigen op ".com" of ".org", evenals domeinen op landniveau zoals "www.example.com.uk", "www.example.com.us, " en anderen. De TLD-naamserver ontvangt de query van de rootserver en stuurt deze door naar de gezaghebbende DNS-naamserver voor het betreffende domein.
4. Gezaghebbende naamserver
De gezaghebbende DNS-naamserver zal uiteindelijk het IP-adres terugsturen naar de DNS-recursor, die het vervolgens kan doorsturen naar de client. Deze gezaghebbende DNS-naamserver is degene die de DNS-records onderaan het opzoekproces bewaart. Beschouw ze als uw laatste stop of de ultieme gezaghebbende bron van informatie.
Gevolgtrekking
Een DNS-lookup is de procedure waarmee een DNS-server een DNS-record retourneert. Het houdt in dat de hostnaamquery van de webbrowser wordt doorgegeven aan het DNS-opzoekproces op de DNS-server en terug. De DNS-resolver is de server die de eerste fase van het DNS-opzoekproces afhandelt, waarbij een reeks procedures wordt gestart die uitmonden in de vertaling van de URL in een IP-adres voor het laden van webpagina's.
De recursieve DNS-resolver ontvangt de door de gebruiker ingevoerde hostnaamquery nadat deze van de webbrowser naar internet is gegaan. De recursieve DNS-server stuurt vervolgens een query naar de DNS-rootserver, die het adres retourneert van de TLD-server die verantwoordelijk is voor domeinopslag.
De resolver stuurt vervolgens een DNS-verzoek naar het TLD van het bijbehorende domein en ontvangt het IP-adres van de domeinnaamserver. De recursieve DNS-server vraagt vervolgens de domeinnaamserver aan en ontvangt als laatste stap het IP-adres om aan de webbrowser te geven. De browser kan vervolgens HTTP-verzoeken gebruiken om bepaalde webpagina's op te vragen nadat het DNS-zoekproces is voltooid.
Deze fasen vormen een conventionele DNS-zoekprocedure, maar DNS-caching kan de zaken versnellen. DNS-caching stelt de browser, het besturingssysteem of een verre DNS-infrastructuur in staat om DNS-opzoekinformatie lokaal op te slaan, waardoor sommige stappen kunnen worden overgeslagen voor sneller laden.