Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cours Dns

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 8

CHAPITRE 2 : LE SERVICE DNS

1.Un peu d'histoire


L'ancêtre d'Internet est le réseau Arpanet - un réseau d'ordinateurs créé pour permettre aux
chercheurs, aux Etats Unis, de consulter et échanger leurs travaux et partager leurs
ressources. C'est en 1969 que R. Taylor, de l'agence ARPA, contre l'avis des fabricants
d'ordinateurs, relie 4 ordinateurs de quatre universités différentes, entre eux. En 1973, le
réseau compte 35 ordinateurs mais déjà, depuis l'année précédente, apparaît la nécessité
d'utiliser un protocole commun de communication, non entre ordinateurs d'un même réseau
mais entre réseaux ayant, chacun, leur langage. Dès 1974, V. Cerf et B. Kahn publient TCP/IP
(Transfert Control Protocol/Internet Protocol). TCP/IP sera totalement libre et dans le
domaine public. Immédiatement, d'autres réseaux sont créés et utilisent TCP/IP pour
communiquer entre eux dont CSNET en 1979 et NFSNET en 1980. Le réseau des réseaux finira
par prendre le nom d'Internet. En ces années du Neandertal des réseaux (Arpanet) toute
l'information dont a besoin un ordinateur pour identifier les autres ordinateurs (hosts) du
réseau tient dans un simple fichier texte appelé hosts.txt. C'est une bête liste de
correspondance entre « Nom d'un ordinateur » et « Adresse de l'ordinateur » car il est plus
aisé pour l'humain de dire "Je me connecte sur la machine de telle université ou tel
laboratoire..." plutôt que de dire "Je me connecte sur la machine 063.124.231.077".
Le travail de maintenance de cette liste fut confié au Network Information Center (« NIC ») du
« Stanford Research Institute (« SRI ») de Menlo Park en Californie. Les modifications de cette
liste furent soumises au NIC qui les compilait en un nouveau hosts.txt, une ou deux fois par
semaine. Un mécanisme de « résolution de noms » fut implanté dans tous les systèmes
d'exploitation des ordinateurs, quel que fût leur fabriquant.
DNS remplace Hosts en 1983
Les ordinateurs, qui n'étaient que quelques dizaines, se multiplient et se mettent en réseau.
Rapidement, le travail de maintenance de cette liste et la charge du serveur du « Stanford
Research Institute (« SRI ») deviennent énormes. Les mises à jour deviennent si fréquentes
que de nouvelles mises à jour sont introduites avant même que les mises à jour précédentes
ne soient déployées sur le réseau Arpanet. En sus, il n'y a aucune autorité de gouvernance ni
de convention de nommage des ordinateurs et deux ordinateurs peuvent prétendre porter le
même nom ce qui fait écrouler tout le système. Puis ce sont d'autres réseaux, concurrents

1
d'Arpanet, qui voient le jour. Et puis ces réseaux, ces "Networks" en anglais, s'interconnectent
entre eux. C'est la naissance de l'Internet, le réseau des réseaux. Paul Mockapetris, de
l'University of Southern California (« USC »), propose l'architecture Domain Name System
(« DNS ») en 1983 pour résoudre ces problèmes. Entre autres, il propose le nommage
hiérarchisé (les "points" qui séparent des "hiérarchies" dans les noms), une gestion « locale
» de ces hiérarchies par des organismes ayant une délégation d'autorité sur une zone
géographique, assurant ainsi une mise à jour simplifiée et l'unicité des noms. Il propose enfin
un mécanisme simple de mise à disposition pour l'ensemble de l'Internet. Le DNS (Domain
Name System) repose sur une constellation d'ordinateurs appelés "serveurs de noms de
domaine", tous redondant et tous propageant leurs mises à jour locales vers tous les autres,
en permanence.
2.Présentation rapide d’un système DNS
L’architecture de réseau TCP/IP sur lequel est basé Internet et la plupart des réseaux locaux
actuels, utilisent des adresses IP numériques du type 192.168.0.1. Mais pour faciliter la lecture
de ces adresses par l’homme, un système permet de les transformer en adresses plus lisibles
comme www.coagul.org. Pour effectuer cette opération, il est nécessaire d’utiliser des
serveurs DNS. Un serveur DNS fera donc la correspondance entre les adresses IP et les noms
des domaines. Un serveur DNS s’occupe en général d’un domaine limité et s’occupe de
transmettre les questions à d’autres serveurs s’il ne connaît pas la réponse.

2
3.Principe de fonctionnement de la recherche de noms

Schéma de principe de la résolution des noms de domaine

3
Lorsque qu’une demande de résolution de nom est faite, le système commence par regarder
le fichier « /etc/hosts.conf :

La première ligne de ce fichier indique qu’il faut commencer la recherche en regardant la table
hosts locale et ensuite il faut interroger le serveur DNS.
La table hosts locale est enregistrée dans le fichier « /etc/hosts ». Elle contient une table de
correspondance entre des adresses IP et des noms, elle ressemble à :

La première ligne est obligatoire pour que le système fonctionne même quand le réseau est
désactivé. L’adresse IP 127.0.0.1 est toujours associée au nom localhost.
Les lignes suivantes peuvent être ajoutées manuellement pour faire la correspondance entre
des adresses IP et des noms. C’est ce qui est fait en l’absence de serveur DNS.
Si le résultat n’est pas trouvé dans la table hosts, le système recherche le serveur DNS indiqué
dans le fichier « /etc/resolv.conf » :

La première ligne indique le nom du domaine


La deuxième ligne indique quel domaine il faut ajouter aux noms si celui-ci n’est pas indiqué
lors d’une demande de résolution de nom.
 ping monserveur.mondomaine.com -> Aucun domaine ne sera ajouté lors de la résolution
du nom, car le domaine est fourni.
 ping monserveur -> Le domaine mondomaine.com, sera ajouté avant d’effectuer la
demande de résolution du nom (La recherche du nom, portera donc sur
monserveur.mondomaine.com)

4
La troisième ligne indique le serveur DNS principal. Et c’est donc le serveur DNS qui sera chargé
de donner le résultat s’il connaît la réponse ou de transmettre la question à un autre serveur
DNS.
Si le serveur principal n’est pas disponible, le serveur DNS indiqué sur la ligne suivante sera
utilisé.
Pourquoi installer un serveur DNS
Pour au moins deux raisons :
 Éviter de tenir à jour la table hosts de chaque poste client d’un réseau.
 Avoir un cache DNS qui accélère la recherche des noms. Le cache DNS est un référentiel de
noms de domaine et d'adresses IP stockés sur un ordinateur, et qui permet de ne pas avoir à demander
une adresse IP à chaque fois.
 Sur un réseau local, un serveur DNS permet d’accélérer le trafic sur le réseau car de
nombreux services ont besoins d’un serveur DNS bien configuré pour fonctionner
correctement (WEB, POP, SMTP,..)
4.Installation du serveur de DNS Bind9 et configuration

4.1 Installation

apt-get install bind9

5
4.2 Configuration

a) Editer le fichier /etc/network/interfaces pour l’adressage IPV4

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static

address 192.168.1.100

netmask 255.255.255.0

b) Editer le fichier /etc/resolv.conf (à ne pas éditer si recommandation)

domain ucao.local

search ucao.local

nameserver 192.168.1.100

c) Modifier le fichier /etc/hosts

127.0.0.1 localhost.localdomain localhost

127.0.1.1 NomDeMonOrdinateur.ucao.local NomDeMonOrdinateur

192.168.1.100 NomDeMonOrdinateur.ucao.local NomDeMonOrdinateur

#The following lines are desirable for IPV6………….

Le nom de l’ordinateur est dans le fichier /etc/hostname

Configuration de bind9

 Fichier de configuration principal : /etc/bind/named.conf

Aucune modification à apporter. Vérifier les 3 directives « include ».

 Fichier de configuration : /etc/bind/named.conf.local

Ce fichier contient la configuration du serveur local root et son inverse. Editer ce fichier comme suit :

acl internals { 127.0.0.0/8 ; 192.168.1.0/24 ; } ;

zone « ucao.local » {

type master ;

file « /etc/bind/db.ucao.local » ;

allow-update { key rndc-key; }

};

zone « 1.168.192.in-addr.arpa» {

6
type master ;

file « /etc/bind/db.ucao.local.inv » ;

allow-update { key rndc-key; } ;

};

 Fichier de configuration de zone /etc/bind/db.ucao.local

cp db.local db.ucao.local

Le fichier de zone réunit tous les enregistrements qui indiquent vers quels serveurs pointent votre
domaine et ses sous-domaines.

Créer le fichier de zone afin de vérifier quelles adresses et machines devra utiliser votre serveur DNS.

@ IN SOA myhostname.ucao.local.root.ucao.local.(

) ; Negative cache TTL

@ IN NS myhostname.ucao.local.

myhostname IN A @IPV4 du serveur bind

 Fichier de configuration de zone inverse /etc/bind/db.ucao.local.inv

$ ORIGIN PartieRéseauInverséeDel’@IPV4DuServeur.in-addr.arpa.

$ TTL 1600

@ IN SOA myhostname.ucao.local.root.ucao.local.(

) ; Negative cache TTL

@ IN NS myhostname.ucao.local.

Partie hôte @IPV4 du serveur bind IN PTR myhostname.ucao.local.

5.Mise en fonction du serveur DNS


Le démon qui fait tourner le service DNS bind9 est « named ».

 Après chaque modification des fichiers de configuration, il faut redémarrer le démon


named.
sudo service bind9 restart

 Vérifier la configuration des fichiers bind9 avec la commande « named-checkconf -


z»:
sudo named-checkconf -z
Si tout a été bien configuré, on doit obtenir ceci :

7
Zone ucao.local/IN : loaded serial
Zone @IPserveurInversée.in-addr.arpa/IN : loaded serial
Zone localhost/IN : loaded serial
Zone 127.in-addr.arpa/IN : loaded serial
Zone 0.in-addr.arpa/IN : loaded serial
Zone 255.in-addr.arpa/IN : loaded serial
6. Test du fonctionnement de la résolution de nom
ping
host
nslookup
dig

Vous aimerez peut-être aussi