Configurer sa Freebox pour utiliser un serveur DNS local, en ipv4 et ipv6.
- Configurer l'adresse ipv4 de votre serveur DNS local (type Bind) dans la section DHCP de votre Freebox.
- Configurer l'adresse ipv6 de votre serveur DNS local (type Bind) dans la section Configuration ipv6, DNS ipv6 de votre Freebox.
- Alors vos machines qui obtiennent leur configuration par DHCP auront bien deux adresses de votre serveur DNS, l'une en ipv4 et l'autre en ipv6.
INSTALLATION DE BIND 9
- "apt-get install bind9"
- + dnsutils : commandes nslookup, host et dig
- + bind9-host : commande host
- + dns-browse : GUI de dig, avec dns_tree
- + dnscvsutil : gestion des zones via CVS
- + nslint : audit de la configuration du serveur DNS (commande "$ nslint")
PRINCIPE DE LA RESOLUTION DE NOM
- Unix utilise en premier le fichier /etc/hosts pour résoudre un nom.
- Unix utilise ensuite le fichier /etc/resolv.conf pour trouver un serveur DNS.
- Le fichier resolv.conf indique les serveurs DNS auxquels il doit se référer.
- Si resolv.conf contient 127.0.0.1, la résolution passe par le BIND du serveur.
ARCHITECTURE D'UN SERVEUR BIND
- Il existe deux types d'architecture : indépendant ou primaire/secondaire.
- DNS indépendant : un seul serveur et/ou serveur DNS CACHE.
- DNS CACHE : le serveur enregistre des correspondances IP/adresse ce qui lui permet de ne pas les redemander à chaque interrogation des clients.
- DNS primaire/secondaire : le primaire a l'autorité sur les zones (domaines) déclarées. Le secondaire récupère les informations auprès du primaire.
NAMED.CONF : ZONE PRIMAIRE
zone "httpedit.org" {
type master;
file "/etc/bind/httpedit.org_db";
allow-query { any; };
};
NAMED.CONF : ZONE INVERSE
zone "1.0.10.in-addr.arpa" IN {
type master;
file "labo-linux.com.rr.zone";
allow-update { none; };
};
NAMED.CONF : ZONE SECONDAIRE
zone "domaine-ami.org" {
type slave;
file "domaine-ami.org.zone";
# ATTENTION
# chemin sur le serveur primaire,
# directement le nom du fichier si il y a un CACHE
masters { 12.42.112.242; }; # @ip du serveur primaire
};
MISE A JOUR DU SECONDAIRE PAR LE PRIMAIRE
La mise à jour du DNS ``escalve'' est automatique à partir du DNS ``maître''. Ainsi, insérer une nouvelle machine dans le DNS prend peu de temps (il n'y a que quelque lignes à rajouter dans deux fichiers), et tous les serveurs secondaires seront mis à jour automatiquement ! Les options figurant au début du fichier de zone (serial, refresh...) servent pour le DNS secondaire. Détaillons ces options :
- serial
- C'est le numéro (un nombre entier) de version du fichier d'information de zones. Ce numéro est utilisé par les DNS secondaires pour savoir si le fichier d'informations de zone du DNS primaire a été changé. Il doit être augmenté de 1 à chaque modification du fichier.
- refresh
- Intervalle de temps en secondes durant lequel le DNS secondaire attend avant de vérifier (et éventuellement mettre à jour) l'enregistrement SOA du DNS primaire. Ces enregistrements ne changent pas souvent en général, une journée (86400 secondes) peut largement suffir.
- retry
- Intervalle de temps en secondes durant lequel le DNS secondaire attend avant de réessayer une requette vers le DNS primaire si celui ci n'est pas accessible. Cette valeur devrait être de quelque minutes.
- expire
- Intervalle de temps en secondes durant lequel le DNS secondaire attend avant de rejeter les informations de zones si il n'a pu contacter le DNS primaire. Cette valeur devrait être de plusieurs jours (voir plusieurs mois).
LES CLASSES DE PROTOCOLES DES ENREGISTREMENTS
- Une valeur encodée sur 16 bits identifie une famille de protocoles ou une instance d'un protocole.
- IN : classe "INTERNET", utilisée par défaut
- CH : classe "CHAOS", chaosnet est un ancien réseau qui historiquement a eu une grosse influence sur le développement de l'Internet, on peut considérer à l'heure actuelle qu'il n'est plus utilisé
- HS : classe "HESIOD", service d'information du projet Athena du MIT
- CS : classe "CSnet", obsolète
FICHIER DE ZONE mondomaine.org_db
@ IN SOA dns.labo-linux.com. hostmaster.labo-linux.com. (
02050500 ; numéro de série
3H ; rafraichir après 3 heures
1800 ; retenter après 30 minutes
604800 ; expire après 1 semain
3D ) ; TTL minimum de 3 jours
IN NS dns.labo-linux.com.
IN MX 10 mail.labo-linux.com.
dns IN A 192.168.1.1
www IN CNAME dns.labo-linux.com.
ftp IN A 192.168.1.2
mail IN A 192.168.1.3
pop IN CNAME mail.labo-linux.com.
smtp IN CNAME mail.labo-linux.com.
imap IN CNAME mail.labo-linux.com.
imprimante IN A 192.168.1.4
tftp IN A 192.168.1.5
routeuradsl IN A 192.168.1.254
FICHIER DE ZONE INVERSE mondomaine.org_db
$ORIGIN 1.168.192.in-addr.arpa
$TTL 86400
@ IN SOA dns.labo-linux.com. hostmaster.labo-linux.com. (
02050500 ; numéro de série
3H ; rafraichir après 3 heures
1800 ; retenter après 30 minutes
604800 ; expire après 1 semain
3D ) ; TTL minimum de 3 jours
IN NS dns.labo-linux.com.
IN MX 10 mail.labo-linux.com.
20 IN PTR ws1.labo-linux.com.
21 IN PTR ws2.labo-linux.com.
22 IN PTR ws3.labo-linux.com.
23 IN PTR laptop1.labo-linux.com.
24 IN PTR database.labo-linux.com.
25 IN PTR gateway.labo-linux.com.
REGLES DE CONFIGURATION DE BIND
- Les déclarations de zones inverses doivent être faites.
- Le numéro de série (date+chiffre) doit être changée à chaque modification d'une fichier de zone.
- Aucune @ip ne doit être répétée dans les enregistrements : mettre des noms complets ou courts avec CNAME.
- L'enregistrement "vide" (domaine.org) peut être de type A. Alors les autres sont des CNAME pointant vers "domaine.org.", c-a-d l'enregistrement "vide".
- Vérifier la configuration avec "nslint".
|