Langue des signes française/Vocab/Classificateur

Le système d'exploitation GNU-Linux/Le serveur de noms BIND

Historique.
À la création d'Internet, chaque ordinateur du réseau contenait un fichier /etc/hosts qui listait le nom de toutes les machines du réseau et leurs adresses IP. À chaque fois que l'on rajoutait une machine sur Internet, il fallait mettre à jour ce fichier.
Le nombre de machines connecté à Internet s'étant rapidement accru, cette solution de fichier /etc/hosts communs est devenu ingérable, et il a fallu inventer un procédé capable de palier ce problème.
La solution qui s'est imposée fut la création d'une base de données distribuée, et ainsi est né le principe de serveur DNS.
Un serveur DNS permet de faire la correspondance entre un nom canonique (ex : www.google.fr) et son adresse IP.
Le premier serveur DNS fut créé par l'université de Berkeley et s'appelle (Berkeley Internet Name Domain). BIND est le serveur DNS le plus utilisé et le plus populaire, environ 79 % d'Internet fonctionne avec ce logiciel.
Configuration du client DNS.
Sur un serveur Unix, la liste des serveurs DNS est définie dans le fichier /etc/resolv.conf.
 $ cat /etc/resolv.conf
 search mondomaine.fr
 nameserver 192.168.30.1
Principe de fonctionnement du DNS.
Schéma : l'arbre à l'envers
 .("point")
 _______________|_______________...________
 com net org fr ru edu ... arpa 
 google wikibooks in-addr
 ug-in-f104 fr ru uk ... 0 1 255 
 ___|___ ... 
 0 1 255
 ___|___ ... 
 0 1 255 
 ___|___ ... 
 0 1 255 
Au sommet de l'arbre on trouve des serveurs root qui aiguille vers les "top level domain" (com, net, org, fr, etc.)
Il existe une branche spéciale ARPA avec un sous domaine in-addr qui sert à gérer le reverse DNS.
La commande host.
La commande host permet d'obtenir l'adresse IP d'un ordinateur : 
 $ host www.google.com
 www.google.com is an alias for www.l.google.com.
 www.l.google.com has address 209.85.135.147
 www.l.google.com has address 209.85.135.99
 www.l.google.com has address 209.85.135.103
 www.l.google.com has address 209.85.135.104
La commande host permet également de consulter le DNS inverse, c'est à dire quel nom canonique est associé à une adresse IP donnée :
 $ host 66.249.93.104
 104.93.249.66.in-addr.arpa domain name pointer ug-in-f104.google.com.
La commande dig.
La commande dig permet d'interroger un serveur DNS.
Voici quelques exemples : 
En interrogeant le sommet de l'arbre ., on obtient la liste des serveurs racines du DNS, appelés les root-servers :
 $ dig . NS
 ;; ANSWER SECTION:
 . 419748 IN NS a.root-servers.net.
 . 419748 IN NS b.root-servers.net.
 . 419748 IN NS c.root-servers.net.
 . 419748 IN NS d.root-servers.net.
En interrogeant la branche com, on obtient la liste des serveurs DNS gérant les noms de domaines en .com :
 $ dig com. NS
 ;; ANSWER SECTION:
 com. 172800 IN NS i.gtld-servers.net.
 com. 172800 IN NS j.gtld-servers.net.
 com. 172800 IN NS k.gtld-servers.net.
 com. 172800 IN NS l.gtld-servers.net.
Si on interroge la branche fr, on obtient la liste des serveurs DNS gérant les noms de domaines en .fr. On constate que les extensions nationales sont gérés par des organismes nationaux (dans le cas de la France, le NIC France) :
 $ dig fr. NS
 ;; ANSWER SECTION:
 fr. 172800 IN NS f.ext.nic.fr.
 fr. 172800 IN NS a.ext.nic.fr.
 fr. 172800 IN NS a.nic.fr.
 fr. 172800 IN NS b.ext.nic.fr.
En indiquant un nom de domaine, dig permet de connaitre différentes informations, comme par exemple :
La liste des serveurs DNS gérant le nom de domaine :
 $ dig google.fr NS
 ;; ANSWER SECTION:
 google.fr. 175462 IN NS ns3.google.com.
 google.fr. 175462 IN NS ns4.google.com.
 google.fr. 175462 IN NS ns1.google.com.
 google.fr. 175462 IN NS ns2.google.com.
La liste des serveurs de mails :
 $ dig google.fr MX
 ;; ANSWER SECTION:
 google.fr. 10800 IN MX 10 smtp4.google.com.
 google.fr. 10800 IN MX 10 smtp1.google.com.
 google.fr. 10800 IN MX 10 smtp2.google.com.
 google.fr. 10800 IN MX 10 smtp3.google.com.
Les Ressources Records (RR).
Les informations stockées dans un serveur DNS sont classifiées à l'aide des Ressources Records (RR).
Il existe de nombreux Ressources Records, voici les plus courants :
Installation de BIND.
Pour installer le serveur BIND sous Debian, on utilise la commande suivante :
 # apt-get install bind
À partir de Debian Lenny, le package contenant le serveur BIND s'appelle bind9
Configuration de BIND.
Les fichiers de configuration de BIND sont situés dans le répertoire /etc/bind.
Le fichier principal de configuration de BIND est /etc/bind/named.conf. Debian a choisit de découper ce fichier en 3 fichiers afin de faciliter les mises à jour.
À noter que dans ces fichiers, les lignes en commentaire commencent par // et non le # habituel des .conf, que l'on retrouve dans la syntaxe Apache.
/etc/bind/named.conf.
 # cat /etc/bind/named.conf
 // Documentation : /usr/share/doc/bind/README.Debian
 // Inclusion du fichier /etc/bind/named.conf.options
 include "/etc/bind/named.conf.options";
 // Configuration des logs
 logging {
 category lame-servers { null; };
 category cname { null; };

// La zone définissant les root servers
 zone "." {
 type hint;
 file "/etc/bind/db.root";

// La zone localhost
 zone "localhost" {
 type master;
 file "/etc/bind/db.local";

// La zone inverse localhost
 zone "127.in-addr.arpa" {
 type master;
 file "/etc/bind/db.127";

// La zone inverse réseau
 zone "0.in-addr.arpa" {
 type master;
 file "/etc/bind/db.0";

// La zone inverse broadcast
 zone "255.in-addr.arpa" {
 type master;
 file "/etc/bind/db.255";