©David Corlay Domain Name System

Transcription

©David Corlay Domain Name System
DNS
Domain Name System
©David Corlay
[email protected]
SOMMAIRE
I.
DNS : PROTOCOLE
DEFINITION………………………………………………….……….P1
FONTIONEMENT………………………………………………….……….P1
II.
DNS : PROCEDURE (UBUNTU)
………………………………………………….……….P3
III.
DNS : PROCEDURE (WINDOWS SERVER 2012)
………………………………………………….……….P4
DNS : PROTOCOLE
Définition :
Chaque ordinateur qui est connecté à internet ou pas possède au moins une adresse IP
propre. Cependant, les utilisateurs ne veulent pas travailler avec des adresses numériques
comme 194.153.205.26 mais avec un nom de domaine ou des adresses plus simple du type
www.google.fr (adresses FQDN).Il est donc possible d'associer des noms en langage courant
en adresses numériques grâce à un système appelé DNS (Domain Name System).
Fonctionnement :
 Cas d’une requête sur un domaine hébergé
Lorsqu’un DNS reçoit une requête lui demandant de fournir une traduction Nom de
domaine/IP pour un nom de domaine qu’il héberge, c’est assez simple. Dans ce cas, le
DNS stock en local une table de correspondance lui permettant de fournir cette
traduction. Il recherche donc dans sa table l’enregistrement qui correspond au nom
de domaine fourni et renvoie simplement l’adresse IP correspondante.
 Cas d’un domaine externe
Lorsqu’un DNS reçoit une requête lui demandant de fournir une traduction Nom de
domaine/IP pour un nom de domaine qu’il n’héberge pas, c’est un petit plus
compliqué.
Dans ce cas le DNS va intéroger un serveur « ROOT » pour savoir quel est le serveur
TLD à qui demander qui fait autorité pour le domaine demandé. Et enfin soumettre la
requête originale au serveur ayant autorité.
Définition :
 Un DNS dit « ROOT », est un des 13 DNS détenant la liste des DNS TLD. Ces 13
serveurs ont une IP qui ne change jamais et sont en quelque sorte la porte
d’entrée du système de résolution de noms d’Internet.
 Un DNS TLD (Top Level Domain) est un DNS détenant la liste de l’ensemble des
DNS ayant autorité sur un domaine contenant l’extension qu’il gère.
 Un DNS faisant autorité est un DNS qui héberge le nom de domaine demandé
DNS : PROCEDURE (Ubuntu)
Pré-requis :
 Ubuntu 14
 Le paquet bind9
Apres avoir installé votre Ubuntu, installer le paquet bind9 qui représente le rôle DNS. Nous
allons le configurer pour le rendre fonctionnel.
Configuration :
Il faut savoir que tous les fichiers de configuration de bind se trouve dans : etc/bind
Pour la sécurité il est conseillé de faire une copie de tous les fichiers qu’on modifie. Exemple si
dessous.
Pour ajouter notre zone, il faut éditer le fichier « named.conf.local» qui permet d’indiquer les zones.
Exemple :
zone “david.sio”: le nom de la zone.
type master : On indique que ce serveur fait autorité
sur la zone.
file “/etc/bind/db.david.sio” : On indique le lien vers
le fichier contenant la base d’enregistrements pour la
zone.
allow-update { none ;} : On n’autorise pas les mises à
jour du fichier d’enregistrements par un tiers, ce qui
permet d’augmenter la sécurité
Ensuite on copie le fichier « db.empty » sous le nom qu’on souhaite « db.xxxx ». Le nom doit
correspondre à ce que vous avez renseigné précédemment. Comme si dessous.
On édite notre fichier qui est pour moi « db.david.fr » puis on rajoute par exemple notre serveur web
qui a l’adresse 172.17.0.51
Cet enregistrement va permettre de joindre le serveur web grâce au nom de domaine
« ubuntuweb.david.fr ». On peut rajouter un enregistrement pour que le serveur web réponde au
nom d’hôte « www » pour cela on rajoute cette ligne ci-dessous.
De ce fait on pourra joindre le serveur web en utilisant www.david.sio
Ensuite il faut redémarrer le serveur DNS pour qu’il prenne la configuration en compte avec la
commande suivante :
Il faut maintenant tester notre configuration avec les commande suivante :
Test de la zone « david.sio » :
cd /etc/bind
named-checkzone david.sio db.david.sio
Si tout est correcte, vous aurez ceci comme résultat :
Test de la configuration bind :
cd /etc/bind
named-checkconf named.conf.options
Si vous n’avez pas de message c’est qu’il n’y a pas d’erreur.
Au début, le serveur avait un serveur DNS de déclaré pour pouvoir télécharger les paquets,
maintenant qu’il est lui-même serveur DNS, nous devons le lui dire. Pour cela, on modifie le
fichier « resolv.conf » se situant dans « etc » comme si dessous :
Pour que cela soit pris en compte il faut redémarrer la carte réseaux
Il faut à présent tester notre serveur avec la commande nslookup :
Cela montre bien que notre serveur DNS fonctionne, on peut a présent essayer a partir de notre
navigateur web.
Notre serveur DNS est fonctionnel mais la zone inverse n’est pas encore faite.
Maintenant que notre première zone fonctionne, nous allons créer la zone inverse à celle-ci c’est-àdire celle qui permettre de retrouver le nom «ubuntudns.david.sio » à partir de l’adresse IP «
172.17.0.50 ». C’est le même principe que pour la zone « normale ». On édite le fichier «
named.conf.local » et on ajoute la déclaration de la zone. Ensuite, on copie fait une copie « db.empty
» pour partir d’un fichier modèle puis on ajoute les enregistrements dans le fichier de zone.
Modification de « named.conf.local »
Le nom de la zone est « 1.168.192.in-addr.arpa », tout d’abord on indique, dans l’ordre inverse, les 3
octets de l’adresse IP de la zone représentant le réseau, donc pour le réseau « 192.168.1.0 » ça
donnera « 1.168.192 ». Ensuite on ajoute « in-addr.arpa » qui est un nom de domaine créé et utilisé
mondialement pour la résolution inverse.
Ensuite il faut editer « db.inverse.david.sio » et rajouter les enregistrements comme si dessous.
Pour finir il faut effectuer les mêmes tests et redémarrer les mêmes services pour vérifier que tout
marche.

Documents pareils