DNS : résolution des noms sur Internet

Chaque site internet est enregistré par une adresse IP sur un serveur afin de pouvoir être chargé dans le World Wide Web.

De manière logique, seul le nom de domaine (www.monsiteweb.com) vous est familier et ce pour une bonne raison. Une suite de chiffre tel que 88.165.109.10, la base de la communication sur le Web, est bien difficile à mémoriser.

C’est pourquoi chaque adresse IP correspond à un nom de domaine.

Voici comment un nom de domaine est formé :

  • Adresse IP : 88.165.109.10
  • Nom de domaine : www.monsiteweb.com

La traduction d’un nom de domaine en une adresse IP est appelée résolution de noms, soit un service Internet mis à la disposition du système de noms de domaine (Domain Name System ou DNS).

Un Domain Name System ?

Pour imager, le DNS nous pouvons prendre l’exemple d’un annuaire téléphonique. En effet le DNS a les mêmes objectifs que ce dernier. C’est-à-dire, il met à disposition tous les contacts et les publie sur demande.

Pour cela, le système a recours à un réseau international de serveurs DNS qui subdivisent les espaces des noms de domaine de manière indépendante dans des zones administrées. Cela permet une manipulation décentralisée d’informations de noms de domaine.

Chaque fois qu’un internaute enregistre un nom de domaine, une nouvelle entrée est indiquée dans le répertoire compétent. Celui-ci prend la forme d’un enregistrement de ressource (RR pour Resource Record) dans le DNS.

La base de données d’un serveur DNS correspond ainsi à une collection de tous les enregistrements de ressources d’une zone d’espace de noms de domaine pour lequel le serveur est responsable.

Lors de la création du système de noms de domaine en 1983, il a fallu plus d’un processus d’erreur basé sur un fichier hosts local pour arriver à mener à bien la résolution des noms.

Sous Windows, vous trouvez un fichier host.txt sous %SystemRoot%\system32\drivers\etc et sur des systèmes Unix dans le répertoire etc/. Le fichier host.txt devait, à l’époque, être traité manuellement et mis à jour à intervalle réguliers. Ce processus demandait de la patience et devenait de plus en plus difficile à réaliser du fait de la croissance fulgurante du Web.

Aujourd’hui, host.txt est uniquement utilisé pour l’assignation d’adresses IP dans des réseaux locaux. Par ailleurs, grâce à ces fichiers, il est possible de bloquer des serveurs Web en redirigeant automatiquement des adresses correspondantes vers des localhosts (hôte local).

Requête DNS

Dès que vous saississez une adresse Web sous la forme d’une URL (Uniform Resource Locator) dans la barre de recherche de votre navigateur, celle-ci renvoie cette demande au résolveur.

Ce dernier est un service de votre système d’exploitation qui permet de traduire un nom de domaine en informations de plusieurs types qui lui sont associés, notamment en adresses IP de la machine portant ce nom.

Si une adresse IP demandée n’est pas présente dans le cache du résolveur, la nouvelle requête DNS est alors transférée au serveur DNS responsable. Généralement, il s’agit du serveur DNS de votre FAI (fournisseur de service Internet). Ce qui permettra une réponse de l’adresse IP (« forward lookup »), si celle-ci est présente. Cela permet à votre navigateur de s’adresser via le Web au serveur Web souhaité.

Si le DNS de votre FAI ne peut résoudre votre demande, une alternative existe afin de traduire  les adresses IP dans la direction opposée avec des noms de domaine respectifs (« reverse lookup »). Le serveur DNS peut alors récupérer les informations correspondantes en partant d’un autre serveur ou transmettre la requête au serveur DNS concerné. On parle dans ce cas de requêtes récursives et itératives.

  • Requêtes récursives : si le serveur DNS ne peut répondre lui-même à une requête, celui-ci récupère les informations désirées sur un autre serveur. Alors, le résolveur rend la requête entière du DNS au serveur affecté. Ce dernier livre au résolveur la réponse dès que le nom de domaine est résolu.
  • Requêtes itératives : si un serveur DNS ne peut répondre à une requête, ce dernier répond uniquement avec l’adresse du prochain serveur DNS interrogé. Le résolveur doit s’occuper de ces requêtes de manière indépendante jusqu’à ce que le nom de domaine soit résolu.

Qu’est-ce qu’un serveur DNS ?

Concernant les serveurs DNS (ou serveur de noms), il s’agit d’un logiciel spécial qui a recours à une base de données DNS dans le but de répondre à des requêtes basées sur des espaces de noms de domaine. Généralement, les serveurs DNS se trouvent sur des hébergeurs dédiés. On différencie dans le système DNS les serveurs autoritaires et non-autoritaires.

  • Serveur DNS autoritaire : un serveur est appelé autoritaire car il sauvegarde des informations sécurisées qui concernent une zone particulière de l’espace de noms de domaine dans sa base de données DNS.
  • Serveur de noms non autoritaire : les informations DNS d’un serveur de noms ne proviennent pas d’un fichier de zone propre mais d’un tiers, celui-ci est alors considéré comme un serveur de noms non-autoritaire.

Erreur DNS

Lors de problèmes de réseau, il est courant de recevoir le message d’erreur suivant : « le serveur DNS ne répond pas ». La connexion à Internet est dans ce cas-là endommagée et il est impossible de charger la page Internet.

Laisser un commentaire

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