18.3. Résolution de noms

Le DNS (Domain Name System - système de noms de domaines) permet d'assigner une adresse IP à un ou plusieurs noms, et d'attribuer un nom à une adresse IP. Sous Linux, cette conversion est généralement effectuée par un type de logiciel spécial, appelé BIND (Berkeley Internet Name Domain - domaine de noms Internet Berkeley). L'ordinateur en charge de cette conversion est appelé serveur de noms. Les noms constituent un système hiérarchique où les composants de nom sont séparés par un point. La hiérarchie de noms n'est toutefois pas dépendante de la hiérarchie d'adresses IP décrite ci-dessus.

Par exemple, imaginez un nom complet, comme terre.exemple.com, écrit au format nomhôte.domaine. Le nom complet (ou nom de domaine complet - FQDN) est composé d'un nom d'hôte et d'un nom de domaine (exemple.com). Ce dernier élément inclut également le domaine de niveau supérieur ou TLD (Top Level Domain), à savoir com.

L'assignation d'un domaine de niveau supérieur (TLD) est devenue très complexe, pour des raisons historiques. Les États-Unis utilisent traditionnellement des noms de domaine sur trois lettres. Par contre, le reste du monde utilise les codes de pays ISO sur deux lettres. En outre, des domaines de niveau supérieur plus longs ont été créés en 2000 afin de représenter certains types d'activités (par exemple, .info, .name, .museum).

Aux débuts d'Internet (avant 1990), le fichier /etc/hosts servait à stocker les noms de tous les ordinateurs présents sur Internet. Cela est très vite devenu peu pratique, compte tenu du nombre croissant d'ordinateurs connectés à Internet. Une base de données décentralisée a donc été développée pour stocker les noms d'hôte de manière distribuée. Cette base de données, semblable au serveur de noms, ne tient pas les données concernant tous les hôtes d'Internet à disposition immédiate des utilisateurs, mais elle peut envoyer des requêtes à d'autres serveurs de noms.

Au sommet de la hiérarchie se trouvent les serveurs de noms racine. Ces serveurs de noms racine gèrent les domaines de niveau supérieur (TLD) et sont gérés par le NIC (Network Information Center - Centre d'informations sur les réseaux). Chaque serveur de noms racine connaît les serveurs de noms responsables d'un domaine de niveau supérieur (TLD) particulier. Pour plus d'informations sur les centres d'informations sur le réseau (NIC) des domaines de niveau supérieur, reportez-vous au site http://www.internic.net.

Le DNS ne se contente pas de résoudre des noms d'hôte. Le serveur de noms identifie également l'hôte qui reçoit les messages électroniques pour l'intégralité d'un domaine (le serveur de messagerie (mail exchanger (MX))).

Pour que votre ordinateur puisse résoudre une adresse IP, il doit connaître au moins un serveur de noms et son adresse IP. YaST permet de configurer facilement un serveur de noms. Si vous disposez d'une connexion à distance par modem, vous n'aurez peut-être même pas besoin de configurer manuellement un serveur de noms. Le protocole de connexion à distance fournit l'adresse du serveur de noms lors de l'établissement de la connexion. Pour savoir comment configurer l'accès au serveur de noms avec SUSE Linux, reportez-vous au Chapitre 20, Le système de noms de domaine.

Le protocole WHOIS est étroitement associé au DNS. Ce programme permet de trouver rapidement le serveur responsable d'un domaine donné.