DNS l’ingénieux rouage caché au cœur du fonctionnement d’Internet

Vous tapez une adresse web et la page s’affiche. Ce miracle de simplicité repose sur un système invisible : le DNS. Cette annuaire géant de l’Internet traduit les noms de domaine en adresses IP, permettant à votre ordinateur de trouver le bon serveur en quelques instants.

Quand vous saisissez une adresse comme www.NETCOST.com dans votre navigateur, vous attendez que la page s’affiche rapidement. Mais comment votre ordinateur sait-il à quel serveur se connecter ? La réponse se trouve dans le DNS (Domain Name System), un des systèmes essentiels au fonctionnement de l’Internet.

DNS : le système quasi "invisible" qui fait fonctionner l'Internet

Sans le DNS, il faudrait mémoriser des adresses IP numériques pour accéder aux sites, au lieu d’utiliser des noms de domaine faciles à retenir.

Qu’est-ce que le DNS ?

Le DNS est un système distribué et hiérarchique qui associe des noms de domaine à différents types d’informations, notamment des adresses IP. Pour simplifier, il fonctionne comme un annuaire téléphonique pour l’Internet : il traduit les noms que les humains retiennent en données que les machines utilisent pour communiquer.

Par exemple, lorsque vous accédez à www.exemple.com, votre ordinateur doit découvrir l’adresse IP liée à ce nom. Cette adresse peut appartenir à un serveur qui héberge le site ou à une infrastructure de distribution de contenu, comme un CDN.

Le DNS ne sert pas uniquement à trouver des sites web. Il est également utilisé pour acheminer les courriels, valider certaines configurations de services et publier des informations concernant la sécurité et la gestion des domaines.

Comment fonctionne une requête DNS ?

Le processus démarre quand un utilisateur tape une adresse dans son navigateur. Si le système ne connaît pas encore l’adresse IP correspondante, il doit lancer une requête DNS.

De manière simplifiée, le déroulement est le suivant :

  1. L’utilisateur saisit l’adresse : il tape, par exemple, www.exemple.com dans le navigateur.
  2. Le système vérifie le cache : le système d’exploitation et le navigateur peuvent avoir conservé une réponse DNS valide. Si c’est le cas, la requête peut s’arrêter à cette étape.
  3. Un résolveur DNS est contacté : s’il n’y a pas de réponse en cache, l’ordinateur consulte généralement un résolveur fourni par l’opérateur Internet, l’organisation ou un service DNS public.
  4. Le résolveur recherche la réponse : s’il n’a pas l’information en cache, il peut interroger les serveurs DNS responsables de la hiérarchie du domaine.
  5. L’adresse IP est obtenue : après avoir trouvé la réponse, le résolveur la renvoie à l’ordinateur.
  6. Le navigateur établit la connexion : avec l’adresse IP disponible, le navigateur peut initier la communication avec le serveur, via HTTP ou HTTPS.

Il est important de comprendre que le DNS ne transporte pas la page web. Son rôle est d’aider à trouver la destination. Le transfert des contenus s’effectue ensuite, par l’intermédiaire des protocoles de communication utilisés par le service.

Quels serveurs participent au processus ?

Le DNS repose sur une architecture hiérarchique, où différents types de serveurs ont des fonctions spécifiques.

Type de serveur Fonction
Résolveur récursif Reçoit les requêtes des clients et cherche une réponse, en utilisant le cache ou d’autres serveurs DNS.
Serveurs racine (Root DNS) Indiquent quels sont les serveurs responsables des domaines de premier niveau, comme .com, .org ou .fr.
Serveurs TLD Gèrent l’information de délégation des domaines de premier niveau, indiquant les serveurs faisant autorité pour les domaines interrogés.
Serveurs faisant autorité Fournissent les réponses officielles pour les zones DNS dont ils sont responsables.

Imaginez que vous souhaitiez découvrir l’adresse IP de www.exemple.com. Si le résolveur n’a pas la réponse en cache, il peut commencer par consulter un serveur racine, qui le redirige vers les serveurs du domaine .com. Ceux-ci indiquent les serveurs faisant autorité pour exemple.com, qui pourront fournir l’information nécessaire.

En pratique, les serveurs racine et TLD n’ont pas besoin de connaître l’adresse IP finale du site. Leur fonction est d’orienter la requête vers le niveau suivant de la hiérarchie.

DNS : le système quasi "invisible" qui fait fonctionner l'Internet

Quels types d’enregistrements DNS existent ?

Le DNS ne stocke pas que des adresses IP. Les informations sont organisées en enregistrements, chacun ayant une finalité propre.

Enregistrement Fonction Exemple d’utilisation
A Associe un nom à une adresse IPv4. www.exemple.com → 192.0.2.10
AAAA Associe un nom à une adresse IPv6. Un serveur accessible via IPv6.
CNAME Crée un alias vers un autre nom de domaine. boutique.exemple.com pointe vers un autre nom.
MX Identifie les serveurs responsables de la réception du courrier électronique. Acheminement des messages pour le domaine.
NS Identifie les serveurs DNS faisant autorité pour une zone. Délégation de la gestion DNS d’un domaine.
TXT Publie une information textuelle associée à un nom. Configurations SPF, vérifications de domaine et autres données.
PTR Permet des requêtes inverses, associant une adresse IP à un nom. Résolution inverse d’une adresse IP.
SOA Contient des informations administratives sur une zone DNS. Serveur principal, contact administratif et paramètres de la zone.
CAA Définit quelles autorités de certification sont autorisées à émettre des certificats pour un domaine. Restreindre l’émission de certificats TLS.

Les exemples d’adresses IP dans le tableau sont illustratifs. L’adresse effectivement retournée dépend de la configuration du domaine et peut varier selon la localisation, l’infrastructure ou le service utilisé.

Comment consulter le DNS d’un domaine ?

Il est possible d’observer le fonctionnement du DNS sans recourir à des outils de sécurité spécialisés. Sur les systèmes Linux et macOS, par exemple, les commandes `dig` et `nslookup` permettent d’interroger les enregistrements DNS.

Pour consulter les enregistrements liés à un domaine :

dig exemple.com

Pour consulter seulement l’adresse IPv4 :

dig A exemple.com

Pour consulter l’adresse IPv6 :

dig AAAA exemple.com

Pour vérifier les serveurs responsables du courrier électronique :

dig MX exemple.com

Il est aussi possible de consulter les serveurs de noms :

dig NS exemple.com

En alternative, on peut utiliser :

nslookup exemple.com

Ces commandes permettent de vérifier les réponses fournies par le résolveur configuré sur le système. Pour des investigations plus poussées, il est possible d’interroger des serveurs spécifiques, d’analyser la chaîne de délégation ou de comparer les réponses obtenues depuis différents résolveurs.