4 minutes, 48 secondes

🌐 Dans les coulisses de l’Internet : Comprendre le DNS (Vue d’un IngĂ©nieur)

Si je vous demande comment vous accĂ©dez Ă  votre site prĂ©fĂ©rĂ©, vous me rĂ©pondrez sĂ»rement : “Je tape son nom dans la barre d’adresse”. C’est simple, intuitif, et humain. Pourtant, derriĂšre cette apparente simplicitĂ© se cache l’une des infrastructures les plus critiques et fascinantes de l’Internet : le DNS (Domain Name System).

En tant qu’ingĂ©nieur systĂšme et rĂ©seaux, je passe une bonne partie de mon temps Ă  configurer, dĂ©bugger ou sĂ©curiser des flux DNS. Aujourd’hui, je vous propose d’enfiler votre casquette d’ingĂ©nieur pour comprendre ce qui se passe sous le capot.


📖 Le DNS, c’est quoi exactement ?

Dans le modÚle OSI, le DNS opÚre sur la couche 7 (Application). Son rÎle principal est souvent comparé à un annuaire téléphonique : il traduit des noms de domaine compréhensibles par les humains (comme blog.example.com) en adresses IP routables (comme 192.0.2.1 en IPv4 ou 2001:db8::1 en IPv6) que les machines utilisent pour communiquer.

D’un point de vue rĂ©seau, le DNS utilise historiquement le protocole UDP sur le port 53. Pourquoi UDP ? Pour sa rapiditĂ© (mode non connectĂ©). Cependant, il bascule sur le TCP port 53 lorsque la rĂ©ponse dĂ©passe 512 octets (frĂ©quent avec les signatures DNSSEC) ou lors des transferts de zones (AXFR) entre serveurs.


🌳 Une architecture hiĂ©rarchique et distribuĂ©e

Le DNS n’est pas un Ă©norme fichier texte stockĂ© sur un serveur unique. C’est une immense base de donnĂ©es distribuĂ©e mondialement sous forme d’arbre inversĂ©. Cette conception lui confĂšre une rĂ©silience et une scalabilitĂ© exceptionnelles.

Voici comment cet arbre est structuré :

Serveur Racine (13) -> TLD (.fr, .com, .eu, etc) -> SLD (exemple) -> exemple.com

  1. La Racine (.) : Le sommet. GĂ©rĂ© par des entitĂ©s comme l’ICANN, il existe 13 adresses IP “logiques” (de A Ă  M) derriĂšre lesquelles se cachent des milliers de serveurs physiques grĂące au routage Anycast.
  2. Les TLD (Top-Level Domains) : Ils gÚrent les extensions génériques (.com, .net) ou géographiques (.fr, .uk).
  3. Les SLD (Second-Level Domains) : C’est le domaine que vous louez chez votre registrar (ex: OVH, Gandi, AWS Route 53).
  4. Les Sous-domaines : Les services spécifiques que vous créez (ex: www pour le web, api pour vos backends).

đŸ•”ïžâ€â™‚ïž L’Ă©popĂ©e d’une requĂȘte : RĂ©solution DNS en 8 Ă©tapes

Que se passe-t-il exactement quand vous tapez www.example.com ? Si l’IP n’est ni dans le cache de votre navigateur, ni dans celui de votre OS, votre machine interroge un rĂ©solveur rĂ©cursif (souvent la box de votre FAI, ou un DNS public comme 1.1.1.1 ou 8.8.8.8).


đŸ› ïž La boĂźte Ă  outils du SysAdmin : Les Enregistrements (Records)

Lorsqu’on configure une “Zone DNS” (le fichier de configuration du domaine), on manipule des enregistrements. Voici les incontournables :

  • A (Address) : Pointe un nom vers une adresse IPv4 (ex: 192.0.2.42).
  • AAAA (Quad-A) : Pointe un nom vers une adresse IPv6.
  • CNAME (Canonical Name) : Un alias. Fait pointer un nom vers un autre nom. TrĂšs utilisĂ© dans le Cloud pour pointer vers des Load Balancers, mais interdit Ă  la racine du domaine (l’Apex).
  • MX (Mail Exchange) : Indique les serveurs de messagerie responsables de la rĂ©ception des emails pour le domaine, avec une notion de prioritĂ© (ex: 10 mail1.example.com).
  • TXT (Text) : Initialement pour des commentaires, il est vital aujourd’hui pour la SSI : on y stocke les clĂ©s de sĂ©curitĂ© (SPF, DKIM, DMARC) ou les preuves de propriĂ©tĂ© (pour les certificats SSL Let’s Encrypt).
  • NS (Name Server) : DĂ©lĂšgue la gestion d’une zone ou sous-zone Ă  un autre serveur DNS.

🔒 L’Ɠil de l’expert SSI : La sĂ©curitĂ© du DNS

Créé au dĂ©but des annĂ©es 80, le DNS originel est un protocole de confiance, en clair et sans authentification. Autant dire que c’est un terrain de jeu privilĂ©giĂ© pour les attaquants.

1. Le DNS Cache Poisoning (Empoisonnement de cache)

Si un attaquant rĂ©ussit Ă  envoyer une fausse rĂ©ponse DNS au rĂ©solveur avant le serveur lĂ©gitime, le rĂ©solveur met en cache cette fausse IP. Toute une entreprise peut ainsi se retrouver redirigĂ©e vers une page de phishing indĂ©tectable par l’utilisateur (l’URL dans le navigateur est la bonne !). La parade : DNSSEC (DNS Security Extensions). Il ajoute des signatures cryptographiques aux enregistrements pour garantir leur intĂ©gritĂ© et leur authenticitĂ©.

2. Les attaques par amplification DDoS

Le DNS utilise UDP. Un attaquant peut usurper (spoofing) l’adresse IP de sa cible et envoyer de requĂȘtes massives Ă  des serveurs DNS mal configurĂ©s (Open Resolvers). Ces serveurs rĂ©pondent Ă  la victime. Comme la rĂ©ponse DNS est souvent beaucoup plus volumineuse que la requĂȘte, la cible voit sa bande passante saturĂ©e. La parade : Filtrage anti-spoofing (BCP 38), limitation de taux (Rate Limiting) sur les serveurs, et dĂ©sactivation de la rĂ©cursivitĂ© ouverte.

3. La confidentialité : DoH et DoT

Par dĂ©faut, vos requĂȘtes DNS (“Je visite le site de ma banque”) passent en clair sur le rĂ©seau. Pour chiffrer ces mĂ©tadonnĂ©es, deux standards Ă©mergent :

  • DoT (DNS over TLS) : Encapsule le DNS dans un tunnel TLS (Port 853).
  • DoH (DNS over HTTPS) : Fait passer les requĂȘtes DNS dans des requĂȘtes web classiques HTTPS (Port 443). Attention, cĂŽtĂ© entreprise, le DoH est un casse-tĂȘte pour les Ă©quipes SSI car il contourne les pare-feux et le filtrage DNS d’entreprise !

🎯 Conclusion

Le DNS est la vĂ©ritable colonne vertĂ©brale d’Internet. Sa maĂźtrise est absolument indispensable pour tout ingĂ©nieur SystĂšme, RĂ©seaux ou CybersĂ©curitĂ©. Une mauvaise configuration DNS peut entraĂźner des pannes massives (souvenez-vous de la panne mondiale de Facebook en 2021 !) ou de graves failles de sĂ©curitĂ©.

Et vous, utilisez-vous les DNS de votre FAI, ou avez-vous monté votre propre Pi-Hole/Unbound à la maison ? Dites-le-moi en commentaire !


Si cet article technique vous a plu, n’hĂ©sitez pas Ă  le partager ou Ă  me poser vos questions d’ingĂ©nierie dans les commentaires.