DNS

Résultat de recherche d'images pour "DNS"

 

  • Qu’est-ce qu’un DNS?

Le DNS (Domain Name System) est un service qui permet d’établir la relation entre un nom pleinement qualifié (FQDN : Full Qualified Domain Name) en adresse IP. Par exemple, si l’on cherche à accéder à www.Google.fr sur internet, le DNS permettra de traduire le nom de domaine google en adresse IP, et pourra donc y accéder directement, chaque nom étant associé à une adresse IP.

Le système de noms DNS se présente sous forme d’un arbre inversé avec pour sommet “la racine” et un ensemble de noeuds représentant des domaines identifiés par un label.

Ces noeuds utilise la gestion hiérarchique des noms. On distingue deux domaines pour le classement des noms :

_ Les domaines géographiques (.fr, .be, .us, .uk, …) qui varient en fonction du pays dans lequel on se trouve (.fr sera pour la France, .be pour la Belgique, etc…) ;

_ Les domaines génériques (.com, .net, .org).

Un serveur de noms particulier s’occupe d’un noeud de l’arborescence ou d’un ensemble de noeuds, sur lequel il fera autorité. On dit qu’il gère une zone d’autorité. Il gérera l’attribution des noms et résoudra les noms à l’aide d’une base de données.

 

  • La zone in-addr.arpa (zone inverse) : Le domaine in-addr.arpa est un domaine spécial chargé de réaliser les recherches inversées au DNS, c’est-à-dire retrouver un nom en connaissant son adresse IP.

Dans le cas où l’on connaît l’adresse IP d’un ordinateur, on peut facilement retrouver le DNS qui lui est associé. Par exemple, si l’on connaît le PC avec l’adresse 192.168.1.10 (si l’on remonte l’arbre, on obtient 10.1.168.192, d’où l’idée de zone inverse), on peut connaître son nom de domaine.  

Exemple de requête :

  • Le client envoie une requête au serveur DNS afin de déterminer le DNS de l’adresse 192.168.1.10.
  • Le serveur recherche dans sa base, et forme le nom de domaine complet en inversant l’adresse et en rajoutant le domaine .in-addr-arpa. après (10.1.168.192.in-addr.arpa.).
  • Le serveur DNS renvoie au client une réponse avec les informations (ici le nom de domaine de l’adresse 192.168.1.10) correspondant à la zone inverse obtenue.

Il existe plusieurs types de serveurs DNS :

  • Serveur Primaire : Ce serveur tient à jour un fichier qui a pour nom “fichier de zone”. Son but est d’établir la correspondance entre un nom et une adresse IP. Cette action sera effectuée pour tous les hosts de sa zone.
  • Serveur Secondaire : Il ne gère pas directement les informations des zones, mais il peut les obtenir grâce au serveur de nom principal de la zone. Sa principale utilité et de permettre une meilleure tolérance aux pannes, puisque si le serveur primaire tombe, le secondaire prendra le relais. Cela permettra également une réduction de charge du serveur primaire.

Il existe également 2 modes d’interrogation, c’est à dire 2 types de requêtes DNS pour faire de la résolution de nom :

  • Mode Récursif : Le client envoie une requête au serveur DNS. La réponse sera soit la correspondance recherchée, soit un message d’erreur. Il pourra également, si besoin est, interroger d’autres serveurs de noms dans le cas où le nom de domaine recherché ne se situe pas dans son cache et se trouve donc dans une zone dans laquelle il n’est pas autoritaire.
  • Mode Itératif : Le client envoie une requête au serveur DNS. La réponse sera soit la réponse complète (dans le cas où le serveur est autoritaire sur la zone concernée par la demande), soit une réponse partielle (adresse d’une autre serveur auquel envoyer la demande afin d’avancer dans la résolution de la requête). Le serveur enverra donc une nouvelle demande vers le serveur qui est spécifié dans la réponse partielle. Ces demandes seront à répéter autant de fois que nécessaire jusqu’à obtenir le nom de domaine demandé.
  • Existence d’un cache : Un cache est présent sur les serveurs DNS afin de permettre une plus grande rapidité d’accès aux différents noms de domaines déjà cherché précédemment. Par exemple, après avoir faire la recherche de “www.google.fr” pour la première fois, lorsqu’un utilisateur utilisant ce même serveur DNS tente d’accéder à ce site, il chargera la page plus rapidement.

 

Avantages :

  • Plus facile de mémoriser des noms que des adresses IP.
  • Très rapide d’accéder au site voulu lors de la requête grâce au cache.

 

Désavantages :

  • Facile de retrouver l’adresse IP de la personne faisant une requête DNS.
  • Possibilité d’attaque DDoS.