Configuration du serveur DNS

Installation du service DNS

Lors de la planification de l'installation du serveur DNS vous devez vérifier si les ressources matérielles de votre machine sont suffisante. En effet, le service DNS utilise environ 4Mo de mémoire vive pour s'exécuter et chaque enregistrement de ressource ajoutée au serveur utilise 100 octets (source : documentation Windows 2000 Server). Ainsi si votre serveur doit héberger 10 000 ressources, cela occupera 10Mo supplémentaires dans la mémoire vive.

Vous pouvez installer le service DNS en passant par l'assistant Configurer votre serveur ou bien en utilisant la fenêtre Ajout/Suppression de programmes du panneau de configuration. Dans le second cas, il faut cliquer sur le bouton Ajouter ou Supprimer des Composants Windows, sélectionner Services de mise en réseau, puis Système DNS (Domain Name System). Avant de lancer la procédure d'installation, assurez-vous de disposer d'une carte réseau paramétrée avec une adresse IP fixe ainsi que du CD-ROM de Windows 2003 Server.

Une fois le service DNS installé, vous pouvez le configurer grâce à une console dédiée accessible dans panneau de configuration / outils d'administration ou bien en tapant dnsmgmt.msc dans la boite de dialogue exécuter.

Les différents types de requêtes

Un serveur DNS peut recevoir deux types de requêtes DNS :

  • une requête récursive : Lorsqu'un serveur DNS reçoit une requête récursive, il doit donner la réponse la plus complète possible. C'est pourquoi le serveur DNS est souvent amené à joindre d'autres serveurs de noms dans le but de trouver la réponse exacte.

  • une requête itérative : Lorsqu'un serveur reçoit une requête itérative, il renvoie la meilleure réponse qu'il peut donner sans contacter d'autres serveurs DNS (c'est-à-dire en consultant uniquement sa propre base de données).

Lorsqu'une machine cliente envoie une requête à un serveur DNS (étape 3 de la résolution de nom d'hôte), elle est toujours de type récursif. Dans l'exemple ci-dessous, l'ordinateur client nommé client23.laboms.lan cherche l'adresse IP correspondant au nom d'hôte websrever.laboms.lan. C'est pourquoi il envoie une requête récursive au serveur DNS nommé dns1.laboms.lan. A partir de cet instant dns1.laboms.lan a pour obligation renvoyer une réponse au client. Pour cela il va chercher dans sa mémoire cache, puis la base de données qu'il héberge et va éventuellement contacter d'autres serveurs DNS. Une fois qu'il a obtenu la réponse (la réponse peut être négative), il la renvoie au client. Dans notre exemple, le serveur DNS a trouvé l'adresse IP recherchée qui est : 172.16.104.30. L'ordinateur client peut ensuite contacter le serveur web nommé webserver.laboms.lan.

Lorsqu'un serveur DNS ne peut pas répondre à la requête récursive d'un client, il va d'abord essayer de contacter ses redirecteurs. Si le serveur DNS est paramétré pour utilisé des redirecteurs alors il envoie une requête récursive au premier serveur DNS défini dans sa liste de redirecteurs. Par contre, si le serveur DNS n'a pas de redirecteurs, il va envoyer une requête itérative au premier serveur DNS situé dans sa liste de serveur DNS racine. Le serveurs DNS n'envoie donc des requêtes itératives que si il n'a pas de redirecteurs.

Dans l'exemple ci-dessus, un client nommé client-11.ms.lan souhaite accéder au site web du laboratoire Microsoft. La procédure de résolution de nom se passe en plusieurs étapes :

  1. L'ordinateur client client-11.ms.lan commence par chercher l'adresse IP du serveur Web. Pour cela il envoie une requête récursive au premier serveur DNS de sa liste de serveurs DNS soit dns-2.ms.lan.

  2. Le serveur dns-2.ms.lan ne connaît pas la réponse, il envoie donc une requête récursive à dns-1.ms.lan qui est le premier serveur DNS de sa liste de redirecteurs.

  3. Dans le cas présent dns-1.ms.lan ne connaît pas l'adresse IP recherchée et n'est pas configuré pour utiliser des redirecteurs. Il envoie donc une requête itérative au premier serveur DNS racine parmi sa liste d'indications de racine.

  4. Le serveur DNS racine ne connaît pas la réponse mais il sait quel serveur DNS fait autorité pour le domaine org. Il renvoie donc l'adresse IP du serveur DNS faisant autorité pour le domaine org à dns-1.ms.lan.

  5. Le serveur dns-1.ms.lan envoie alors une requête itérative au serveur DNS du domaine org.

  6. Le serveur DNS du domaine org ne connaît pas la réponse et renvoie l'adresse IP du serveur DNS faisant autorité pour le domaine laboratoire-microsoft au serveur dns-1.ms.lan.

  7. Le serveur dns-1.ms.lan contacte alors le serveur DNS faisant autorité pour la zone laboratoire-microsoft au moyen d'une requête itérative.

  8. Le serveur DNS faisant autorité pour la zone laboratoire-microsoft possède le mappage dans sa zone de recherche directe locale. Il envoie donc l'adresse IP recherché à dns-1.ms.lan.

  9. dns-1.ms.lan transmet la réponse au serveur dns-2.ms.lan.

  10. Le serveur dns-2.ms.lan fait suivre la réponse au client qui peut ensuite joindre le serveur HTTP et afficher le site du laboratoire Microsoft.

Configuration des indications de racine

Lorsque le serveur DNS n'est pas configuré pour utilisé des redirecteurs, il se sert des indications de racine pour résoudre les noms d'hôtes ou les adresses IP appartenant à des zones qu'il n'héberge pas. Les indications de racine sont un ensemble de serveurs hébergeant la zone contenant les enregistrement du domaine racine ou domaine ".".

Les "serveurs DNS racines" sont au nombre de 13 à travers le monde. Il appartiennent tous à un même domaine nommé root-servers.net. Par défaut, le serveur DNS de Windows 2003 Server est configuré pour utiliser ces treize serveurs DNS. Cela signifie que si le serveur DNS reçoit une requête DNS dont il ignore la réponse, il va contacter un de ces serveurs racine pour l'obtenir.

Si l'on ne souhaite pas que les clients puissent résoudre les noms de domaines utilisés sur Internet, il suffit de ne mettre aucun serveur DNS dans la liste des serveurs racine ou bien de spécifier le nom d'hôte d'un serveur DNS local. On peut configurer les "serveurs DNS racine" dans l'onglet Indication de racine ( clic droit / propriétés sur le nom du serveur DNS dans la console MMC).


L'image “http://www.laboratoire-microsoft.org/articles/win/delegation_dns/2/serveurs_racine.gif” ne peut être affichée car elle contient des erreurs.

Configuration des redirecteurs

Lorsque le serveur DNS n'est pas capable de résoudre un nom en adresse IP, il va essayer de contacter un autre serveur DNS. On appelle ce serveur DNS redirecteur. Sous Windows 2003 Server il est possible de configurer un ou plusieurs redirecteurs pour un domaine précis (attention, sous Windows 2000 server cette fonctionnalité n'est pas disponible !).

Par exemple, on peut spécifier que tous les enregistrements appartenant au domaine labomicrosoft.lan seront résolus par les serveurs DNS ayant les adresses IP 172.16.16.1 et 172.16.16.2. Ainsi à chaque fois que le serveur DNS reçoit une requête de résolution de noms concernant le domaine labomicrosoft.lan, il regarde dans sa mémoire cache, puis si l'entrée n'y est pas, il contacte immédiatement le premier redirecteur spécifié (ici le serveur DNS ayant l'adresse IP 172.16.16.1).

Il est possible de définir un redirecteur s'appliquant à tous les domaines sauf ceux qui ont déjà des redirecteurs. Dans ce cas, le serveur DNS n'utilisera plus du tout les indications de racine et n'enverra donc jamais de requête récursive. De manière générale, les redirecteurs indiqués pour le domaine Tous les autres domaines DNS correspondent aux serveurs DNS des fournisseurs d'accès Internet (FAI) de l'entreprise.

L'utilisation des redirecteurs permet d'utiliser des serveurs DNS locaux pour résoudre les enregistrements de ressources des domaines locaux et des serveurs DNS extérieurs (ceux des FAI ou bien les serveur DNS racines via les indications de racine) pour résoudre les enregistrements de ressources des domaines Internet, ce qui provoque une amélioration des performances du processus de résolution de noms tout en conservant la possibilité de résoudre la totalité des noms de domaines mondiaux.


L'image “http://www.laboratoire-microsoft.org/articles/win/delegation_dns/2/redirecteurs_2.gif” ne peut être affichée car elle contient des erreurs.