Présentation

Un serveur DNS (Domain Name System) permet de faire la conversion entre un nom et une adresse IP.

Chaque site Internet est représenté par une adresse IP (par exemple 192.0.78.9 en IPv4). Cependant lorsque l’on navigue sur Internet, plutôt que de devoir se rappeler de l’adresse IP du site Internet, on va plutôt utiliser un nom, qui sera plus facile a retenir.

Le DNS est basé sur une structure que l’on pourrait se représenter par « étages ». En haut de l’arbre il y’a le domaine root et dessous tous les sous-domaines.

DNS1

Chaque fois que l’on veut aller sur un site Internet, on entre l’URL du site web, et à ce moment la, notre ordinateur va faire une requête à un serveur DNS pour connaître l’adresse IP du site web en question.

Lorsque l’on veut visiter un site chez Microsoft par exemple, le PC va faire une demande aux serveurs DNS de chez Microsoft. Si vous voulez accéder à Google, pareil, le PC va faire une requête aux serveurs DNS de chez Google. Toute entreprise possède ces serveurs DNS.

Lorsque l’on veut connaître l’adresse IP d’un serveur, notre ordinateur ne peut pas savoir directement quel est le bon serveur DNS qui contient l’information dont on a besoin. Il va donc interroger les serveurs DNS « root » qui vont ensuite rediriger la requête vers les serveurs qui connaissent l’information que l’on recherche.

Un serveur racine du DNS (serveur root) est un serveur DNS qui répond aux requêtes qui concernent les noms de domaine de premier niveau (top-level domain, TLD) et qui les redirige vers le serveur DNS de premier niveau concerné.

On peut voir que par défaut le serveur DNS contient la liste de tous les serveurs root.

DNS19.jpg

 

Processus des requêtes DNS :

process_dns.png

Comme on le voit sur l’image ci-dessus, le processus se déroule de la manière suivante :

  • Le client veut se rendre sur networkcorp.wordpress.com, le PC ne connaissant pas l’adresse IP du serveur distant, il va donc faire une requête DNS en premier vers le serveur DNS locale. (généralement le DNS de l’entreprise). Le serveur DNS va tout d’abord regarder si dans son cache (c’est-à-dire sa mémoire interne) il n’a pas déjà l’information. Si il contient l’information il répond directement au client, sinon on passe à l’étape suivante.
  • Le serveur va renvoyer la requête vers un des serveurs root
  • Le serveur root va renvoyer la requête tout d’abord vers les serveurs DNS qui gèrent le sous-domaine « .com »
  • Les serveurs DNS de la zone .com vont à leur tour renvoyer la requête vers les serveurs DNS qui gèrent la zone « wordpress.com »
  • Finalement les serveurs DNS de la zone wordpress.com, eux contiennent
  • l’information des adresses wordpress et donc connaissent l’adresse IP du serveur en question. Ils vont donc pouvoir répondre à la requête en fournissant l’adresse IP du serveur
  • Le client peut donc faire sa requête http vers le serveur web networkcorp.wordpress.com

Vous avez donc besoin d’un serveur DNS pour pouvoir faire connaître au monde les adresse de serveurs qui vont faire partis de votre réseau. Si vous mettez par exemple un site web en place, vous voulez que les gens puissent s’y connecter en tapant l’adresse de votre site web dans leur navigateur.

Généralement vous aurez un serveur DNS « interne » qui regroupera toutes le adresses de vos serveurs interne à l’entreprise qui aurons une adresse IP privée et un serveur DNS « externe » avec les adresses publiques des serveurs que vous voulez exposer sur Internet.


Configuration

Lorsque vous avez installé votre contrôleur de domaine, vous avez installé en même temps le serveur DNS.

DNS2

Pour ouvrir la console d’administration du serveur DNS, cliquez sur Tools et sélectionnez DNS.

DNS3

Une fenêtre va s’ouvrir avec la configuration du DNS.

A gauche vous avez plusieurs menus qui s’affichent :

  • Forward Lookup Zones : C’est ici que se trouve la table de conversion URL -> IP
  • Reverse Lookup Zones : C’est l’inverse de la catégorie du dessus, ici c’est la conversion IP -> URL
  • Trust Points : Dans cette section se trouve la configuration pour DNSSEC
  • Conditional Forwarders : Permet d’indiquer pour une zone donnée quel est le serveur à interroger

Forward Lookup Zones

Dans cette section vont donc se trouver toutes les adresses de vos serveurs. On peut voir qu’il y’a déjà 2 entrées présentes, la première est le contrôleur de domaine, et la deuxième est le serveur que nous avons rajouté au domaine dans l’article précédent.

On voit plusieurs informations importantes ici :

  • La colonne Name indique le nom du serveur
  • La colonne Type indique le type d’enregistrement DNS
  • La colonne Data renseigne sur l’IP du serveur

Les principaux types d’enregistrement DNS :

A : Type de base qui fait la correspondance entre un nom et une IP. (Il peut y avoir plusieurs enregistrements de type A pour une même adresse IP)

CNAME : Il permet de créer un alias pour un nom de serveur

MX : Il permet de renseigner l’adresse du serveur de messagerie de l’entreprise

NS : Correspondant au serveur DNS ayant autorité sur la zone

Lorsque vous allez joindre une machine dans votre domaine, elle peut automatiquement venir s’enregistrer dans le serveur DNS comme cela a été le cas pour la machine « MON-SERVEUR ».

Reverse Lookup Zones

Dans cette section, comme je l’ai indiqué plus haut c’est l’inverse de la forward zone. Si vous voulez connaître le nom d’une machine sur votre réseau en ne sachant que l’adresse IP de la machine, c’est dans cette section que vous allez faire le lien entre une IP et un nom.

Le principal type d’enregistrement DNS :

PTR : Enregistrement inversé faisant la correspondance entre une IP et un nom

On voit que pour le moment il n’y a rien de configuré dans cette section.

Il va falloir ajouter le range d’IP dans lequel se trouvent vos serveurs. Par exemple dans notre cas on constate que les serveurs sont dans le range d’adresses privées 10.168.240.X

Donc il va falloir crée le range 10.168.240

Ajouter une Reverse Lookup Zone

Faites un clic droit sur Reverse Lookup Zone et cliquez sur New Zone…

DNS6.jpg

Le wizard d’ajout de nouvelle zone s’ouvre. Sur la première page, cliquez sur Next.

DNS7.jpg

Dans la page d’après, il faut sélectionner si la zone est une zone primaire et si elle va être stockée directement sur ce serveur ou sur un autre serveur.

On va donc laisser la coche sur la première option Primary zone. On va laisser aussi sélectionner la coche indiquant que l’information de la zone sera stockée dans l’AD.

Cliquez donc simplement sur Next.

DNS8.jpg

Il faut ensuite sélectionner de quel manière la zone va se répliquer. Il faut définir si la zone sera répliquée au niveau du domaine ou de la forêt. Dans notre cas, nous avons une forêt composée d’un seul domaine donc il n’y a pas de différence dans notre cas.

En fonction du design auquel vous voulez arriver, vous pouvez sélectionner ce qui convient le mieux. Dans notre exemple nous allons laisser sélectionné la deuxième option. Cliquez ensuite sur Next.

DNS9.jpg

Vous devez ensuite sélectionner si vous voulez ajouter une zone inverse IPv4 ou IPv6. Nous laissons sélectionné pour le moment IPv4. Cliquez sur Next.

DNS10.jpg

Nous allons donc ici configurer le « Network ID » de la zone inverse c’est a dire le range d’adresses.

Comme on l’a vu avant le range d’adresse des IP est 10.168.240.X. Vous allons donc renseigner 10.168.240 dans Network ID.

Cliquez ensuite sur Next.

DNS11.jpg

Dans la page d’après, il va falloir indiquer si on autorise ou non les clients, c’est-à-dire les machines du réseau à venir s’enregistrer automatiquement et créer une entrée DNS lorsqu’elles rejoignent le domaine. On a pu voir ce phénomène avec la zone forward et le serveur « MON-SERVEUR ».

On va donc laisser la coche indiquant que l’on autorise les enregistrements automatiques.

Cliquez ensuite sur Next.

DNS12.jpg

Dans cette dernière page vous avez un résumé de la zone qui va être crée.

Cliquez sur Finish pour finaliser la création.

DNS13.jpg

Vous pouvez voir que la zone inverse à bien été crée.

DNS14.jpg

Conditional Forwarders

Comme je l’ai dit plus haut les redirecteurs conditionnels permettent de configurer quel est le serveur DNS à qui il faut envoyer la requêtes pour un domaine donné.

Par exemple lorsque vous avez plusieurs domaines internes dans votre entreprise et donc que ces domaines ne sont pas visibles de l’extérieure, vous pouvez configurer à ce moment là un redirecteur conditionnel qui va indiquer que lorsque vous voulez faire une requête pour une adresse qui est dans un autre domaine interne, il faut envoyer la requête vers le serveur DNS interne qui gère cet autre domaine.

DNS20.jpg

Créer un redirecteur conditionnel

Dans l’interface de configuration du DNS, faite un clic droit sur Conditional Forwarder et sélectionnez New Conditional Forwarder…

DNS21.jpg

Une nouvelle fenêtre va s’ouvrir.

Vous devez donc configurer le domaine pour lequel vous voulez configurer un redirecteur et ensuite les serveurs DNS à utiliser pour résoudre les requêtes vers ce domaine.

DNS222.jpg

Si le serveur DNS que vous avez entré est bien le serveur DNS qui contrôle la zone entrée, vous aurez une petite icône verte avec la mention OK pour vous dire que la configuration est correcte.

Vous avez une case à cocher en dessous Store this conditional forwarder in Active Directory, and replicate it as follows. Si vous activez cette case, l’information du redirecteur sera inscrite dans l’Active Directory et donc l’information va se synchronisée sur tous les serveurs DNS du domaine ou de la forêt c’est a vous de choisir sans que vous ayez à configurer les redirecteurs manuellement sur chaque serveur DNS.

Lorsque vous avez configurés les différents éléments cliquez sur OK pour valider.


Ajouter une entrée DNS

Host (A)

Pour ajouter une nouvelle entrée A dans votre serveur DNS, dans l’interface de configuration DNS, fait un clic droit sur votre domaine et sélectionnez New Host (A or AAAA).

DNS5.jpg

Dans la fenêtre qui s’ouvre il faut renseigner les champs suivants :

  • Name : Nom du serveur que l’on veut ajouter
  • IP address : Adresse IP assignée au serveur

Il y’a deux cases a cocher que l’on peut ou non sélectionner. La première permet de créer l’entrée dans la zone inverse automatiquement. La deuxième permet d’autoriser la modification dynamique de l’entrée DNS par un client authentifié.

Pour notre exemple, on va créer une entrée « mon-serveur-2 » avec l’IP 10.168.240.127. Nous allons cocher la première case à cocher pour créer l’entrée dans la zone inverse.

Cliquez ensuite sur Add Host.

DNS15.jpg

Une boite de dialogue vous informe que la création s’est déroulée correctement.

DNS16.jpg

Vous pouvez donc voir premièrement que l’entrée DNS à bien été crée dans la Forward Lookup Zones

DNS17.jpg

Deuxièmement, vous pouvez constater aussi que l’entrée à bien été automatiquement crée dans la Reverse Lookup Zones.

DNS18.jpg