Installation DNS : BIND9 Debian 7

Dans cet article nous allons voir comment installer le serveur DNS BIND9 sur un serveur Debian 7.

Wikipédia : BIND (Berkeley Internet Name Daemon2, parfois Berkeley Internet Name Domain3) est le serveur DNS le plus utilisé sur Internet, spécialement sur les systèmes de type UNIX et est devenu de facto un standard. La première version de BIND a été conçue par quatre étudiants diplômés de l’Université de Californie (Berkeley) sur la base du système d’exploitation BSD 4.3. En 1988 c’est Paul Vixie qui reprenait la maintenance du projet. Le logiciel est actuellement développé par l’Internet Systems Consortium.

 Contexte

Le serveur DNS est installé sur une VM Debian 7

Nom de domaine : powtos.local
Nom du serveur : dns.powtos.local
Adresse IP: 192.168.10.11

Installation

Nous installons les paquets nécessaires au bon fonctionnement de Bind, ainsi que différents outils qui nous permettrons de vérifier notre configuration :

apt-get install bind9 bind9utils bind9-doc dnsutils

Préparation configuration DNS

Il faut configurer la carte réseau en IP statique :

nano /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.10.11
netmask 255.255.255.0
network 192.168.10.0
broadcast 192.168.10.255
gateway 192.168.10.254

On édite le fichier hosts ( le nom doit être au format FQDN)

nano /etc/hosts

192.168.10.11 dns.powtos.local

On édite le fichier hostname :

nano /etc/hostname

dns

On édite le fichier resolv.conf

nano /etc/resolv.conf

search powtos.local
nameserver dns.powtos.local

 Configuration DNS

A présent nous pouvons configurer notre serveur DNS. Il y a trois fichiers de configurations sur lesquels nous interviendrons : « named.conf.local », la zone direct et indirect.

On configure notre zone direct :

nano /etc/bind/for.powtos.local

; BIND data file for forward.powtos.local zone
;
$TTL 604800
@ IN SOA dns.powtos.local. root.powtos.local. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS dns.powtos.local.
@ IN A 192.168.10.11
dns IN A 192.168.10.11

On configure notre zone indirect :

nano /etc/bind/rev.powtos.local

; BIND reverse data file for rev.powtos.local
;
$TTL    604800
@       IN      SOA     dns.powtos.local. root.powtos.local. (
3         ; Serial
604800         ; Refresh
86400         ; Retry
2419200         ; Expire
604800 )       ; Negative Cache TTL
;
@       IN      NS      dns.
@       IN      A       192.168.10.11
11     IN      PTR     dns.powtos.local
; le chiffre 11 correspond à l'ip du serveur

On configure à présent le fichier de configuration named.conf.local pour pointer sur nos deux fichiers contenant nos zones :

nano /etc/bind/named.conf.local

zone    "powtos.local"   {
type master;
file    "/etc/bind/for.powtos.local";
};

zone   "10.168.192.in-addr.arpa"        {
type master;
file    "/etc/bind/rev.powtos.local";
};

Redémarrer le service :

/etc/init.d/bind9 restart

Vérification

Il existe différente commande pour tester ses zones :

Zone direct :

named-checkzone powtos.local /etc/bind/for.powtos.local

DNS1

Zone indirect :

named-checkzone powtos.local /etc/bind/rev.powtos.local

DNS1

On peut utiliser la commande nslookup ou dig sur le serveur DNS pour vérifier que la résolution de nom se fait bien :

nslookup dns

dns3

nslookup 192.168.10.11

dns4

La résolution se fait correctement .

Client Windows

On configure le DNS en statique dans les paramètres de la carte réseau :

dns5

Une fois configuré, lancer une fenêtre CMD, on éxecute la commande nslookup et on ping google.fr pour vérifier le bon fonctionnement de notre serveur DNS :

dns6

Notre serveur DNS est à présent fonctionnel.

Bookmarquez le permalien.
  • Alexandre Doyer

    Bonsoir,

    Je vous remercie pour ce tuto très bien écrit.

    Juste pour être sure, je crée mon script dns à partir de ce tuto.

    nano /etc/network/interface

    ne serait-ce pas plutôt?

    nano /etc/network/interface »s » avec un s

  • powtos

    En effet c’est mieux avec un s, j’ai corrigé dans l’article.
    Merci pour ton retour.