Chapitre 6.2 — Comment marche le DNS
⏱️ TL;DR — Le DNS est l’annuaire d’Internet : il traduit un nom (
formacampus.fr) en IP (203.0.113.10). Personne ne retient d’IP ; tout le monde retient des noms — le DNS fait le pont, des milliards de fois par jour. Il est hiérarchique (racine → TLD.fr→ ta zoneformacampus.fr) et repose sur des enregistrements : A (nom → IPv4), AAAA (→ IPv6), CNAME (alias vers un autre nom), MX (mail), TXT (vérifications, SPF/DKIM), NS (qui fait autorité). Chaque réponse porte un TTL — une durée de cache — qui explique pourquoi un changement DNS n’est jamais instantané : c’est la fameuse « propagation ». Comprendre tout ça, c’est pouvoir configurer ta zone sans trembler et diagnostiquer quand un nom ne résout pas.
🎯 Objectifs
- Expliquer ce qu’est le DNS et pourquoi il est indispensable (nom → IP).
- Décrire la hiérarchie DNS : racine, TLD, zone, et le rôle des serveurs NS.
- Reconnaître et choisir les enregistrements : A, AAAA, CNAME, MX, TXT, NS.
- Comprendre le TTL et ce que « la propagation DNS » veut vraiment dire.
- Distinguer un resolver récursif d’un serveur autoritaire.
- Distinguer le registrar (chez qui tu achètes le nom) de l’hébergeur DNS (chez qui vit ta zone).
Le DNS, c’est l’annuaire d’Internet
Le réseau ne sait router que des IP. Les humains, eux, ne retiennent que des noms. Le DNS (Domain Name System) est le service qui traduit les uns dans les autres : tu tapes formacampus.fr, il répond 203.0.113.10, et le navigateur peut enfin se connecter. C’est la toute première étape du cycle de vie d’une requête (chapitre 1.5) : sans résolution DNS correcte, rien ne démarre — le navigateur ne sait même pas où frapper.
L’analogie de l’annuaire téléphonique tient bien : tu connais le nom de la personne, l’annuaire te donne son numéro. Sauf que l’annuaire d’Internet est distribué (personne ne détient la liste complète), hiérarchique et mis en cache à chaque étage — trois propriétés qu’il faut comprendre pour ne pas être surpris par ses comportements.
La hiérarchie : racine, TLD, zone
Un nom de domaine se lit de droite à gauche, du plus général au plus précis. www.formacampus.fr se décompose ainsi :
- La racine (le point implicite tout à droite) : le sommet de l’arbre, géré par une poignée de serveurs mondiaux. Elle sait qui gère chaque TLD.
- Le TLD (Top-Level Domain) :
.fr,.com,.org,.io… géré par un registre (pour.fr, c’est l’Afnic). Il sait qui gère chaque domaine sous lui. - La zone (le domaine) :
formacampus.fr. C’est ta portion de l’arbre, celle que tu configures. Elle contient tes enregistrements. - Les sous-domaines :
www.,api.,staging.… des feuilles sous ta zone, que tu crées à volonté (chapitre 6.3).
Chaque étage délègue au suivant en indiquant ses serveurs de noms — les enregistrements NS. La racine délègue .fr au registre, qui délègue formacampus.fr à ton hébergeur DNS. C’est ce qui rend le système distribué : personne ne détient tout, chacun connaît juste l’étage en dessous.
Comment une résolution se déroule
Voici le trajet d’une requête DNS, la première fois (rien en cache). Le resolver récursif (souvent celui de ton FAI, ou un public comme 1.1.1.1) fait le travail de démarchage pour toi.
Le resolver interroge la racine, puis le TLD, puis le serveur autoritaire de ta zone, en descendant l’arbre. Il met en cache chaque réponse pour ne pas recommencer à chaque fois — c’est là qu’intervient le TTL (plus bas). La fois suivante, la réponse sort du cache, en quelques millisecondes.
💡 Réflexe — Retiens la distinction récursif vs autoritaire. Le serveur récursif (resolver) est celui qui cherche pour toi en interrogeant les autres et en cachant les réponses ; c’est lui que ton navigateur questionne. Le serveur autoritaire est celui qui détient la vérité pour une zone donnée (le tien, chez ton hébergeur DNS). Quand tu modifies ta zone, tu modifies l’autoritaire ; les récursifs du monde entier, eux, gardent l’ancienne réponse en cache jusqu’à expiration du TTL.
Les enregistrements que tu vas manipuler
Une zone DNS est une liste d’enregistrements (records). Chacun a un type, un nom et une valeur. Voici ceux que tu croiseras en déployant.
| Type | Rôle | Exemple de valeur |
|---|---|---|
| A | Nom → adresse IPv4 | 203.0.113.10 |
| AAAA | Nom → adresse IPv6 | 2001:db8::10 |
| CNAME | Alias vers un autre nom | formacampus.fr |
| MX | Serveur de mail du domaine | 10 mail.formacampus.fr |
| TXT | Texte libre : vérifications, SPF, DKIM | v=spf1 include:... |
| NS | Serveurs autoritaires de la zone | ns1.hebergeur.net |
Détaillons ceux qui comptent pour toi :
- A et AAAA sont le cœur du métier : ils font pointer un nom vers l’IP de ton VPS (IPv4 pour A, IPv6 pour AAAA). C’est l’enregistrement que tu crées pour que
formacampus.frmène à ta machine. - CNAME est un alias : il dit « ce nom est un autre nom pour tel autre nom ». Par exemple
www.formacampus.frpeut être un CNAME versformacampus.fr— au lieu de répéter l’IP, tu pointes vers le nom, et si l’IP change, tu ne la modifies qu’à un seul endroit. Attention : un CNAME pointe vers un nom, jamais vers une IP, et il a une limite importante sur l’apex du domaine (chapitre 6.3). - MX (Mail eXchanger) indique quel serveur reçoit les e-mails du domaine. Il porte une priorité (le nombre devant : plus petit = prioritaire). Il n’a rien à voir avec le web : ton A pointe vers le VPS web, ton MX peut pointer ailleurs (ton fournisseur de messagerie).
- TXT stocke du texte libre. On l’utilise pour prouver qu’on possède le domaine (une valeur qu’un service te demande d’ajouter), et pour l’authentification e-mail : SPF (quels serveurs ont le droit d’envoyer du mail en ton nom) et DKIM (signature cryptographique des mails).
- NS indique les serveurs autoritaires de ta zone. Tu les modifies rarement à la main : ils sont posés quand tu délègues ta zone à un hébergeur DNS.
⚠️ Piège — Ne mets jamais une IP dans un CNAME, ni un CNAME là où un A est attendu. Un CNAME pointe vers un nom (
formacampus.fr), un A/AAAA vers une IP (203.0.113.10). Se tromper de type est l’erreur DNS la plus courante — et l’interface de ton hébergeur, souvent, ne t’arrêtera pas.
Le TTL, ou pourquoi rien n’est instantané
Chaque enregistrement porte un TTL (Time To Live) : une durée en secondes pendant laquelle les resolvers ont le droit de garder la réponse en cache sans revenir la vérifier. Un TTL de 3600 veut dire « cette réponse est valable une heure ».
C’est la clé pour comprendre la « propagation DNS ». Quand tu changes l’IP d’un enregistrement, ton serveur autoritaire est mis à jour immédiatement. Mais tous les resolvers de la planète qui avaient déjà mis l’ancienne valeur en cache vont continuer à la servir jusqu’à expiration du TTL. Pendant ce temps, certains visiteurs voient la nouvelle IP, d’autres l’ancienne. Ce n’est pas « le changement met du temps à se répandre » (l’image de la propagation est trompeuse) : c’est les vieux caches qui expirent, chacun à son rythme.
Conséquence pratique : avant une migration prévue (changer l’IP de ton VPS, par exemple), tu abaisses le TTL de l’enregistrement concerné (par exemple à 300, cinq minutes) quelques heures à l’avance. Ainsi, le jour J, les caches expirent vite et le basculement est presque immédiat. Une fois la migration stabilisée, tu remontes le TTL (par exemple à 3600 ou plus) pour soulager les serveurs.
💡 Réflexe — La séquence d’un pro avant de bouger un enregistrement : baisser le TTL à l’avance (J-1), attendre que l’ancien TTL expire, faire le changement, vérifier, puis remonter le TTL. Improviser un changement sur un enregistrement à TTL de 24 h, c’est se condamner à une journée de résolution incohérente.
⚠️ Piège — « J’ai changé mon A il y a 5 minutes et
digrenvoie encore l’ancienne IP, c’est cassé ! » Non : c’est le cache de ton resolver qui sert encore l’ancienne valeur jusqu’à la fin du TTL. Pour voir la vérité immédiatement, interroge directement le serveur autoritaire ou un resolver public non encore « pollué » (dig @1.1.1.1 formacampus.fr, chapitre 6.4). Ne conclus jamais à un bug tant que le TTL n’est pas passé.
Registrar vs hébergeur DNS : deux rôles distincts
Dernière clarification, source de confusion permanente. Deux acteurs différents interviennent :
- Le registrar est l’entreprise chez qui tu achètes et renouvelles le nom de domaine (OVH, Gandi, Namecheap, Cloudflare Registrar…). Il gère la propriété du nom auprès du registre du TLD.
- L’hébergeur DNS (ou DNS provider) est celui qui héberge ta zone — c’est-à-dire tes enregistrements A, MX, etc. — sur ses serveurs autoritaires.
Souvent, c’est le même : tu achètes ton domaine chez OVH et tu configures ta zone dans l’interface d’OVH. Mais pas toujours : tu peux acheter chez un registrar et déléguer la zone à un autre hébergeur DNS (par exemple Cloudflare pour son cache et sa protection). Dans ce cas, tu changes les NS du domaine chez le registrar pour qu’ils pointent vers l’hébergeur DNS choisi. Retiens la distinction : acheter le nom (registrar) et gérer les enregistrements (hébergeur DNS) sont deux gestes, parfois au même endroit, parfois non.
🔒 Sécurité — Qui contrôle ta zone DNS contrôle ton domaine. Un attaquant qui prend la main sur ton compte registrar ou hébergeur DNS peut repointer
formacampus.frvers son serveur — et, la validation des certificats se faisant justement par le DNS, obtenir un certificat HTTPS valide pour ton nom (Partie 8). Le compte qui gère ton DNS est donc un actif critique : active l’authentification à deux facteurs, verrouille le domaine (registrar lock) et surveille l’expiration. Le DNS lui-même ne « protège » rien ; c’est l’accès à sa configuration qu’il faut blinder.
📚 La doc — Chaque hébergeur DNS documente sa propre interface de zone, mais les types d’enregistrements (A, CNAME, MX, TXT…) sont standards partout : ce que tu apprends ici vaut chez tous. En cas de doute sur la syntaxe exacte d’un enregistrement, la doc de ton hébergeur et les RFC DNS font autorité.
🧭 Sur FormaCampus — L’équipe a acheté
formacampus.frchez son registrar et gère la zone chez le même fournisseur (plus simple). Sa zone contient : un Aformacampus.fr → 203.0.113.10(le VPS), un AAAA vers l’IPv6, un CNAMEwww → formacampus.fr, des A pourapi.etstaging.(mêmes ou autres IP), un MX qui pointe vers son fournisseur de messagerie (le mail ne passe pas par le VPS), et un TXT SPF pour que ses mails de notification ne tombent pas en spam. Quand elle prépare le rapatriement de sa prod depuis l’ancien PaaS, elle baisse d’abord le TTL du A à300la veille, pour que le basculement d’IP soit quasi instantané le jour J.
✏️ Exercices
Exercice 1 — Choisis le bon enregistrement. Pour chaque besoin, quel type d’enregistrement crées-tu ? (a) Faire pointer formacampus.fr vers l’IPv4 de ton VPS. (b) Faire de www.formacampus.fr un alias de formacampus.fr. (c) Indiquer quel serveur reçoit les e-mails du domaine. (d) Prouver à un service tiers que tu possèdes bien le domaine.
✅ Solution
(a) Un A (nom → IPv4). Pour l’IPv6, tu ajouterais aussi un AAAA. (b) Un CNAME www vers formacampus.fr (alias vers un nom). (c) Un MX, avec une priorité, pointant vers le serveur de messagerie. (d) Un TXT contenant la valeur de vérification fournie par le service tiers.
Exercice 2 — Diagnostique la « propagation ». Tu as changé l’IP du A de formacampus.fr il y a 10 minutes. Un collègue voit le nouveau site, toi tu vois encore l’ancien. Le TTL de l’enregistrement était de 3600. Que se passe-t-il, et comment vérifier la vraie valeur maintenant ?
✅ Solution
Ton resolver a mis l’ancienne IP en cache et la sert encore, car le TTL de 3600 (une heure) n’est pas expiré pour lui ; le resolver de ton collègue, lui, avait un cache déjà expiré (ou n’avait jamais résolu ce nom) et voit donc la nouvelle valeur. Ce n’est pas un bug : c’est le cache qui expire à des moments différents selon les resolvers. Pour voir la vérité tout de suite, interroge un resolver « frais » ou l’autoritaire directement : dig @1.1.1.1 formacampus.fr +short. Leçon : abaisser le TTL avant un changement évite ce décalage.
🧠 Quiz de révision
1. À quoi sert le DNS, en une phrase ?
À traduire un nom de domaine (formacampus.fr) en adresse IP (203.0.113.10) que le réseau sait router. C’est l’annuaire d’Internet, et la première étape de toute requête web.
2. Quelle est la différence entre un serveur DNS récursif et autoritaire ?
Le récursif (resolver) cherche pour toi en interrogeant la hiérarchie et met les réponses en cache ; c’est lui que ton navigateur questionne. L’autoritaire détient la vérité pour une zone donnée (le tien, chez ton hébergeur DNS). Tu modifies l’autoritaire ; les récursifs gardent l’ancienne réponse jusqu’à expiration du TTL.
3. Quelle est la différence entre un enregistrement A et un CNAME ?
Un A pointe un nom vers une IP (IPv4 ; AAAA pour IPv6). Un CNAME pointe un nom vers un autre nom (un alias). Un CNAME ne contient jamais d’IP, et il ne peut pas être posé sur l’apex du domaine (voir chapitre 6.3).
4. Qu’est-ce que le TTL et pourquoi explique-t-il la « propagation » ?
Le TTL (Time To Live) est la durée, en secondes, pendant laquelle les resolvers gardent une réponse en cache. Un changement DNS n’est pas instantané parce que les caches existants servent l’ancienne valeur jusqu’à expiration du TTL : la « propagation » est en réalité l’expiration progressive des caches.
5. Registrar et hébergeur DNS : quelle différence ?
Le registrar est l’entreprise chez qui tu achètes et renouvelles le nom de domaine. L’hébergeur DNS héberge ta zone (tes enregistrements) sur ses serveurs autoritaires. C’est souvent le même acteur, mais pas obligatoirement — on peut déléguer la zone à un autre fournisseur en changeant les NS.
Chapitre suivant : Pointer un domaine — le geste concret, de l’achat du nom à l’enregistrement A qui mène à ton VPS.