Wat is TTL in DNS?

Je hebt net een DNS-record bijgewerkt, dus waarom toont je website nog steeds de oude versie? Die vertraging heeft alles te maken met wat TTL in DNS is en hoe het werkt. TTL staat voor time to live, en het bepaalt hoe lang servers wereldwijd een gecachete…

Stel je voor. Je bent net van hostingaanbieder gewisseld en hebt je A-record bijgewerkt zodat het naar de nieuwe server wijst. Je ververst je site en er is niets veranderd. De oude site laadt nog steeds. Je kijkt in je DNS-paneel en het nieuwe record is opgeslagen. Wat is er aan de hand?

Het antwoord is TTL. Als je een DNS-record instelt, stel je ook een TTL-waarde in die elke DNS-server op internet vertelt hoe lang hij een gecachete kopie van dat record mag bewaren. Tot die timer afloopt, blijven die servers de oude informatie geven, ook nadat je iets hebt gewijzigd. Begrijpen hoe DNS werkt begint met begrijpen wat TTL is, want het bepaalt de snelheid van elke DNS-wijziging die je maakt.

Waar staat TTL voor?

TTL staat voor time to live. In DNS is het een getal dat aan elk DNS-record hangt en servers vertelt hoeveel seconden ze dat record in de cache mogen bewaren voordat ze terug moeten om een nieuw exemplaar te controleren.

Elk DNS-record dat je maakt, heeft een TTL-waarde. Al je DNS-recordtypen gebruiken het. A-records, CNAME-records, MX-records, TXT-records. Elk heeft een eigen TTL-instelling, en elk kan op een andere waarde staan, afhankelijk van hoe vaak je verwacht dat dat record verandert.

Hoe werkt TTL in gewone taal?

Als iemand je domein in een browser typt, vraagt zijn apparaat een DNS-server om het IP-adres van je website. Die DNS-server zoekt je A-record op en krijgt het antwoord. Maar hij leest ook de TTL-waarde die aan dat record hangt.

Staat je TTL op 3600, dan bewaart de DNS-server dat antwoord 3.600 seconden (een uur). Het komende uur krijgt iedereen die diezelfde DNS-server om je domein vraagt het gecachete antwoord. De server controleert pas weer als de timer afloopt.

Zodra de TTL om is, zorgt het volgende verzoek voor een nieuwe lookup. De DNS-server gaat terug naar de bron, haalt het huidige record op, leest de nieuwe TTL-waarde en begint het aftellen opnieuw.

Zie het als een geeltje op de koelkast. Iemand schrijft het telefoonnummer van de pizzeria op en plakt het op de koelkast. Iedereen in huis gebruikt dat nummer tot het briefje verloopt (wordt weggegooid). Dan moet iemand het nummer opnieuw opzoeken. Heeft de pizzeria intussen een ander nummer gekregen, dan wordt het nieuwe nummer pas opgepikt nadat het oude briefje weg is.

Hoe wordt TTL gemeten?

TTL wordt altijd in seconden gemeten. Dit zijn de gebruikelijkste waarden en wat ze in echte tijd betekenen.

  • 300 is 5 minuten
  • 600 is 10 minuten
  • 1800 is 30 minuten
  • 3600 is 1 uur
  • 14400 is 4 uur
  • 43200 is 12 uur
  • 86400 is 24 uur

De meeste DNS-panelen tonen het TTL-veld als je een record maakt of bewerkt. Sommige gebruiken een keuzemenu met vaste opties zoals "1 uur" of "automatisch". Andere laten je het exacte aantal seconden typen.

Wat gebeurt er bij een hoge TTL?

Een hoge TTL betekent dat DNS-servers je record lang in de cache bewaren. Staat je TTL op 86400 (24 uur), dan bewaart elke DNS-server die je record opzoekt dat antwoord een hele dag voordat hij opnieuw controleert.

Het voordeel is minder DNS-lookups. Als duizenden bezoekers je site laden, hebben hun DNS-resolvers het antwoord al in de cache. Dat betekent iets snellere paginaweergaven en minder belasting van de DNS-infrastructuur.

Het nadeel is dat wijzigingen langer nodig hebben om zich te verspreiden. Werk je je A-record bij met een TTL van 24 uur, dan zien sommige bezoekers de oude site mogelijk nog tot 24 uur. Je ruilt snelheid van wijzigingen in voor efficiëntie van lookups.

Wat gebeurt er bij een lage TTL?

Een lage TTL betekent dat DNS-servers je record vaker vernieuwen. Staat je TTL op 300 (vijf minuten), dan gooien servers het gecachete antwoord elke vijf minuten weg en zoeken ze het opnieuw op.

Het voordeel is dat wijzigingen zich snel verspreiden. Werk je een record bij met een TTL van vijf minuten, dan ziet het grootste deel van internet de nieuwe waarde binnen enkele minuten.

Het nadeel is meer DNS-verzoeken. Elke keer dat de cache verloopt, moet de server een nieuwe lookup doen. Voor een site met veel verkeer betekent dat meer belasting voor je authoritative DNS-servers. Voor de meeste kleine tot middelgrote merken is het verschil niet merkbaar. Maar een permanent lage TTL houden terwijl je niets wijzigt, is onnodig.

Wat is een goede standaard-TTL?

Voor de meeste DNS-records is 3600 (een uur) een solide standaard. Het zoekt de balans tussen twee dingen.

  • Wijzigingen propageren binnen een uur, snel genoeg voor routinematige updates
  • DNS-servers hoeven je record niet elke paar minuten op te zoeken als er niets is veranderd

Veranderen je DNS-records zelden (en bij de meeste merken is dat zo), dan kun je gerust 3600 of zelfs 14400 (vier uur) gebruiken. Je hebt alleen een lagere TTL nodig als je weet dat er een wijziging aankomt.

Wanneer moet je je TTL verlagen?

Verlaag je TTL vóór elke grote DNS-wijziging. In deze situaties bespaart een lage TTL je tijd en kopzorgen.

  • Overstappen naar een andere hostingaanbieder en je A-record bijwerken
  • Je website migreren naar een nieuw platform
  • Van e-mailaanbieder wisselen en MX-records bijwerken
  • Een domein voor het eerst naar een website laten verwijzen
  • Een failover- of load-balancingsysteem opzetten

In al deze gevallen wil je dat de wijziging zo snel mogelijk van kracht wordt. Een lage TTL zorgt daarvoor.

Hoe verlaag je de TTL vóór een migratie?

Er is een simpele strategie die ervaren DNS-beheerders gebruiken vóór elke servermigratie. Het werkt in drie stappen.

  1. 24 tot 48 uur voor de wijziging verlaag je je TTL naar 300 (vijf minuten). Zo krijgt de oude hoge TTL de tijd om bij alle DNS-servers wereldwijd te verlopen. Tegen de tijd dat je de echte wijziging doorvoert, controleren de meeste servers elke vijf minuten
  2. Voer de DNS-wijziging door. Werk het A-record (of het record dat je wijzigt) bij naar de nieuwe waarde. Omdat de TTL al laag is, pikken DNS-servers over de hele wereld de nieuwe waarde binnen enkele minuten op
  3. Zodra de wijziging bevestigd is en werkt, zet je de TTL terug naar 3600 of je gewenste standaard. Dit stopt de constante lookups nu de wijziging klaar is en het nieuwe record stabiel is

Stap één overslaan is de meest gemaakte fout. Staat je TTL nog op 86400 als je de wijziging doorvoert, dan blijven sommige DNS-servers tot 24 uur het oude record geven omdat hun cache nog niet is verlopen. Vooraf de TTL verlagen voorkomt dat.

Hoe hangen TTL en DNS-propagatie samen?

DNS-propagatie is het proces waarbij je bijgewerkte DNS-records zich verspreiden over alle DNS-servers wereldwijd. TTL is de belangrijkste factor die bepaalt hoe lang dat proces duurt.

Als mensen zeggen "DNS-propagatie kan tot 48 uur duren", bedoelen ze dat sommige DNS-servers je oude record met een hoge TTL kunnen hebben gecachet, en die servers pas op updates controleren als hun timer afloopt.

Een lage TTL vóór een wijziging betekent snellere propagatie. Een hoge TTL betekent langzamere propagatie. Zo direct is het. Het getal van 48 uur is een worstcasescenario voor records met een TTL van 24 uur, omdat sommige servers het record kunnen hebben gecachet vlak voordat je de wijziging doorvoerde en nog bijna een volle dag op hun timer hebben.

Veelgemaakte TTL-fouten

Twee fouten komen vaker voor dan alle andere als het om TTL gaat.

Vergeten de TTL te verlagen vóór een wijziging. Dit is de grote. Je werkt je A-record bij zodat het naar een nieuwe server wijst, maar je TTL stond op 86400. Nu zien sommige bezoekers de nieuwe site en andere de oude, en je kunt niets anders doen dan het uitzitten. Verlaag de TTL altijd 24 tot 48 uur voordat je DNS-wijzigingen doorvoert.

De TTL permanent te laag zetten. Een TTL van 60 seconden betekent dat elke DNS-server elke minuut op updates controleert. Veranderen je records niet, dan zorgt dit alleen voor onnodig DNS-verkeer. Het kan je site ook iets trager maken voor nieuwe bezoekers van wie de DNS-resolver vaker een nieuwe lookup moet doen. Gebruik een lage TTL tijdelijk als er wijzigingen gepland zijn en zet hem daarna terug.

Zo regelt WEMASY TTL

Als je een eigen domein aan je WEMASY-website koppelt, regelt het platform de DNS-configuratie als onderdeel van het installatieproces. WEMASY stelt verstandige standaard-TTL's in voor de records die je nodig hebt, dus je hoeft niet te gokken welke waarden je moet gebruiken.

Migreer je naar WEMASY vanaf een andere aanbieder, dan loodst de domeininstallatiegids je door het verlagen van je TTL voordat je overstapt, zodat de overgang soepel verloopt. WEMASY bevat hosting, SSL en domeinbeheer in één abonnement. Bekijk wat er in elk abonnement zit op de prijzenpagina van WEMASY.

Hoe nu verder

Nu je begrijpt wat TTL is en hoe het de snelheid van DNS-wijzigingen bepaalt, behandelt het volgende hoofdstuk hoe DNS-propagatie werkt. Je leert wat er achter de schermen gebeurt als een DNS-record wordt bijgewerkt, waarom propagatie niet direct gaat en hoe je controleert of je wijzigingen zich hebben verspreid. Voor het complete beeld van hoe het domain name system werkt, lees je opnieuw het hoofdstuk over hoe DNS werkt.

Veelgestelde vragen

Kun je voor elk DNS-record een andere TTL instellen?

Ja. Elk DNS-record heeft een eigen TTL-veld. Je kunt je A-record op 3600 (een uur) zetten en je MX-record op 14400 (vier uur), als dat bij je past. Records die vaker veranderen kunnen een lagere TTL hebben, stabiele records een hogere. Met de websitebouwer van WEMASY stel je dit direct op je website in.

Beïnvloedt TTL de laadsnelheid van je website?

Niet direct. TTL bepaalt hoe vaak DNS-servers hun gecachete kopie van je DNS-records vernieuwen. Zodra het apparaat van een bezoeker je domein naar een IP-adres heeft omgezet, heeft TTL geen invloed meer op hoe snel je pagina's laden. Het verschil zit alleen in hoe snel de DNS-lookup zelf klaar is, wat milliseconden kost, geen seconden.

Welke TTL moet je gebruiken voor e-mailrecords?

Voor MX-records en e-mailgerelateerde TXT-records (zoals SPF en DKIM) is een TTL van 3600 (een uur) een veilige standaard. Ga je binnenkort van e-mailaanbieder wisselen, verlaag de TTL dan een dag of twee voor de wijziging naar 300 en zet hem terug zodra de nieuwe configuratie is bevestigd.

Kun je DNS-servers dwingen hun cache te legen voordat de TTL verloopt?

Nee. Je kunt externe DNS-servers niet dwingen hun gecachete records te laten vallen. Elke server houdt zich aan zijn eigen cachetimer. De enige manier om het proces te versnellen is vóór de wijziging een lage TTL hebben ingesteld. Sommige DNS-aanbieders bieden een tool om de cache van hun eigen servers te legen, maar dat raakt niet elke server op internet.

Is er een minimale TTL-waarde die je moet gebruiken?

Technisch kun je de TTL zo laag als 1 seconde instellen, maar de meeste DNS-aanbieders eisen een minimum van 60 of 300 seconden. Onder de 300 gaan is zelden nuttig. Zelfs tijdens migraties geeft een TTL van vijf minuten je snelle propagatie zonder de DNS-infrastructuur te overbelasten.

Zet het meteen
in je eigen website.

Start gratis met WEMASY en bouw je site in een paar minuten.