NOMS : GIRARD Fabien, NARO Guillaume PARTIE 1 : INSTALLATION D'UN SERVEUR TP DNS Utilisation de BIND sous LINUX Pour récupérer les adresses IP, on lance un terminal sur chaque machine et on tape la commande ifconfig, on regarde la ligne inet adr. On trouve pour le client:192.168.108.82 et pour le serveur DNS 192.168.108.81. Préalable La commande apt-cache search mot-clé recherche l'expression régulière donnée en argument (motclé) sur tous les paquets disponibles. Elle cherche dans les noms et les descriptions de ces paquets et renvoie les noms des paquets qui correspondent à l'argument. La commande apt-cache search bind renvoie la liste des packages du serveur DNS bind. La commande apt-get install:permet l'installation de packages. Installation et Configuration du serveur On installe BIND et sa documentation en tapant dans le terminal la commande suivante : apt-get install bind bind-doc dnsutils Sur la machine serveur on lance le serveur dns en utilisant la commande suivante : /etc/init.d/bind start Sur le serveur DNS : Dans le fichier /etc/bind/name.conf.local, on tape les lignes suivantes : zone "Semestre3.rt { type master file "/etc/bind/db.semestre3.rt.zone" } Semestre3.rt est le nom de domaine pour lequel le serveur sera primaire (c'est à dire où c'est se serveur DNS qui sera utilisé), Semestre3.rt.zone désigne le fichier /etc/bind/db.semestre3.rt.zone où seront stockés les enregistrements de la zone. On crée le fichier Semestre3.rt.zone et on tape les lignes suivantes : BIND reverse data file for broadcast zone
Semestre3.rt. IN SOA machinegui root.machinegui.semestre3.rt ( 1 Serial 604800 Refresh 86400 Retry 2419200 Expire 604800 ) Negative Cache TTL Semestre3.rt. IN NS machinegui machinegui IN A 192.168.108.1. machinefab IN A 192.168.108.2. $TTL indique le temps que la ressource peut rester en cache pour tout le fichier. La première ligne signifie que la zone Semestre3.rt a pour serveur DNS primaire 192.168.108.1 et que son administrateur a pour e-mail root@machine_gui.semestre3.rt. Serial est le numéro de série du paquet utile lors des mises à jours. Refresh, retry, expire correspondent au temps de chacune de ces actions. La ligne Semestre3.rt IN NS machine_gui signifie que le nom du serveur DNS faisant autorité dans la zone Semestre3.rt est machine_gui. L'avant dernière ligne signifie que l'adresse IP de machine_gui.semestre3.rt est 192.168.108.1. La dernière ligne signifie que l'adresse IP de machine_fab.semestre3.rt est 192.168.108.2. Ces deux dernières lignes servent à la résolution directe. Pour la résolution inverse, dans le fichier named.conf.local, on rajoute : zone "108.168.192.in-addr.arpa" { type master file "/etc/bind/db.semestre3.rt.rev" } Dans le fichier db.semestre3.rt.rev, on tape : BIND reverse data file for broadcast zone $ORIGIN 108.168.192.in-addr.arpa. @ IN SOA machinegui root.machinegui.semestre3.rt ( 1 Serial 604800 Refresh 86400 Retry 2419200 Expire 604800 ) Negative Cache TTL IN NS machinegui.semestre3.rt.
1 IN A machinegui 2 IN A machinefab Une fois les modifications faites, on tape /etc/init.d/bind restart Le serveur se relance donc et enregistre les modifications. Pour voir si le fichier named.conf.local ne comprend pas d'erreur, on tape la commande tail /var/log/syslog et on repère les lignes des fichiers dans lesquelles il y a des erreurs. Pour faire l'essai de la résolution directe, on tape sur le serveur la commande : dig @localhost machinegui.semestre3.rt A Pour tester la résolution inverse on tape : dig @localhost -x 192.168.108.2 En résultat nous obtenons: avec la première commande nous avons la correspondance IP du nom alors qu'avec la deuxième commande nous avons la correspondance du nom par rapport à l'ip. Cela atteste que la résolution directe et la résolution inverse fonctionne. Pour rajouter des ressources de types CNAME, on rajoute dans le fichier semestre3.rt.zone la ligne : iutweb 86400 IN CNAME machinegui.semestre3.rt. Pour rajouter des ressources de types MX, on rajoute dans le fichier db.semestre3.rt.rev la ligne: iutmail IN MX 0 machinemail.semestre3.rt. CONFIGURATION D'UN CLIENT SOUS LINUX Par défaut le fichier /etc/resolv.conf contient les lignes suivantes: search gtr.iut.u-clermont1.fr nameserver 192.168.108.10 (Pour la suite, ces lignes sont passées en commentaires) Ce fichier doit contenir l'adresse du serveur de noms que l'on possède et de notre domaine. On peur spécifier plusieurs serveur de noms grâce à la commande nameserver, on peut également positionner notre nom de machine à l'aide la commande hostname. Pour que la commande de ping réussisse il faut indiquer le serveur DNS que l'on veut utiliser, ici on met la ligne : nameserver 192.168.108.81 On teste le ping : ping machinegui.semestre3.rt, la commande marche le fichier /etc/resolv.conf est donc bien configurer En rajoutant une ressource de type CNAME comme nous l'avons vu au dessus, lorsque l'on tape la commande ping iutweb.semestre3.rt, il y a une réponse de la machine, l'alias fonctionne.
Lorsque l'on lance une capture avec ethereal pendant que les ping sont effectués, il y a au niveau des trames : une demande dns du client vis à vis du serveur pour lui demander l'adresse de iutweb.semestre3.rt, le DNS répond que c'est un alias de machinegui et il donne l'adresse IP de machinegui ensuite le client contact par un ping l'@ IP de machinegui. PARTIE 2 MISE EN PLACE D'UN SERVEUR SECONDAIRE Sur le serveur secondaire dans le fichier named.conf.local, on tape : zone semestre3.rt { type slave //on indique que c'est un serveur secondaire masters {192.168.108.81}//on indique que le serveur primaire est 192.168.108.81 } Si on modifie les fichiers de configurations sur le DNS principal, il faut incrémenter le numéro de série, ainsi lors d'une requête DNS en utilisant le serveur secondaire celui ci vérifie si le numéro de série est le même que celui présent dans les fichiers du DNS principal, si ce n'est pas le cas, il met ces fichiers à jours. PARTIE 3 MISE EN PLACE D'UNE DELEGATION DE ZONE Côté zone parente : - on rajoute dans le fichier semestre3.rt.zone uniquement la ligne : sous.semestre3.rt IN NS machinefab ceci a pour but de dire que pour la résolution directe, le serveur machinefab s'occupe de la sous zone sous.semestre3.rt on rajoute dans le fichier db.semestre3.rt.rev la ligne: sous IN NS sous.semestre3.rt. Côté zone déléguée, on tape : Dans le fichier db.sous.semestre3.rt.zone, on tape : sous.semestre3.rt. IN SOA machinefab root.machinefab( 1 Serial 604800 Refresh 86400 Retry 2419200 Expire 604800 ) Negative Cache TTL machinetest IN A 192.168.108.3 //machine test et test2 font parties de la sous zone. machinetest2 IN A 192.168.108.4 sous.semestre3.rt. IN NS machinefab//serveur dns de la sous-zone. Dans le fichier db.semestre3.rt.rev, on tape : BIND reverse data file for broadcast zone $ORIGIN 108.168.192.in-addr.arpa. @ IN SOA machinefab root.machinefab ( 1 Serial 604800 Refresh
86400 Retry 2419200 Expire 604800 ) Negative Cache TTL IN NS machinefab.sous.semestre3.rt. 3 IN PTR machinetest.sous.semestre3.rt. 4 IN PTR machinetest2.sous.semestre3.rt.