Dans cette section, je passe en revue quelques-unes des questions les plus fréquemment posées à propos du DNS et de ce HOWTO. Et je donne même les réponses ;-) Merci de bien lire cette section avant de me mailer.
named
me réclame un fichier named.boot
Vous vous êtes trompés de HowTo. allez voir l'ancienne version de ce HowTo, celle qui parle de bind 4, à www.math.uio.no/~janl/DNS/
Voici quelques indices : `forwarders', `slaves', et jetez un coup d'oeil à la bibliographie qui se trouve à la fin de ce HOWTO. Vous aurez probablement aussi besoin de mettre
query-source port 53;
dans la partie options de votre named.conf
comme il l'est
suggéré dans l'exemple 3
serveur qui ne fait que du cache.
Créez plusieurs champs A pour www.busy.com et utilisez bind 4.9.3 ou une version plus récente, qui supporte les réponses à scrutation circulaire. Cela ne marchera pas avec des versions de bind antérieures.
Vous effacez rageusement le root.hints
et vous faites
juste les fichiers de zone. Cela veut aussi dire que vous n'aurez
pas à créer des nouveaux fichiers hints tout le temps.
Si le serveur primaire a pour adresse 127.0.0.1, mettez une ligne comme celle-ci dans le fichier named.conf du serveur secondaire :
zone "linux.bogus" { type slave; file "sz/linux.bogus"; masters { 127.0.0.1; }; };
Vous pouvez mettre plusieurs serveurs maîtres, ajoutez les sur la ligne masters en les séparant par un ';' (point-virgule)
<p>
Ici, je fais tourner named sur la machine qui fais du
'Masquerading'. J'ai deux fichiers root.cache, un qui s'appelle
root.cache.real et qui contient les vrais noms des serveurs root, et
l'autre qui s'appelle root.cache.fake qui contient ceci :
--------------
; root.hints.fake
; Ce fichier ne contient pas d'informations
--------------
Quand je me déconnecte, je copie le fichier root.hints.fake vers
root.hints et je relance named.
Quand je me connecte, je copie root.hints.real et je relance named.
Ces deux manoeuvres sont faites, respectivement, à partir de ip-down
et ip-up.
Lorsque je suis déconnecté, named rajoute ceci au fichier messages
après la première requête concernant un nom de domaine qu'il ne
connaît pas :
Jan 28 20:10:11 hazchem named[10147]: No root nameserver for class IN
Ce qui n'est pas très gênant.
Ça marche très bien dans mon cas. Je peux utiliser le serveur de noms
pour les machines locales lorsque je suis déconnecté du Net en évitant
les délais introduits par les timeout liés à la recherche des noms de
domaine extérieurs. Et lorsque je suis connecté au Net, les requêtes
concernant les noms de domaines extérieurs marchent normalement.
J'ai pris l'habitude d'utiliser named sur toutes mes machines qui sont
seulement connectées à Internet de façons occasionnelles grâce à un
modem. Le serveur de nom n'agit qu'en tant que cache, il n'a aucune
zone d'autorité et demande tout aux serveurs du fichier root.cache.
Comme d'habitude avec une Slackware, named est démarré avant nfsd et
mountd.
Avec l'une de mes machines (un portable Libretto 30), j'ai eu le
problème suivant : de temps en temps, je pouvais monter ses disques
depuis un autre système connecté sur mon LAN local, mais la plupart du
temps, ça ne marchait pas. Il se passait la même chose que ce soit en
utilisant PLIP, une carte Ethernet PCMCIA ou PPP avec une interface
série.
Après quelques temps de réflexions et d'expériences, j'ai découvert
que named empêchait nfsd et mountd de s'enregistrer avec portmapper au
démarrage (Je démarre ces daemons au boot d'habitude). Le fait de
lancer named après nfsd et mountd éliminait ce problème complètement
Comme il n'y a pas de désavantages à modifier ainsi la séquence de
boot de cette façon, j'encourage tout le monde à en faire de même pour
éviter des problèmes potentiels.
Le cache est entièrement stocké en mémoire, il n'est pas écrit sur le disque. Chaque fois que vous tuez named, le cache est perdu. Il n'y a aucun moyen de contrôler le cache. Named gère le cache selon quelques règles simples, et c'est tout. Vous ne pouvez pas contrôler le cache ou sa taille en aucune manière. Si vous voulez vraiment le faire, vous pouvez le faire en bricolant le code de named. Mais ce n'est pas recommandé.
Non, named ne sauve pas la contenu du cache lorsqu'il meurt. Cela signifie que le cache est reconstruit à partir de zéro chaque fois que vous tuez puis relancez named. Il n'y a aucun moyen de forcer named à sauvegarder le contenu du cache dans un fichier. Si vous voulez vraiment le faire, vous pouvez le faire en bricolant le code de named. Mais ce n'est, encore une fois, pas recommandé.