sommaire
DNS & Bind
Simple

liens utiles:
http://www.isc.org/products/BIND/

Installation:

apt-get install bind9

Configuration:

Les fichiers importants:

/etc/named.conf : fichier de configuration principal qui précise où se trouve les fichiers de zones directes et inverses.
/etc/resolv.conf: renseigne la configuration dns de la machine.
/var/named/ : ici sont placés les fichiers de zones.

Avant de commencer la configuration il est bon d'avoir la dernière version du fichier des serveurs racines.
Pour cela il faut aller sur ftp://ftp.rs.internic.net et récupérer le fichier db.cache que vous devez mettre dans /var/named

Rappel:
    zone directe: nom -> IP
    zone inverse: IP -> nom

/etc/resolv.conf:

C'est ici que l'on precise:
    son domaine :fredaria.org
    son nameserver: 192.168.0.252
    

Cela donne: 

search fredaria.org
nameserver 192.168.0.252


/var/named/ :

Les fichiers de zones basiques à vérifier
db.cache                                  :fichier contenant les serveurs DNS racines
db.127.0.0



** Zone inverse: db.192.168.0

* Le serial number permet de faire savoir aux eventuels serveurs DNS esclave que le fichier a été changé.
   Il faut donc le modifier à chaque modification des  fichiers de zones.

* Il faut indiquer via une entrée NS l'ip et le nom de votre serveur DNS

* Reste à remplir les noms canoniques des machines via les entrées PTR (ip PTR nom_machine.domaine.) .
Attention le point final est important.
   On peut éventuellement ajouter un champ TXT pour avoir plus d'informations sur la machine


** Zone directe: db.fredaria.org

* Le champ  A associe le nom à l'ip de la machine (
nom_machine.domaine. A ip). Attention le point final est important.
* Le(s) champs MX reprensente(nt) le(s) serveur(s) de messagerie.
    Le MX est pondéré par un chiffre 10, 20 ... : plus il est petit plus il est prioritaire
* Le champ CNAME permet de créer des alias



/etc/named.conf:


directory "/var/named";

permet de definir où se trouve les fichiers de zones


Voila la mise en place d'un serveur maître sur la zone fredaria.org
zone "fredaria.org." in {
                type master;
                file "db.fredaria.org";
};


zone "0.168.192.in-addr.arpa" in {
                type master;
                file "db.192.168.0"



Tests et démarrage:

Avant de lancer le service il faut vérifier les fichers de zones et de confiiguration via:

Zones: named-checkzone fredaria.org. /var/named/db.fredaria.org.

Configuration: /etc/named.conf : named-checkconf -z /etc/named.conf
le -z permet de tester le chargement des zones maître


On commence par ouvrir un console et y taper :

tail -f /var/log/daemon.log (en root) pour pouvoir y suivre le demarrage de named et y voir les eventuels problèmes

on lance le service via:
invoke named start

 betelgeuse named[3043]: starting BIND 9.4.1
 betelgeuse named[3043]: loading configuration from '/etc/named.conf'
 betelgeuse named[3043]: listening on IPv4 interface lo, 127.0.0.1#53
 betelgeuse named[3043]: listening on IPv4 interface eth2, 192.168.0.3#53
 betelgeuse named[3043]: command channel listening on 127.0.0.1#953
 betelgeuse named[3043]: zone 0.0.127.in-addr.arpa/IN/interne: loaded serial 1
 betelgeuse named[3043]: zone 0.168.192.in-addr.arpa/IN/interne: loaded serial 1
 betelgeuse named[3043]: zone fredaria.org loaded serial 1
...

 betelgeuse named[3043]: running

Une autre vérifcation est possible via ps:
ps aux | grep -v grep | grep -i named

Une sortie du genre:
root      3043  0.0  2.4   8172  6384 ?        Ss   12:09   0:00 /usr/local/sbin/named

indique que le processus named est en fonction.

Interrogeons maintenant notre serveur DNS afin de s'assurer qu'il renvoie les bonnes informations via dig:

le @ permet de choisir quel serveur dns on interroge
le -x permet de faire une recherche via une ip

Zone directe:
dig aldebaran.fredaria.org. @betelgeuse.fredaria.org.

; <<>> DiG 9.4.1 <<>> aldebaran.fredaria.org. @betelgeuse.fredaria.org.
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62134
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;aldebaran.fredaria.org.                IN      A

;; ANSWER SECTION:
aldebaran.fredaria.org. 10800   IN      A       192.168.0.253

;; AUTHORITY SECTION:
fredaria.org.           10800   IN      NS      betelgeuse.fredaria.org.

;; ADDITIONAL SECTION:
betelgeuse.fredaria.org. 10800  IN      A       192.168.0.252



Zone inverse:
dig -x 192.168.0.4 @betelgeuse.fredaria.org.

; <<>> DiG 9.4.1 <<>> -x 192.168.0.253 @betelgeuse.fredaria.org.
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61813
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;253.0.168.192.in-addr.arpa.      IN      PTR

;; ANSWER SECTION:
253.0.168.192.in-addr.arpa. 10800 IN      PTR     aldebaran.fredaria.org.

;; AUTHORITY SECTION:
0.168.192.in-addr.arpa. 10800   IN      NS      betelgeuse.fredaria.org.

;; ADDITIONAL SECTION:
betelgeuse.fredaria.org. 10800  IN      A       192.168.0.252