Le DNS : du concept à la mise en œuvre

Le DNS : du concept à la mise en œuvre
Photo by Christina @ wocintechchat.com on Unsplash

Présentation générale

Le Domain Name System (DNS) est le système qui traduit les noms de domaine lisibles par l’humain (ex. example.com) en adresses IP numériques compréhensibles par les machines (ex. 93.184.216.34). Sans cette couche d’abstraction, chaque utilisateur devrait mémoriser des suites de chiffres pour accéder à un site web ou à tout autre service réseau, ce qui serait impraticable à grande échelle.

En pratique, le DNS fonctionne comme un annuaire distribué, hiérarchisé et résilient, capable de répondre à des milliards de requêtes chaque jour à travers le monde.

💡
Le DNS est le pilier invisible qui rend possible la navigation moderne. Sa conception hiérarchique, ses multiples types d’enregistrements et son mécanisme de délégation (root → TLD → domaine) offrent à la fois souplesse, scalabilité et robustesse. Les normes RFC, maintenues par l’IETF, garantissent une évolution contrôlée (IPv6, DNSSEC, DoH/DoT) tout en préservant la compatibilité ascendante.

Historique : date de création et créateur

ÉvénementDateResponsable / Publication
Première spécification du DNSOctobre 1983Paul V. Mockapetris, RFC 882 « Domain Names – Concepts and Facilities »
Extension et clarification du protocoleNovembre 1983Paul V. Mockapetris, RFC 883 « Domain Names – Implementation and Specification »
Normalisation moderne (RFC 1034/1035)Novembre 1987Paul V. Mockapetris, RFC 1034 « Domain Names – Concepts and Facilities », RFC 1035 « Domain Names – Implementation and Specification »

Ces documents ont posé les bases de l’architecture hiérarchique, du modèle de résolution itérative et des différents types d’enregistrements (records).


Pourquoi le DNS ?

  1. Lisibilité – Les humains retiennent plus facilement des mots que des nombres.
  2. Scalabilité – Un annuaire centralisé serait un point unique de défaillance ; le DNS répartit la charge sur des milliers de serveurs.
  3. Flexibilité – Les enregistrements DNS permettent de pointer plusieurs services (site web, mail, services cloud…) vers différentes adresses IP, voire de changer de serveur sans toucher aux clients.
  4. Redondance et tolérance aux pannes – La hiérarchie et la réplication assurent la continuité même en cas de perte d’un serveur ou d’une liaison.

Principes de base

Architecture hiérarchique

racine (.) → serveurs racines
      └─ TLD (com, org, net, fr, …) → serveurs de zone TLD
            └─ Domaine de second niveau (example.com) → serveurs autoritaires
                  └─ Sous‑domaines (www.example.com, mail.example.com)
  • Serveur racine : 13 ensembles (a–m) de serveurs répartis mondialement, chacun utilisant le protocole Anycast pour offrir plusieurs instances physiques.
  • Serveur TLD : gère les zones de premier niveau (ex. .com.fr).
  • Serveur autoritaire : détient les enregistrements définitifs d’un domaine (ex. example.com).

Résolution d’une requête

  1. Le client (résolveur récursif) interroge son résolveur local (souvent fourni par l’opérateur ou le fournisseur DNS).
  2. Si le résolveur ne possède pas la réponse en cache, il commence une résolution itérative :
    • Interroge un serveur racine → obtient les adresses des serveurs TLD.
    • Interroge le serveur TLD correspondant → obtient les serveurs autoritaires du domaine.
    • Interroge le serveur autoritaire → reçoit l’enregistrement demandé.
  3. Le résolveur renvoie la réponse au client et la met en cache pendant la durée de vie (TTL) indiquée.

IPv4 et IPv6 dans le DNS

EnregistrementDescriptionExemple
AAdresse IPv4 (32 bits)93.184.216.34
AAAAAdresse IPv6 (128 bits)2606:2800:220:1:248:1893:25c8:1946
PTREnregistrement inverse (IP → nom) – utilisé pour la résolution inverse, tant en IPv4 qu’en IPv6.34.216.184.93.in‑addr.arpa. (IPv4) / 6.4.9.1.c8.5c.52.89.3.91.84.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa. (IPv6)

Le DNS a été conçu dès le départ pour supporter les deux familles d’adresses. Aujourd’hui, la plupart des zones publient simultanément les enregistrements A et AAAA afin d’assurer la compatibilité avec les clients IPv4 et IPv6.


Types de paquets (enregistrements DNS)

TypeFonction principaleUtilisation typique
AAdresse IPv4Sites web, serveurs
AAAAAdresse IPv6Sites web, serveurs IPv6
CNAMEAlias canoniqueRedirection de sous‑domaines
MXMail ExchangeServeurs de messagerie
NSName ServerDéclaration des serveurs autoritaires d’une zone
SOAStart of AuthorityMétadonnées de zone (serial, refresh, retry, expire, minimum TTL)
TXTTexte libreSPF/DKIM, vérifications de domaine
SRVServiceDécouverte de services (ex. _sip._tcp.example.com)
PTRPointeur inverseRésolution inverse d’IP
DSDelegation SignerChaîne de confiance DNSSEC
DNSKEYClé publique DNSSECValidation cryptographique
CAACertification Authority AuthorizationContrôle des autorités de certification TLS

Ces enregistrements sont définis dans les RFC 1035 et leurs extensions ultérieures (ex. RFC 7208 pour SPF, RFC 8659 pour CAA).


Le rôle des serveurs racines

  • Pourquoi ce choix ?
    • Robustesse – En limitant le nombre de points d’entrée (13 ensembles), le système minimise les risques de désynchronisation tout en offrant une redondance géographique massive grâce à l’Anycast.
    • Performance – Les serveurs racines sont situés dans des centres de données à très haut débit, garantissant des temps de réponse minimaux pour la première étape de la résolution.
    • Gestion centralisée – Le comité de gestion des racines (Root Server Management System, géré par l’ICANN) assure la cohérence et la mise à jour des adresses des serveurs TLD.
  • Composition actuelle (au 2025) :
    • A‑M – 13 identifiants, chacun pouvant regrouper plusieurs instances physiques (plus de 1000 serveurs réels).
    • Opérateurs majeurs : Verisign, University of Maryland, NASA, RIPE NCC, JPRS, etc.

Registrars et registre (registry)

NiveauRôleExemple d’acteur
RegistrarInterface commerciale permettant aux propriétaires de domaines d’enregistrer, renouveler ou modifier leurs zones.Gandi, OVHcloud, Namecheap, Proton Domains (via Proton)
RegistryOrganisation responsable de la gestion technique d’un TLD (mise à jour de la zone, politiques).Verisign (.com/.net), AFNIC (.fr), PIR (.org)
ICANNAutorité de coordination globale, supervise les politiques de registre et de registrar.

Le processus d’enregistrement se déroule ainsi : le propriétaire achète le domaine auprès d’un registrar, qui transmet les informations au registry du TLD concerné. Le registry met à jour la zone du TLD, incluant les enregistrements NS pointant vers les serveurs autoritaires du domaine.


Normes et RFC majeurs

Numéro RFCTitreSujet principal
882Domain Names – Concepts and FacilitiesPremière description du DNS
883Domain Names – Implementation and SpecificationImplémentation initiale
1034Domain Names – Concepts and FacilitiesArchitecture hiérarchique
1035Domain Names – Implementation and SpecificationFormats d’enregistrements, messages
1912DNS Security Extensions (DNSSEC)Authentification cryptographique
2181Clarifications to the DNS SpecificationRègles de validation des réponses
2308Negative Caching of DNS Queries (NXDOMAIN)Gestion du cache négatif
2671DNS Extensions to Support IPv6 (AAAA)Ajout du support IPv6
4033DNS Transport over TCP – Avoiding FragmentationUtilisation du TCP pour les réponses volumineuses
7208Sender Policy Framework (SPF) for Authorizing Use of DomainsEnregistrement TXT pour SPF
8659Certification Authority Authorization (CAA) Resource RecordEnregistrement CAA
8802DNS over HTTPS (DoH)Confidentialité des requêtes DNS
8914DNS over TLS (DoT)Sécurisation du transport DNS

Ces documents constituent la base normative du protocole et sont régulièrement mis à jour par l’IETF.


Synthèse du flux complet (exemple)

  1. Utilisateur tape www.example.com dans son navigateur.
  2. Résolveur local (ex. celui de l’opérateur) interroge son cache. Aucun résultat → il lance une résolution récursive.
  3. Interrogation du serveur racine (.) → réponse contenant les adresses des serveurs TLD .com.
  4. Interrogation d’un serveur TLD .com → réponse contenant les serveurs autoritaires de example.com.
  5. Interrogation du serveur autoritaire → renvoie l’enregistrement A (ou AAAA) de www.example.com.
  6. Résolveur renvoie l’adresse IP au client, la met en cache (TTL indiqué dans le SOA).
  7. Navigateur ouvre une connexion TCP/HTTPS vers l’adresse IP reçue.

Références

  1. Mockapetris, P. V. (1983). Domain Names – Concepts and Facilities, RFC 882.
  2. Mockapetris, P. V. (1983). Domain Names – Implementation and Specification, RFC 883.
  3. Mockapetris, P. V. (1987). Domain Names – Concepts and Facilities, RFC 1034.
  4. Mockapetris, P. V. (1987). Domain Names – Implementation and Specification, RFC 1035.
  5. Internet Engineering Task Force (IETF). (1995). DNS Security Extensions, RFC 1912.
  6. IETF. (2005). DNS Extensions to Support IPv6, RFC 2671.
  7. IETF. (2016). DNS over HTTPS (DoH), RFC 8484.
  8. IETF. (2020). DNS over TLS (DoT), RFC 7858.
  9. ICANN. Root Server System Overview. Disponible sur https://www.icann.org/resources/pages/root-servers-2012-02-25-en.
  10. AFNIC. Gestion des domaines .fr. Disponible sur https://www.afnic.fr.

Read more