Devant la multiplication des ordinateurs sur le réseau, et donc des noms d’hôtes, Paul Mockapetris a inventé en 1983 les noms de domaine (Domain Name System, ou DNS).

Il s’agit d’un système hiérarchique qui permet de “découper” le réseau en un ensemble de domaines, eux-mêmes composés de sous-domaines, éventuellement composés de sous-sous-domaines, etc. Il y a donc plusieurs niveaux de domaines possibles.

Les différents niveaux de domaine

Prenons un nom de domaine que vous connaissez bien :

www.vaclic.com

Il est composé de 3 niveaux de domaines, que l’on lit de droite à gauche :

  1. com : c’est le domaine de premier niveau. On parle de “Top level domain”, ou TLD.

  2. vaclic : en-dessous, il existe de très nombreux domaines de second niveau : vaclic.com, microsoft.com, apple.com, dell.com…

  3. www : chacun de ces domaines peut avoir des sous-domaines, le plus couramment utilisé sur le web étant “www”. On a donc www.vaclic.com, www.microsoft.com… Cela étant, ce n’est pas une obligation, et on peut imbriquer plusieurs sous-domaines. Ainsi sur le site de Dell, on tombe souvent sur une adresse comme www1.euro.dell.com.

    Les serveurs DNS

    Pour gérer ces très nombreux noms de domaines, et leurs sous-domaines, on a inventé un système de serveurs capables de gérer chacun un ou plusieurs niveaux de domaine. Ce sont les serveurs DNS.

    Pourquoi créer plusieurs serveurs DNS ? Un seul serveur central ne suffirait pas ?

    Non, car il serait trop fréquemment demandé. Imaginez que tous les ordinateurs du monde dépendent d’un seul serveur DNS pour connaître toutes les IP ! Si celui-ci venait à tomber en panne, Internet ne fonctionnerait tout simplement plus (et de toute façon un seul serveur ne peut pas supporter autant de requêtes).

    On a découpé le problème en utilisant plusieurs niveaux de serveurs :

    • Les serveurs racine : au nombre de 13, nommés de a.root-servers.net à m.root-servers.net, ils contiennent l’adresse des serveurs DNS de chaque domaine de premier niveau (com, net, org, fr…).

    • Les serveurs DNS de premier niveau : il y en a plusieurs par domaine (“com”, “net”, “fr”…). Ils connaissent l’adresse des serveurs DNS de chacun des sous-niveaux. Ainsi, les serveurs DNS du domaine “com” connaissent l’adresse des serveurs DNS qui gèrent vaclic.com, microsoft.com, apple.com…

    • Les serveurs DNS de second niveau : très nombreux, ce sont eux le plus souvent qui contiennent les équivalences nom de domaine / IP. Ainsi, le serveur DNS de vaclic.com connaît tous les sous-domaines (www.vaclic.com, lisa.vaclic.com, scratchy.vaclic.com, etc.) et connaît l’adresse IP de la machine qui gère chacun de ces domaines.

    En plus de ces serveurs, chaque fournisseur d’accès à Internet (FAI) propose un serveur DNS qui fait office d’intermédiaire entre les internautes et les “vrais” serveurs DNS.

    En pratique, il y a plusieurs serveurs à chaque fois :

    • Il y a 13 serveurs racine, mais grâce à des fonctionnalités avancées de routage (appelées anycast), plusieurs centaines de serveurs peuvent se partager une même adresse IP. Il y a donc physiquement des centaines de serveurs qui gèrent la racine, mais “seulement” 13 IP différentes.

    • Il y a plusieurs serveurs de premier niveau à chaque fois pour chaque domaine…

    • Il y a aussi plusieurs serveurs DNS pour un domaine comme siteduzero.com (au moins 2) ce qui permet au système de continuer à fonctionner en cas de panne de l’un d’eux. Il y a donc toujours au moins un serveur DNS principal (primaire) et un serveur secondaire contacté en cas de panne du premier.

    Ne vous laissez donc pas tromper par mon schéma précédent, que j’ai volontairement simplifié. Plusieurs serveurs peuvent répondre à chacune des questions. C’est d’ailleurs pour cela que les serveurs disent “Essaie cette IP” : si l’IP ne répond pas il sera toujours possible de contacter d’autres serveurs qui possèdent la même information.

    Le cache DNS

    Vous ne trouvez pas que cela fait beaucoup de requêtes pour trouver une adresse IP ?
    Comme vous le voyez, ce système distribué permet de gérer un très grand nombre de domaines mais il a quand même un défaut : s’il fallait faire toutes ces opérations à chaque fois qu’un utilisateur demande à résoudre un nom de domaine, cela serait très long et ferait beaucoup de trafic !

    Les fournisseurs d’accès à internet (FAI) des internautes fournissent des serveurs DNS. Lorsque votre ordinateur doit résoudre un nom de domaine comme www.vaclic.com, c’est donc le serveur DNS du FAI qui est contacté.

    Le serveur DNS du FAI n’est pas un vrai serveur DNS qui connaît les correspondances “nom d’hôte / IP”. C’est un intermédiaire. Il garde temporairement en mémoire les dernières résolutions de noms de domaine pour ne pas contacter systématiquement tous les serveurs derrière.
    Ainsi, si deux utilisateurs du même FAI demandent à aller sur www.vaclic.com, le serveur DNS ne fera pas toutes ces opérations deux fois. Il donnera immédiatement la réponse qu’il a conservée en cache.

Leave A Comment

What’s happening in your mind about this post !

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

icon 01

Où nous sommes

6 rue alexandrie APT 8, 3eme Etg V.N Meknès. maroc

icon 02

Support technique

(+212) 5355-11754