Vous êtes sur la page 1sur 9

Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS

Dynamic DNS avec bind9 et isc-dhcp-server


Par Jrmy BEDDES Publi le 07/05/2016 18:33:15 Noter cet article: ( 5 votes)
Avis favorable du comit de lecture

Jrmy BEDDES

Introduction
Cet article a pour but de vous montrer comment coupler un serveur DHCP
avec les services DNS que fournit bind9 sous GNU/Linux. Ce systme se
nomme Dynamic DNS (DDNS) et permet dajouter les noms FQDN des
clients DHCP la zone DNS automatiquement. Le systme dexploitation Introduction
Prparation du Serveur DNS Matre pour DDNS
GNU/Linux Debian 8 sera utilis ici. Le serveur DHCP aura ladresse IPv4 Dploiement du Service DHCP
Validation du fonctionnement des services
192.16.0.110/24 et les serveurs DNS 192.168.0.100/24 et 192.168.0.101/24.
Conclusion
Pour la lecture de cet article, je vous conseille de lire auparavant les deux
premiers articles de cette srie :

Mise en Place dun Serveur DNS avec bind9


Mise en Place de Serveurs DNS Matre-Esclave avec bind9

Je vais tout dabord dtailler la configuration qu'il est ncessaire de mettre en place sur le serveur DNS Matre des zones

Prparation du Serveur DNS Matre pour DDNS

1 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Gnration de la cl pour scuriser les changes DNS/DHCP

Pour permettre la communication entre les serveurs DNS et DHCP, une cl devra tre utilise. La cl sera gnre sur le serveur
DNS laide de la commande suivante :

root@ns1:~# dnssec-keygen -a HMAC-MD5 -b 128 -r /dev/urandom -n USER DDNS_UPDATE

La commande prcdente est bien entendu adapter selon vos besoins. Elle va gnrer deux fichiers :

La cl qui sera utilise par chacun des deux serveurs sera situe dans le fichier dont lextension est .priv ate . Dans le cas
prsent ici, le fichier ouvrir sera le fichier nomm Kddns_update.+157+57083.private .
Vous devrez alors copier le contenu situ la ligne commenant par Key : comme montr ci-dessous :

Il va maintenant tre ncessaire de crer un nouveau fichier nomm ddns.key qui sera situ dans le rpertoire /etc/bind et qui va
contenir la cl rcupre dans le fichier prcdent.
Voici le contenu ajouter dans le fichier /etc/bind/ddns.key :

Ici, DDNS_UPDATE correspond au nom donn la cl. Cest ce nom qui sera rutilis dans les fichiers de configuration de Bind
et de DHCP pour appeler la cl. Le paramtre secret correspond la cl rcupre dans le fichier
Kddns_update.+157+57083.private prcdent. Cette valeur est donc adapter en fonction de votre configuration.
Une fois que ce fichier est sauvegard, il sera ncessaire de modifier les droits appliqus ce fichier.

root@ns1:~# chown root:bind /etc/bind/ddns.key

root@ns1:~# chmod 640 /etc/bind/ddns.key

Maintenant que la cl utilise pour lchange entre le serveur DNS et le serveur DHCP a t cre et configure, il va tre
ncessaire de modifier la configuration de Bind pour lutilisation de la cl gnre

Modication de la conguration de Bind

Pour permettre le fonctionnement de DDNS, la configuration de Bind dfinie prcdemment dans mes articles va dev oir tre
adapte. Vous pourrez trouver les liens de mes prcdents articles en introduction.
Il va dabord tre ncessaire de modifier le fichier /etc/bind/named.conf.local dans lequel les zones domain.lan et 0.168.192.in-
addr.arpa sont dj dfinies.
Voici le nouveau contenu du fichier named.conf.local :

2 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Les modifications apportes au fichier sont les suivantes :

Il est dabord ncessaire dintgrer le fichier ddns.key cr prcdemment la configuration de Bind, la cl pourra ainsi tre
rutilise partir de son nom.
Pour chaque zone, on modifie la directive allow-update afin dautoriser les mises jour de la zone partir dun client
possdant la cl passe en paramtre.
Enfin, il faut galement modifier lemplacement des fichiers de zone en utilisant le rpertoire /v ar/cache/bind qui est
accessible en criture par lutilisateur bind (ce qui nest pas le cas pour le rpertoire /etc/bind).

Une fois que le fichier named.conf.local a t modifi, il va tre ncessaire de crer un lien symbolique des fichiers de zone vers le
rpertoire /var/cache/bind

root@ns1:~# cd /var/cache/bind

root@ns1:/var/cache/bind# ln -s /etc/bind/db.domain.lan .

root@ns1:/var/cache/bind# ln -s /etc/bind/db.0.168.192.in-addr.arpa .

Une fois que les liens symboliques ont t crs, le serveur DNS sera configur pour DDNS. Il reste encore installer le service
DHCP et le configurer

Dploiement du Service DHCP


Maintenant que le serveur DNS ns1.domain.lan est configur pour DDNS, il va tout d'abord tre ncessaire dinstaller le service
DHCP l'aide de la commande suivante :

root@dhcp:~# aptitude install isc-dhcp-server

Comme prcis dans la partie prcdente de cet article, le serveur DHCP va tre autoris modifier les zones gres par le serveur
DNS ns1.domain.lan laide dune cl permettant la scurisation des changes entre les deux serveurs. Le serveur DHCP va donc
devoir possder une copie du fichier ddns.key cr prcdemment dans le rpertoire /etc/bind/ du serveur DNS.
Le fichier ddns.key devra tre copi dans le rpertoire /etc/dhcp comme montr ci-dessous. Je vous conseille au pralable d'ajouter
le serveur DHCP dans les zones de rsolution directe et inverse gres par le serveur DNS Matre.

Comme sur le serveur DNS, il sera galement ncessaire de modifier les droits de ce fichier

root@dhcp:~# chown root:root /etc/dhcp/ddns.key

root@dhcp:~# chmod 640 /etc/dhcp/ddns.key

3 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Les directives utilises dans ce fichier sont les suivantes :

authoritative permet de prciser au serveur DHCP qu'il est le serveur DHCP prioritaire sur le rseau local.
ddns-updates permet ici dautoriser les mises jour des zones DNS associes en fonction des adresses IPv4 distribues.
ddns-update-style permet de dfinir quel type de mise jour sera utilis pour DDNS. Ici, le paramtre interim prcise qu'il
sagit dune mise jour vers un serveur DNS local.
ignore client-updates permet dempcher les clients de senregistrer eux-mmes auprs du serveur DNS.
update-static-leases permet de prciser si le serveur DHCP est autoris ou non modifier des enregistrements DNS statiques
dfinis dans les fichiers de zone.
log-facility permet de prciser que le niveau de log utilis dans le fichier /var/log/syslog. Ici, il sera au niveau debug (valeur 7).

Dans le fichier dhcpd.conf, on voit galement que le fichier /etc/dhcp/ddns.key est intgr la configuration du service DHCP
laide de la directive include.
La cl prcise dans ce fichier est ensuite utilise lors de la dclaration des zones DNS utilises pour DDNS (paramtre key). Le
paramtre primary permet de prciser ladresse IPv4 (ou le nom FQDN) du serveur DNS contacter pour insrer, modifier ou
supprimer un enregistrement de cette zone.
Ltendue DHCP est alors dclare. Ici ltendue DHCP va de 192.168.0.200/24 192.168.0.210/24 Les options ddns-domainname et
ddns-rev-domainname permettent de prciser les zones DNS directe et inverse utilises pour dclarer les noms FQDN des clients.
Lorsque la configuration du fichier dhcpd.conf a t enregistr, il ne reste plus qu' redmarrer les services isc-dhcp-server (sur le
serveur DHCP) et bind9 (sur le serveur DNS) afin dappliquer les modifications

root@ns1:~# service bind9 restart

root@dhcp:~# service isc-dhcp-server restart

Validation du fonctionnement des services


Les services DNS et DHCP tant dsormais configurs, il ne reste plus qu' tester le fonctionnement des services DHCP et DDNS.
Pour cela, il va tre ncessaire douvrir le fichier de logs /var/log/syslog laide de la commande tail sur le serveur DH CP. Cela
permettra de voir les actions effectues par le DHCP :

4 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Sur le rseau local, un client Windows 10 sans carte rseau active sera dmarr pour effectuer les tests

Lors de lactivation de lune des cartes rseau du client, le serveur DHCP devrait automatiquement distribuer un lot de paramtres
rseau au client

5 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Dans les logs, on pourra constater les changes entre le serveur DHCP et le client avec les requtes DHCP DISC OVER, OFFER,
REQUEST et ACK. On pourra galement constater lenregistrement du client au sein des zones DNS avec les lignes Added new
forward map et Added reverse map :

Sur le client, on pourra galement constater la rception des paramtres rseaux :

6 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Enfin, il ne reste plus qu' vrifier la rsolution DNS du client. Pour cela, on utilise la commande dig comme montr ci-dessous :

La rsolution DNS directe du client semble donc fonctionner, mais il est galement ncessaire de valider la rsolution inverse. Pour
cela, il faut utiliser la commande dig en prcisant loption -x comme montr ci-dessous :

7 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

Il pourra galement tre intressant de vrifier la rsolution depuis le serveur DNS Esclave en dirigeant la requte vers le serveur
ns2.domain.lan.
Les enregistrements DNS ajouts dynamiquement devraient tre automatiquement rpliqus sur le serveur DNS Esclave comme sil
sagissait denregistrements ajouts manuellement au sein dune zone. Il est nanmoins possible que ces enregistrements ne soient
pas immdiatement renseigns sur ns2.domain.lan en fonction du dlai de rafrachissement choisi.
Pour diriger la requte DNS vers le serveur ns2.domain.lan, il faudra utiliser la commande suivante :

Conclusion
Grce cette suite de trois articles, vous avez pu constater qu'il tait assez simple de mettre en place une architecture Matre-
Esclave couple DDNS grce un serveur DHCP. Cependant, noubliez pas que DHCP est un protocole qui est aussi faillible. Je ne
peux que vous conseiller de scuriser vos commutateurs pour viter certains risques comme le DHCP Snooping

A propos de SUPINFO | Contacts & adresses | Enseigner SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie prive | Investir

SUPINFO International University


Ecole d'Informatique - IT School
cole Suprieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numrique et du management

8 sur 9 01/12/2017 15:24


Dynamic DNS avec bind9 et isc-dhcp-server | S... https://www.supinfo.com/articles/single/1715-d...

ACCUEIL CURSUS COURS ADMISSIONS CAMPUS DOCUMENTATION ANCIENS ENTREPRISES LIBRAIRIES PUBLICATIONS Naviguer sur la page

9 sur 9 01/12/2017 15:24