Pédants Principes PPP
Précédent |  | Suivant

# Chapitre 6. Exercices pour l'étudiant intéressé

# 6.1. Gérer un mini-DNS

Bien que gérer une hiérarchie du service de noms de domaines (``Domain Name Service'' - DNS) puisse être une tâche diabolique, il est tout à fait faisable d'installer un mini-serveur DNS sur le sytème FreeBSD qui vous sert aussi de passerelle vers votre fournisseur d'accès.

A partir des fichiers existants dans `/etc/namedb` après installation de FreeBSD, il est possible de définir un serveur DNS qui ait autorité sur le réseau de notre exemple et serve d'interface avec l'architecture DNS de l'Internet.

Pour cette configuration minimale, il suffit de trois fichiers:

- `/etc/namedb/named.boot`

- `/etc/namedb/named.root`

- `/etc/namedb/mydomain.db`

Le fichier `/etc/namedb/named.root` est automatiquement initialisé à l'installation de FreeBSD, les deux autres fichiers doivent être renseignés manuellement.

## 6.1.1. Le fichier `/etc/namedb/named.boot`

Le fichier `/etc/namedb/named.boot` décrit la configuration initiale du serveur DNS. Essentiellement, il indique au serveur de noms:

1. Où sont les fichiers de configuration,

2. De quels ``noms de domaines'' il a la responsabilité,

3. Où trouver les autres serveurs DNS.

Avec l'éditeur `ee`, créez un fichier `/etc/namedb/named.boot` comme suit:

    ; fichier de démarrage pour un mini-serveur de noms de domaines

    directory       /etc/namedb

    ; type    domain             source machine/fichier   fichier de sauvegarde

    cache     .                  named.root
    primary   my.domain.         mydomain.db

Les lignes qui commencent par un point-virgule sont des commentaires. Voici la signification des autres lignes:

-     directory /etc/namedb

  Dit au serveur de noms où trouver les fichiers de configuration référencés dans la suite du fichier `/etc/namedb/named.boot`.

-     cache . named.root

  Dit au serveur de noms que la liste des serveurs de la racine (``Root Servers'') se trouve dans le fichier `named.root`. (Ce fichier est inclus dans l'installation standard et n'est pas décrit ici.)

-     primary my.domain mydomain.db

  Dit au serveur de noms qu'il a ``autorité'' sur un domaine DNS appelé ``my.domain'' et que la liste des adresses IP des machines du domaine ``my.domain'' (le réseau local) se trouve dans le fichier `/etc/namedb/mydomain.db`.

Une fois créé et sauvegardé le fichier `/etc/namedb/named.boot`, passez à l'étape suivante pour créer le fichier `/etc/namedb/named.db`.

## 6.1.2. Le fichier `/etc/namedb/named.db`

Le fichier `/etc/namedb/named.boot` liste les noms et les adresses IP de toutes les machines du réseau local.

Pour une description détaillée des instructions de ce fichier, reportez-vous aux pages de manuel de `named`.

Le fichier `/etc/namedb/named.boot` de notre serveur DNS minimum contient les lignes suivantes:

    @       IN SOA  my.domain. root.my.domain.  (
                       961230  ; Serial
                       3600    ; Refresh
                       300     ; Retry
                       3600000 ; Expire
                       3600 )  ; Minimum
           IN NS   curly.my.domain.

    curly.my.domain.        IN A    192.168.1.1     # The FreeBSD box
    larry.my.domain.        IN A    192.168.1.2     # The Win'95 box
    moe.my.domain.          IN A    192.168.1.3     # The WfW box
    shemp.my.domain.        IN A    192.168.1.4     # The Windows NT box

    $ORIGIN 1.168.192.IN-ADDR.ARPA
                IN NS   curly.my.domain.
    1               IN PTR  curly.my.domain.
    2               IN PTR  larry.my.domain.
    3               IN PTR  moe.my.domain.
    4               IN PTR  shemp.my.domain.

    $ORIGIN 0.0.127.IN-ADDR.ARPA
                IN NS   curly.my.domain.
    1               IN PTR  localhost.my.domain.

Brièvement, ce fichier déclare que le serveur DNS local est:

- Le ``Début d'Autorité'' (Start Of Authority) pour le domaine appelé ``my.domain'',

- Le serveur de noms (Name Server - ``NS'') pour ``my.domain'',

- Responsable de la résolution inverse des adresses IP qui commencent par ``192.168.1'' et ``127.0.0'' (``$ORIGIN ...'').

Pour ajouter de nouvelles machines, vous devez ajouter deux lignes pour chaque système; une dans la section du haut où les noms des systèmes sont associés aux adresses Internet (``IN A''), et une autre ligne qui associe inversement l'adresse au nom de la machine (``IN PTR''), dans la section ``$ORIGIN 1.168.192.IN-ADDR.ARPA''.

## 6.1.3. Démarrer le serveur DNS

Par défaut, le serveur DNS (`/etc/sbin/named`) n'est pas lancé au démarrage du système. Vous pouvez modifier ce comportement en rectifiant une seule ligne dans le fichier `/etc/rc.conf`, comme suit:

Avec l'éditeur `ee`, visualisez le fichier `/etc/rc.conf`. Descendez d'une quarantaine de lignes jusqu'à ce que vous trouviez la section qui dit:

    ---
    named_enable="NO"                       # Run named, the DNS server (or NO).
    named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
    ---

et modifiez-la en:

    ---
    named_enable="YES"                      # Run named, the DNS server (or NO).
    named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
    ---

Sauvegardez le fichier et redémarrez le système.

Vous pouvez aussi démarrer le serveur DNS avec la commande suivante:

``#` named -b /etc/namedb/named.boot`

Chaque fois que vous modifiez les fichiers du répertoire `/etc/namedb/named.boot`, vous devez faire relire ces modifications par le serveur DNS avec la commande suivante:

``#` kill -HUP `cat /var/run/named.pid``

Précédent | Sommaire | Suivant
Tester le réseau local |  | Essayer les filtres PPP

Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.

Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.