next up previous contents
suivant: 8.3.5 Script remplir-grpdom monter: 8.3 Chargement initial des précédent: 8.3.3 Script remplir-grpnet   Table des matières

8.3.4 Scripts charger-domaines et remplir-domaine

Le script remplir-domaine analyse un fichier de zone et charge dans la base les RR de type A, AAAA ou CNAME qui se trouvent après le prologue. Les RR de type MX sont ignorés. Les autres types de RR sont également ignorés, mais ils sont signalés par un message.

Tous les RR créés le sont avec un nom de login de correspondant. Sur Osiris, nous avons chargé tous les RR avec un login d'un correspondant fictif. Ceci nous permet de déterminer facilement les RR issus du chargement initial, par opposition aux RR ajoutés depuis.

La fin du prologue est déterminée par la recherche d'une expression régulière dans le fichier de zone. Cette expression est, par défaut :

^; COUPER ICI

En insérant cette ligne (qui est un commentaire, le ^ désigne le début de la ligne) dans vos fichiers de zone, vous pouvez aisément délimiter la fin du prologue sans perturber l'exploitation du serveur DNS pendant que vous mettez au point le chargement de la base.

Attention : les RR doivent avoir une syntaxe valide pour le nom en partie gauche. En particulier, le nom ne doit comporter aucun point. Un problème souvent rencontré est la tentative de chargement d'un RR de type « www.truc IN CNAME www.univ-machin.fr » : la partie gauche n'est pas valide puisque www.truc n'est pas un nom valide. Si vous rencontrez ce cas, vous avez deux solutions : soit créer une nouvelle zone pour truc.univ-machin.fr, soit déplacer le RR fautif dans le prologue, auquel cas il devient une exception gérée manuellement avec tous les risques d'incohérence ultérieure que cela comporte.

Les RR de type CNAME sont ajoutés dans la base à la fin de la lecture du fichier de zone. Cela signifie qu'on peut très bien écrire le CNAME d'abord, puis écrire le A ou le AAAA correspondant après. Lorsqu'un CNAME pointe sur un nom inexistant, l'information est signalée. Si vous avez deux fichiers de zones (f1 et f2 par exemple) avec un CNAME dans f1 qui pointe sur un A dans f2, cela signifie qu'il faut charger d'abord f2, puis ensuite f1. Dans le cas d'une référence croisée (un CNAME dans f2 qui pointe en plus sur un A dans f1), cela signifie qu'il faudra charger deux fois le même fichier (f1 ou f2) pour résoudre la référence : il faudra donc par exemple charger f1, puis f2, puis f1 à nouveau. Lors du rechargement d'une zone, les RR déjà introduits sont ignorés.

Le script remplir-domaine doit être modifié pour :

Le script charger-domaines enchaîne les appels individuels à remplir-domaine. Vous devez modifier ce script pour paramétrer le remplissage des domaines, dans le bon ordre, avec éventuellement le rechargement de fichiers déjà introduits si vous avez des références croisées.


next up previous contents
suivant: 8.3.5 Script remplir-grpdom monter: 8.3 Chargement initial des précédent: 8.3.3 Script remplir-grpnet   Table des matières
Pierre DAVID 2008-04-13