<!-- Do *not* edit this file; it was automatically generated by ej2html Look for a name.ej file with the same name as this filename --> <!-- Last updated Tue Mar 12 11:30:04 2002 --> <HTML><HEAD> <TITLE>Serveur DNS autoritaire</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> </HEAD><BODY> <i>Ce document est placé dans le domaine public par Sam Trenholme et sa traduction par Thomas Seyrat.</i> <H1>Utiliser MaraDNS comme serveur DNS autoritaire</H1> <H2>Prérequis</H2> Afin de mettre en place un serveur DNS autoritaire, il est nécessaire de disposer d'une ou plusieurs <i>adresses IP fixes</i>. Chez la plupart des <i>registrars</i>, une ou deux adresses suffisent. Sur chacun de ses adresses, il est nécessaire qu'un serveur DNS autoritaire, comme MaraDNS, soit configuré. <H2>Q'est-ce qu'une zone de domaine ?</H2> Un nom DNS comme www.example.com fait partie de la <i>zone de domaine</i> example.com. Le nom www.yahoo.com, comme autre exemple, fait partie de la <i>zone de domaine</i> yahoo.com. www.maradns.org fait partie de la <i>zone de domaine</i> maradns.org. <H2>Configurer un domaine avec MaraDNS</H2> <a href="compile.html">Compilez et installez</a> MaraDNS sur un système (avec une adresse IP fixe) qui fera office de serveur DNS autoritaire. <p> Après avoir fait ceci, le fichier <a href="man.mararc.html">mararc</a> doit être modifié afin de renseigner le nouveau domaine pour lequel on est autoritaire. <p> Voici comment faire un fichier mararc pour un serveur DNS autoritaire sur les <i>zones</i> sous notre contrôle : <ul> <li>Copier le fichier d'example example_authoritative_mararc.txt de la distribution de MaraDNS dans <tt>/etc/mararc</tt>.</li> <li>Au début de ce fichier, on trouve une section de ce type : <blockquote> <tt> csv1["example.com."] = "db.example.com" </tt> </blockquote> Ici, <b>example.com</b> est le nom de la zone dont les données sont contenues dans le fichier <b>db.example.com</b>. Remplacez <b>example.com</b> par le nom de la zone que vous désirez renseigner, et le nom du fichier en conséquence. <b>Important</b>: le nom de la zone doit se terminer par un point. <p> Il est possible de renseigner plusieurs zones, bien sûr. Par exemple : <blockquote> <tt> csv1["example.com."] = "db.example.com"<br> csv1["example.org."] = "db.example.org"<br> csv1["heaven.af.mil."] = "db.heaven.af.mil." </tt> </blockquote> </ul> Les fichiers de zone mentionnés dans le fichier <tt>/etc/mararc</tt> sont placés, par défaut, dans le répertoire <tt>/etc/maradns</tt> (l'emplacement de ce répertoire est défini par la valeur de chroot_dir dans le fichier mararc. <H2>Écrire un fichier de zone</H2> Supposons que nous mettons en place le domaine example.com, sur lequel fonctionnent les services suivants : <UL> <LI>Nous faisons fonctionner un serveur web pour example.com sur l'IP 10.10.10.12. En d'autres mots, des gens peuvent aller voir des pages web sur cette machine.</LI> <LI>Nous avons un serveur de mail pour le domaine example.com sur l'IP 10.10.10.15. C'est à dire que la machine à cette adresse est configurée pour recevoir du courrier vers les adresses @example.com.</LI> <LI>Les deux serveurs DNS autoritaires de notre domaine sont aux adresses 10.10.10.11 et 10.10.10.17. Tous deux font fonctionner MaraDNS en mode autoritaire.</LI> </UL> Le fichier de zone pour cette configuration serait le suivant. Notez que les lignes commençant par le caractère <tt>#</tt> sont des commentaires, ignorés par MaraDNS, permettant des notes lisibles dans le fichier en question. <pre> # Ceci est un fichier de zone exemple pour le domaine fictif example.com # La ligne suivante est présente parce que d'autres serveurs DNS (mais # pas MaraDNS) se servent de l'information contenue, qui est nécessaire # dans une zone DNS. Sexample.com.|86400|example.com.|hostmaster@example.com.|19770616|7200|3600|604800|1800 # The following two records, which also need to be in a zone file, tell # other DNS servers the names of what DNS servers serve example.com: # Les deux lignes suivantes sont des enregistrements, également # nécessaires dans un fichier de zone, permettant de donner les noms des # serveurs DNS autoritaires du domaine. Nexample.com.|86400|ns1.example.com. Nexample.com.|86400|ns2.example.com. # Nous devons renseigner les adresses IP des serveurs ci-dessus. Ans1.example.com.|86400|10.10.10.11 Ans2.example.com.|86400|10.10.10.17 # Nous avons maintenant deux enregistrements concernant la machine qui # sert les pages web. Il s'agit de simples correspondances nom vers IP, # ici une pour le nom example.com et une autre pour le nom # www.example.com. Aexample.com.|86400|10.10.10.12 Awww.example.com.|86400|10.10.10.12 # Il est également nécessaire de renseigner le nom et l'adresse de la # machine à laquelle est destinée le courrier du domaine. Il faut donc # un enregistrement renseignant « le nom de la machine qui gère le # courrier pour example.com est mail1.example.com » et un autre # « l'adresse IP de mail1.example.com est 10.10.10.15 » @example.com.|86400|10|mail1.example.com. Amail1.example.com.|86400|10.10.10.15 </pre> Maintenant, pour adapter ce fichier à une autre zone, il vous suffit de faire les changements suivants : <ul> <li>Substituez le nom <b>example.com</b> avec le nom du domaine que vous devez administrer.</li> <li>Substituez l'adresse 10.10.10.11 avec celle de l'un de vos serveurs DNS autoritaires pour le domaine.</LI> <li>Substituez l'autre adresse de serveur DNS.</li> <li>Remplacez le nom et l'adresse de la machine gérant le courrier pour le domaine</li> <li>Faites de même pour celle gérant le web.</li> Notez qu'il est possible d'utiliser plusieurs fois la même adresse IP. Par exemple, si 10.10.10.19 fait à la fois office de l'un des serveurs DNS, de serveur de mail, et de serveur web, il est possible d'avoir : <pre> Nexample.com.|86400|ns1.example.com. Ans1.example.com.|86400|10.10.10.19 Aexample.com.|86400|10.10.10.19 Awww.example.com.|86400|10.10.10.19 @example.com.|86400|10|mail1.example.com. Amail1.example.com.|86400|10.10.10.19 </pre> En Français, les lignes ci-dessus veulent dire respectivement : <ul> <li>Le serveur DNS du domaine example.com se nomme ns1.example.com, et cette information doit être retenue 86400 secondes (1 journée) par les autres serveurs DNS.</li> <li>L'adresse IP de cette machine ns1.example.com est 10.10.10.19.</li> <li>L'adresse IP associée au nom example.com (c'est à dire si quelqu'un tape http://example.com/ dans son navigateur) est 10.10.10.19.</li> <li>L'adresse IP associée à www.example.com est 10.10.10.19. <li>Le nom de la machine à laquelle doit être envoyé le courrier pour le domaine example.com est mail1.example.com. Sa priorité est 10 (c'est au serveur dont le nombre de priorité est le plus faible que le courrier doit être envoyé d'abord). <li>L'adresse IP de la machine mail1.example.com est 10.10.10.19. </ul> La raison pour laquelle on utilise des noms en priorité à des adresses sur certains services comme le DNS ou le mail est d'éviter d'avoir à tout changer partout si jamais l'on venait à subir un réadressage. <p> Si l'on met en place plusieurs zones, toutes ayant plus ou ou moins les mêmes données, il est commode de disposer d'un fichier de zone modèle qu'il est possible d'utiliser systématiquement sans le modifier. <p> MaraDNS permet ceci grâce à l'emploi du symbole <tt>%</tt>. Partout où ce symbole est présent dans un fichier de zone au format csv1, MaraDNS le remplace par le nom de la zone en question. Par exemple, dans le fichier de la zone example.com, le % serait remplacé par example.com. Ainsi, dans le cas de la zone example.com, on pourrait avoir un fichier de cette forme : <pre> S%|86400|%|hostmaster@%|19770616|7200|3600|604800|1800 N%|86400|ns1.% N%|86400|ns2.% Ans1.%|86400|10.10.10.11 Ans2.%|86400|10.10.10.17 A%|86400|10.10.10.12 Awww.%|86400|10.10.10.12 @%|86400|10|mail1.example.com. Amail1.%|86400|10.10.10.15 </pre> Ce fichier fonctionnerait de manière identique à l'exemple initial. </BODY></HTML>