Vous êtes sur la page 1sur 9

Rsolution de noms d'htes avec DNS

Prsentation
L'atelier propose
L'atelier prsente la rsolution de noms d'htes sur un rseau local l'aide du service DNS. Il ne dcrit pas:
- la mise en place d'un serveur de nom secondaire,
- les solutions d'interconnexions avec Internet.
Pour cela il faudra consulter les ouvrages suivants:
- Raccorder son rseau d'entreprise l'Internet (Ed Eyrolle)
- Administration des rseau sous Linux (Ed O'Reilly)
- Kit de ressources technique de Windows NT Server (Microsoft Press)
- le HOW TO: DNS-HOWTO
Avant d'aborder la rsolution de noms d'htes avec le service DNS, vous pouvez voir galement l'atelier sur la
rsolution des noms d'htes avec un fichier HOST
Il est en 5 parties:
1 - une prsentation de DNS
2 - l'installation et la configuration de DNS sur un serveur Linux
3 - installation et configuration d'un client windows 95
4 - les tests ralisables avec des clients Windows 95
5 - l'utilisation de la commande nslookup
L'atelier peut tre ralis en autonomie, une feuille de suivi est jointe en annexe.
Attention: il existe plusieurs versions du programme de rsolution de nom sur Linux. Depuis la version 5.2 de
RedHat c'est le binaire bind-8.1.2-5.i386.rpm qui est utilis. Ce document dcrit l'utilisation du Bind 4.0
(binaire bind-4.9.7-1.i386.rpm ) distribu dans les versions antrieures, d'ailleurs parfaitement compatible avec
la RedHat 5.2.

Comptences et savoirs
S15 Architecture des rseaux
Le modle OSI (Open System Interconnection)

Dcrire la structure et le fonctionnement d'une


configuration rseau

S23 Techniques d'administration d'un rseau

Administrer un rseau local


Assurer la gestion d'un parc matriel et logiciel
Installer le systme d'exploitation dun rseau

Matriel ncessaire:
Un rseau local install avec des machines sous Linux,
Protocole TCP/IP

Description de la configuration utilise:


Adresse de rseau utilise 192.68.1.0
Nom du rseau
planete.net

Masque de sous rseau: 255.255.255.0

Machine
1
2
3

Adresse
192.68.1.1
192.68.1.2
192.68.1.3

Nom d'hte
uranus
saturne
jupiter

Rle du service DNS


Le service de rsolution de noms d'htes (Domain Name Services), permet d'adresser un hte par un nom, plutt
que de l'adresser par une adresse IP.
Quelle est la structure d'un nom d'hte ?
Nom_d_hte ou bien Nom_d_hote.NomDomaine
Le nom de domaine identifie une organisation dans l'internet, comme, par exemple, yahoo.com, wanadoo.fr,
eu.org. Dans l'exemple de cet atelier il s'agit de "planete.net". Chaque organisation dispose d'un ou plusieurs
rseaux. Ces rseaux sont composs de nuds, ces nuds pouvant tre adresss.
Par exemple, la commande "ping saturne.planete.net", permet d'adresser la machine qui porte le nom d'hte
"saturne", dans le domaine (organisation) "planete.net".
Quelle diffrence entre la rsolution de noms d'htes avec un serveur DNS et les fichiers "hosts" ?
Avec les fichiers "hosts", chaque machine dispose de sa propre base de donnes de nom. Sur des rseaux
importants, cette base de donnes duplique n'est pas simple maintenir.
Avec un service de rsolution de nom, la base de donnes est localise sur un serveur. Un client qui dsire
adresser un hte regarde dans son cache local, s'il en connat l'adresse. S'il ne la connat pas il va interroger le
serveur de Nom.
Tous les grands rseaux sous TCP/IP, et Internet fonctionnent (schmatiquement) sur ce principe.
Avec un serveur DNS, un administrateur n'a plus qu'une seule base de donnes maintenir. Il suffit qu'il indique
chaque hte, quelle est l'adresse de ce serveur.
Ici il y a 2 cas de figures possibles:
- soit les htes (clients) sont des clients DHCP, ce problme sera trait dans l'atelier mise en place d'un
serveur DHCP,
- soit les clients disposent d'une adresse IP statique. La configuration des clients est dtaille dans cet
atelier.

Configuration du serveur de nom


Avant de commencer, quelques prcisions
1 - Le domaine in-addr.arpa:
Le principe de la rsolution de nom, consiste affecter un nom une adresse IP. Le processus inverse doit
pouvoir galement tre mis en uvre. Pour cela il y a un domaine particulier, in-addr.arpa, qui permet la
rsolution inverse d'adresse IP. La rsolution inverse permet, partir d'une adresse IP, de trouver son nom d'hte.
Pour le rseau 192.68.1.0, on crera une zone inverse dans le domaine in-addr.arpa. La zone de recherche inverse
dans le domaine deviendra:
1.68.192.in-addr.arpa
On inscrira dans cette zone tous les nuds du rseau pour lesquels on dsire que la rsolution inverse fonctionne.

2 - Notion sur les types d'enregistrements.

Les types d'enregistrements qui enrichissent une base de donnes DNS sont de plusieurs types, dont voici les
principaux:
Enregistrement de type SOA (Start Of Authority)
Ces enregistrements contient toutes les informations pour le domaine, par exemple le dlai de mise
jours des bases de donnes entre serveurs de noms primaires et secondaires. Ces paramtres ne sont pas dtaills.
Enregistrements de type NS (Name Server)
Ces enregistrements donnent les adresses de serveurs de noms pour le domaine.
Enregistrement de type A
Ces enregistrements permettent de dfinir les nuds fixes du rseau (ceux qui ont des adresses ip
statiques). Serveurs, routeurs, switchs
Enregistrements de type MX
Ils servent pour les serveurs de messagerie. Dans cet atelier il n'y en a aucun de dfini.
Enregistrements de type CNAME
Ils permettent de dfinir des alias sur des nuds existants.
Enregistrement de type PTR
Ils permettent la rsolution de nom inverse dans le domaine inn-addr.arpa.

On peut commencer
Pour mettre en place le service de rsolution de nom sur un serveur Linux, on va procder successivement aux
oprations suivantes:
- 1 - installer le package,
- 2 - configurer les fichiers,
- 3 - dmarrer le service serveur.
1 - Installer le package
On va utiliser le "bind 4". Il faudra donc installer les fichiers bind-4.9.7-1.i386.rpm et bind-utils-4.9.71.i386.rpm.
Vous pouvez copier ces 2 fichiers dans un rpertoire du disque et utiliser la commande:
rpm -i *.rpm
2 - Configurer les fichiers
Le fichier racine pour la configuration du serveur de nom est le fichier "/etc/named.boot". Ce fichier est lu au
dmarrage du service et donne la liste des fichiers qui dfinissent la base de donnes.
Le fichier named.boot
;fichier named.boot pour le domaine planete.net
;Indication du chemin o sont localiss les fichiers de la base de donnes
directory
/var/named
;
domaine
fichier
;______________________________________________________
;pour le fichier de cache du serveur de nom
;nous ne sommes pas raccords sur l'internet, donc nous ne nous servons pas de ce fichier.
; on le laisse en commentaire
;cache
.
named.ca
;pour la recherche directe dans le domaine, serveur primaire, on utilise le fichier named.hosts
primary
planete.net
named.hosts
; pour la recherche de zone inverse (reverse) on utilise named.rev(erse)
primary
1.68.192.in-addr.arpa
named.rev

Le fichier /var/named.hosts

Le paramtre @, signifie qu'il s'agit du domaine "planete.net"


Le pramtre "IN", signifie qu'il s'agit d'un enregistrement de type INternet
; enregistrement de type SOA, on dclare tous les paramtres
; ainsi que l'adresse du responsable postmaster
@
IN
SOA
uranus.planete.net. postmaster.uranus.planete.net.
(
16
86400
3600
3600000
604800
)
; enregistrement de type Name Server, on dclare le serveur de nom
IN
NS
uranus.planete.net.
; on dclare les autres nuds pour la rsolution de nom
uranus
IN
A
192.68.1.1
jupiter
IN
A
192.68.1.2
saturne
IN
A
192.68.1.3
; on dclare les alias CNAME. La machine saturne sert de serveur de messagerie, Web et FTP
mail
IN
CNAME
saturne
www
IN
CNAME
saturne
ftp
IN
CNAME
saturne

Le fichier /var/named.rev
@

IN

SOA

uranus.planete.net. postmaster.uranus.planete.net.
(
16
86400
3600
3600000
604800
)

; enregistrement de type Name Server


IN
NS
uranus.planete.net.
;On dclare les nuds dans le domaine 1.68.192.in-addr.arpa
1
IN
PTR
uranus
2
IN
PTR
jupiter
3
IN
PTR
saturne

3 - Dmarrer ou arrter le service le service


Le service (daemon) qui active la rsolution de nom s'appelle "named", prononcer "naime d"
Si vous voulez qu'il soit activ chaque dmarrage de la machine, vous allez utiliser les commandes suivantes.
Setup - Sytem Services - Cocher la bote en face du service Named.
Si vous voulez l'arrter ou le redmarrer dynamiquement vous pouvez utiliser les commandes suivantes:
/etc/rc.d/init.d/named stop
/etc/rc.d/init.d/named start

Configuration d'un client Windows


Il s'agit d'un client Windows 95. Chaque client dispose du protocole TPC/IP, d'une adresse IP. Il faut configurer
le client pour lui signifier quel est le serveur de nom qu'il doit consulter. Pour cela il faut aller dans:
- panneau de configuration - rseau - tcp/ip - Onglet "Configuration DNS"
Vous allez pouvoir dfinir les paramtres suivants:
- le nom d'hte de la machine locale dans le rseau (exemple saturne),
- le nom de domaine auquel appartient l'hte (dans cet exemple c'est planete.net).
Ces 2 paramtres sont facultatifs dans l'atelier qui nous intresse. Par contre le paramtre "Ordre de recherche
DNS" est important. Mettez dessous:
L'adresse IP du serveur de nom que vous avez configur,
Cliquez sur ajouter
Validez puis relancer la machine.
Ce paramtre, dfinit la machine locale, l'adresse de l'hte de destination qui est charg de la rsolution des
noms d'htes dans le rseau. Cela permet de dire qu'un serveur de nom doit avoir une adresse IP statique sur le
rseau.

Test de la configuration
Avant de lancer une commande, vous devez vrifier les points suivants:
- vous n'avez pas de fichier host sur la machine cliente,
- si vous en avez un, il faut le supprimer.
Pourquoi ?
L'utilisation de fichiers Hosts et d'un serveur de nom n'est pas exclusif. Dans bien des environnements, le fichier
host est consult avant le serveur de nom (notamment Windows, Linux moins que ce ne soit prcis). Si vous
avez un fichier host sur la machine, vous pouvez avoir des rsultats qui ne sont pas ceux attendus.
Vrifier la rsolution de nom:
Mettons que le rseau soit configur de la faon suivante:
Nom d'hte
Uranus
Jupiter
Saturne

Serveur
Client 1
Client 2

Alias (CNAME)

www
ftp
mail

Adresse IP
192.68.1.1
192.68.1.2
192.68.1.3

Pour vrifier le fonctionnement de la rsolution de nom partir du client saturne, vous pouvez utiliser les
commandes suivantes:
- Ping uranus
- Ping jupiter
- Ping saturne
Vous pouvez galement tester la rsolution des alias (CNAME) avec les commandes:
Ping mail.planete.net
Ping www.planete.net
Ping ftp.planete.net
C'est bien la mme adresse ip qui rpond, la machine a donc bien plusieurs noms.

Si vous voulez vrifier que c'est bien le serveur de nom qui ralise la rsolution, il existe plusieurs solutions. La
plus simple est d'arrter le service serveur avec la commande:
- /etc/rc.d/init.d/named stop, puis de refaire les manipulations. Aucune machine n'est atteignable en
utilisant son nom, mais cela est toujours possible en utilisant l'adresse IP.
Vous pouvez galement tenter les manipulations suivantes:
1 - Enlever sur le serveur de nom, l'enregistrement A de Jupiter, puis partir de saturne refaites le test "ping
jupiter". La machine de nom "Jupiter", n'est pas atteinte, par contre vous pouvez toujours joindre la machine de
nom "uranus".
2 - Sur le client "Saturne", enlevez le paramtre qui dfinit l'adresse du serveur de nom dans la configuration
rseau. Relancez la machine. Plus aucune machine, y compris le serveur de nom, n'est adressable avec le nom.

La commande NSLOOKUP
NSLOOKUP:
La commande NSLOOKUP est aussi importante pour les administrateurs de rseau que des commandes comme
ping, ifconfig, netstat, routeCette commande permet de vrifier la configuration des serveurs de nom. Le
meilleur mode d'utilisation est le mode interactif. En mode interactif, la commande "set type=TypeEnreg", avec
TypeEnreg = ANY, PTR, SAO, A permet d'afficher tous les enregistrements contenus dans la base de donnes
du DNS.
Cette commande est utilisable, si vous avez un accs Internet, sur tous les domaines de l'Internet.
Pour obtenir de laide sur nslookup, vous pouvez utilisez l'aide "man nslookup"
Les exemples ci-dessous illustrent quelques commandes:

Utilisation de la commande nslookup


On ouvre une session dans un domaine (ici faisant partie de l'Internet)
telnet whoupair.unilim.fr
On lance la commande nslookup en mode interactif
/usr/users/profs/mascret > nslookup
Le serveur de nom du domaine rpond
Default Server: limdns.unilim.fr
Address: 164.81.1.4
On pose une question pour le domaine irisnet.fr
> irisnet.fr
Server: limdns.unilim.fr
Address: 164.81.1.4
Non-authoritative answer:
irisnet.fr
nameserver = ns1.irisnet.fr
irisnet.fr
nameserver = ns2.faraday.fr
Le serveur de nom du domaine a t trouv, il rpond
Authoritative answers can be found from:
irisnet.fr
nameserver = ns1.irisnet.fr

irisnet.fr
nameserver = ns2.faraday.fr
ns1.irisnet.fr internet address = 194.79.184.35
ns2.faraday.fr internet address = 194.79.160.65
Vrifier la rsolution de nom inverse:
Cette commande va permettre de vrifier que, pour une adresse IP, le serveur nous donnera bien le nom de la
machine correspondante.
On passe la commande, on veut les enregistrements de type PTR
> set q=PTR
On donne l'adresse ip de la machine dans la zone in-addr.arpa
> 35.184.79.184.in-addr.arpa
Le serveur rpond
Server: limdns.unilim.fr
Address: 164.81.1.4
35.184.79.194.in-addr.arpa
35.184.79.194.in-addr.arpa

Pour cette adresse il y a 2 noms dans le DNS pour cette adresse


name = ns1.irisnet.fr
name = photonis.com
Pour quitter la session

>exit

Conclusion:
Si vous dsirez mettre en place la rsolution de nom sur un rseau local, il n'y a pas grand chose de plus mettre
en oeuvre, les enregistrements de type MX pour la messagerie et une synchronisation avec un serveur
secondaire.
Si vous dsirez vous relier sur Internet, le processus est plus complexe. Il faudra approfondir la description des
enregistrements et la structure des fichiers. Les ouvrages cits plus haut peuvent servir de base. Vous devrez
vous faire aider d'une personne ayant dj men ce type d'opration.

Feuille de suivi
Avant de commencer:
Vrifiez que vous avez bien:
- 1 poste sous Windows 95,
- 1 poste sous Linux,
- le protocole TCP/IP d'install,
- l'accs des distribution de Linux et Windows pour les configurations des postes,
Vrifier l'aide de la commande "ping" que les 2 stations communiquent correctement.

Prparation de l'atelier:
Date / heure du dbut de l'atelier
Noms des Etudiants qui ralisent l'atelier
Nom du rseau et adresse
Nom du domaine
Adresses IP des machines
Nom d'htes des machines
Alias du serveur

Installation et la configuration de DNS sur un serveur Linux:


Notez les fichiers (.rpm) que vous installez
Notez la procdure et les commandes utilises
Vrifiez la prsence des fichiers named.boot, named.host,
named.rev.
Notez la commande utilise pour les retrouver, les dossiers
de stockage, le contenu de ces fichiers.
Faites en des copies de sauvegarde.
Relevez la totalit du fichier /etc/named.boot que vous crez
Relevez la totalit du fichier /var/named/named.host que
vous crez
Vrifier que vous n'avez rien dans le fichier host, puis activer
le Daemon named
Si votre serveur s'appelle "saturne", tapez la commande
"ping saturne".
Que constatez vous, que pouvez vous en dduire?

Installation et configuration d'un client windows


Configurer le client afin qu'il utilise le serveur de nom.
Vrifier qu'il n'y a pas de fichier host.
Relancer la machine.

Procdure de test:
Pour chaque enregistrement de type A, utiliser la commande
ping pour joindre l'hte de destination.
Arrter le service de rsolution de nom sur le serveur. Notez
la commande puis refaites l'exprience.
Que constatez vous ?

Modifier la configuration du serveur afin que pour une


adresse IP il y ait 2 enregistrements de type A, exemple:
Saturne IN
A
192.68.1.3
Pluton IN
A
192.68.1.3
Relancer le service et testez les 2 noms partir du client.
Que peut-on en conclure ?
Crer sur le client un fichier hosts contenant la ligne suivante
lune
192.68.1.3
Relancer le client puis tester la rsolution des noms saturne
et lune.
Que peut-on en conclure.

Restaurez l'tat du serveur Linux et du client Windows.


Notez ci-dessous la procdure (commandes et manipulations effectues)