
FOIRE AUX QUESTIONS
    Comment puis-je essayer MaraDNS ?

       Lisez le guide de dmarrage rapide, dans le fichier
       0QuickStart de la distribution MaraDNS.

    Sous quelle licence MaraDNS est-il produit ?

       Aucune, en fait. MaraDNS est produit dans le domaine
       publique.

    Comment puis-je faire fonctionner MaraDNS sur plusieurs
    adresses IP ?

       La mthode actuelle est de faire tourner plusieurs copies
       de MaraDNS, chacune avec son propre fichier mararc.

       Par exemple:

	   maradns -f /etc/mararc.1
	   maradns -f /etc/mararc.2
	   etc.

       Si vous souhaitez simplement faire tourner MaraDNS sur
       toutes les adresses IP disponibles sur la machine,
       utilisez l'adresse "0.0.0.0".

       Je ne pense pas que ceci soit trop difficile  implmenter
       correctement, puisque j'ai dj du code pour spcifier
       plusieurs adresses IP dans les ACL utilises par le
       serveur de zones. En attendant, la FAQ indiquera cette
       solution.

    Comment puis-je faire un rapport de bogues sur MaraDNS ?

       Avant de rapporter un bogue de MaraDNS, lisez les pages de
       manuel concernes.  Les pages de manuel devraient avoir
       t installes  l'installation de MaraDNS, et, de plus,
       sont disponibles dans le rpertoire doc/man dans le
       tarball source de MaraDNS. Il est galement possible que
       vous soyez en train de lire cette page de manuel.

       Certaines pages de manuel de MaraDNS (actuellement, les
       pages pour maradns, askmara, zoneserver, et mararc)
       disposent d'une section "BOGUES" (BUGS en anglais), qui
       liste certains bogues dj connus de MaraDNS que l'auteur
       ne juge pas assez importants pour tre corrigs avant la
       sortie de la version 1.0 de MaraDNS. Les rapports de
       bogues concernant l'un de ces bogues mentionns seront
       joyeusement ignors. (NDT: consultez la page de manuel
       originale en anglais pour tre sr de disposer de la
       dernire version).

       Abonnez-vous  la liste de diffusion en envoyant un
       courrier  list-subscribe@maradns.org avec "subscribe"
       comme sujet, et dcrivez ensuite le bogue en envoyant un
       courrier  list@maradns.org.

    Lorsque je lance MaraDNS, j'obtiens un message Fatal error:
    Error running populate_main program or a Faral error:
    init_cache() failed error message.

       Ce message d'erreur ne devrait pas tre visible. S'il
       apparat, abonnez-vous  la liste de diffusion (voir au
       dessus), et dcrivez votre problme en envoyant un
       courrier. Indiquez :

       * Le contenu de votre fichier /etc/mararc

       * Le contenu de tout fichier de /etc/maradns

       * La sortie complte de MaraDNS

      Je cherche  enregistrer un domaine sous le TLD .au ou .de,
      et le registrar refuse mon nom de domaine.

       Les registrars allemands et australiens obligent que l'on
       renvoie les enregistrements NS et SOA  une requte
       RR_ANY. MaraDNS peut faire ceci si vous spcifiez dans
       votre fichier mararc :

       default_rrany_set = 15

    Aprs avec lanc MaraDNS, je ne vois pas le processus dans
    netstat -na

       Les services UDP ne montrent pas un "LISTEN" voyant dans
       la sortie de netstat.

       Lorsque MaraDNS est en fonctionnement, la ligne concerne
       dans la sortie de netstat ressemble  : udp 0 0
       127.0.0.4:53 0.0.0.0:*

       Au sujet de netstat, si vous lancez netstat -nap en tant
       que root, vous verrez les noms des processus faisant
       fonctionner des services rseaux (sous Linux)

    Quelle bibliothque de manipulation de chanes utilise
    MaraDNS ?

       MaraDNS utilise sa propre bibliothque de manipulation de
       chanes, intitule bibliothque "js_string". Des pages de
       manuel pour la plupart des fonctions de la bibliothque
       sont disponibles dans le rpertoire doc/man de la
       distribution de MaraDNS.

    Pourquoi MaraDNS est-il dans le domaine public, plutt que
    sous licence GPL ou BSD ?

       Afin que l'on puisse intgrer MaraDNS avec Python sans
       souci. Bien que maintenant Python soit, je crois,
       compatible avec la GPL, il ne l'tait pas au moment o
       j'ai choisi une licence pour MaraDNS.

    Pourquoi MaraDNS utilise un modle multi-thread ?

       Le modle multi-thread est, tout simplement, la manire
       la plus simple d'crire un serveur DNS rcursif qui
       fonctionne. C'est la raison pour laquelle MaraDNS, pdnsd,
       et BIND 9 utilisent tous un modle multi-thread.

    Je trouve que telle et telle fonctionnalit devrait tre
    ajoute  MaraDNS

       Avant d'envoyer un mail  la liste avec une demande de
       fonctionnalit nouvelle, lisez la section FONCTIONS NON
       MISES EN OEUVRE (ou UNIMPLEMENTED FEATURES) de la page de
       manuel de MaraDNS, qui comporte une liste de ce que des
       gens ont pu souhaiter comme nouvelles fonctionnalits. Si
       vous ne voyez pas ce que vous souhaiteriez implment,
       envoyer un courrier  la liste afin que j'ajoute cette
       demande  la page de manuel.

       Des demandes de fonctions nouvelles qui incluent un
       correctif le mettant en oeuvre peuvent tre intgres 
       MaraDNS, tant que le correctif mentionne son appartenance
       au domaine public.

       Notez que MaraDNS est dsormais "gel". C'est  dire
       qu'aucune nouvelle fonctionnalit ne sera ajoute avant la
       sortie de la version 1.0.

    Y a t'il une marche  suivre pour demander l'incorporation
    d'un patch  MaraDNS ?

       Oui. Envoyez le patch par email, avec une dclaration de
       son appartenance au domaine public. Si je trouve que le
       patch fonctionne bien, je l'intgrerai  MaraDNS.

    MaraDNS peut-il servir de serveur de noms secondaire ?

       Oui, mais pas d'une manire traditionnelle.

       La philosophie de MaraDNS pour la version 1.0 est :
       simplicit et scurit.	Parce qu'il est plus simple de
       faire des programmes spars pour le rappatriement et la
       mise  disposition de zones, j'ai choisi cette approche
       pour la version 1.0

       Je trouve que l'une des grandes forces d'UNIX est de
       pouvoir combiner une srie de petits programmes simples
       ensemble pour raliser une tche complexe.  C'est
       l'approche suivie pour MaraDNS 1.0.

       Le "coeur" d'un serveur DNS ne devrait idalement pas
       faire plus que :

       * Convertir des donnes externes dans le format interne du
	 serveur DNS en utilisant des modules.

       * Conserver les donnes charges de sources "lentes"
	 (serveur DNS externes, serveurs SQL, etc.)

       * Convertir les paquets DNS en des requtes de donnes
	 pour les sources en question.

       * Convertir les donnes de ces sources en paquets DNS.

       (Maintenant, vue la manire dont j'ai cod la rsolution
       rcursive de MaraDNS, j'ai dvi de cet idal, mais c'est
       une autre histoire.

    Quelle est la diffrence entre un serveur DNS autoritaire et
    un serveur rcursif ?

       Un serveur DNS rcursif est un serveur DNS en mesure de
       contacter un autre serveur DNS afin de rsoudre un nom DNS
       donn. C'est le genre de serveurs que l'on renseigne dans
       /etc/resolv.conf.

       Un serveur DNS autoritaire rpond  ses requtes manant
       de serveurs rcursifs en leur donnant la rponse  une
       requte DNS donne.

    Le client getzone ne m'autorise pas  ajouter certains noms
    de ma zone

       Pour des raisons de scurit, le client getzone de MaraDNS
       n'ajoute pas  la zone des enregistrements n'en faisant
       pas partie. Par exemple, si dans une zone example.com on a
       un enregistrement du type :

       P1.1.1.10.in-addr.arpa.|86400|dns.example.com.

       MaraDNS n'ajoutera pas cet enregistrement, car il est en
       dehors de la zone.  En d'autres mots, il ne se termine pas
       par example.com.

       Il y a deux parades  ce problme :

       * Crer un fichier de zone 1.1.10.in-addr.arpa., pour les
	 enregistrements PTR.

       * Utiliser rcp, rsync, ou toute autre mthode, pour
	 synchroniser les fichiers de zone concerns.
    Je rencontre des problmes en transfrant des zones depuis le
    serveur de zones de MaraDNS vers un client de transfert BIND.

       BIND est plutt exigeant quant  quelle type de donnes
       accepter depuis un serveur de zones. Assurez-vous que :

       * Les enregistrements NS autoritaires sont tout en haut de
	 votre zone, juste aprs l'enregistrement SOA.

       * Les enregistrements NS autoritaires sont bien des NS de
	 votre zone.

       * Afin de pallier un bogue connu de MaraDNS, assurez-vous
	 d'avoir au moins un enregistrement non-NS entre les
	 enregistrements NS autoritaires de la zone et un
	 enregistrement NS de dlgation qui existerait dans
	 votre zone.

       Voici un exemple  ne pas suivre :

       Sexample.com.|86400|example.com.|hostmaster@example.com.|1|86400|3600|6048000|86400
       Nbad.example.com.|86400|ns1.example.com.
       Nbad.example.com.|86400|ns2.example.com.
       Nsubdomain.example.com.|86400|ns.subdomain.example.com.
       Aexample.com.|12345|10.2.3.4
       Et le mme exemple, aprs correction :

       Sexample.com.|86400|example.com.|hostmaster@example.com.|1|86400|3600|6048000|86400
       Nexample.com.|86400|ns1.example.com.
       Nexample.com.|86400|ns2.example.com.
       Aexample.com.|12345|10.2.3.4
       Nsubdomain.example.com.|86400|ns.subdomain.example.com.
    MaraDNS est-il portable ?

       Mme si je compte faire de MaraDNS un serveur portable,
       qui compilera sur de nombreux Unix,  ce moment mme le
       dveloppement de MaraDNS est fait sous Linux. En termes
       d'OS propritaires, je sais que SCO Open Server, SCO
       Unixware, et Solaris posent des problmes quand il s'agit
       de faire fonctionner un serveur UDP ou TCP dans un
       environnement chroot(). Il semblerait que, sous Solaris ou
       UNIXware, placer /dev/tcp et /dev/udp dans la cage
       chroot() permettrait  un serveur comme MaraDNS de
       fonctionner.

       Voir plus bas pourquoi MaraDNS a des problmes pour
       fonctionner comme serveur rcursif sous Solaris.

    Comment compiler MaraDNS sous OpenBSD ?

       Il y a deux manires de faire ceci:

       Pour utiliser le support natif des threads vous devez
       ajouter -pthread  la variable CFLAGS.

       Pour utiliser la bibliothque GNU pthread, vous devez
       installer le port pth et ajouter -L/usr/local/lib/pth au
       linker.

       (Florin Iucha a fourni ce conseil)

    J'utilise MaraDNS sous Solaris, et MaraDNS refuse de dmarrer

       C'est un problme connu de MaraDNS, qui conduit  des
       fuites mmoire lorsque l'on utilise MaraDNS comme serveur
       rcursif sous Solaris. Ce problme n'existe pas sous
       Linux, je ne peux donc pas le rsoudre. Tant que je n'ai
       pas accs  une machine Solaris, ou bien qu'un dveloppeur
       travaillant sous Solaris ne m'envoie pas un patch qui
       corrige le problme (et me confirme que le patch
       fonctionne), il ne sera pas possible d'utiliser MaraDNS
       comme serveur rcursif sous Solaris.
