Aller au contenu

Paramètres des cookies

Choisissez, par catégorie, les cookies que vous autorisez. Vous pouvez modifier votre choix à tout moment via Paramètres des cookies, en bas de chaque page. Politique de confidentialité

Nécessaires

Toujours activés

Indispensables pour vous connecter, conserver votre panier et mémoriser vos choix. Ils sont toujours activés.

Quels cookies ?
  • weboke_sessie, weboke_klant, weboke_remember: votre session et le maintien de la connexion
  • weboke_basket: votre panier
  • wkBtwIncl: l'affichage des prix TTC ou HT
  • wok_cookies: votre choix concernant les cookies, 12 mois

Mesure quelle publicité mène à une visite ou à une commande, pour que nous ne payions pas des publicités inefficaces.

Quels cookies ?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), jusqu'à 90 jours
  • OpenAI Ads, publicités dans ChatGPT
  • wok_aff: le partenaire qui vous a orienté vers nous (programme d'affiliation), 60 jours

4,6

Pays et langue

Chaque pays a son propre site, avec les prix et la TVA de ce pays.

Afficher

TTL et cache

Module 6: Temps, cache et transfert de domaine · Temps de lecture : 7 minutes

Objectif d'apprentissage : Après cette leçon, vous pourrez expliquer ce qu'est la TTL d'un enregistrement, comment les caches l'utilisent et quelle TTL choisir selon la situation.

Notions clés : TTL (Time To Live), cache, cache du résolveur, cache de votre ordinateur et de votre navigateur, TTL décroissante, valeurs de TTL typiques (300, 3600, 86400)

Pourquoi le DNS mémorise les réponses

Dans la leçon 1.4, vous avez vu comment un résolveur recherche une réponse : d'abord auprès d'un serveur racine, puis auprès du serveur du TLD et enfin auprès du serveur de noms faisant autorité du domaine. Si cela devait se reproduire à chaque clic sur un site web, internet serait bien plus lent et les serveurs de noms seraient submergés par toutes ces requêtes.

C'est pourquoi les résolveurs mémorisent chaque réponse pendant un certain temps. Cette mémoire s'appelle le cache. Si quelqu'un d'autre interroge le même nom, le résolveur donne immédiatement la réponse depuis son cache, sans refaire tout le trajet.

La question qui se pose alors est : combien de temps le résolveur peut-il mémoriser une réponse ? C'est le propriétaire du domaine qui le détermine, grâce à la TTL de chaque enregistrement.

Ce qu'est la TTL

TTL signifie Time To Live : le temps pendant lequel un enregistrement peut rester dans un cache, exprimé en secondes. Chaque enregistrement a sa propre TTL. Dans une zone, cela ressemble à ceci :

example.com.        3600   IN  A     192.0.2.10
www.example.com.    3600   IN  A     192.0.2.10
example.com.        3600   IN  MX    10 mail.example.com.
_dmarc.example.com. 14400  IN  TXT   "v=DMARC1; p=quarantine"

Le nombre après le nom est la TTL. Ici, les enregistrements A et MX peuvent être mémorisés pendant une heure (3600 secondes) et l'enregistrement DMARC pendant quatre heures (14400 secondes).

Valeurs courantes :

TTLÉquivaut àQuand l'utiliser ?
3005 minutesJuste avant et pendant un transfert, ou si vous changez souvent
36001 heureUne bonne valeur par défaut pour la plupart des enregistrements
144004 heuresEnregistrements qui changent rarement
864001 jourEnregistrements qui ne changent presque jamais, comme les enregistrements NS

La TTL est un nombre compris entre 0 et 2 147 483 647 secondes (2^31 - 1, comme indiqué dans la RFC 2181). En pratique, vous rencontrerez rarement une valeur supérieure à un jour ou deux. De nombreux résolveurs appliquent aussi leur propre maximum, souvent un jour ou une semaine.

Le compte à rebours

La TTL n'est pas une horloge fixe valable pour le monde entier. Chaque résolveur ne commence à compter qu'au moment où il récupère l'enregistrement.

Prenons un exemple. L'enregistrement A de example.com a une TTL de 3600.

  • À 10h00, le résolveur du fournisseur A interroge l'enregistrement. Il reçoit 192.0.2.10 et peut le mémoriser jusqu'à 11h00.
  • À 10h40, le résolveur du fournisseur B l'interroge. Il le mémorise jusqu'à 11h40.
  • À 10h45, vous modifiez l'enregistrement vers 198.51.100.10.
  • Les utilisateurs du fournisseur A voient la nouvelle adresse à partir de 11h00, ceux du fournisseur B seulement à partir de 11h40.

Si vous interrogez l'enregistrement auprès d'un résolveur qui l'a déjà dans son cache, vous verrez dans le résultat une TTL qui diminue progressivement. Auprès du serveur de noms faisant autorité, vous verrez toujours la valeur complète :

; chez le serveur de noms faisant autorité
example.com.   3600   IN  A  192.0.2.10

; chez un résolveur, 25 minutes plus tard
example.com.   2100   IN  A  192.0.2.10

C'est utile à savoir : si vous voyez encore 2100 secondes chez votre résolveur, cela signifie qu'il continuera à donner l'ancienne réponse pendant encore 35 minutes.

Qui mémorise les réponses ?

Le résolveur de votre fournisseur d'accès n'est pas le seul à avoir un cache. Il existe plusieurs couches :

  1. Le résolveur de votre fournisseur, de votre réseau d'entreprise ou un résolveur public (par exemple 1.1.1.1, 8.8.8.8 ou 9.9.9.9).
  2. Votre routeur, à la maison ou au bureau, qui fait souvent lui-même office de petit résolveur.
  3. Le système d'exploitation de votre ordinateur ou de votre téléphone.
  4. Votre navigateur, qui conserve parfois lui aussi les réponses DNS un petit moment.

Chaque couche respecte en principe la TTL, mais pas toutes le font avec la même précision. C'est pourquoi cela peut prendre un peu plus de temps sur votre ordinateur portable que chez votre collègue. Vous découvrirez comment vider ces caches dans la leçon 6.2.

Choisir la bonne TTL

Une TTL courte peut sembler pratique : les modifications sont alors rapidement visibles partout. Mais cela comporte un inconvénient. Les résolveurs doivent alors redemander l'enregistrement beaucoup plus souvent. Cela ralentit légèrement le premier chargement de votre site, et si vos serveurs de noms sont momentanément inaccessibles, votre domaine devient plus vite injoignable. Avec une TTL d'une heure, les résolveurs peuvent compenser une courte panne du serveur de noms grâce à leur cache.

Quelques règles de base :

  • Par défaut : 3600 secondes. C'est un bon équilibre.
  • Pour une modification planifiée : 300 temporairement. Abaissez la TTL au moins une ancienne durée de TTL avant la modification. Si elle était à 3600, faites-le au moins une heure à l'avance, de préférence un jour à l'avance pour plus de sécurité. Si elle était à 86400, faites-le au moins un jour à l'avance. Après la modification, remettez-la à sa valeur initiale. Vous découvrirez comment procéder lors d'un transfert de domaine dans la leçon 6.3.
  • En dessous de 60 secondes, cela a peu d'intérêt. Certains résolveurs ignorent les TTL très courtes et appliquent leur propre minimum.
  • Abaisser une TTL ne prend effet qu'une fois l'ancienne TTL écoulée. Si vous faites passer la TTL de 86400 à 300 et que vous modifiez immédiatement après l'adresse, les résolveurs qui venaient de récupérer l'enregistrement conserveront l'ancienne valeur pendant encore toute une journée.

Ce dernier point est l'erreur la plus fréquente concernant les TTL. La nouvelle TTL, plus courte, doit d'abord se propager elle-même dans tous les caches.

En pratique : à quoi cela ressemble dans un panneau

Dans le panneau d'exemple DirectAdmin, la TTL apparaît comme une colonne séparée dans Administration DNS. Vous modifiez la TTL d'un seul enregistrement avec le crayon situé à côté de cet enregistrement. Le bouton REMPLACER LA VALEUR TTL permet de définir une seule TTL pour tous les enregistrements du domaine en même temps. Dans Mon WebOké, vous voyez la TTL dans la liste des enregistrements de l'onglet DNS et vous la choisissez dans la fenêtre d'ajout ou de modification d'un enregistrement.

D'autres panneaux fonctionnent de façon similaire : chez cPanel, Plesk, Cloudflare et la plupart des registrars, le champ s'appelle également TTL. Parfois, vous choisissez dans une liste (par exemple « 5 minutes », « 1 heure », « Auto ») plutôt que de saisir un nombre de secondes. Chez Cloudflare, « Auto » signifie 300 secondes pour les enregistrements sans proxy.

Résumé

  • La TTL détermine combien de secondes une réponse DNS peut rester dans un cache.
  • Chaque résolveur compte à partir du moment où il a récupéré l'enregistrement ; c'est pourquoi tout le monde ne voit pas une modification en même temps.
  • Auprès du serveur de noms faisant autorité, vous voyez la TTL complète ; auprès d'un résolveur, une valeur décroissante.
  • 3600 est une bonne valeur par défaut ; abaissez-la temporairement à 300 avant une modification planifiée, et ce au moins une ancienne durée de TTL à l'avance.

Quiz

1. Un enregistrement a une TTL de 300. Qu'est-ce que cela signifie ?



2. Vous interrogez l'enregistrement A d'un domaine auprès du résolveur de votre fournisseur et vous voyez une TTL de 1250. Auprès du serveur de noms faisant autorité, elle est de 3600. Que cela signifie-t-il ?



3. Vous souhaitez faire pointer votre site web vers un autre serveur demain à 9h00. L'enregistrement A a actuellement une TTL de 86400. Que faire ?



4. Pourquoi une TTL très courte (par exemple 30 secondes) pour tous vos enregistrements n'est-elle pas une bonne idée ?



Exercice

Exercice Z6.1 : TTL à la source et chez le résolveur. Recherchez, à l'aide d'un outil DNS en ligne ou de dig, la TTL de l'enregistrement A de sidn.nl, directement auprès de l'un des serveurs de noms de sidn.nl lui-même (par exemple ns1.sidn.nl). Indiquez la TTL en secondes. Interrogez ensuite le même enregistrement auprès d'un résolveur public et indiquez également cette TTL. Expliquez en une phrase pourquoi les deux chiffres peuvent différer.

dig A sidn.nl @ns1.sidn.nl
dig A sidn.nl @9.9.9.9

Exercice Z6.1: TTL à la source et au résolveur




Ce que vous saisissez et ce que nous constatons en direct ne sont pas enregistrés. Votre navigateur se souvient de vos réponses et du fait que vous avez réussi l'exercice. Si vous êtes connecté, nous conservons uniquement le fait que vous avez (presque) réussi l'exercice dans Mes cours; vous pouvez aussi l'y supprimer.

Exercice O6.1 : Le configurer vous-même dans votre zone d'entraînement. Dans votre zone d'entraînement <code>.dnspractice.eu se trouve déjà un enregistrement A ttl-test.<code>.dnspractice.eu pointant vers 192.0.2.61, avec une TTL de 300 secondes. Abaissez la TTL à 60 secondes, comme vous le feriez avant un transfert de domaine, et laissez l'adresse inchangée. Vérifiez ensuite avec dig auprès du serveur de noms de la zone d'entraînement que la nouvelle TTL est bien en place. Validez lorsque la TTL est à 60.

La zone d'entraînement utilise des TTL courtes (entre 30 et 300 secondes) pour que vous n'ayez pas à attendre ; sur votre domaine réel, vous utiliserez par exemple 3600 comme valeur par défaut et 300 juste avant une modification.

Exercice O6.1

Vous réalisez cet exercice dans votre propre zone d'entraînement : une véritable zone DNS sur les serveurs de noms de WebOké, rien que pour vous. Inscrivez-vous avec votre adresse e-mail. Vous recevrez un lien de connexion par e-mail et reviendrez ensuite sur cette leçon. Nous utilisons votre adresse uniquement pour le cours.

Pour aller plus loin

Les étapes décrites dans ces articles concernent les panneaux de WebOké ; dans d'autres panneaux, le fonctionnement est similaire.

Un instant…

Configurez vos domaines

Pour chaque domaine, réglez les serveurs de noms, l'association à votre hébergement et le futur titulaire.

Chargement de vos domaines…