\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{lun. mars 7 10:47:17 CET 2016}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={BIND 9.10},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Service de nom de domaine},
CreationDate={D:20160307104717},
ModDate={D:20160307104717},
Keywords={DNS;Domain Names Service}
}}
\begin{document}
 
\begin{center}
{\Huge BIND 9.10 }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Service de nom de domaine}
 
\vspace{10mm}
 
\vspace{1cm}{\huge Introduction }
 
\
 
\hspace{1mm}  BIND (Berkeley Internet Name Domain) implémente un serveur de nom de domaine. Il peut agir en tant que serveur de nom Autoritatif (AA), Serveur Primaire ou esclave, serveur cache, stealth, et avoir plusieurs de ces rôles en même temps.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Ressources requises }
 
\
 
\hspace{1mm}  Les besoins matériel pour DNS sont généralement modeste, cependant, l'utilisation de DNSSEC peut éprouver les CPU. L'option max-cache-size permet de limiter la quantité de mémoire pour le cache. Additionnellement, l'options max-acache-size peut être utilisé pour limiter la quantité de mémoire utilisée par le mécanisme. C'est une bonne pratique d'avoir suffisamment de mémoire pour charger toutes les zones et données en cache. Cependant, la meilleur manière de déterminer la quantité de mémoire est de regarder le serveur en opérations. Après quelques semaines de traitement, le serveur atteind un niveau relativement stable où les entrées expirent dans le cache aussi vite qu'elles sont insérées.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Opérations du serveur de nom }
 
\
 
\hspace{1mm}  Cette section décrit de nombreux outils indispensable de diagnostique, d'administration et de supervision disponible pour contrôler et debugger le service.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} dig]{(Domain Information Groper) est un outil complet de recherche. Il a 2 modes: interactif simple, et batch.}
\item[\hspace{1mm} host]{Convertis le noms d'hôte en adresses Internet et inversement, et d'autres fonctionnalités}
\item[\hspace{1mm} nslookup]{nslookup a 2 modes: interactif simple, et non-interactif. Il permet de récupérer de requêter des serveurs de nom.}
\item[\hspace{1mm} named-checkconf]{Vérifie la syntaxe d'un fichier named.conf}
\item[\hspace{1mm} named-checkzone]{Vérifie un fichier maître}
\item[\hspace{1mm} named-compilezone]{Similaire à named-checkzone, mais dump le contenu dans un fichier spécifié}
\item[\hspace{1mm} rndc]{(Remote Name Daemon Control) permet de contrôler les opérations de named}
\end{description}
 
\vspace{1cm}{\huge Signaux }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} SIGHUP]{Force le serveur à relire named.conf et recharger la base}
\item[\hspace{1mm} SIGTERM]{Force le serveur à se terminer proprement}
\item[\hspace{1mm} SIGINT]{Force le serveur à se terminer proprement}
\end{description}
 
\vspace{1cm}{\huge Résolveur léger }
 
\
 
\hspace{1mm}  traditionnellement, les applications sont liées avec une librairie résolveur qui envoient des requêtes DNS récursives à un serveur de nom cache. IPv6 introduit une nouvelle complexité dans le processus de résolution, tel que les chaînes A6 et les enregistrement DNAME, et la rechercher simultanné IPv4 et IPv6. BIND9 peut cependant fournir des services de résolution aux clients locaux en utilisant une combinaison d'une librairie de résolution légère et un processus de résolution dans l'hôte local. Ils communiquent en utilisant un protocole basé sur UDP qui est distinct et plus léger que le protocole DNS complet.
\vspace{5mm} \\
 
 
\hspace{1mm}  Pour utiliser l'interface de résolution légère, le système doit lancer les service lwresd ou un serveur de nom local configuré avec la déclaration lwres.
\vspace{5mm} \\
 
 
\hspace{1mm}  Par défaut, les applications utilisant la libraire de résolution légère vont faire des requêtes sur UDP sur la loopback sur le port 921. Le service ne fait que des recherches DNS, mais dans le future, pourra regarder dans hosts, NIS, etc.
\vspace{5mm} \\
 
 
\hspace{1mm}  lwresd est essentiellement un serveur de nom cache uniquement. Parce qu'il doit fonctionner sur tous les hôtes, il est conçu pour fonctionner sans configuration ou avec une configuration minimale.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Éléments du fichier de configuration }
 
\
 
\hspace{1mm}  La liste suivante décris les éléments utilisé dans ce document:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} acl\_name]{Le nom d'une address\_match\_list comme définis par la déclaration acl}
\item[\hspace{1mm} address\_match\_list]{Une liste d'un ou plusieurs ip\_addr, ip\_prefix, key\_id ou acl\_name}
\item[\hspace{1mm} masters\_list]{Une liste nommé d'un ou plusieurs ip\_addr avec optionnellement key\_id et/ou ip\_port}
\item[\hspace{1mm} domain\_name]{Une chaîne qui est utilisée comme nom DNS}
\item[\hspace{1mm} namelist]{Une liste d'un ou plusieurs éléments domain\_name}
\item[\hspace{1mm} doted\_decimal]{Un à 4 entiers de 0 à 255 séparés par des '.'}
\item[\hspace{1mm} ip4\_addr]{Une adresse IPv4}
\item[\hspace{1mm} ip6\_addr]{Une adresse IPv6}
\item[\hspace{1mm} ip\_addr]{une ip4\_addr ou ip6\_addr}
\item[\hspace{1mm} ip\_dscp]{Un nombre entre 0 et 63, utilisé pour sélectionner un point de code de services différentiés (DSCP) à utiliser pour le trafique sortant dans les OS qui supportent DSCP.}
\item[\hspace{1mm} ip\_port]{Un numéro de port IP (0 à 65535)}
\item[\hspace{1mm} ip\_prefix]{Un masque de sous-réseau}
\item[\hspace{1mm} key\_id]{Une domain\_name représentant le nom d'une clé partagée}
\item[\hspace{1mm} key\_list]{Une liste d'une ou plusieurs key\_id}
\item[\hspace{1mm} number]{Un nombre entien non-négatif 32bits}
\item[\hspace{1mm} path\_name]{Chemin de fichier}
\item[\hspace{1mm} port\_list]{Une liste d'un ip\_port ou une plage de port}
\item[\hspace{1mm} size\_spec]{Entien non-signé 64bits}
\item[\hspace{1mm} yes\_or\_no]{soit yes soit no}
\item[\hspace{1mm} dialup\_option]{yes, no, notify, notify-passive, refresh, ou passive.}
\end{description}
 
\vspace{1cm}{\huge Liste de correspondance d'adresses }
 
\
 
\hspace{1mm} Syntaxe:
 
{\ttfamily
address\_match\_list = address\_match\_list\_element ; \texttt{[} address\_match\_list\_element; ... \texttt{]}\\ address\_match\_list\_element = \texttt{[} ! \texttt{]} (ip\_address \texttt{[}/length\texttt{]} | key key\_id | acl\_name | \{ address\_match\_list \} )\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Commentaires }
 
\
 
\hspace{1mm} Syntaxe:
 
{\ttfamily
/*\hspace{2mm}ceci est un commentaire */\\ // ceci est un commentaire\\ \# ceci est un commenentaire\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Déclaration }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} acl]{Définis une liste d'adresse ip nommée}
\item[\hspace{1mm} controls]{Déclare des canaux de contrôle utilisé par rndc}
\item[\hspace{1mm} include]{Inclure un fichier}
\item[\hspace{1mm} key]{Spécifie les information de clé pour l'authentification et l'autorisation}
\item[\hspace{1mm} logging]{Spécifie ce que le serveur log, et où}
\item[\hspace{1mm} lwres]{Configure named pour agir également comme résolveur léger}
\item[\hspace{1mm} masters]{Définis une liste de serveurs maîtres.}
\item[\hspace{1mm} options]{Contrôle les options de configuration globale au serveur}
\item[\hspace{1mm} server]{Définis certaines options par serveur}
\item[\hspace{1mm} statistics-channels]{Déclare des canaux de communication pour avoir accès aux statistiques de named}
\item[\hspace{1mm} trusted-keys]{Définis les clés DNSSEC de confiance}
\item[\hspace{1mm} managed-keys]{Liste les clé DNSSEC à conserver à jour avec rfc5011}
\item[\hspace{1mm} view]{Définis une vue}
\item[\hspace{1mm} zone]{définis une zone}
\end{description}
 
\vspace{1cm}{\huge ACL }
 
\
 
\hspace{1mm}  Les mots clés intégrés sont:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} any]{Matche tous les hôtes}
\item[\hspace{1mm} none]{Ne matche aucun hôte}
\item[\hspace{1mm} localhost]{Matche les IPv4 et IPv6 de toutes les interfaces réseaux dans le système. Cette liste est dynamique}
\item[\hspace{1mm} localnets]{Matche tous les hôtes dans un réseau IPv4 ou IPv6 pour lequel le système à une interface.}
\end{description}
 
\hspace{1mm}  Quand BIND 9 est construit avec GeoIP, les acl peuvent également être utilisées pour des restrictions d'accès géographique, avec un élément sous la forme \textbf{geoip [db database] field value}. field indique quel champ correspondre (country, region, city, continent, postal, metro, area, tz, isp, org, asnum, domain, et netspeed).
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Controls }
 
\
 
{\ttfamily
controls \{\\ \hspace{2mm}\texttt{[} inet ( ip\_addr |\hspace{2mm}*\hspace{2mm}) \texttt{[} port ip\_port \texttt{]} allow \{ address\_match\_list \} keys \{ key\_list \}; \texttt{]} \texttt{[} inet ...; \texttt{]}\\ \hspace{2mm}\texttt{[} unix path perm number owner number group number keys \{ key\_list \}; \texttt{]} \texttt{[} unix ...; \texttt{]} \};\\
}
\vspace{8mm}
 
\hspace{1mm}  La déclaration controls déclare les canaux de contrôle à utiliser par les administrateurs système pour contrôler les opérations du serveur. Ces canaux sont utilisés par rndc. Un canal inet est un socket TCP. Le port par défaut est 953. La capacité à utiliser des commandes dans le canal est contrôlé par les clauses allow et keys. Un canal de contrôle unix est un socket unix écoutant dans le chemin spécifié.
\vspace{5mm} \\
 
 
\hspace{1mm}  Si aucune déclaration controls n'est spécifiée, named en définis un sur l'interface de bouclage à l'adresse 127.0.0.1 et tente de charger une clé dans rndc.key dans \$SYSCONFDIR (spécifié à la compilation). pour désactiver l'utilisation des canaux, créer une déclaration vide: controls \{ \};
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge include }
 
\
 
\hspace{1mm}  Permet d'inclure d'autres fichiers de configuration
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge key }
 
\
 
\hspace{1mm}  La déclaration key définis une clé secrète partagée à utiliser avec TSIG ou un canal de commande. La déclaration key peut être définis globalement ou dans une déclaration view. L'algorithm spécifie l'algorithme utilisé. named supporte hmac-md5, hmac-sha1, hmac-sha224, hmac-sha384 et hmac-sha512.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge logging }
 
\
 
\hspace{1mm}  La déclaration logging configure une variété d'option de logs pour le serveur. Ses canaux associent des méthodes de sortie, options de format de niveaux de sévérité avec un nom qui peut ensuite être utilisé avec la catégorie. 
\vspace{5mm} \\
\hspace{1mm}  Les catégories sont:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} default]{définis les options de log pour les catégories qui n'ont pas de configuration définie.}
\item[\hspace{1mm} general]{Tout ce qui n'est pas classifié dans des catégories sont définis ici}
\item[\hspace{1mm} database]{Les messages liés aux bases de données utilisé en interne pour stocker les zones et données du cache}
\item[\hspace{1mm} security]{Approbation et refus des requêtes}
\item[\hspace{1mm} config]{traitement de fichier de configuration}
\item[\hspace{1mm} resolver]{Résolution DNS, tel que les recherche récursives}
\item[\hspace{1mm} xfer-in]{Transfer de zone reçus par le serveur}
\item[\hspace{1mm} xfer-out]{Transfer de zone envoyés par le serveur}
\item[\hspace{1mm} notify]{Le protocole NOTIFY}
\item[\hspace{1mm} client]{traitement des demandes client}
\item[\hspace{1mm} unmatched]{Messages que named n'est pas capable de déterminer la classe ou pour lesquels il n'y pas de vue.}
\item[\hspace{1mm} network]{Opérations réseaux}
\item[\hspace{1mm} update]{Mises à jour dynamique}
\item[\hspace{1mm} update-security]{Approbation et refus de demandes de mise à jours}
\item[\hspace{1mm} queries]{reporte les IP des client et numéro de port.}
\item[\hspace{1mm} query-erros]{Informations sur les requêtes résultant de certaines erreurs}
\item[\hspace{1mm} dispatch]{dispatching des packet entrants aux modules}
\item[\hspace{1mm} dnssec]{traitement DNSSEC et TSIG}
\item[\hspace{1mm} lame-servers]{Mauvaises configuration dans le serveurs distants, découvert par bind}
\item[\hspace{1mm} delegation-only]{requêtes qui ont été forcés au NXDOMAIN en résultat d'une zone delegation-only}
\item[\hspace{1mm} edns-disabled]{Requêtes qui ont été forcés à utiliser plain DNS dû à un timeoute.}
\item[\hspace{1mm} RPZ]{Informations sur les erreurs en réponse à des stratégies de fichier de zone}
\end{description}
 
\vspace{1cm}{\huge query-errors }
 
\
 
\hspace{1mm} la catégorie query-errors est prévue pour un but de débuggage. au niveau de débug 1 ou +, chaque réponse avec le rcode SERVFAIL est loggé comme suit:
 
{\ttfamily
client 127.0.0.1\#61502: query failed (SERVFAIL) for www.example.com/IN/AAAA at query.c:3880\\
}
\vspace{8mm}
 
\hspace{1mm} Qui signifie une erreur détecté à la ligne 3880 du fichier source query.c. Au debug niveau 2 et +, des informations détaillées de résolution récursive sont loggés:
 
{\ttfamily
fetch completed at resolver.c:2970 for www.example.com/A in 30.000183: timed out/success \texttt{[}domain:example.com,\\ referral:2,restart:7,qrysent:8,timeout:5,lame:0,neterr:0, badresp:1,adberr:0,findfail:0,valfail:0\texttt{]}\\
}
\vspace{8mm}
 
\hspace{1mm}  La première partie avent le ':' montre qu'une résolution récursive pour des enregistrements AAA de www.example.com complétés en 30.000183 secondes et le résultat final a été déterminé à la ligne 2970 du fichier source resolver.c.
\vspace{5mm} \\
 
 
\hspace{1mm}  La partie suivante montre le résultat final détecté et le dernier résultat de la validation DNSSEC. Dans cet exemple, la requête a échoué parce que tous les serveurs sont down ou inateignable. La dernière partie affiche des informations de statistiques collectés pour cette tentative de résolution:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} referral]{Le nombre de référants que le résolveur a reçu durant le processus de résolution.}
\item[\hspace{1mm} restart]{Le nombre de cycles que le serveur a tenter les serveurs distants du domaine.}
\item[\hspace{1mm} qrysent]{Le nombre de requêtes que le résolveur en envoyés au domaine}
\item[\hspace{1mm} timeout]{Le nombre de timeout depuis que le résolveur a reçu la dernière réponse}
\item[\hspace{1mm} lame]{Le nombre de serveurs lames que le résolveur a détecté soit par une réponse invalide, ou en résultat d'une recherche dans la base d'adresse de BIND9 (ADB), où les serveurs lames sont en cache.}
\item[\hspace{1mm} neterr]{Nombre de résultats erronés que le résolveur a rencontré en envoyant des requêtes au domaine. Peut être dû au serveur inateignable et le résolveur a reçus un ICMP unreachable.}
\item[\hspace{1mm} badresp]{Le nombre de réponses attendus (autre que lame) aux requêtes envoyées par le résolveur au domaine}
\item[\hspace{1mm} adberr]{Erreurs en trouvant des adresses de serveur distant du domaine dans la ADB. Un cas commun est que le nom du serveur distant n'a pas d'adresse}
\item[\hspace{1mm} findfail]{Érreurs en résolvant les adresses de serveur distant. C'est un nombre total d'erreur via le processus de résolution.}
\item[\hspace{1mm} valfail]{Erreurs de validation DNSSEC, dans le processus de résolution.}
\end{description}
 
\hspace{1mm}  Au débug niveau 3 et +, les mêmes messages que le niveau 1 sont loggés pour d'autres erreurs que SERVFAIL. Noter que des réponses négatives telles que NXDOMAIN ne sont pas vus comme erreurs ici.
\vspace{5mm} \\
 
 
\hspace{1mm}  Au débug niveau 4 et +, les même message que le niveau 2 sont loggés pour d'autres erreurs que SERVFAIL.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge lwres }
 
\
 
{\ttfamily
lwres \{\\ \hspace{2mm}\texttt{[} listen-on \{ ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ;\\ \hspace{2mm}\texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} view view\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} search \{ domain\_name ; \texttt{[} domain\_name ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} ndots number; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  Plusieurs déclaration lwres peuvent être configurés avec différentes propriétés. view spécifie la vue ou placer le résolveur. search est équivalent à la déclaration dans /etc/resolv.conf. Elle fournis une liste de domaine qui sont ajoutés aux noms relatifs dans les requêtes. ndots est équivalent à la déclaration dans /etc/resolv.conf, et indique le nombre de '.' minimum dans un nom de domaine relatif qui devrait résulter en un match exact avant que les éléments de search soient ajoutés
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge masters }
 
\
 
{\ttfamily
masters name \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ ( masters\_list |\\ ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}key key\texttt{]} ) ; \texttt{[}...\texttt{]} \};\\
}
\vspace{8mm}
 
\hspace{1mm}  Les déclarations masters permettent à un jeu commun de masters d'être facilement utilisés par plusieurs zones stub et slaves.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge options }
 
\
 
\hspace{1mm} La déclaration options définis les options globales utilisées par BIND. cette déclaration peut apparaître seulement une fois dans la fichier de configuration.
 
{\ttfamily
options \{\\ \hspace{2mm}\texttt{[} attach-cache cache\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} version version\_string; \texttt{]}\\ \hspace{2mm}\texttt{[} hostname hostname\_string; \texttt{]}\\ \hspace{2mm}\texttt{[} server-id server\_id\_string; \texttt{]}\\ \hspace{2mm}\texttt{[} directory path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} key-directory path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} managed-keys-directory path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} named-xfer path\_name; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} tkey-gssapi-keytab path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} tkey-gssapi-credential principal; \texttt{]}\\ \hspace{2mm}\texttt{[} tkey-domain domainname; \texttt{]}\\ \hspace{2mm}\texttt{[} tkey-dhkey key\_name key\_tag; \texttt{]}\\ \hspace{2mm}\texttt{[} cache-file path\_name; \texttt{]} //not-used\\ \hspace{2mm}\texttt{[} dump-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} bindkeys-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} secroots-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} session-keyfile path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} session-keyname key\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} session-keyalg algorithm\_id; \texttt{]}\\ \hspace{2mm}\texttt{[} memstatistics yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} memstatistics-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} pid-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} recursing-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} statistics-file path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} zone-statistics full | terse | none; \texttt{]}\\ \hspace{2mm}\texttt{[} auth-nxdomain yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} deallocate-on-exit yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} dialup dialup\_option; \texttt{]}\\ \hspace{2mm}\texttt{[} fake-iquery yes\_or\_no; \texttt{]}//obsolete\\ \hspace{2mm}\texttt{[} fetch-glue yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} flush-zones-on-shutdown yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} has-old-clients yes\_or\_no; \texttt{]}//obsolete\\ \hspace{2mm}\texttt{[} host-statistics yes\_or\_no; \texttt{]}//obsolete\\ \hspace{2mm}\texttt{[} host-statistics-max number; \texttt{]}//obsolete\\ \hspace{2mm}\texttt{[} minimal-responses yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} multiple-cnames yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} notify yes\_or\_no | explicit | master-only; \texttt{]}\\ \hspace{2mm}\texttt{[} recursion yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} request-sit yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} request-nsid yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} rfc2308-type1 yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} use-id-pool yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} maintain-ixfr-base yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} ixfr-from-differences (yes\_or\_no | master | slave); \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-enable yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-validation (yes\_or\_no | auto); \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-lookaside ( auto | no | domain trust-anchor domain ); \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-must-be-secure domain yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-accept-expired yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} forward ( only | first ); \texttt{]}\\ \hspace{2mm}\texttt{[} forwarders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} dual-stack-servers \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ ( domain\_name \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} | ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]}) ; ... \}; \texttt{]}\\ \hspace{2mm}\texttt{[} check-names ( master | slave | response ) ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-dup-records ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-mx ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-wildcard yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} check-integrity yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} check-mx-cname ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-srv-cname ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-sibling yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} check-spf ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} allow-new-zones \{ yes\_or\_no \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-notify \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-cache \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-cache-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-transfer \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-recursion \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-recursion-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-update \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-update-forwarding \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} update-check-ksk yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-update-mode ( maintain | no-resign ); \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-dnskey-kskonly yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-loadkeys-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-secure-to-insecure yes\_or\_no ;\texttt{]}\\ \hspace{2mm}\texttt{[} try-tcp-refresh yes\_or\_no; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} allow-v6-synthesis \{ address\_match\_list \}; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} blackhole \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} no-case-compress \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} use-v4-udp-ports \{ port\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} avoid-v4-udp-ports \{ port\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} use-v6-udp-ports \{ port\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} avoid-v6-udp-ports \{ port\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} listen-on \texttt{[} port ip\_port \texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} listen-on-v6 \texttt{[} port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} query-source ( ( ip4\_addr |\hspace{2mm}*\hspace{2mm})\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} dscp ip\_dscp\texttt{]} |\\ \hspace{2mm}\hspace{2mm}\texttt{[} address ( ip4\_addr |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]} )\\ \hspace{2mm}\hspace{2mm}\texttt{[} dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} query-source-v6 ( ( ip6\_addr |\hspace{2mm}*\hspace{2mm})\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} dscp ip\_dscp\texttt{]} |\\ \hspace{2mm}\hspace{2mm}\texttt{[} address ( ip6\_addr |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]} )\\ \hspace{2mm}\hspace{2mm}\texttt{[} dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} use-queryport-pool yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} queryport-pool-ports number; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} queryport-pool-updateinterval number; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} max-transfer-time-in number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-time-out number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-in number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-out number; \texttt{]}\\ \hspace{2mm}\texttt{[} tcp-clients number; \texttt{]}\\ \hspace{2mm}\texttt{[} reserved-sockets number; \texttt{]}\\ \hspace{2mm}\texttt{[} recursive-clients number; \texttt{]}\\ \hspace{2mm}\texttt{[} serial-query-rate number; \texttt{]}\\ \hspace{2mm}\texttt{[} serial-queries number; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} tcp-listen-queue number; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-format ( one-answer | many-answers ); \texttt{]}\\ \hspace{2mm}\texttt{[} transfers-in number; \texttt{]}\\ \hspace{2mm}\texttt{[} transfers-out number; \texttt{]}\\ \hspace{2mm}\texttt{[} transfers-per-ns number; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} use-alt-transfer-source yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-delay seconds ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-to-soa yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} also-notify \{ ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \texttt{[}key keyname\texttt{]} ; \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \texttt{[}key keyname\texttt{]} ; ... \texttt{]} \};\texttt{[} max-ixfr-log-size number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-journal-size size\_spec; \texttt{]}\\ \hspace{2mm}\texttt{[} coresize size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} datasize size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} files size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} stacksize size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} cleaning-interval number; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} heartbeat-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} interface-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} statistics-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} topology \{ address\_match\_list \}\texttt{]};\\ \hspace{2mm}\texttt{[} sortlist \{ address\_match\_list \}\texttt{]};\\ \hspace{2mm}\texttt{[} rrset-order \{ order\_spec ; \texttt{[} order\_spec ; ... \texttt{]} \texttt{]} \};\\ \hspace{2mm}\texttt{[} lame-ttl number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-ncache-ttl number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-cache-ttl number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-zone-ttl number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-validity-interval number \texttt{[}number\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-nodes number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-signatures number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-type number ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-roots number; \texttt{]}\\ \hspace{2mm}\texttt{[} use-ixfr yes\_or\_no ; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} provide-ixfr yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} request-ixfr yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} treat-cr-as-space yes\_or\_no ; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} min-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} port ip\_port; \texttt{]}\\ \hspace{2mm}\texttt{[} dscp ip\_dscp\texttt{]} ;\\ \hspace{2mm}\texttt{[} additional-from-auth yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} additional-from-cache yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} random-device path\_name ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-cache-size size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} match-mapped-addresses yes\_or\_no; \texttt{]} // obsolete\\ \hspace{2mm}\texttt{[} filter-aaaa-on-v4 ( yes\_or\_no | break-dnssec ); \texttt{]}\\ \hspace{2mm}\texttt{[} filter-aaaa-on-v6 ( yes\_or\_no | break-dnssec ); \texttt{]}\\ \hspace{2mm}\texttt{[} filter-aaaa \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} dns64 ipv6-prefix \{\\ \hspace{2mm}\hspace{2mm}\texttt{[} clients \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} mapped \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} exclude \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} suffix IPv6-address; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} recursive-only yes\_or\_no; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} break-dnssec yes\_or\_no; \texttt{]}\\ \hspace{2mm}\}; \texttt{]};\\ \hspace{2mm}\texttt{[} dns64-server name \texttt{]}\\ \hspace{2mm}\texttt{[} dns64-contact name \texttt{]}\\ \hspace{2mm}\texttt{[} preferred-glue ( A | AAAA | NONE ); \texttt{]}\\ \hspace{2mm}\texttt{[} edns-udp-size number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-udp-size number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-rsa-exponent-size number; \texttt{]}\\ \hspace{2mm}\texttt{[} root-delegation-only \texttt{[} exclude \{ namelist \} \texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} querylog yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} disable-algorithms domain \{ algorithm;\\ \hspace{2mm}\hspace{2mm}\texttt{[} algorithm; \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} disable-ds-digests domain \{ digest\_type;\\ \hspace{2mm}\hspace{2mm}\texttt{[} digest\_type; \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} acache-enable yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} acache-cleaning-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} max-acache-size size\_spec ; \texttt{]}\\ \hspace{2mm}\texttt{[} clients-per-query number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-clients-per-query number ; \texttt{]}\\ \hspace{2mm}\texttt{[} masterfile-format (text|raw|map) ; \texttt{]}\\ \hspace{2mm}\texttt{[} empty-server name ; \texttt{]}\\ \hspace{2mm}\texttt{[} empty-contact name ; \texttt{]}\\ \hspace{2mm}\texttt{[} empty-zones-enable yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} disable-empty-zone zone\_name ; \texttt{]}\\ \hspace{2mm}\texttt{[} zero-no-soa-ttl yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} zero-no-soa-ttl-cache yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} resolver-query-timeout number ; \texttt{]}\\ \hspace{2mm}\texttt{[} deny-answer-addresses \{ address\_match\_list \} \texttt{[} except-from \{ namelist \} \texttt{]};\texttt{]}\\ \hspace{2mm}\texttt{[} deny-answer-aliases \{ namelist \} \texttt{[} except-from \{ namelist \} \texttt{]};\texttt{]}\\ \hspace{2mm}\texttt{[} prefetch number \texttt{[}number\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} rate-limit \{\\ \hspace{2mm}\hspace{2mm}\texttt{[} domain domain ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} responses-per-second \texttt{[}size number\texttt{]} \texttt{[}ratio fixedpoint\texttt{]} number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} referrals-per-second number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} nodata-per-second number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} nxdomains-per-second number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} errors-per-second number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} all-per-second number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} window number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} log-only yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} qps-scale number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} ipv4-prefix-length number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} ipv6-prefix-length number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} slip number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} exempt-clients \{ address\_match\_list \} ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} max-table-size number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} min-table-size number ; \texttt{]}\\ \hspace{2mm}\} ; \texttt{]}\\ \hspace{2mm}\texttt{[} response-policy \{\\ \hspace{2mm}\hspace{2mm}zone zone\_name ;\\ \hspace{2mm}\hspace{2mm}\texttt{[} policy given | disabled | passthru | drop | nxdomain | nodata | cname domain\\ \hspace{2mm}\hspace{2mm}\texttt{[} recursive-only yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} max-policy-ttl number ; \texttt{]} ;\\ \hspace{2mm}\hspace{2mm}\texttt{[} recursive-only yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} max-policy-ttl number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} break-dnssec yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} min-ns-dots number ; \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} qname-wait-recurse yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\} ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} attach-cache <string>]{(options,view)autorise plusieurs vues à partager une seule base de cache. Chaque vue a sa propre base de cache, mais si plusieurs vues ont la même stratégie opérationnelle pour la résolution de nom et de cacheng, ces vues peuvent partager le même cache et sauver de la mémoire et possiblement améliorer l'efficacité de résolution en utilisant cette option. L'implémentation actuelle exige que les vues partageant le même cache soient consistant avec les options suivantes: check-names, cleaning-interval, dnssec-accept-expired, dnssec-validation, max-cache-ttl, max-ncache-ttl, max-cache-size, et zero-no-soa-ttl.}
\item[\hspace{1mm} directory <path\_name>]{Le répertoire de travail du serveur. Tout chemins non-absolus dans le fichier de configuration sera pris comme relatif à ce répertoire.}
\item[\hspace{1mm} key-directory <path\_name>]{Lors de mise à jours dynamique de zone sécurisés, le répertoire où sont les fichiers de clé DNSSEC et publique/privé (ne concerne pas bind.keys, rndc.key ni session.key)}
\item[\hspace{1mm} managed-keys-directory <path\_name>]{Spécifie le répertoire dans lequel stocker les fichiers qui suivent les clés DNSSEC.}
\item[\hspace{1mm} tkey-gssapi-keytab <path\_name>]{Le fichier keytab à utiliser pour les mises à jours GSS-TSIG. Si cette option est définie et pas gssapi-credential, les mises à jours seront autorisés avec toute clé matchant un principal dans le keytab}
\item[\hspace{1mm} tkey-gssapi-credential <principal>]{L'accréditif de sécurité avec lequel le serveur devrait authentifier les clés demandées par le protocole GSS-TSIG. Actuellement seul kerberos 5 est supporté, et l'accréditif est un principal kerberos que le serveur peut obtenir via le fichier de clé système définis par tkey-gssapi-keytab. Normalement ce principal est sous la forme 'DNS/server.domain'. tkey-domain doit également être définis si un keytab spécifique n'est pas définis dans tkey-gssapi-keytab}
\item[\hspace{1mm} tkey-domain <domainname>]{Le domaine ajouté à tous les noms de toutes les clés partagées générées avec TKEY.}
\item[\hspace{1mm} tkey-dhkey key\_name key\_tag;]{Clé Diffie-Hellman utilisée par le serveur pour générer des clés partagées avec les clients en utilisant le mode dh. Le serveur doit être capable de charger les clés publique et privée depuis les fichiers dans le répertoire de travail courant. Dans la plupart des cas, le nom de clé devrait être le nom d'hôte du serveur.}
\item[\hspace{1mm} dump-file path\_name]{Chemin du fichier où le serveur dump la base, invoqué par rndc dumpdb.}
\item[\hspace{1mm} memstatistics-file path\_name]{chemin du fichier où le serveur écrit les statistiques d'utilisation mémoire.}
\item[\hspace{1mm} pid-file path\_name]{Chemin du fichier pid où le serveur écrit sont pid.}
\item[\hspace{1mm} recursing-file path\_name]{chemin du fichier où le serveur dump les requêtes recursives, invoqué par rndc recursing.}
\item[\hspace{1mm} statistics-file path\_name]{chemin du fichier où le serveur ajoute des statistiques, invoqué par rndc stats.}
\item[\hspace{1mm} bindkeys-file path\_name]{chemin du fichier pour remplacer les clés de confiance intégrée par named.}
\item[\hspace{1mm} secroots-file path\_name]{Le chemin du fichier où le serveur dumps les security root, invoqué par rndc secroots.}
\item[\hspace{1mm} session-keyfile path\_name]{chemin du fichier dans lequel écrire un clé de session TSIG générée par named à utiliser par nsupdate -l.}
\item[\hspace{1mm} session-keyname key\_name]{Le nom de la clé à utiliser pour la clé de session TSIG. défaut: local.ddns.}
\item[\hspace{1mm} session-keyalg]{L'algorithme à utiliser pour la clé de session TSIG. (hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha384, hmac-sha512 et hmac-md5)}
\item[\hspace{1mm} port ip\_port]{port UDP/TCP d'écoute du serveur. Défaut: 53}
\item[\hspace{1mm} random-device path\_name]{Source d'entropy à utiliser par le serveur}
\item[\hspace{1mm} preffered-glue ( A | AAAA | NONE )]{Si spécifié, le type listé sera émis avant d'autre glue dans la section additionnelle d'une réponse.}
\item[\hspace{1mm} root-delegation-only \texttt{[} exclude \{ namelist \} \texttt{]} ;]{Active la délégation-only dans les TLD et les zones root avec une liste d'exclusion optionnelle. Si une zone delegation-only déssert également une zone enfant, il n'est pas toujours possible de déterminer si une réponse vient de la zone delegation-only ou de la zone enfant. Les enregistrements SOA NS et DNSKEY sont des enregistrements apex uniquement et une réponse correspondante qui contient ces enregistrement ou DS est traitée comme venant d'une zone enfant. les enregistrements RRSIG sont également examinés pour voir s'il y a évidence que la réponse vient de la zone enfant. Les réponse déterminée comme venant de la zone enfant ne sont pas convertis en réponse NXDOMAIN. Noter que certains TLD ne sont pas délégation-only.}
\item[\hspace{1mm} disable-algorithms domain \{ algorithm; \texttt{[} algorithm; \texttt{]} \};]{Désactive les algorithmes DNSSEC spécifiés. Peut être spécifié plusieurs fois. Seul la déclaration match le mieux sera utilisé.}
\item[\hspace{1mm} disable-ds-digests domain \{ digest\_type; \texttt{[} digest\_type; \texttt{]} \};]{Désactive le types digests DS/DLV spécifiés. Peut être spécifié plusieurs fois. Seul la déclaration match le mieux sera utilisé.}
\item[\hspace{1mm} dnssec-lookaside ( auto | no | domain trust-anchor domain );]{Fournis le validateur avec une méthode alternative pour valider les enregistrements DNSKEY en haut de la zone.}
\item[\hspace{1mm} dnssec-must-be-secure domain yes\_or\_no]{Spécifie les hiérarchies qui doivent être ou non sécurisés (signé et validé). à no, la validation DNSSEC permet des réponses non-sûres.}
\item[\hspace{1mm} dns64 ipv6-prefix \{ \texttt{[} clients \{ address\_match\_list \}; \texttt{]} \texttt{[} mapped \{ address\_match\_list \}; \texttt{]} \texttt{[} exclude \{ address\_match\_list \}; \texttt{]} \texttt{[} suffix IPv6-address; \texttt{]} \texttt{[} recursive-only yes\_or\_no; \texttt{]} \texttt{[} break-dnssec yes\_or\_no; \texttt{]} \}; \texttt{]};]{Cette directive instruit named de retourner les adresses IPv4 mappées en requêtes AAAA quand il n'y a pas de records AAAA. Prévue pour être utilisé en conjonction avec NAT64. Chaque dns64 définis un préfix DNS64.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} exclude]{définis une liste d'IPv6 qui seront ignorées s'il elles apparaissent dans des enregistrement AAAA du nom de domaine.}
\item[\hspace{6mm} suffix]{définis les bits restants des bits d'adresse IPv4.}
\item[\hspace{6mm} recursive-only]{à yes la synthèse dns64 ne se produit que pour les requêtes récursives.}
\item[\hspace{6mm} break-dnssec]{à yes, la synthèse dns64 se produit même si le résultat, si validé, crée une erreur de validation DNSSEC.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} dnssec-update-mode ( maintain | no-resign );]{à maintain dans une zone master qui est signée avec DNSSEC et configurée pour les mises à jours dynamiques, et si named a accès à la clé de signature privée de la zone, named signe automatiquement toutes nouveaux enregistrements ou changement et maintient les signature pour la zone en régénérant les records RRSIG quand ils approchent de la date d'expiration. À no-resign, named signe les records mais la maintenance des signatures est désactivées.}
\item[\hspace{1mm} max-zone-ttl number]{Spécifie une valeur maximale de TTL permise. Une zone avec un TTL supérieur est rejeté. C'est utile pour DNSSEC parce qu'en régénérant une nouvelle DNSKEY, l'ancienne clé doit rester disponible jusqu'à ce que les records RRSIG aient expirés des caches. Cette option garantie que le plus grand TTL dans le zone ne sera pas supérieur.}
\item[\hspace{1mm} zone-statistics full | terse | none; \texttt{]}]{Le serveur collecte des données statistiques dans toutes les zones (full), ou des statistiques minimales (terse). les statistiques sont disponible via les canaux de statistiques, ou rndc stats}
\item[\hspace{1mm} automatic-interface-scan yes\_or\_no]{Si supporté par l'OS, rescanne automatiquement les interfaces réseaux quand les adresses sont ajoutées et supprimées}
\item[\hspace{1mm} allow-new-zones yes\_or\_no]{à Yes, les zones peuvent être ajoutées en temps réel, via rndc addzone ou supprimées, via rndc delzone.}
\item[\hspace{1mm} auth-nxdomain yes\_or\_no]{à yes, le bit AA est toujours mis dans les réponses NXDOMAIN, même si le serveur n'est pas autoritatif. Utile pour de très vieux serveur DNS.}
\item[\hspace{1mm} memstatistics yes\_or\_no]{Écris les statistiques mémoire dans le fichier spécifié par memstatistics-file en quittant.}
\item[\hspace{1mm} dialup dialup\_option]{à yes, le serveur traite toutes les zones comme si elle faisaient du transfert de zone via un lien dialup. cette option peut également être spécifiée dans une vue ou une zone. Si la zone est master, alors le serveur envoie une demande NOTIFY à tous les esclaves. Cela déclenche la vérification du numéro de série de la zone dans l'esclave. Le jeu de serveur qui reçoivent le NOTIFY peut être contrôlé par notify et also-notify. Si la zone est esclave ou stub, le serveur supprime les requêtes de refresh régulières, et les effectue seulement quand heartbeat-interval expire en plus d'envoyer des requêtes NOTIFY. à 'notify', permet d'envoyer seulement des messages NOTIFY, 'notify-passive' envoie des message NOTIFY et supprime les requêtes de refresh normales quand heartbeat-interval expire, et passive qui désactive simplement le traitement refresh normal.}
\end{description}
 
\hspace{1mm} dialup mode | normal refresh | heart-beat refresh | heart-beat notify
 
{\ttfamily
no (default)\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\\ yes\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\\ notify\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\\ refresh\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\\ passive\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\\ notify-passive\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_no\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_yes\_\_\_\_\_\_\_\_\_\_\_\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} flush-zones-on-shutdown yes\_or\_no]{Quand un serveur de nom quitte du à un SIGTERM, vide ou non les écritures de zone en attente.}
\item[\hspace{1mm} minimal-responses yes\_or\_no]{à yes, en générant les réponses le serveur ajoute seulement les enregistrements de l'autorité, et les sections additionnelles quand elle sont requises. Améliore les performances du serveur.}
\item[\hspace{1mm} notify yes\_or\_no | explicit | master-only]{à yes, les messages DNS NOTIFY sont envoyés quand une zone est changée. Les messages sont envoyés aux serveurs listés dans les enregistrements NS de la zone, excepté le serveur maître identifié dans le champ SOA MNAME), et à tous serveurs listés dans l'option also-notify. à 'master-only', notifie sont envoyés seulement pour les zones maître. à 'explicit', notifie seulement les serveurs explicitement listés dans also-notify. Peut également être spécifié dans les déclarations de zone.}
\item[\hspace{1mm} notify-to-soa yes-on-no]{à yes, ne vérifie pas les serveurs de nom dans le RRset NS avec les SOA MNAME. Parfois, un slave est listé dans le SOA MNAME, cette option permet de lui envoyer les messages NOTIFY}
\item[\hspace{1mm} recursion yes\_or\_no]{à yes, le serveur fait le travail nécessaire pour les requêtes récursives DNS et répondre au client. Noter que à no, cela n'empêche pas les clients d'avoir les réponses dans le cache. Le caching peut se produire à cause d'opérations interne du serveur, tel que les recherche d'adresses NOTIFY.}
\item[\hspace{1mm} request-nsid yes\_or\_no]{à yes, une option EDNS(0) NSID (Name Server Identifier) vide est envoyée avec toutes les requêtes aux serveurs de noms autoritatifs durant la résolution itérative. Si le serveur autoritatif retourne une options NSID dans sa réponse, son contenu est loggé dans la catégorie resolver au niveau info.}
\item[\hspace{1mm} request-sit yes\_or\_no]{à yes, une option EDNS SIT (Source Identity Token) est envoyée avec la requête. Si le résolveur à précédemment échoué à parler au serveur, le SIT retourné dans la précédente transaction est envoyée. C'est utilisé par le serveur pour déterminer si le résolveur lui a parlé avant.}
\item[\hspace{1mm} sit-secret yes\_or\_no]{à yes, c'est une clé secrète partagée utilisée pour générer et vérifier les options EDNS SIT dans un cluster anycast. à no, génère un secret aléatoirement au démarrage.}
\item[\hspace{1mm} rfc2308-type1 yes\_or\_no]{à yes, le serveur envoie des records NS avec le SOA pour les réponses négatives.}
\item[\hspace{1mm} provide-ixfr yes\_or\_no]{détermine si le serveur local, agissant comme maître, répond avec un transfert de zone incrémental. à yes, le transfert incrémental est fournis quand c'est possible.}
\item[\hspace{1mm} request-ixfr yes\_or\_no]{Détermine si le serveur local, agissant comme slave, demande des transferts de zone incrémental.}
\item[\hspace{1mm} additional-from-auth, additional-from-cache yes\_or\_no]{Contrôle le comportement d'un serveur autoritatif en répondant aux requêtes qui ont des données additionnelles, ou en suivant les chaînes CNAME et DNAME. Quand ces 2 options sont a yes, et qu'une requête est répondue depuis une donnée autoritative, la section data additionnelle de la réponse sera remplie en utilisant les données d'autres zones autoritatives et depuis le cache. Éviter la recherche depuis ces données additionnelles accélèrent les opérations du serveur. Ces options sont prévues pour être utilisée uniquement dans les serveurs ou vues authoritative-only, Tenter de les mettre à no sans spécifier recursion no cause le serveur à ignorer les options et logger un message d'erreur.}
\item[\hspace{1mm} filter-aaaa-on-v4 yes\_or\_no | break-dnssec]{Cette option est disponible si bind9 est compilé avec --enable-filter-aaaa. Aide la transition ipv4 vers ipv6 en ne donnant pas d'adresses IPv6 aux clients DNS sauf s'ils ont des connections IPv6 Internet.}
\item[\hspace{1mm} filter-aaaa-on-v6]{Identique, excepté qu'il filtre les réponses AAAA aux requêtes depuis les clients ipv6 au lieu des clients IPv4. Pour filtrer toutes les réponses, définir les 2 options à yes.}
\item[\hspace{1mm} ixfr-from-differences yes\_or\_no | master | slave]{À yes, si le serveur charge une nouvelle version d'une zone maître depuis son fichier de zone ou reçois une nouvelle version d'un fichier slave via un transfert de zone, il compare la nouvelle version à la précédente et calcule un jeu de différences. La différence est ainsi loggées dans le fichier journal de la zone pour que les changements puissent être transmis aux slaves comme transfert de zone incrémental. accepte également 'master' et 'slave' aux niveaux vue et option qui permet d'activer pour toutes les zones master ou slaves respectivement.}
\item[\hspace{1mm} multi-master yes\_or\_no]{Devrait être activé quand il y'a plusieurs serveurs maîtres pour une zone. À yes, named ne log rien quand le numéro de série dans le maître est inférieur à ce que named à.}
\item[\hspace{1mm} dnssec-enable yes\_or\_no]{Active le support DNSSEC dans named.}
\item[\hspace{1mm} dnssec-validation yes\_or\_no]{Active la validation DNSSEC dans named.}
\item[\hspace{1mm} dnssec-accept-expired yes\_or\_no]{Accepte les signatures expirées en vérifiant les signature DNSSEC. Définir à yes laisse named vulnérable aux attaques replay.}
\item[\hspace{1mm} querylog yes\_or\_no]{Spécifie si le query logging devrait être démarré quand named démarre. Si querylog n'est pas spécifié, alors le query logging est déterminé par la présence de la catégorie de logging queries.}
\item[\hspace{1mm} check-names ( master | slave | response ) ( warn | fail | ignore );]{Cette option est utilisée pour restreindre le jeu de caractère et syntaxe de certains nom de domaine dans les fichiers master et/ou dans les réponse DNS reçues du réseaux. Le défaut varie en accord avec l'utilisation. Pour les zones maître, le défaut est 'fail'. Pour les zones slave, le défaut est 'warn'. Pour les réponses reçues, le défaut est 'ignore'.}
\item[\hspace{1mm} check-dup-records ( warn | fail | ignore );]{Vérifie les zones maître pour les enregistrements qui sont traités différemment par DNSSEC mais sémantiquement égaux en DNS plain.}
\item[\hspace{1mm} check-mx ( warn | fail | ignore );]{vérifie si l'enregistrement MX apparaît pour référrer à une IP.}
\item[\hspace{1mm} check-wildcard yes\_or\_no]{Cette option est utilisée pour vérifier les wildcard non terminals, qui sont généralement le résultat d'une erreur de compréhension de l'algorithme de matching wildcard. Cette option affectes les zones master.}
\item[\hspace{1mm} check-integrity yes\_or\_no]{Effectue des vérifications d'intégrité avant de charger une zone. Cela vérifie que les records MX et SRV réfèrent à une adresse. Pour les records MX et SRV, seuls les noms d'hôte dans la zone sont vérifiés. Pour les records NS, seuls les noms sous le top of zone sont vérifiés.}
\item[\hspace{1mm} check-mx-cname ( warn | fail | ignore );]{définis le comportement de check-integrity en vérifiant les enregistrement MX qui réfèrent à des CNAME.}
\item[\hspace{1mm} check-srv-cname ( warn | fail | ignore );]{définis le comportement de check-integrity en vérifiant les enregistrement SRV qui réfèrent à des CNAME.}
\item[\hspace{1mm} check-sibling yes\_or\_no]{vérifie également si des sibling glue existent.}
\item[\hspace{1mm} check-spf ( warn | fail | ignore );]{définis le comportement de check-integrity en vérifiant que 2 formes de record Sender Policy Framework (records TXT commençant avec 'v=spf1' et SPF) existent ou non.}
\item[\hspace{1mm} zero-no-soa-ttl yes\_or\_no]{En retournant des réponses autoritatives négatives au demandes SOA, définis le TTL de l'enregistrement SOA retourné dans la section autorité à 0.}
\item[\hspace{1mm} zero-no-soa-ttl-cache yes\_or\_no]{En cachant une réponse négative d'une requête SOA définis le TTL à zero.}
\item[\hspace{1mm} update-check-ksk yes\_or\_no]{à yes, vérifie le bit ksk dans chaque clé pour déterminer comment la clé devrait être utilisée en générant les RRSIGs pour une zone sécurisée. Normalement, les clés de signature de zone (c'est à dire les clés avec le bit ksk mis) sont utilisés pour signer toute la zone, alors que les clé de signature de clé (les clés avec le bit ksk mis) sont seulement utilisé pour signer le RRset DNSKEY dans la zone apex. Cependant, si cette option est à no, le bit ksk est ignoré, les ksk sont traités comme s'ils étaient des ZSK et sont utilisé pour signer toute la zone.}
\item[\hspace{1mm} dnssec-dnskey-kskonly yes\_or\_no]{a yes et update-check-ksk à yes, seul les clés de signature de clé seront utilisées pour signer les RRset DNSKEY dans la zone apex. Les clés de signature de zone seront utilisées pour signer le reste de la zone, mais par le RRset DNSKEY.}
\item[\hspace{1mm} dnssec-loadkeys-interval]{Quand une zone est configurée avec auto-dnssec maintain, sont dépôt de clé doit être vérifié périodiquement pour voir si une nouvelle clé a été ajoutée ou la métadonnée de timing d'une clé existant a été mise à jours. cette option définis la fréquence de vérification automatique, en minute. défaut: 60 (de 1 à 1440)}
\item[\hspace{1mm} try-tcp-refresh yes\_or\_no]{Tente de rafraîchir la zone en utilisant TCP si les requêtes UDP échouent. pour compatibilité avec BIND8.}
\item[\hspace{1mm} dnssec-secure-to-insecure yes\_or\_no]{Permet à une zone dynamique de transiter d'une zone sécure à une zone insécure en supprimant tous les records DNSKEY.}
\end{description}
 
\vspace{1cm}{\huge Forwarding }
 
\
 
\hspace{1mm}  Les options suivantes peuvent être utilisées pour créer un grand cache sur quelques serveurs, réduisant le trafique sur les liens vers les serveurs de nom externe. Le forwarding peut également être utilisé pour autoriser les requêtes par les serveur qui n'ont pas d'accès directe à Internet, mais souhaitent rechercher des noms exterieurs. Le forwarding se produit seulement dans le requêtes pour lequels le serveur n'est pas autoritatif et n'a pas de réponse dans son cache.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} forward only | first]{Cette option est seulement significative si une liste de forwarders n'est pas vide. À 'first', le serveur requête les forwarders en premier, puis recherche la réponse par lui-même. À 'only', le serveur ne requête que les forwarders.}
\item[\hspace{1mm} forwaders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \};]{Spécifie les adresses IP à utiliser pour le forwarding. Peut également être configuré par domaine.}
\end{description}
 
\vspace{1cm}{\huge Dual-stack }
 
\
 
\hspace{1mm}  Les serveurs dual-stack sont utilisés comme serveurs de secours pour fonctionner lors de problèmes d'accessibilité du à un manque de support pour IPv4 ou IPv6 sur la machine hôte.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} dual-stack-servers]{Spécifie les noms d'hôte ou adresses des machine avec un accès aux transport IPv4 et IPv6. Si un nom d'hôte est utilisé, le serveur doit être capable de résoudre le nom en utilisant seulement le transport qu'il a. Si la machine est dual-stackée, alors cette option n'a pas d'effet sauf si un accès à un transport a été désactivé.}
\end{description}
 
\vspace{1cm}{\huge Contrôle d'accès }
 
\
 
 
 
\begin{description} \normalsize
\item[\hspace{1mm} allow-notify]{Spécifie quels hôtes sont autorisés à notifier ce serveur, un slave, ou les changements de zone en plus des zones maître. Peut également être spécifié dans une déclaration zone. Est seulement significatif pour une zone slave. Si non spécifié, traite les messages de notification seulement pour les zones maître.}
\item[\hspace{1mm} allow-query]{Spécifie quels hôtes sont autorisés à requêter le serveur. Peut également être spécifié dans une zone.}
\item[\hspace{1mm} allow-query-on]{Spécifie quelles adresses locales peuvent accepter les requêtes DNS. Uniquement vérifié pour les requêtes qui sont permises par allow-query. Peut être spécifié dans les déclarations de zone}
\item[\hspace{1mm} allow-query-cache]{Spécifie quels hôtes peuvent obtenir les réponses depuis les caches. défaut: localnets; localhosts;}
\item[\hspace{1mm} allow-recursion]{spécifie quels hôtes sont autorisés à faire de requêtes récursives sur ce serveur. défaut: localnets; localhosts;}
\item[\hspace{1mm} allow-recursion-on]{Spécifie quelles adresses peuvent accepter des requêtes récursives}
\item[\hspace{1mm} allow-update]{Spécifie quels hôtes sont autorisés à envoyer des mises à jours Dynamic Updates pour les zones maître.}
\item[\hspace{1mm} allow-update-forwarding]{Spécifie quels hôtes sont autorisés à envoyer des mises à jours Dynamic Uptates aux zones esclaves à forwarder au master. défaut none, peut être any, d'autres valeurs n'ont pas de sens, vu que c'est de la responsabilité du contrôle d'accès sur serveur maître de gérer ça.}
\item[\hspace{1mm} allow-transfer]{Spécifie quels hôtes sont autorisés à recevoir les transferts de zone du serveur. Peut également être spécifié dans les zones.}
\item[\hspace{1mm} blackhole]{Spécifie une liste d'adresses auxquelles le serveur refusera de répondre ou d'utiliser pour résoudre une requête.}
\item[\hspace{1mm} filter-aaaa]{Spécifie une liste d'adresses auxquelles filter-aaaa-on-v4 s'applique}
\item[\hspace{1mm} no-case-compress]{Spécifie une liste d'adresses qui nécessite que les réponses utilisent la compression sensible à la casse. Cet ACL peut être utilisée quand named doit travailler avec des client qui ne sont pas compliant rfc1034.}
\item[\hspace{1mm} resolver-query-timeout]{La quantité de temps que le resolver passe à tenter de répondre à une requête récursive avant d'échouer, en seconde.}
\end{description}
 
\vspace{1cm}{\huge Interfaces }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} listen-on \texttt{[} port port\_num \texttt{]} \{ acl\_name; \}]{Les interfaces et ports que le serveur utilise pour répondre aux requêtes peut être spécifié ici. Il s'agit d'adresses IPv4. Plusieurs déclarations peuvent être définis.}
\item[\hspace{1mm} listen-on-v6 \texttt{[} port port\_num \texttt{]} \{ acl\_name; \}]{Idem pour les adresse IPv6}
\end{description}
 
\vspace{1cm}{\huge adresse de requête }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} query-source address * port *;]{Si le serveur ne connaît pas la réponse à une question, il va requêter d'autres serveurs de nom. Cette option spécifie l'adresse et le port utilisé pour de telles requêtes.}
\item[\hspace{1mm} query-source-v6 address * port *;]{Idem pour ipv6}
\end{description}
 
\vspace{1cm}{\huge Transfert de zone }
 
\
 
\hspace{1mm}  Bind a des mécanismes en place pour faciliter les transferts de zone et définir des limites sur la quantité de charge de ce transfert dans le système.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} also-notify]{Définis une liste d'adresses de serveurs de nom à qui envoyer également les messages NOTIFY. Cela permet de s'assurer que les copies de zone sont rapidement convergés sur les serveurs Stealth. Optionnellement un port peut être spécifié avec chaque adresse. Une clé TSIG optionnelle peut aussi être spécifié avec chaque adresse. Les listes masters peuvent être utilisées pour cela.}
\item[\hspace{1mm} max-transfer-time-in]{termine les transferts de zone entrants durant plus longtemps que ce délai en minute. défaut 120, max 40320}
\item[\hspace{1mm} max-transfer-idle-in]{termine les transferts de zone entrants qui ne progressent plus depuis ce délai en minute. défaut 60}
\item[\hspace{1mm} max-transfer-time-out]{termine les transferts de zone sortants durant plus longtemps que ce délai en minute. défaut 120, max 40320}
\item[\hspace{1mm} max-transfer-idle-out]{termine les transferts de zone sortants qui ne progressent plus depuis ce délai en minute. défaut 60}
\item[\hspace{1mm} serial-query-rate]{Les serveurs slave vont périodiquement requêter le master pour trouver si des numéros de zone ont changés. Chacune de ces requêtes utilise une quantité de bande passante du serveur slave. Cette options définis le nombre maximum de requêtes envoyées pas secondes. défaut: 20. contrôle également le taux d'émission des messages NOTIFY pour les zone slave et master.}
\item[\hspace{1mm} transfer-format]{Les transferts de zone peuvent être envoyés en 2 format: one-answer et many-answers. Ce dernier est plus efficace mais seulement supporté par les serveur DNS récents.}
\item[\hspace{1mm} transfers-in]{Nombre maximum de transferts de zone entrants qui peuvent être lancés simultanément. défaut: 10. Des valeurs plus grandes peuvent accelerer la convergence des zones slaves, mais augmente la charge du système.}
\item[\hspace{1mm} transfer-out]{Le nombre maximum de transferts de zone sortants qui peuvent être lancés simultanément. défaut: 10. Les demandes de transfert de zone au delà de cette limite seront refusés.}
\item[\hspace{1mm} transfer-per-ns]{Le nombre maximum de transferts de zone qui peuvent être lancés simultanément depuis un serveur de nom. défaut: 2. Des valeurs plus grandes peuvent accelerer la convergence des zones slaves, mais augmente la charge du système.}
\item[\hspace{1mm} transfer-source]{Détermine quelles adresses locales seront utilisée pour les connections IPv4 TCP utilisées pour le transfert de zone entrant sur le serveur. Détermine également l'adresse IPv4 et optionnellement le port UDP, utilisé pour les requêtes de rafraîchissement et le forward de mises à jours dynamique.}
\item[\hspace{1mm} transfer-source-v6]{Idem, sur ipv6}
\item[\hspace{1mm} notify-source]{Détermine quelles adresses locale source, et optionnellement le port UDP sera utilisé pour envoyer des messages NOTIFY. Cette adresse doit apparaître dans les masters de zone des serveurs slave ou dans une clause allow-notify.}
\item[\hspace{1mm} notify-source-v6]{idem, sur IPv6}
\end{description}
 
\vspace{1cm}{\huge Liste de ports UDP }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} use-v4-udp-ports \{ range 1024 65535; \};]{Spécifie les port udp à utiliser pour récupérer la plage de ports éphémère.}
\item[\hspace{1mm} use-v6-udp-ports \{ range 1024 65535; \};]{idem sur ipv6}
\item[\hspace{1mm} avoid-v4-udp-ports \{\};]{Permet d'excluse une plage de port}
\item[\hspace{1mm} avoid-v6-udp-ports \{\};]{Idem sur ipv6}
\end{description}
 
\vspace{1cm}{\huge Limites de ressource système }
 
\
 
\hspace{1mm}  Les ressources du système utilisées par le serveur peuvent être limités. la valeur 'unlimited' désactive la limite, ou utilise la valeur maximale.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} coresize]{Taille maximum d'un core dump.}
\item[\hspace{1mm} datasize]{quantité maximum de données mémoire que le serveur peut utiliser. C'est une limite hard.}
\item[\hspace{1mm} files]{Nombre maximum de fichiers que le serveur peut ouvrir simultanément.}
\item[\hspace{1mm} stacksize]{Quantité de mémoire de pile que le serveur peut utiliser.}
\end{description}
 
\vspace{1cm}{\huge Limites de ressources serveur }
 
\
 
\hspace{1mm}  Les options suivantes définissent les limites de la consommation de ressource du serveur forcés en interne par le serveur au lieur de l'OS
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} max-journal-size]{Définis une taille maximum pour chaque fichier journal. À l'approche de cette taille, les anciens enregistrements sont supprimés. max 2Go.}
\item[\hspace{1mm} recursive-clients]{nombre maximum de recherches récursives simultanés que le serveur effectue à la demande des client. défaut: 1000. Chaque client récursif utilise environ 20Ko de mémoire.}
\item[\hspace{1mm} tcp-clients]{Nombre maximum de connexions TCP simultanés que le serveur accepte. défaut: 100}
\item[\hspace{1mm} reserved-sockets]{Nombre de descripteur de fichier réservés pour TCP, stdio, etc. Doit être suffisant pour couvrir le nombre d'interfaces utilisées par named. Défaut 512, minimum 128, et maximum = maxsockets -128}
\item[\hspace{1mm} max-cache-size]{Quantité de mémoire à utiliser pour le cache du serveur, en octets. Quand la limite est atteinte, les enregistrement expirent prématurément.}
\item[\hspace{1mm} tcp-listen-queue]{Profondeur de file d'écoute. défaut et minimum: 10. Si le kernel support le filtre d'acceptation 'dataready', cela contrôle également combien de connexions TCP seront mis en file dans l'espace kernel en attendant que les données soient acceptés.}
\end{description}
 
\vspace{1cm}{\huge Intervals de tâches périodique }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} heartbeat-interval]{Le serveur effectue des tâche de maintenance de zone pour toutes les zones marquées dialup. défaut: 60minutes.}
\item[\hspace{1mm} interface-interval]{Le serveur scanne la liste des interfaces réseaux. défaut 60minutes}
\item[\hspace{1mm} statistics-interval]{les statistiques du serveur sont loggés à cet interval. défaut: 60minutes}
\end{description}
 
\vspace{1cm}{\huge topology }
 
\
 
\hspace{1mm} Quand le serveur choisi un serveur de nom à requêter depuis une liste de serveurs de noms, il préfère celui qui est topologiquement plus proche de lui. La déclaration topologie prend une liste d'adresse, et l'interprète. La position d'une adresse dans la liste indique sa distance. Le premier élément de la liste est le plus proche.
 
{\ttfamily
topology \{\\ \hspace{2mm}10/8;\\ \hspace{2mm}!1.2.3/24;\\ \hspace{2mm}\{ 1.2/16; 3/8; \};\\ \};\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge sortlist }
 
\
 
\hspace{1mm}  La réponse à une requête DNS peut consister de plusieurs RR formant un RRset. Le serveur de nom va normalement retourner les RR dans le RRset dans un ordre indéterminé. Le résolveur client devrait réarranger les RR de manière approprié, en utilisant les adresses dans le réseau local de préférence. Cependant, tous les résolveurs ne peuvent pas le faire correctement. Quand un client utilise un serveur local, le trie peut être effectué dans le serveur, basé sur l'adresse du client. Cela nécessite seulement de configurer les serveurs de nom, pas les clients.
\vspace{5mm} \\
 
 
\hspace{1mm}  La déclaration sortlist prend une address\_match\_list et l'interprète même plus spécifiquement que la déclaration topology. Chaque déclaration doit être un address\_match\_list avec 1 ou 2 éléments. Le premier élément ( qui peut être uni adresse IP, un préfixe IP, un nom d'ACL ou une address\_match\_list imbriquée ) de chaque liste est vérifiée avec l'adresse sources de la requête jusqu'à ce qu'un match est trouvé.
\vspace{5mm} \\
 
 
\hspace{1mm}  Une fois l'adresse source de la requête est matchée, si la déclaration contient seulement un élément, l'élément est placé en premier dans la réponse. Si la déclaration est une liste de 2 éléments, le second élément est traité de la même manière que dans la déclaration topology. Chaque liste a une distance assignée et l'adresse dans la réponse avec la distance minimum est placée au début de la réponse.
\vspace{5mm} \\
 
 
\hspace{1mm}  Dans l'exemple suivant, les requêtes reçues depuis une des adresses de l'hôte lui-même aura une réponse d'adresse préférés sur le réseau local. Ensuite, les adresses préférées sont les adresses dans le réseaux 192.168.1/24, puis soit 192.168.2/24 soit 192.168.3/24. Les requêtes reçues depuis un hôte dans le réseaux 192.168.4/24 ou 192.168.5/24 auront d'autres adresse sur ces réseaux. Les requêtes reçues depuis un hôte dans le réseau 192.168.1/24 va préférer d'autres adresses dans le réseaux 192.168.2/24 et 192.168.3/24. Les requêtes reçues depuis un hôte dans le réseau 192.168.4/24 ou 192.168.5/24 vont seulement préférer d'autres adresse dans leur réseau respectif.
\vspace{5mm} \\
 
 
{\ttfamily
sortlist \{\\ \hspace{2mm}// IF the local host THEN first fit on the following nets\\ \hspace{2mm}\{ localhost;\\ \hspace{2mm}\hspace{2mm}\{ localnets;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}192.168.1/24;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}\{ 192.168.2/24; 192.168.3/24; \}; \}; \};\\ \hspace{2mm}// IF on class C 192.168.1 THEN use .1, or .2 or .3\\ \hspace{2mm}\hspace{2mm}\{ 192.168.1/24;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}\{ 192.168.1/24;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}\hspace{2mm}\{ 192.168.2/24; 192.168.3/24; \}; \}; \};\\ \hspace{2mm}// IF on class C 192.168.2 THEN use .2, or .1 or .3\\ \hspace{2mm}\{ 192.168.2/24;\\ \hspace{2mm}\hspace{2mm}\{ 192.168.2/24;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}\{ 192.168.1/24; 192.168.3/24; \}; \}; \};\\ \hspace{2mm}// IF on class C 192.168.3 THEN use .3, or .1 or .2\\ \hspace{2mm}\{ 192.168.3/24;\\ \hspace{2mm}\hspace{2mm}\{ 192.168.3/24;\\ \hspace{2mm}\hspace{2mm}\hspace{2mm}\{ 192.168.1/24; 192.168.2/24; \}; \}; \};\\ \hspace{2mm}// IF .4 or .5 THEN prefer that net\\ \hspace{2mm}\{ \{ 192.168.4/24; 192.168.5/24; \};\\ \hspace{2mm}\};\\ \};\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge rrset-order }
 
\
 
\hspace{1mm} Quand plusieurs records sont retournés dans une réponse, il peut être utile de configurer l'ordre des records placés dans la réponse. La déclaration rrset-order permet la configuration de l'ordre des records dans une réponse à plusieurs records. Un orders\_spce est définis comme suit:
 
{\ttfamily
\texttt{[}class class name\texttt{]} \texttt{[}type type name\texttt{]} \texttt{[}name "domain name"\texttt{]} order ordering\\
}
\vspace{8mm}
 
\hspace{1mm}  Si aucune classe n'est spécifiée, le défaut est ANY. Si aucun type n'est spécifié, le défaut est ANY. Si aucun nom n'est spécifié, le défaut est '*'. Les valeurs légales pour ordering sont:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} fixed]{Les records sont retournés dans l'ordre qui ont été définis dans le fichier de zone.}
\item[\hspace{1mm} random]{Les records sont retourné aléatoirement}
\item[\hspace{1mm} cyclic]{Les records sont retourné en cycle round-robin.}
\end{description}
 
\hspace{1mm} Exemple:
 
{\ttfamily
rrset-order \{\\ \hspace{2mm}class IN type A name "host.example.com" order random;\\ \hspace{2mm}order cyclic;\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  Force les réponse pour les enregistrements de type A dans la classe IN ayant host.example.com comme suffixe, à toujours être retourné aléatoirement. Les autres enregistrements sont retournés de manière cyclique. Si plusieurs rrest-order sont spécifiés, ils ne sont pas combinés, le dernier s'applique.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge tuning }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} lame-ttl]{Définis le ttl de mise en cache des serveur lame. 0 désactive la mise en cache. défaut 600, max 1800. Contrôle également la quantité de temps d'erreurs de validation DNSSEC qui sont mis en cache.}
\item[\hspace{1mm} max-ncache-ttl]{Pour réduire le trafic réseau et augmenter les performances, le serveur stocke les réponses négative. Cette option définis la durée de rétention pour ces réponses dans le serveur en secondes. défaut: 10800, max 7 jours.}
\item[\hspace{1mm} min-roots]{Nombre minimum de serveurs root requis pour une requête pour que les serveurs root soient acceptés. défaut: 2}
\item[\hspace{1mm} sig-validity-interval]{Spécifie le nombre de jours dans le future d'expiration des signatures DNSSEC générées automatiquement en résultat à des mises à jours dynamique. Il y a un second champs optionnel qui spécifie le délai de régénération des signatures avant expiration. Le second champ est spécifié en jours si l'interval de base est supérieur à 7 jours, sinon il est spécifié en heures. l'interval de base est de 30 jours, donnant une re-signature de 7 jours et demi. Les valeurs maximum sont 10ans. 3660 jours.}
\item[\hspace{1mm} sig-signing-nodes]{Spécifie le nombre maximum de nœuds à examiner dans chaque quantum en signant une zone avec une nouvelle DNSKEY. défaut: 100}
\item[\hspace{1mm} sig-signing-signatures]{Spécifie un seuil de signatures qui vont terminer le traitement d'un quantum en signant une zone avec une nouvelle DNSKEY. défaut: 10.}
\item[\hspace{1mm} sig-signing-type]{Spécifie un type RDATA privé à utiliser en génèrent des records d'état de signature. défaut: 65534. Il est prévu que ce paramètre soit supprimé une fois qu'il y aura un type standard.}
\item[\hspace{1mm} min-refresh-time, max-refresh-time, min-retry-time, max-retry-time]{Ces options contrôlent le comportement du serveur en rafraîchissant une zone ou en retentant des transferts échoués. Généralement, les valeurs SOA pour la zone sont utilisés, mais ces valeurs sont définis par le master, donnant au serveur administrateurs de serveurs slaves peut de contrôle sur leur contenu. Ces options permettent à l'administrateur de définir un temps et tentative de refresh minimum et maximum soit par zone, par vue, ou globalement. Ces options sont valides pour les zone slaves et stub. Défaut: 300, 2419200, 500, 1209600}
\item[\hspace{1mm} edns-udp-size]{Définis la taille de tampon UDP EDNS initial, pour contrôler la taille des paquets reçus depuis les serveurs autoritatifs en réponse aux requêtes récursives. Les valeurs valides sont 512 à 4096 (défaut). changer cette valeur est d'avoir des réponses udp à passer via des firewalls qui bloquent les paquets fragmentés et/ou bloquent les paquets DNS UDP supérieurs à 512 octets.}
\item[\hspace{1mm} max-udp-size]{Définis la taille maximale de message UDP EDNS à envoyer en octets. Les valeurs valides sont 512 à 4096 (défaut). baisser cette valeur encourage l'utilisation de TCP.}
\item[\hspace{1mm} masterfile-format]{Spécifie le format de fichier des fichiers de zone. Défaut: text, qui est la représentation standard, excepté pour les zone slaves, dans lequel le défaut est raw. Les autres formats sont à générer avec named-compilezone, ou dumpé par named.}
\item[\hspace{1mm} clients-per-query, max-clients-per-query]{Définis la valeur initiale (minimal) et le nombre maximum de clients récursifs simultanément pour une requête données (<qname,qtype,qclass>) que le serveur va accepter avant de de supprimer les clients additionnels. défaut: 10 et 100.}
\item[\hspace{1mm} notify-delay]{Délai en secondes entre l'envoie d'un jeu de messages notify pour une zone. défaut 5}
\item[\hspace{1mm} max-rsa-exponent-size]{Taille de l'exposant RSA maximum, en bits, qui sera accepté lors de la validation. de 35 à 4096bits.}
\item[\hspace{1mm} prefetch]{Quand une requête est reçue pour une données cachée qui va expirer sous peut, named peut rafraîchir la donnée depuis le serveur autoritatif immédiatement, s'assurant que le cache a toujours la réponse disponible. Cette option spécifie le TTL déclencheur: quand une donnée en cache avec un TTL inférieur est rencontré durant le traitement d'une requête, elle sera rafraîchie. de 1 à 10secondes. Un second argument optionnel spécifie le TTL eligible: la plus petite valeur TTL original qui sera accepté pour un record pour être éligible au prefetching. Ce TTL doit être d'au moins 6 secondes de plus que le TTL déclencheur. défaut: 2 9.}
\end{description}
 
\vspace{1cm}{\huge informations de zones }
 
\
 
\hspace{1mm}  Le serveur fournis des informations de diagnostique utile au travers de zone intégrées sous le pseudo domain bind, dans la classe CHAOS. Ces zones font partie d'une vue intégrée de classe CHAOS qui est séparée de la vue par défaut de classe IN. La plupart des options de configurations globales s'appliquent à cette vue, mais certaines sont remplacées en interne: notify-recursion et allow-new-zones sont toujours à no, et rate-limit est mis pour autoriser 3 réponses par seconde. Pour désactiver ces zones, utiliser les options ci-dessous, ou cacher la vue CHAOS en définissant une vue explicite de classe CHAOS qui matche tous les clients.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} version]{La version du serveur à reporter via une requête du nom version.bind avec le type TXT de classe CHAOS. Le défaut est le vrai numéro de version est utilisé. spécifier version none désactive le traitement des requêtes.}
\item[\hspace{1mm} hostname]{Le nom d'hôte que le serveur devrait reporter via une requête du nom hostname.bind avec le type TXT, classe CHAOS. hostname none désactive le traitement des requêtes}
\item[\hspace{1mm} server-id]{L'id que le serveur devrait reporter en reçevant une requête NSID (Name Server IDentifier), ou une requête de nom ID.SERVER avec le type TXT, classe CHAOS. server-id none le désactive.}
\end{description}
 
\vspace{1cm}{\huge Zones vide embarquées }
 
\
 
\hspace{1mm}  named a des zones embarquées vides. Ces zones devraient normalement être répondues localement et ne devraient pas être envoyées vers les serveurs root. En particulier, ces zones couvrent les espaces de nom pour les adresses des rfc1918, rfc5193, rfc5737 et rfc6598. Elles incluent l'espace de nom inversé pour les adresse locales IPv6, et les adresse de lien local, l'adresse de bouclage IPv6 et les adresses IPv6 inconnues. La liste actuelle est:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} 10.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 16.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 17.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 18.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 19.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 20.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 21.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 22.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 23.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 24.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 25.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 26.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 27.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 28.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 29.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 30.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 31.172.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 168.192.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 64.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 65.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 66.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 67.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 68.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 69.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 70.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 71.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 72.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 73.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 74.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 75.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 76.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 77.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 78.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 79.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 80.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 81.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 82.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 83.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 84.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 85.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 86.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 87.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 88.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 89.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 90.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 91.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 92.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 93.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 94.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 95.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 96.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 97.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 98.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 99.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 100.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 101.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 102.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 103.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 104.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 105.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 106.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 107.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 108.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 109.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 110.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 111.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 112.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 113.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 114.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 115.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 116.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 117.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 118.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 119.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 120.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 121.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 122.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 123.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 124.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 125.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 126.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 127.100.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 0.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 127.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 254.169.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 2.0.192.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 100.51.198.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 113.0.203.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 255.255.255.255.IN-ADDR.ARPA]{}
\item[\hspace{1mm} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA]{}
\item[\hspace{1mm} 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA]{}
\item[\hspace{1mm} 8.B.D.0.1.0.0.2.IP6.ARPA]{}
\item[\hspace{1mm} D.F.IP6.ARPA]{}
\item[\hspace{1mm} 8.E.F.IP6.ARPA]{}
\item[\hspace{1mm} 9.E.F.IP6.ARPA]{}
\item[\hspace{1mm} A.E.F.IP6.ARPA]{}
\item[\hspace{1mm} B.E.F.IP6.ARPA]{}
\end{description}
 
\hspace{1mm}  Les zones vides sont définissables au niveau de la vue et s'appliquent seulement aux vues de classe IN. Désactiver les zones vides sont seulement hérités depuis les options s'il n'y a pas de zones vide désactivée spécifiée au niveau de la vue. Pour remplacer la liste des zones désactivées, on peut désactiver la zone root au niveau de la vue, par exemple: disable-empty-zone ".";
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} empty-server]{spécifie que le nom de serveur va apparaître dans le record SOA retourné pour les zones vide. Si rien n'est spécifié, le nom de zone est utilisé}
\item[\hspace{1mm} empty-contact]{Spécifie quel nom de contact appparaît dans le record SOA retourné pour les zones vides. Si rien n'est spécifié, '.' est utilisé}
\item[\hspace{1mm} empty-zones-enables]{Active ou désactive les zones vide. Par défaut, elles sont activés.}
\item[\hspace{1mm} disable-empty-zone]{Désactive des zones vide individuellement. Par défaut aucune n'est désactivée. Peut être spécifié plusieurs fois.}
\end{description}
 
\vspace{1cm}{\huge cache de section additionnel }
 
\
 
\hspace{1mm}  Le cache additionnel, également appelée acache, est un cache interne pour améliorer les performances de réponse de bind9. Quand une section de cache additionnel est activé, bind9 cache un raccourci interne vers la section additionnelle pour chaque réponse RR. Noter que acache est un mécanisme interne à bind9.
\vspace{5mm} \\
 
 
\hspace{1mm}  Le cache additionnel ne change par le contenu de la réponse excepté l'ordre RRset de la section additionnelle, mais peut améliorer les performances de réponse significativement. C'est particulière efficace pour les serveurs autoritatifs pour une zone qui a de nombreuses délégations avec de nombreux glue RR.
\vspace{5mm} \\
 
 
\hspace{1mm}  Pour obtenir un maximum de performances, définir additional-from-cache à no est recommandé, vu que l'implémentation actuelle de acache ne crée pas de raccourcis depuis le cache de données DNS. Un désavantage de acache est qu'il nécessite plus de mémoire. La cache de section additionnel a un effet mineur sur l'ordre RRset dans la section additionnelle. sans acache, l'ordre cyclic est effectif pour la section additionnelle aussi bien que les sections réponse et autorité. Cependant, le acache fixe l'ordre quand il est caché la première fois, et le même ordre est concervé ensuite sans regarder le rrset-order. L'effet devrait être minime vu qu'un RRset dans la section additionnelle ne contient généralement que peu de RR dans lequel l'ordre n'est pas important.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} acache-enable]{active le acache. défaut: no.}
\item[\hspace{1mm} acache-cleaning-interval]{en minute. Vide les entrées gelées du cache. défaut: 60}
\item[\hspace{1mm} max-acache-size]{Taille maximale en Mo à utiliser pour le acache.}
\end{description}
 
\vspace{1cm}{\huge filtrage de contenu }
 
\
 
\hspace{1mm}  bind9 fournis la capacité de filtrer les réponses DNS des serveurs DNS externes contenant certains types de données dans le section réponse. Spécifiquement, il peut rejeter les adresses A ou AAAA si les adresses correspondantes matchent un liste donnée de l'option deny-answer-addresses. Il peut également rejeter les CNAME ou DNAME si le nom alias matche la liste de deny-answer-aliases. Si l'option namelist est spécifiée avec except-from, les records dont le nom requêté matche la liste seront acceptés sans regarder le filtre. De même, si le nom alias est un sous-domaine de la zone correspondancte, le filtre deny-answer-aliases ne s'applique pas; par exemple, même si example.com est spécifié pour deny-answer-aliases, www.example.com. CNAME xxx.example.com. retourné par un serveur example.com sera accepté.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} deny-answer-addresses \{ address\_match\_list \} \texttt{[} except-from \{ namelist \} \texttt{]};\texttt{]}]{Définis les adresses ignorées et les exceptions}
\item[\hspace{1mm} deny-answer-aliases \{ namelist \} \texttt{[} except-from \{ namelist \} \texttt{]};]{Rejète les records CNAME ou DNAME si le nom alias matche la liste}
\end{description}
 
\vspace{1cm}{\huge Ré-écriture de zone de stratégie de réponse (RPZ) }
 
\
 
\hspace{1mm}  Bind9 inclus un mécanisme limité pour modifier les réponses DNS pour les demandes analogues aux blacklists DNS des anti-spams. Les réponses peuvent être changées pour refuser l'existance des domaines (NXDOMAIN), refuser l'existance d'adresses IP pour les domaines (NODATA), ou contenir d'autres adresses IP ou données.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les zones de stratégie de réponse sont nommés dans l'option response-policy pour la vue ou dans les options globales. Les zones de stratégie de réponse sont ordinairement des zones contenant des RRsets qui peuvent être requêtés normalement si autorisés. Il est généralement mieux de restreindre ces requête avec quelque-chose comme allow-query \{ localhost; \};
\vspace{5mm} \\
 
 
\hspace{1mm}  Une options response-policy peut supporter plusieurs zones de stratégie. Pour maximiser les performances, un arbre radix est utilisé pour rapidement identifier les zones de stratégie de réponse qui déclenchent le match de la requête actuelle. Cela impose une limite de 32 dans le nombre de zones de stratégie dans une simple response-policy. 5 déclencheurs de stratégie peuvent être encodés dans les records RPZ.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} RPZ-CLIENT-IP]{Les records IP sont pilotés par l'adresse IP du client DNS. Ces déclencheurs sont encodés en records qui ont leur propre owner name qui sont des sous-domaines de rpz-client-ip relativisés au nom d'origine de la zone de stratégie et encode une adresse ou un block d'adresse. Les adresses IPv4 sont représentées sous la forme \textbf{prefixlength.B4.B3.B2.B1.rpz-ip}. Les préfixes IPv4 doivent être entre 1 et 32. Tous les 4 octets doivent être présents. B4 est la représentation décimale d'au moins un octet significatif de l'adresse IPv4 dans in-addr.arpa.}
\end{description}
 
\hspace{6mm}  Les adresses IPv6 sont encodés dans un format similaire: \textbf{prefixlength.W8.W7.W6.W5.W4.W3.W2.W1.rpz-ip}. Chaque Wx est un chiffre hexadécimal représentant 16bits de l'adresse IPv6. Tous les mots doivent être présents, excepté les 0 consécutifs, remplacés par \textbf{.zz}, analogue à '::'.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} QNAME]{Les enregistrements de stratégie QNAME sont déclenchés par les recherches de nom des requêtes et cible des enregistrement CNAME résolu pour générer la réponse. Le nom d'un QNAME est le nom de recherche relativisé à la zone de stratégie.}
\item[\hspace{1mm} RPZ-IP]{Les déclencheurs sont des adresses IP dans un enregistrement A ou AAA dans la section ANSWER d'une réponse. Ils sont encodé comme les déclencheurs client-IP excpté comme sous-domaine rpz-ip}
\item[\hspace{1mm} RPZ-NSDNAME]{Déclenche les correspondance de nom des serveurs autoritatfs pour les demande de nom, un parent du nom de la recherche, un CNAME pour le nom recherché, ou un parent du CNAME. Ils sont encodés comme sous-domaine de rpz-nsdname relativisé au nom d'origine RPZ. NSIP déclenche la correspondance des adresses IP dans les RRsets A et AAAA pour les domaines qui peuvent être vérifiés avec les records de stratégie NSDNAME.}
\item[\hspace{1mm} RPZ-NSIP]{Déclencheurs encodés comme déclencheurs IP excepté comme sous-domaine rpz-nsip. Les déclencheurs NSDNAME et NSIP sont vérifiés seulement avec les noms avec au moins min-ns-dots points. La valeur par défaut est 1 pour exclure les TLD.}
\end{description}
 
\hspace{1mm}  Les réponses sont vérifiés avec toutes les zones de stratégie de réponse, donc 2 ou plusieurs enregistrements de stratégie peuvent être déclenchés par une réponse. Parce que les réponse DNS sont ré-écrites en accord avec au moins un record de stratégie, un simple record encodant une action (autre que les actions DISABLED) doit être choisi. Les déclencheurs ou les records qui les encodent sont choisis pour la ré-écriture dans l'ordre suivant:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} -]{Choisis le record déclenché dans la zone qui apparaît en premier dans l'option response-policy}
\item[\hspace{1mm} -]{Préfère CLIENT-IP à QNAME à IP à NSDNAME à NSIP dans une simple zone}
\item[\hspace{1mm} -]{Avec les déclencheurs NSDNAME, préférer le déclencheur qui matche le nom le plus petit dans l'ordre DNSSEC}
\item[\hspace{1mm} -]{Avec IP ou NSIP, préfère le déclencheur avec le préfixe le plus long}
\item[\hspace{1mm} -]{Avec les déclencheurs avec la même longueur de préfixe, préfère le déclencheur IP ou NSIP qui matche la plus petite adresse IP.}
\end{description}
 
\hspace{1mm}  Quand le traitement d'une réponse est redémarré pour résoudre des records DNAME ou CNAME et qu'un record de stratégie n'a pas été déclenché, tous les zones de stratégie de réponse sont consultées de nouveau pour les noms DNAME ou CNAME et les adresses.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les jeux de record RPZ sont tout type de record DNS excepté DNAME ou DNSSEC qui encode les actions ou réponses aux recherches individuelles. N'importe quelle de ces stratégies peuvent être utilisées avec n'importe quel de ces déclencheurs. Par exemple, bien que TCP-only est communément utilisé avec les déclencheurs client-IP, il peut être utilisé avec n'importe quel déclencheur pour forcer l'utilisation de TCP pour les réponses avec les owner names dans une zone.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} PASSTHRU]{Stratégie de liste blanche spécifiée par un CNAME dont la cible est rpz-passthru. Il impose de ne pas ré-écrire la réponse.}
\item[\hspace{1mm} DROP]{Startégie de blacklist spécifiée par un CNAME dont la cible est rpz-drop. Détruit la réponse. Rien n'est envoyée au client DNS.}
\item[\hspace{1mm} TCP-Only]{Stratégie spécifiée par un CNAME dont la cible est rpz-tcp-only. Il change les réponses UDP en réponses DNS tronquées qui nécessite que le client DNS retente avec TCP. Utilisé pour limiter les attaque DNS reflection.}
\item[\hspace{1mm} NXDOMAIN]{Le domaine indéfini est encodé par un CNAME dont la cible est '.'}
\item[\hspace{1mm} NODATA]{Le jeu vide de RR est spécifié par un CNAME dont la cible est '*.'. Il ré-écrit la réponse à NODATA ou ANCOUNT=1}
\item[\hspace{1mm} Local Data]{Un jeu de records DNS ordinaire peut être utilisé pour répondre aux requêtes. Les recherches pour les types de records qui ne sont pas dans le jeu sont répondus avec NODATA. Une forme spécifiale est un wildcard "*.example.com".}
\end{description}
 
\hspace{1mm}  Toutes les action spécifiées dans les records individuels dans un zone de stratégie peuvent être remplacés avec une clause policy dans l'option response-policy. Une organisation utilisant une zone de stratégie fournie par une autre organisation peut utiliser ce mécanisme pour rediriger les domaines vers sont propre walled garden.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} GIVEN]{Indique 'ne pas remplacer mais effectuer l'action spécifiée dans la zone.}
\item[\hspace{1mm} DISABLED]{La stratégie ne fait rien mais log ce qui aurait été fait.}
\item[\hspace{1mm} PASSTHRU, DROP, TCP-Only, NXDOMAIN, NODATA]{Remplace avec la stratégie par record}
\item[\hspace{1mm} CNAME domain]{Force tous les records RPZ à agir comme s'ils étaient des records 'cname domain'}
\end{description}
 
\hspace{1mm}  Par défaut, les actions encodés dans une zone de stratégie de réponse sont appliqués seulement aux requêtes qui demande une récursion. Ce défaut peut être changé pour une simple zone de stratégie ou pour toutes les zones de stratégie dans une vue avec une clause recursive-only no;.Cette fonctionnalité est utile pour servir les même fichiers de zone en et hors d'un cloud rfc1918 et utilisant RPZ pour supprimer les réponses qui contiendrait des valeurs rfc1918 dans la vue.
\vspace{5mm} \\
 
 
\hspace{1mm}  Également, par défaut les action RPZ sont appliquées seulement aux demandes DNS qui ne demandent pas de métadonnées DNSSEC ou quand aucun record DNSSEC n'est disponible pour le nom demandé. Cela peut être changé avec break-dnssec yes.
\vspace{5mm} \\
 
 
\hspace{1mm}  Aucun enregistrement DNS n'est nécessaire pour un déclencheur QNAME ou Client-IP. Le nom ou l'adresse IP elle-même est suffisante, donc en principe le nom recherché ne doit pas être recherché récursivement. Cependant, ne pas résoudre le nom demandé peut fuiter le fait que la ré-écriture est utilisé et que ce nom est listé dans une zone de stratégie. Pour empêcher cette fuite d'information, par défaut toute récursion nécessaire pour une recherche est faite avant tout déclencheur. Vu que les domaines listés ont souvent des serveurs autoritatifs lents, ce mode peut être couteux en temps. l'option qname-wait-recurse no; change ce mode. L'option n'affecte pas les déclencheurs QNAME ou client-ip dans les zones de stratégie listées après d'autres zones contenant des déclencheurs IP, NSIP et NSDNAME, parce que la réponse serait dépendant des records RRSIG trouvés durant la résolution. Utiliser cette option peut causer des erreurs de réponse tels que SERVFAIL.
\vspace{5mm} \\
 
 
\hspace{1mm}  Le TTL d'un record modifié par les stratégie RPZ sont définis depuis le TTL de l'enregistrement dans le zone de stratégie. Il est limité à la valeur maximum. max-policy-ttl change ce maximum.
\vspace{5mm} \\
 
 
\hspace{1mm} Par exemple, on peu utiliser cette déclaration: \\
\hspace{1mm} \textbf{response-policy \{ zone "badlist"; \};} \\
\hspace{1mm} et cette déclaration de zone: \\
\hspace{1mm} \textbf{zone "badlist" \{type master; file "master/badlist"; allow-query \{none;\}; \};} \\
 
\hspace{1mm} Avec ce fichier de zone:
 
{\ttfamily
\$TTL 1H\\ @ SOA LOCALHOST. named-mgr.example.com (1 1h 15m 30d 2h)\\ NS LOCALHOST.\\ ; QNAME policy records. There are no periods (.) after the owner names.\\ nxdomain.domain.com CNAME . ; NXDOMAIN policy\\ *.nxdomain.domain.com CNAME . ; NXDOMAIN policy\\ nodata.domain.com CNAME *. ; NODATA policy\\ *.nodata.domain.com CNAME *. ; NODATA policy\\ bad.domain.com A 10.0.0.1 ; redirect to a walled garden\\ AAAA 2001:2::1\\ bzone.domain.com CNAME garden.example.com.\\ ; do not rewrite (PASSTHRU) OK.DOMAIN.COM\\ ok.domain.com CNAME rpz-passthru.\\ ; redirect x.bzone.domain.com to x.bzone.domain.com.garden.example.com\\ *.bzone.domain.com CNAME *.garden.example.com.\\ ; IP policy records that rewrite all responses containing A records in 127/8\\ ; except 127.0.0.1\\ 8.0.0.0.127.rpz-ip CNAME .\\ 32.1.0.0.127.rpz-ip CNAME rpz-passthru.\\ ; NSDNAME and NSIP policy records\\ ns.domain.com.rpz-nsdname CNAME .\\ 48.zz.2.2001.rpz-nsip CNAME .\\ ; blacklist and whitelist some DNS clients\\ 112.zz.2001.rpz-client-ip CNAME rpz-drop.\\ 8.0.0.0.127.rpz-client-ip CNAME rpz-drop.\\ ; force some DNS clients and responses in the example.com zone to TCP\\ 16.0.0.1.10.rpz-client-ip CNAME rpz-tcp-only.\\ example.com CNAME rpz-tcp-only.\\ *.example.com CNAME rpz-tcp-only.\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Limiter le taux de réponses }
 
\
 
\hspace{1mm}  Les réponses UDP excessivement identique peuvent être contrôlés en configurant un rate-limit dans une déclaration options ou view. Ce mécanisme réduit l'utilisation des serveurs autoritatifs pour amplifier les attaques DOS. Les réponses Short truncated (TC=1) peuvent être envoyées pour fournir des réponse limitées aux clients légitimes dans une plage d'adresses IP forgés. Les clients légitimes réagissent aux réponses tronquée ou supprimées en retentant avec UDP ou TCP, respectivement.
\vspace{5mm} \\
 
 
\hspace{1mm}  Ce mécanisme est prévu pour les serveurs autoritatifs. Il peut être utilisé sur les serveurs récursifs mais peut ralentir les applications telles que les serveurs SMTP et les client HTTP qui recherche souvent le même domaine.
\vspace{5mm} \\
 
 
\hspace{1mm}  rate-limite utilise un schéma de crédit ou un jeton. Chaque combinaison de réponse et client identique a un compte conceptuel qui apprend un nombre spécifié de crédits chaque seconde. Les réponses sont supprimées ou tronquées quand le compte est négatif. Les réponses sont suivies dans une fenêtre de temps qui est de 15 secondes par défaut, mais peut être changé avec l'option window (1 à 3600). Le compte ne peut plus être positif que sur la limite par seconde ou plus que la limite window. Quand le nombre spécifié de crédits pour une classe de réponse est 0, ces réponses ne sont plus limitées.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les notions de réponse identique et de client DNS pour le rate-limit ne sont pas simple. Tous les réponses à un block d'adresse sont comptés comme si c'était un seul client. Les longueurs de préfixe des blocks d'adresse sont spécifiées dans ipv4-prefix-lengh (défaut 24) et ipv6-prefix-lengh (défaut: 56).
\vspace{5mm} \\
 
 
\hspace{1mm}  Tout réponse non-vide pour un nom de domaine valide (qname) et type d'enregistrement (qtype) sont identique et on une limite spécifiée par l'option responses-per-second (c à d, réponses par seconde avec seulement un simple argument et aucun modifieurs additionnels.) Le défaut est 0, qui indique qu'il ne devrait pas y avoir de limite. Les réponse vide (NODATA) sont limitées par nodata-per-second. Les demandes pour un ou tous les sous-domains indéfinis d'un domaine valide résultent en erreurs NXDOMAIN, et sont identiques sans regarder le type de recherche. Elles sont limitées par nxdomains-per-second. Cela contrôle certaines attaques en utilisant des noms aléatoire, mais peuvent être relaxés et désactivé dans les serveurs qui attendent de nombreuses réponses NXDOMAIN, tels que depuis les blacklists anti-spam. Les référants et délégations au serveur d'un domaine donné sont identique et sont limités par referrals-per-second.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les réponses générées depuis les wildcards locaux sont comptés et limités comme s'ils étaient pour le nom de domain parent. Cela contrôle le flooding en utilisant les noms aléatoires.
\vspace{5mm} \\
 
 
\hspace{1mm}  Toutes les requêtes qui résultent en erreurs DNS autre que NXDOMAIN, tel que SERVFAIL et FORMERR, sont identique sans regarder le nom recherché (qname) ou le type de records (qtype). Cela contrôle les attaques utilisant les requêtes invalides ou distantes, sur les serveurs autoritatif cassés. Par défaut la limite sur les erreurs est la même que responses-per-second, mais peut être changé avec errors-per-seconds.
\vspace{5mm} \\
 
 
\hspace{1mm}  De plus, jusqu'à 4 options responses-per-seconde (en plus de la valeur de base) peuvent être configurés, avec des paramètres additionnels pour indiquer qu'elles s'appliquent aux réponses plus grande qu'une taille donnée, ou avec un facteur d'amplification plus grand qu'une valeur donnée. Le paramètre size définis la taille de réponse DNS minimum qui va déclencher l'utilisation de cette option respones-per-second. Le paramètre ratio définis la taille de réponse / taille de requêtes DNS minimum qui sont dans la plage, à 2 décimales. Ces limites sélective sont appliquées après que d'autres limite aient été appliquées et ne s'appliquent qu'aux réponses positives.
\vspace{5mm} \\
 
 
\hspace{1mm} Par exemple:
 
{\ttfamily
rate-limit \{\\ \hspace{2mm}responses-per-second 10;\\ \hspace{2mm}responses-per-second size 1100 5;\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} Indique que les réponse devraient être limitées à 10 par seconde pour les réponses jusqu'à 1099 octets, mais seulement 5 par seconde pour les réponses plus grandes. Cette configuration:
 
{\ttfamily
rate-limit \{\\ \hspace{2mm}responses-per-second 10;\\ \hspace{2mm}responses-per-second ratio 7.25 5;\\ \hspace{2mm}responses-per-second ratio 15.00 2;\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} Indiquent que les réponses devraient être limitées à 10 par seconde si le facteur d'amplification est inférieur à 7,25, 5 par seconde s'il est supérieur à 7,25, mais inférieur à 15, 2 par seconde au-delà de 15. Les tailles et ratios peuvent être utilisées ensemble, par exemple:
 
{\ttfamily
rate-limit \{\\ \hspace{2mm}responses-per-second 10;\\ \hspace{2mm}responses-per-second size 1000 ratio 5.00 5;\\ \hspace{2mm}responses-per-second ratio 10.00 2;\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  Cette configuration va limiter à 5 par seconde si le ration est au-dessus de 5 ou la taille supérieur à 1000.
\vspace{5mm} \\
 
 
\hspace{1mm}  De nombreuses attaques utilisant DNS impliquent les requêtes UDP avec des adresses sources forgées. Limiter le taux empêche l'utilisation de BIND9 pour flooder un réseaux avec des réponses à des requêtes avec les adresses source forgées, mais pourrait laisser un tier bloquer les réponses aux requêtes légitimes. Il y a un mécanisme qui peut répondre à certaines requêtes légitimes d'un client dont l'adresse a été forgée dans un flood. Définir slip à 2 (son défaut) cause toute autre requête UDP à être répondue avec une réponse tronquée. La petite taille et la fréquence réduite, et le manque d'amplification des réponses les rendent moins attractive pour les attaques DOS. slip doit être entre 0 et 10. Une valeur de 0 ne tronque pas les réponses, elles sont supprimée. Une valeur de 1 cause chaque réponse à être tronquées. Certaines réponses d'erreurs telles que REFUSED ou SERVFAIL ne peuvent être remplacée avec des réponses tronquées et sont fuitées au taux slip.
\vspace{5mm} \\
 
 
\hspace{1mm}  Quand le taux de recherche excède qps-scale, les valeurs responses-per-second, errors-per-second, nxdomains-per-second et all-per-second sont réduite par le ratio du taux courant à la valeur qps-scale. Cette fonctionnalité peut resserer les défense durant les ataques. Par exemple, avec qps-scale 250; responses-per-second 20; et un taux de recherche total de 1000 recherches par secondes pour toutes les recherches de tous les clients DNS incluant via TCP, alors la limite de réponses/seconde effective change à (250/1000)*20 ou 5. Les réponses envoyées via TCP ne sont pas limitées mais sont comptées pour calculer le taux de recherche par seconde.
\vspace{5mm} \\
 
 
\hspace{1mm}  La clause optionnelle domain spécifie l'espace de nom auquel les limites s'appliquent. Il est possible d'utiliser différentes limites pour différents noms en spécifiant plusieurs blocks rate-limit.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les limiteurs de taux pour différents espaces de nom maintiennent des compteurs séparés: si, par exemple, il y a une déclaration rate-limit pour com et un autre pour example.com, les recherche correspondant à example.com ne seront pas débitée avec le limiteur de taux pour com. Si une déclaration rate-limit ne spécifie pas un domain, elle s'applique au domaine root et donc tout l'espace de nom DNS.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les communautés de clients DNS peuvent avoir leur propre limites en plaçant les déclaration rate-limit dans le vues. un rate-limit dans une vue remplace et ne complète pas les déclarations globales. Les clients DNS dans une vue peuvent être exemptés de limites avec la clause exempt-clients.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les réponses UDP de tous type peuvent être limitées avec la phrase all-per-second. Cette limite devrait être au moins 4 fois plus grand que les autres limites. La taille maximum de la table utilisée pour tracker les recherches et limiter le taux de réponses est définis avec max-table-size. Chaque entrée dans la table est entre 40 et 80 octets. La table a besoin approximativement d'autant d'entrée que le nombre de requêtes reçues par secondes. Défaut: 20000. Pour réduire le coût du démarrage à froid, min-table-size (défaut: 500) peut définir la taille minimum. Utiliser log-only yes; pour tester les paramètre de limitation sans supprimer une seul recherche.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge server }
 
\
 
{\ttfamily
server ip\_addr\texttt{[}/prefixlen\texttt{]} \{\\ \hspace{2mm}\texttt{[} bogus yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} provide-ixfr yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} request-ixfr yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} request-nsid yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} request-sit yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} edns yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} edns-udp-size number ; \texttt{]}\\ \hspace{2mm}\texttt{[} nosit-udp-size number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-udp-size number ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfers number ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-format ( one-answer | many-answers ) ; \texttt{]}\texttt{]}\\ \hspace{2mm}\texttt{[} keys \{ string ; \texttt{[} string ; \texttt{[}...\texttt{]}\texttt{]} \} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} query-source \texttt{[} address ( ip\_addr |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} query-source-v6 \texttt{[} address ( ip\_addr |\hspace{2mm}*\hspace{2mm}) \texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[} port ( ip\_port |\hspace{2mm}*\hspace{2mm}) \texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} use-queryport-pool yes\_or\_no; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} queryport-pool-ports number; \texttt{]} //obsolete\\ \hspace{2mm}\texttt{[} queryport-pool-updateinterval number; \texttt{]} //obsolete\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  La déclaration server définis les caractéristiques à associer avec un serveur de noms distant. Si un préfixlen est spécifié, cela permet de couvrir plusieurs serveurs. La déclaration server peut se produire en haut de la configuration ou dans une déclaration view. Si une vue contient des déclarations server, les déclarations server dans la configuration globale sont ignorés pour la vue.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} bogus yes\_or\_no]{Si un serveur distant donne de mauvaises données, empêche d'autres requêtes sur lui. défaut: no}
\item[\hspace{1mm} provide-ixfr yes\_or\_no]{détermine si le serveur local, agissant comme maître, répond avec un transfert de zone incrémental. à yes, le transfert incrémental est fournis quand c'est possible.}
\item[\hspace{1mm} request-ixfr yes\_or\_no]{Détermine si le serveur local, agissant comme slave, demande des transferts de zone incrémental.}
\item[\hspace{1mm} request-nsid yes\_or\_no]{à yes, une option EDNS(0) NSID (Name Server Identifier) vide est envoyée avec toutes les requêtes aux serveurs de noms autoritatifs durant la résolution itérative. Si le serveur autoritatif retourne une options NSID dans sa réponse, son contenu est loggé dans la catégorie resolver au niveau info.}
\item[\hspace{1mm} request-sit yes\_or\_no]{à yes, une option EDNS SIT (Source Identity Token) est envoyée avec le requête. Si le résolveur à précédemment échoué à parler au serveur, le SIT retourné dans la précédente transaction est envoyée. C'est utilisé par le serveur pour déterminer si le résolveur lui a parlé avant.}
\item[\hspace{1mm} edns yes\_or\_no]{Détermine si le serveur local tente d'utiliser EDNS en communiquant avec le serveur distant. défaut: yes}
\item[\hspace{1mm} edns-udp-size]{Définis la taille de tampon UDP EDNS initial, pour contrôler la taille des paquets reçus depuis les serveurs autoritatifs en réponse aux requêtes récursives. Les valeurs valides sont 512 à 4096 (défaut). changer cette valeur est d'avoir des réponses udp à passer via des firewalls qui bloquent les paquets fragmentés et/ou bloquent les paquets DNS UDP supérieurs à 512 octets.}
\item[\hspace{1mm} max-udp-size]{Définis la taille maximale de message UDP EDNS à envoyer en octets. Les valeurs valides sont 512 à 4096 (défaut). baisser cette valeur encourage l'utilisation de TCP.}
\item[\hspace{1mm} nosit-udp-size number]{Définis la taille maximum de réponses UDP qui seront envoyées pour les requêtes sans un token d'identité valide.}
\item[\hspace{1mm} transfers number]{Limite le nombre de transfert de zones entrantes simultané du serveur spécifié. Non spécifié, la limite est définis en accord avec transfers-per-ns}
\item[\hspace{1mm} transfer-format]{Les transferts de zone peuvent être envoyés en 2 format: one-answer et many-answers. Ce dernier est plus efficace mais seulement supporté par les serveur DNS récents.}
\item[\hspace{1mm} keys \{ string ; \texttt{[} string ; \texttt{[}...\texttt{]}\texttt{]} \}]{Identifie une clé définie par la déclaration key, à utiliser pour une transaction TSIG en dialoguant avec le serveur distant.}
\item[\hspace{1mm} transfer-source]{Détermine quelles adresses locales seront utilisée pour les connections IPv4 TCP utilisées pour le transfert de zone entrant sur le serveur. Détermine également l'adresse IPv4 et optionnellement le port UDP, utilisé pour les requêtes de rafraîchissement et le forward de mises à jours dynamique.}
\item[\hspace{1mm} transfer-source-v6]{Idem, sur ipv6}
\item[\hspace{1mm} query-source address * port *;]{Si le serveur ne connaît pas la réponse à une question, il va requêter d'autres serveurs de nom. Cette option spécifie l'adresse et le port utilisé pour de telles requêtes.}
\item[\hspace{1mm} query-source-v6 address * port *;]{Idem pour ipv6}
\item[\hspace{1mm} ]{[SECTION] name="statistics-channels" table="codes" imbrication="0"}
\item[\hspace{1mm} ]{statistics-channels \verb|{|}
\item[\hspace{1mm}  \texttt{[} inet ( ip\_addr | * ) \texttt{[} port ip\_port \texttt{]}]{ [ allow \verb|{| address\_match\_list \verb|}| ]; ]}
\item[\hspace{1mm}  \texttt{[} inet ...; \texttt{]}]{\verb|}|;}
\end{description}
 
\hspace{1mm}  Les déclaration statistics-channels déclarent des canaux de communication à utiliser par les administrateurs système pour obtenir un accès à des informations de statistiques du serveur de nom. Cette déclaration est prévue pour être flexible pour supporter plusieurs protocoles de communication dans le future, mais actuellement seul l'accès HTTP est supporté. Il nécessite que bind9 soit compilé avec libxml2 et/ou json-c. Ces déclarations sont acceptées même s'il est construit sans la librairie, mais les accès HTTP vont échouer dans erreur.
\vspace{5mm} \\
 
 
\hspace{1mm}  Un canal de contrôle inet est un socket TCP en écoute au port spécifié sur l'ip spécifiée qui peut être une adresse IPv4 ou IPv6. La tentative d'ouvrir un canal de statistique est restreinds par la clause allow. Les statistiques sont disponible dans divers formats et vues en fonction de l'URI utilisée pour y accéder. Le format xml est accéssible via http://127.0.0.1:8888/ ou <http://127.0.0.1:8888/xml. Un fichier CSS est inclus qui peut formater les statistiques XML en tables quand il est lus dans un navigateur, et en graphique avec Google Charts API quand il est utilisé avec un navigateur javascript.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v2>]{schéma xml v2}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3>]{schéma xml v3}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/status]{Sous-jeu de statistiques (uptime et dernières reconfigurations)}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/server]{Statistiques serveur et résolveur}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/zones]{Statistiques de zone}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/net]{status réseau et socket}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/mem]{statistiques mémoire}
\item[\hspace{1mm} http://127.0.0.1:8888/xml/v3/tasks]{statistiques des tâches}
\item[\hspace{1mm} http://127.0.0.1:8888/json]{Jeu complet de statistiques au format JSON}
\item[\hspace{1mm} http://127.0.0.1:8888/json/v1/status]{Sous-jeu de statistiques (uptime et dernières reconfigurations) JSON}
\item[\hspace{1mm} http://127.0.0.1:8888/json/v1/server]{Statistiques serveur et résolveur au format JSON}
\item[\hspace{1mm} <http://127.0.0.1:8888/json/v1/zones]{Statistiques de zone au format JSON}
\item[\hspace{1mm} <http://127.0.0.1:8888/json/v1/net]{status réseau et socket au format JSON}
\item[\hspace{1mm} <http://127.0.0.1:8888/json/v1/mem]{statistiques mémoire au format JSON}
\item[\hspace{1mm} <http://127.0.0.1:8888/json/v1/tasks]{statistiques des tâches au format JSON}
\end{description}
 
\vspace{1cm}{\huge trusted-keys }
 
\
 
{\ttfamily
trusted-keys \{\\ \hspace{2mm}string number number number string ;\\ \hspace{2mm}\texttt{[} string number number number string ; \texttt{[}...\texttt{]}\texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  La déclaration trusted-keys définis les racines de sécurité DNSSEC. Une racide de sécurité est définie quand la clé publique pour une zone non-authoritative est connue, mais ne peut pas être obtenue de manière sécurisée via DNS, soit parce que c'est une zone root DNS ou parce que sa zone parent n'est pas signée. Une fois qu'une clé a été configurée comme clé de confiance, elle est traitée comme si elle avait été validée. Le résolveur tente la validation DNSSEC sur toutes les données dans les sous-domaines d'un security root.
\vspace{5mm} \\
 
 
\hspace{1mm}  Toutes les clés (et zones correspondantes) listées dans trusted-keys sont réputés exister sans regarder de quelle zone parent il s'agit. Similairement pour toutes les clés listées dans trusted-keys, elles sont utilisées pour valider le RRsed DNSKEY. Le RRset DS du parent ne sera pas utilisé.
\vspace{5mm} \\
 
 
\hspace{1mm}  Cette déclaration peut contenir plusieurs clés, chacune consistant du nom de domaine de la clé, les flags, protocoles, algorithmes, et la représentation base64 de la clé. La déclaration trusted-keys peut être définis globalement, ou dans une vue. Si les 2 sont en place, elles sont additives.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge managed-keys }
 
\
 
{\ttfamily
managed-keys \{\\ \hspace{2mm}name initial-key flags protocol algorithm key-data ;\\ \hspace{2mm}\texttt{[} name initial-key flags protocol algorithm key-data ; \texttt{[}...\texttt{]}\texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  la déclaration managed-keys, tout comme trusted-keys, définis les DNSSEC security roots. La différence est que managed-keys peut être conservé à jour automatiquement, sans l'intervention de l'opérateur. Cette déclaration possède un mot clé supplémentaire, initial-key, contenant la clé d'initialisation.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge view }
 
\
 
{\ttfamily
view view\_name\\ \hspace{2mm}\texttt{[}class\texttt{]} \{\\ \hspace{2mm}match-clients \{ address\_match\_list \};\\ \hspace{2mm}match-destinations \{ address\_match\_list \};\\ \hspace{2mm}match-recursive-only yes\_or\_no ;\\ \hspace{2mm}\texttt{[} view\_option; ...\texttt{]}\\ \hspace{2mm}\texttt{[} zone\_statement; ...\texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm}  La déclaration view implémente le split-dns. Elle possède ses propres zones. Les zones disponible dans une vue ne sont accessible que pour cette vue. De nombreuses options de la déclaration options peuvent également être utilisées dans une déclaration vue.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge zone }
 
\
 
\hspace{1mm} zone master:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type master;\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-transfer \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-update \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} update-check-ksk yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-dnskey-kskonly yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-loadkeys-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} update-policy local | \{ update\_policy\_rule \texttt{[}...\texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} also-notify \{ ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ;\\ \hspace{2mm}\hspace{2mm}\texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} check-names (warn|fail|ignore) ; \texttt{]}\\ \hspace{2mm}\texttt{[} check-mx (warn|fail|ignore) ; \texttt{]}\\ \hspace{2mm}\texttt{[} check-wildcard yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} check-spf ( warn | fail | ignore ); \texttt{]}\\ \hspace{2mm}\texttt{[} check-integrity yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} dialup dialup\_option ; \texttt{]}\\ \hspace{2mm}\texttt{[} file string ; \texttt{]}\\ \hspace{2mm}\texttt{[} masterfile-format (text|raw|map) ; \texttt{]}\\ \hspace{2mm}\texttt{[} journal string ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-journal-size size\_spec; \texttt{]}\\ \hspace{2mm}\texttt{[} forward (only|first) ; \texttt{]}\\ \hspace{2mm}\texttt{[} forwarders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-base string ; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-from-differences yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-tmp-file string ; \texttt{]}\\ \hspace{2mm}\texttt{[} request-ixfr yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} maintain-ixfr-base yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-ixfr-log-size number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-out number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-time-out number ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify yes\_or\_no | explicit | master-only ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-delay seconds ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-to-soa yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} pubkey number number number string ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} zone-statistics full | terse | none; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-validity-interval number \texttt{[}number\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-nodes number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-signatures number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-type number ; \texttt{]}\\ \hspace{2mm}\texttt{[} database string ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} key-directory path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} auto-dnssec allow|maintain|off; \texttt{]}\\ \hspace{2mm}\texttt{[} inline-signing yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} zero-no-soa-ttl yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} serial-update-method increment|unixtime; \texttt{]}\\ \hspace{2mm}\texttt{[} max-zone-ttl number ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone slave:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type slave;\\ \hspace{2mm}\texttt{[} allow-notify \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-transfer \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-update-forwarding \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-update-mode ( maintain | no-resign ); \texttt{]}\\ \hspace{2mm}\texttt{[} update-check-ksk yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-dnskey-kskonly yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-loadkeys-interval number; \texttt{]}\\ \hspace{2mm}\texttt{[} dnssec-secure-to-insecure yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} try-tcp-refresh yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} also-notify \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ ( masters\_list | ip\_addr\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}dscp ip\_dscp\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}key key\texttt{]} ) ; \texttt{[}...\texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} check-names (warn|fail|ignore) ; \texttt{]}\\ \hspace{2mm}\texttt{[} dialup dialup\_option ; \texttt{]}\\ \hspace{2mm}\texttt{[} file string ; \texttt{]}\\ \hspace{2mm}\texttt{[} masterfile-format (text|raw|map) ; \texttt{]}\\ \hspace{2mm}\texttt{[} journal string ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-journal-size size\_spec; \texttt{]}\\ \hspace{2mm}\texttt{[} forward (only|first) ; \texttt{]}\\ \hspace{2mm}\texttt{[} forwarders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-base string ; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-from-differences yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} ixfr-tmp-file string ; \texttt{]}\\ \hspace{2mm}\texttt{[} maintain-ixfr-base yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} masters \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ ( masters\_list | ip\_addr\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}dscp ip\_dscp\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}key key\texttt{]} ) ; \texttt{[}...\texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} max-ixfr-log-size number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-in number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-out number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-time-in number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-time-out number ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify yes\_or\_no | explicit | master-only ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-delay seconds ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-to-soa yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} pubkey number number number string ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source-v6 (ip6\_addr | *)\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} use-alt-transfer-source yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} notify-source-v6 (ip6\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} zone-statistics full | terse | none; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-validity-interval number \texttt{[}number\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-nodes number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-signatures number ; \texttt{]}\\ \hspace{2mm}\texttt{[} sig-signing-type number ; \texttt{]}\\ \hspace{2mm}\texttt{[} database string ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} key-directory path\_name; \texttt{]}\\ \hspace{2mm}\texttt{[} auto-dnssec allow|maintain|off; \texttt{]}\\ \hspace{2mm}\texttt{[} inline-signing yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} multi-master yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} zero-no-soa-ttl yes\_or\_no ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone hint
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type hint;\\ \hspace{2mm}file string ;\\ \hspace{2mm}\texttt{[} delegation-only yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} check-names (warn|fail|ignore) ; \texttt{]} // Not Implemented.\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone stub
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type stub;\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query-on \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} check-names (warn|fail|ignore) ; \texttt{]}\\ \hspace{2mm}\texttt{[} dialup dialup\_option ; \texttt{]}\\ \hspace{2mm}\texttt{[} delegation-only yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} file string ; \texttt{]}\\ \hspace{2mm}\texttt{[} masterfile-format (text|raw|map) ; \texttt{]}\\ \hspace{2mm}\texttt{[} forward (only|first) ; \texttt{]}\\ \hspace{2mm}\texttt{[} forwarders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} masters \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} \{ ( masters\_list | ip\_addr\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}dscp ip\_dscp\texttt{]}\\ \hspace{2mm}\hspace{2mm}\texttt{[}key key\texttt{]} ) ; \texttt{[}...\texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-idle-in number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-transfer-time-in number ; \texttt{]}\\ \hspace{2mm}\texttt{[} pubkey number number number string ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} transfer-source-v6 (ip6\_addr | *)\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source (ip4\_addr | *) \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} alt-transfer-source-v6 (ip6\_addr | *)\\ \hspace{2mm}\hspace{2mm}\texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; \texttt{]}\\ \hspace{2mm}\texttt{[} use-alt-transfer-source yes\_or\_no; \texttt{]}\\ \hspace{2mm}\texttt{[} zone-statistics yes\_or\_no ; \texttt{]}\\ \hspace{2mm}\texttt{[} database string ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-refresh-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} min-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} max-retry-time number ; \texttt{]}\\ \hspace{2mm}\texttt{[} multi-master yes\_or\_no ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone static-stub:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type static-stub;\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} server-addresses \{ \texttt{[} ip\_addr ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} server-names \{ \texttt{[} namelist \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} zone-statistics yes\_or\_no ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone forward:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type forward;\\ \hspace{2mm}\texttt{[} forward (only|first) ; \texttt{]}\\ \hspace{2mm}\texttt{[} forwarders \{ \texttt{[} ip\_addr \texttt{[}port ip\_port\texttt{]} \texttt{[}dscp ip\_dscp\texttt{]} ; ... \texttt{]} \}; \texttt{]}\\ \hspace{2mm}\texttt{[} delegation-only yes\_or\_no ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone redirect:
 
{\ttfamily
zone "." \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type redirect;\\ \hspace{2mm}file string ;\\ \hspace{2mm}\texttt{[} masterfile-format (text|raw|map) ; \texttt{]}\\ \hspace{2mm}\texttt{[} allow-query \{ address\_match\_list \}; \texttt{]}\\ \hspace{2mm}\texttt{[} max-zone-ttl number ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone delegation-only:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}type delegation-only;\\ \};\\
}
\vspace{8mm}
 
\hspace{1mm} zone référencée:
 
{\ttfamily
zone zone\_name \texttt{[}class\texttt{]} \{\\ \hspace{2mm}\texttt{[} in-view string ; \texttt{]}\\ \};\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge types de zone }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} master]{Le serveur a une copie maître des données de la zone et est capable de fournir des réponse autoritatives pour lui.}
\item[\hspace{1mm} slave]{une zone esclave est un réplica de la zone maître.}
\item[\hspace{1mm} stub]{Une zone stub est similaire à une zone esclave, excepté qu'elle ne réplique que les records NS de la zone maître et non la zone entière. Les zones stub ne sont pas standard. Non recommandé.}
\item[\hspace{1mm} static-stub]{Similaire à une zone stub, mais les données de zone sont configurés statiquement.}
\item[\hspace{1mm} forward]{Une zone forward est une manière de configurer un forwarding par domaine. Une zone forward peut contenir des déclations forward et/ou forwarders.}
\item[\hspace{1mm} hint]{Le jeu de serveurs de nom racine est spécifié en utilisant ce type de zone.}
\item[\hspace{1mm} redirect]{Les zones redirect sont utilisées pour fournir des réponses aux requêtes quand la résolution normale retourne NXDOMAIN. Seul une zone redirect est supportée par vue.}
\item[\hspace{1mm} delegation-only]{C'est utilisé pour forcer le status de delegation-only des zones d'infrastructure (COM, NET, ORG). Toute réponse reçue sans délégation implicite ou explicite dans la section authority seront traité comme NXDOMAIN. Ne s'applique pas dans l'apex de zone.}
\end{description}
 
\vspace{1cm}{\huge Classes }
 
\
 
\hspace{1mm}  Le nom de la zone peut optionnellement être suivi par une classe. Si une classe n'est pas spécifiée, la classe IN est assumée. La classe hesiod est nommée pour un service d'information du projet Athena du MIT. Elle est utilisée pour partager des informations sur diverses bases de données, tels que les utilisateurs, groupes, imprimantes, etc. HS est synonyme de hesiod. Un autre développement du MIT est chaosnet, un protocole LAN créé dans les années 1970.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge options de zone }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} update-policy local | \{ update\_policy\_rule \texttt{[}...\texttt{]} \};]{voir plus bas}
\item[\hspace{1mm} also-notify]{n'a de sens que si notify est actif pour cette zone. Le jeu de machines qui vont recevoir un messages DNS NOTIFY pour cette zone.}
\item[\hspace{1mm} check-names ( fail | warn | ignore )]{Cette option est utilisée pour restreindre le jeu de caractères et la syntaxe de certains noms de domaine dans les fichiers master et/ou les réponses DNS reçues du réseaux}
\item[\hspace{1mm} database]{Spécifie le type de base à utiliser pour stocker les données de zone. La chaîne est interprétée comme une listed de mots séparés par un espace blank. Le premier mot identifie le type de base, et les autres mots sont passés en argument à la base à interpréter. (défaut: rbt), la base red-black-tree in-memory natif de bind9. Cette base n'a pas d'argument.}
\item[\hspace{1mm} delegation-only]{Ce flag ne s'applique qu'aux zones forward, hint, et stub. À yes, toutes les zones sont également traitées comme si elle étaient également de type delegation-only.}
\item[\hspace{1mm} forward ( only | first )]{N'a de sens que si la zone a une liste forwarders. only échoue si le forwarding échoue, first, tente dans ce cas une résolution normale.}
\item[\hspace{1mm} forwarders]{non spécifié dans une zone forward, aucun forwarding n'est fait.}
\item[\hspace{1mm} journal]{permet d'écraser le nom de fichier du journal par défaut.}
\item[\hspace{1mm} zone-statistics yes\_or\_no]{à yes, le serveur conserve des informations de statistique pour cette zone, qui peuvent être dumpé dans le statistics-file définis dans les options du serveur.}
\item[\hspace{1mm} server-address]{dans les zone static-stub, liste d'adresses IP pour lesquelles les requêtes devraient être envoyés en résolution récursive pour la zone.}
\item[\hspace{1mm} server-names]{dans les zone static-stub, liste les noms de domaine des serveurs de nom qui agissent comme serveurs autoritatifs.}
\item[\hspace{1mm} ixfr-from-differences]{Noter que les choix master et slave ne sont pas disponible au niveaux des zones.}
\item[\hspace{1mm} auto-dnssec ( allow | maintain | off )]{Les zones configurées pour le DNS dynamique peuvent également utiliser cette option pour permettre différents niveaux de gestion de clé DNSSEC automatique. 'allow' permet aux clés d'être mises à jours et de resigner la zone quand l'utilisateur émet la commande rndc sign zonename. 'maintain' est identique, mais ajuste également automatiquement les clés DNSSEC de la zone en accord avec les métadonnées de timing de clé. 'off' désactive la fonctionnalité}
\item[\hspace{1mm} serial-update-method (increment | unixtime )]{Les zones configurées pour le DNS dynamique peuvent utiliser cette option pour définir la méthode de mise à jours qui sera utilisée pour le numéro de série de la zone dans le SOA.}
\item[\hspace{1mm} inline-signing]{à yes, active la signature "bump in the wire" d'une zone, où une zone non-signée y est transférée et chargée depuis le disque et une version signée de la zone est servie, avec possiblement, un numéro de série différent. désactivé par défaut.}
\end{description}
 
\vspace{1cm}{\huge Stratégie de mise à jours dynamique }
 
\
 
\hspace{1mm}  BIND9 supporte 2 méthodes alternatives d'acceptation de clients pour effectuer des mises à jours dynamique dans une zone, configuré par les options allow-update et update-policy, respectivement.
\vspace{5mm} \\
 
 
\hspace{1mm}  allow-update fonctionne de la même manière que dans les versions précédentes de bind. Il donne aux clients la permission de mettre à jours les enregistrements de n'importe quel nom dans la zone.
\vspace{5mm} \\
 
 
\hspace{1mm}  update-policy permet un contrôle plus fin sur les mises à jours permises. Un jeu de règles est spécifié, où chaque règle autorise ou refuse l'accès pour un ou plusieurs noms à mettre à jours. Si la mise à jours dynamique nécessite que le message soit signé, l'identité du signataire peut être déterminé.
\vspace{5mm} \\
 
 
\hspace{1mm}  Les règles sont spécifiées dans l'option de zone update-policy, et sont seulement significatifs pour les zones maître. Quand la déclaration update-policy est présente, allow-update ne doit pas être présent. La déclaration update-policy examine seulement le signataire du message; l'adresse sources n'est pas utilisée.
\vspace{5mm} \\
 
 
\hspace{1mm}  Il y a une règle update-policy prédéfinie qui peut être activée avec la commande update-policy local. Activer cette règle génère une clé de session TSIG et la place dans un fichier (par défaut: /var/run/named/session.key, le nom de la clé local-ddns, et l'algorithm HMAC-SHA256, peut être changé avec les options session-<xxx>), et autorise cette clé à mettre à jours la zone.
\vspace{5mm} \\
 
 
\hspace{1mm}  Un client fonctionnant sur le système local, avec les permissions appropriées, peut lire ce fichier et l'utiliser pour signer les demandes de mise à jours. Cette règle est équivalente à update-policy \{ grant local-ddns zonesub any; \};
\vspace{5mm} \\
 
 
\hspace{1mm}  La commande nsupdate -l envoie des demandes de mise à jours à l'hôte local, et les signes en utilisant a clé de session.
\vspace{5mm} \\
 
 
\hspace{1mm} D'autres définitions ressemblent à:
 
{\ttfamily
( grant | deny ) identity nametype \texttt{[} name \texttt{]} \texttt{[} types \texttt{]}\\
}
\vspace{8mm}
 
\hspace{1mm}  Chaque règle autorise ou refuse les privilèges. Une fois qu'un message matche une règle, l'opération est immédiatement autorisé ou refusé et aucune autre règle n'est examinée. Une règle est matchée quand le signataire matche le champs identity, le nom matche le champ name avec le champs nametype, et le type matche les types spécifiés dans le champs type.
\vspace{5mm} \\
 
 
\hspace{1mm}  Aucun signataire n'est requis pour tcp-self et 6to4-self cependant la conversion du mappage inverse / préfixe doit matcher le champ identity.
\vspace{5mm} \\
 
 
\hspace{1mm}  Le champ identity spécifie un nom ou un nom wildcard. Normalement, c'est le nom d'une clé TSIG utilisée pour signer le demande de mise à jour. Quand un échange TKEY a été utilisé pour créer un secret partagé, l'identité de la clé partagée est la même que l'identité de la clé utilisée pour authentifier l'échange TKEY. TKEY est également la méthode de négociation utilisée par GSS-TSIG, qui établis une identité que est le principal Kerberos du client, tel que 'user@host.domain'. Quand le champ identity spécifie un nom wildcard, il est sujet à l'expansion DNS, donc la règle s'applique à plusieurs identités. Le champs identity doit contenir un nom fqdn.
\vspace{5mm} \\
 
 
\hspace{1mm}  Pour les types de nom krb5-self, ms-self, krb5-subdomain, et ms-subdomain, le champ identity spécifie le royaume Windows ou Kerberos auquel la machine appartient.
\vspace{5mm} \\
 
 
\hspace{1mm}  Le champs nametype a 13 valeurs:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} name]{Exact match. Cette réglè est identique au contenu du champ name.}
\item[\hspace{1mm} subdomain]{Cette règle matche quand le nom à mettre à jours est un sous-domaine au, ou identique au, contenu du champ name.}
\item[\hspace{1mm} zonesub]{similaire, excepté qu'elle matche quand le nom à mettre à jours est un sou-domaine de la zone dans laquelle update-policy apparaît.}
\item[\hspace{1mm} wildcard]{Le champs nom est sujet à expansion DNS, et cette règle matche quand le nom à mettre à jours est une expansion valide}
\item[\hspace{1mm} self]{Cette règle matche quand le nom à mettre à jours matche le contenu de identity. Le champ name est ignoré mais devrait être identique à identity.}
\item[\hspace{1mm} selfsub]{Similaire à self excepté que les sous-domaines de self sont également mis à jours.}
\item[\hspace{1mm} selfwild]{Similaire à self excepté que seul les sous-domaines de self sont mis à jours.}
\item[\hspace{1mm} ms-self]{Cette règle prend un principal de machine Windows (machine@REALM) et le convertit en machine.realm.}
\item[\hspace{1mm} ms-subdomain]{Cette règle prend un principal de machine Windows (machine@REALM) et le convertit en machine.realm pour mettre à jours les sous-domaines de machine.realm.}
\item[\hspace{1mm} krb5-self]{Cette règle prend un principal de machine Kerberos (host/machine@REALM) et le convertit en machine.realm.}
\item[\hspace{1mm} krb5-subdomain]{Cette règle prend un principal de machine Kerberos (host/machine@REALM) et le convertit en machine.realm pour mettre à jours les sous-domaines de machine.realm.}
\item[\hspace{1mm} tcp-self]{Autorise les mises à jours qui ont été envoyés via TCP et pour lequelles le mappage standard pour initier l'adresse IP dans in-adddr.arpa et ip6.arpa match le nom à mettre à jours. Noter qu'il est théoriquement possible de spoofer ces sessions TCP.}
\item[\hspace{1mm} 6to4-self]{Autorise le préfixe 6to4 à être mis à jours par une connexion TCP depuis le réseaux 6to4 ou depuis l'adresse IPv4 correspondante. C'est prévu pour pouvoir ajouter des RRsets NS ou DNAME.}
\item[\hspace{1mm} external]{Cette règle autorise named à déférer la décision de l'accès à un service exterme. La méthode de communication avec le service est spécifié dans le champs identity, le format est "local:path" où path est l'emplacement d'un socket unix. Actuellement local est le seul mécanisme supporté. Les requêtes au service externe sont envoyés via le socket unix en datagrammes. Le service répond avec une valeur 4 octets contenant soit 0 soit 1.}
\end{description}
 
\hspace{1mm}  Dans tous les cas le champ name doit spécifier un nom fqdn. Si aucun type n'est spécifié explicitement, cette règle matche tous les types excepté RRSIG, NS, SOA, NSEC, NSEC3. Les types peuvent être spécifiés par nom, incluant "ANY" qui matche tous les types sauf NSEC et NSEC3, qui ne peuvent jamais être mis à jours.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Plusieurs vues }
 
\
 
\hspace{1mm}  Quand les vues sont utilisées, une zone peut être référencée par plus d'une d'entre-elles. Souvent, les vues contiennent différentes zones avec le même nom, permettant à différents client de reçevoir des réponses différentes pour la même requête. Parfois, plusieurs vues contiennent des zones identiques. La zone in-view fournis une manière efficace de le faire: elle permet à une vue de référencer une zone qui a été définie dans le vue précédemment définie.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Fichier de zone }
 
\
 
\hspace{1mm}  Un nom de domaine identifie un nœud. Chaque nœud a un jeu d'informations de ressources, qui peut être vide. Ce jeu de ressources associé avec un nom particulier est composé de RR séparés. L'ordre RR dans un jeu n'est pas significatif et n'a pas besoin d'être préservé par les serveurs de nom, résolveurs, ou autres parties du DNS. Cependant, trier plusieurs RR est permis dans un but d'optimisation. Les composants d'un Resource Records sont:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} owner name]{Le nom de domaine où le RR est trouvé}
\item[\hspace{1mm} type]{Une valeur 16bits qui spécifie le type d'enregistrement}
\item[\hspace{1mm} TTL]{le TTL du RR. Ce champs est un entier 32bits en secondes, utilisé par les résolveurs quand ils cachent les RR.}
\item[\hspace{1mm} class]{Une valeur 16bits qui identifie une famille de protocole ou une instance de protocole.}
\item[\hspace{1mm} RDATA]{La donnée de ressource. Le format des données est spécifique au type.}
\end{description}
 
\hspace{1mm}  Les types suivants sont des RR valides:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} A]{Une adresse IPv4 d'hôte décrite dans la rfc1035}
\item[\hspace{1mm} AAAA]{adresse IPv6, décrite dans la rfc1886}
\item[\hspace{1mm} A6]{Adresse IPv6. Peut être une adresse partielle (un suffixe) et une indirection vers le nom où le reste de l'adresse peut être trouvée. Expérimental. Décrit dans la rfc2874.}
\item[\hspace{1mm} AFSDB]{Emplacement des serveurs de base de données AFS. Expérimental. décris dans la rfc1183}
\item[\hspace{1mm} APL]{Liste de préfixe d'adresse. Expérimental. Décrit dans la rfc3123}
\item[\hspace{1mm} CERT]{Maintient un certificat numérique. Décris dans la rfc2538}
\item[\hspace{1mm} CNAME]{Identifie le nom canonique d'un alias. décris dans la rfc1035}
\item[\hspace{1mm} DHCID]{Uilisé pour identifier quel client DHCP est associé avec ce nom. Décris dans la rfc4701}
\item[\hspace{1mm} DNAME]{Remplace le nom de domaine spécifié avec un autre nom de domaine à recherche. Alias effectivement toute une arborescence de l'espace de nom de domaine au lieu d'un simple enregistrement comme dans le cas d'un CNAME. Décris dans la rfc2672}
\item[\hspace{1mm} DNSKEY]{Stocke une clé publique associée avec une zone DNS signée. Décrit dans la rfc 4034}
\item[\hspace{1mm} DS]{Stocke le hash d'une clé publique associée avec une zone DNS signée. Décris dans la rfc4034}
\item[\hspace{1mm} GPOS]{Spécifie la position globale. Remplacée par LOC}
\item[\hspace{1mm} HINFO]{Identifie le CPU et l'OS utilisé par un hôte. Décris dans la rfc1035}
\item[\hspace{1mm} IPSECKEY]{Fournis une méthode pour stocker un clé IPsec dans DNS. Décris dans la rfc4025}
\item[\hspace{1mm} ISDN]{Resprésentation des adresses ISDN. Expérimental. Décris dans la rfc1183.}
\item[\hspace{1mm} KEY]{Stocke une clé publique associée avec un nom DNS. Utilisé dans DNSSEC original, remplacé par DNSKEY dans DNSSECbis, mais reste utilisé avec SIG(0). Décris dans la rfc2535 et 2931}
\item[\hspace{1mm} KX]{Identifie un échangeur de clé pour ce nom DNS. Décris dans la rc2230}
\item[\hspace{1mm} LOC]{Pour stocker les informations GPS. Décris dans la rfc1876. Expérimental.}
\item[\hspace{1mm} MX]{Identifie un échange de mail pour le domaine avec un préfixe 16-bits suivis par le nom d'hôte de l'échange de mail. Décris dans les rfc974 et 1035}
\item[\hspace{1mm} NAPTR]{Name authority Pointer. Décris dans la rfc1706}
\item[\hspace{1mm} NSAP]{Un point d'accès de service réseaux. Décris dans la rfc1706}
\item[\hspace{1mm} NS]{Serveur de nom autoritatif pour le domaine. Décris dans la rfc1035}
\item[\hspace{1mm} NSEC]{Utilisé dans DNSSECbis pour indiquer que les RR avec un owner name dans un certain interval de nom n'existent pas dans une zone et indique quels types de RR sont présent pour un nom existant. Décris dans la rfc4034}
\item[\hspace{1mm} NSEC3]{Identique à NSEC, mais est plus couteux pour le serveur et le client. Décris dans la rfc5155}
\item[\hspace{1mm} NSEC3PARAM]{Utilisé dans DNSSECbis pour dire au serveur autoritatif quelles chaînes NSEC3 sont disponibles. Décris dans la rfc5155.}
\item[\hspace{1mm} NXT]{remplacé par NSEC dans DNSSECbis. Dcéris dans la rfc2535}
\item[\hspace{1mm} PTR]{Un pointer vers une autre partie de l'espace de nom de domaine. Décris dans la rfc1035}
\item[\hspace{1mm} PX]{Fournis le mappage entre la rfc822 et les adresse X.400. Décris dans la rfc2163}
\item[\hspace{1mm} RP]{Information des personnes responsable du domaine. expérimental. Décris dans la rfc1183}
\item[\hspace{1mm} RRSIG]{Contients les données de signature DNSSECbis. Décris dans la rfrc4034}
\item[\hspace{1mm} RT]{liaison route-through pour les hôtes qui n'ont pas leur propre aire d'adresse réseaux. Expérimental. Décris dans la rfc1183}
\item[\hspace{1mm} SIG]{Contient les données de signature DNSSEC. Remplacé par RRSIG dans DNSSECbis. Décris dans la rfc2535 et 2931}
\item[\hspace{1mm} SOA]{Identifie le départ de la zone d'autorité. Décris dans la rfc1035}
\item[\hspace{1mm} SPF]{Contient le Sender Policy Framework pour un domaine de messagerie donné. Décris dans la rfc4408}
\item[\hspace{1mm} SRV]{Information sur des services connus (remplace WKS). Décris dans la rfc2782.}
\item[\hspace{1mm} SSHFP]{Fournis une manière sécurisée de publier des empreintes de clés ssh. Décris dans la rfc4255.}
\item[\hspace{1mm} TXT]{enregistrement text. Décris dans la rfc1035}
\item[\hspace{1mm} WKS]{Remplacé par SRV}
\item[\hspace{1mm} X25]{Représentation des adresse réseaux X.25. Expérimental. Décris dans la rfc1183}
\end{description}
 
\hspace{1mm}  Les classes suivante sont valides:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} IN]{l'Internet}
\item[\hspace{1mm} CH]{Chaosnet.}
\item[\hspace{1mm} HS]{Hesiod}
\end{description}
 
\vspace{1cm}{\huge Définir les TTL }
 
\
 
\hspace{1mm}  Le TTL du champ RR est une entier 32 bits représenté en unités de secondes, et est principalement utilisés par les résolveurs quand ils cachent leur RR. Le TTL décris combien de temps un RR peut être maintenu en cache avant d'être supprimé. 3 types de TTL sont actuellement utilisés dans une zone:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} SOA]{Le dernier champs dans le SOA est la TTL de cache négatif. Il contrôle le temps que d'autres serveurs vont maintenir en cache le no-such-domain (NXDOMAIN) pour vous. Le temps maximum est 3 heures.}
\item[\hspace{1mm} \$TTL]{La directive TTL en haut de la zone (avant le SOA) donne un TTL par défaut pour tous les RR sans jeu TTL spécifique.}
\item[\hspace{1mm} RR TTLs]{Chaque RR peut avoir un TTL comme second champs dans le RR, qui va contrôler la durée en cache.}
\end{description}
 
\vspace{1cm}{\huge Mappage inverse dans IPv4 }
 
\
 
\hspace{1mm}  La résolution de nom inverse est accomplie au moyen d'un domaine in-addr.arpa et d'enregistrements PTR. Les entrées dans le domaine in-addr.arpa sont créés dans l'ordre inverse. La ligne \$ORIGIN sert à fournir le contexte.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Autres directives de fichier de zone }
 
\
 
\hspace{1mm}  Le format de fichier maître a été initialement définis dans la rfc1035 et a ensuite été étendu. Bien que le format de fichier maître lui-même est indépendant de la classe, tous les enregistrements dans un fichier maître doivent être de même classe. Les directives de fichier maître incluent \$ORIGIN, \$INCLUDE, et \$TTL.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} @]{Utilisé dans un label ou nom, ce symbole représente l'origine courante. au début de la zone, c'est le nom de la zone.}
\item[\hspace{1mm} \$ORIGIN domain-name \texttt{[}comment\texttt{]}]{Jeux de nom de qui sont ajoutés à tout enregistrement non qualifié.}
\item[\hspace{1mm} \$INCLUDE filename \texttt{[}origin\texttt{]} \texttt{[}comment\texttt{]}]{Lit et traite le fichier comme s'il étair dans le fichier.}
\item[\hspace{1mm} \$TTL default-ttl \texttt{[}comment\texttt{]}]{Définis le TTL pour les enregistrements suivants.}
\end{description}
 
\vspace{1cm}{\huge Extension de fichier maître BIND }
 
\
 
{\ttfamily
\$GENERATE range lhs \texttt{[}ttl\texttt{]} \texttt{[}class\texttt{]} type rhs \texttt{[}comment\texttt{]}\\
}
\vspace{8mm}
 
\hspace{1mm}  \$GENERATE est utilisé pour créer une série d'enregistrement qui diffèrent uniquement des autres par un itérateur. \$GENERATE peut être utilisé pour faciliter la génération de jeux d'enregistrements requis pour supporter les sous-délégations inversées /24 décrites dans la rfc2317: la délégation sans classe IN-ADDR.ARPA.
\vspace{5mm} \\
 
 
{\ttfamily
\$ORIGIN 0.0.192.IN-ADDR.ARPA.\\ \$GENERATE 1-2 @ NS SERVER\$.EXAMPLE.\\ \$GENERATE 1-127 \$ CNAME \$.0\\
}
\vspace{8mm}
 
\hspace{1mm} est équivalent à:
 
{\ttfamily
0.0.0.192.IN-ADDR.ARPA. NS SERVER1.EXAMPLE.\\ 0.0.0.192.IN-ADDR.ARPA. NS SERVER2.EXAMPLE.\\ 1.0.0.192.IN-ADDR.ARPA. CNAME 1.0.0.0.192.IN-ADDR.ARPA.\\ 2.0.0.192.IN-ADDR.ARPA. CNAME 2.0.0.0.192.IN-ADDR.ARPA.\\ ...\\ 127.0.0.192.IN-ADDR.ARPA. CNAME 127.0.0.0.192.IN-ADDR.ARPA.\\
}
\vspace{8mm}
 
\hspace{1mm} Génère un jeu d'enregistrements A et MX. Noter que MX est un chaîne entre guillemets, qui sont enlevés au traitement:
 
{\ttfamily
\$ORIGIN EXAMPLE.\\ \$GENERATE 1-127 HOST-\$ A 1.2.3.\$\\ \$GENERATE 1-127 HOST-\$ MX "0 ."\\
}
\vspace{8mm}
 
\hspace{1mm} est équivalent à:
 
{\ttfamily
HOST-1.EXAMPLE. A 1.2.3.1\\ HOST-1.EXAMPLE. MX "0 ."\\ HOST-2.EXAMPLE. A 1.2.3.2\\ HOST-2.EXAMPLE. MX 0 .\\ HOST-3.EXAMPLE. A 1.2.3.3\\ HOST-3.EXAMPLE. MX 0 .\\ ...\\ HOST-127.EXAMPLE. A 1.2.3.127\\ HOST-127.EXAMPLE. MX 0 .\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Statistiques }
 
\
 
\hspace{1mm}  BIND9 maintient beaucoup de statistiques et fournis de nombreuses interfaces pour que les utilisateurs aient accès à ces statistiques. Les statistiques disponible incluent tous les compteurs qui étaient disponible dans BIND8 et ont du sens dans BIND9, plus d'autres informations. Les informations de statistiques sont catégorisés dans les sections suivantes:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} Incoming Requests]{Le nombre de requêtes DNS entrantes pour chaque OPCODE}
\item[\hspace{1mm} Incoming Queries]{Le nombre de demandes entrantes pour chaque type de RR}
\item[\hspace{1mm} Outgoing Queries]{Le nombre de demandes sortantes pour chaque types de RR envoyé depuis le résolveur interne. maintenu par vue.}
\item[\hspace{1mm} Name Server Statistics]{Compteurs de statistiques sans regarder les opérations de maintenance de zone telles que les transferts de zone.}
\item[\hspace{1mm} Zone Maintenance Statistics]{Compteurs d'opérations de maintenances des zones telles que les tranfers de zone}
\item[\hspace{1mm} Resolver Statistics]{Compteurs sur la résolution de noms dans le résolveur interne. Maintenu par vue.}
\item[\hspace{1mm} Cache DB RRsets]{Nombre de RRsets par type de RR et noms non-existants stockés dans la base de cache. un ! indique un type de RRset étant non-existant (NXRRSET). Maintenu par vue.}
\item[\hspace{1mm} Tocket I/O statistics]{Compteur de statistiques sur les événements réseaux}
\end{description}
 
\hspace{1mm}  Un sous-jeu de Name Server Statistics est collecté et affiché par zone pour lequel le serveur a l'autorité quand zone-statistics est à yes. Ces compteurs sont affichés avec leur noms de zone et vue. Dans certains cas le nom de la vue est omis pour la vue par défaut.
\vspace{5mm} \\
 
 
\hspace{1mm}  Il y a actuellement 2 interfaces pour accéder aux statistiques. Une est en texte claire stocké dans le fichier statistics-file. L'autre est accessible à distance via un canal de statistiques.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Fichier de statistiques }
 
\
 
\hspace{1mm} Le format texte commence avec une ligne comme:
 
{\ttfamily
+++ Statistics Dump +++ (973798949)\\
}
\vspace{8mm}
 
\hspace{1mm} Le nombre entre parenthèses est un horodatage Unix, mesuré en secondes depuis l'epoch. La suite est un jeu d'informations, qui sont catégorisés comme décris plus haut. Chaque section commence avec une ligne comme:
 
{\ttfamily
++ Name Server Statistics ++\\
}
\vspace{8mm}
 
\hspace{1mm}  Chaque section consiste de lignes, chacune contenant la valeur de compteurs suivie par sa description contextuelle. Pour simplifier, les compteurs avec une valeur de 0 ne sont pas affichés.
\vspace{5mm} \\
 
 
\hspace{1mm} Le fichier se termine avec une ligne similaire à la première (même horodatage):
 
{\ttfamily
— Statistics Dump — (973798949)\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Compteurs }
 
\
 
\hspace{1mm}  Les tables suivantes résument les compteurs statistique que BIND9 fournis.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Name Server Statistics Counters }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} Requestv4]{Requêtes IPv4 reçues. Note: compte également les requêtes non répondues.}
\item[\hspace{1mm} Requestv6]{Requêtes IPv6 reçues. Note: compte également les requêtes non répondues.}
\item[\hspace{1mm} ReqEdns0]{Requêtes EDNS(0) reçues}
\item[\hspace{1mm} ReqBadEDNSVer]{Requêtes avec une version EDNS non-supportée reçues}
\item[\hspace{1mm} ReqTSIG]{Requêtes avec TSIG reçues}
\item[\hspace{1mm} ReqSIG0]{Requêtes avec SIG(0) reçues}
\item[\hspace{1mm} ReqBadSIG]{Requêtes avec une signature TSIG ou SIG(0) invalide reçues}
\item[\hspace{1mm} ReqTCP]{Requêtes TCP reçues}
\item[\hspace{1mm} AuthQryRej]{Requêtes autoritatives rejetées}
\item[\hspace{1mm} RecQryRej]{Requêtes récursives rejetées}
\item[\hspace{1mm} XfrRej]{Requêtes de tranfers de zone rejetées}
\item[\hspace{1mm} UpdateRej]{Requêtes de mise à jour dynamique rejetées}
\item[\hspace{1mm} Response]{Réponses envoyées}
\item[\hspace{1mm} RespTruncated]{Réponses tronquées envoyées}
\item[\hspace{1mm} RespEDNS0]{Réponses avec EDNS(0) envoyés}
\item[\hspace{1mm} RespTSIG]{Réponses avec TSIG envoyés}
\item[\hspace{1mm} RespSIG0]{Réponses avec SIG(0) envoyés}
\item[\hspace{1mm} QrySuccess]{Demande résultant une réponses réussie. (réponse NOERROR avec au moins un RR)}
\item[\hspace{1mm} QryAuthAns]{Requêtes résultant une réponse autoritative}
\item[\hspace{1mm} QryNoauthAns]{Requêtes résultant une réponse non-autoritative}
\item[\hspace{1mm} QryReferral]{Requêtes résultant une réponse référantes.}
\item[\hspace{1mm} QryNxrrset]{Requêtes résultant une réponse NOERROR sans données.}
\item[\hspace{1mm} QrySERVFAIL]{Demandes résultant un SERVAIL}
\item[\hspace{1mm} QryFORMERR]{Demandes résultant un FORMERR}
\item[\hspace{1mm} QryNXDOMAIN]{Demandes résultant un NXDOMAIN}
\item[\hspace{1mm} QryRecursion]{Demande qui ont impliqué une récursion pour trouver la réponse finale}
\item[\hspace{1mm} QryDuplicate]{Demande que le serveur à tenter en récursion mais découvert qu'une demande avec la même IP, port, queryID, nom, type et classe à déjà été traité.}
\item[\hspace{1mm} QryDropped]{Recherches récursive pour lequelles le serveur a découvert un nombre excessif de recherches pour le même nom, classe et type. C'est le nombre de recherches supprimées dues aux options clients-per-query et max-clients-per-query}
\item[\hspace{1mm} QryFailure]{Autres erreurs de recherche.}
\item[\hspace{1mm} XfrReqDone]{Demande de transfert de zone complétés}
\item[\hspace{1mm} UpdateReqFwd]{Demandes de mise à jours forwardés}
\item[\hspace{1mm} UpdateRespFwd]{Réponses de mise à jours forwardés}
\item[\hspace{1mm} UpdateFwdFail]{Mise à jours dynamique forwardés échoués}
\item[\hspace{1mm} UpdateDone]{Mise à jours dynamique forwardés complétées}
\item[\hspace{1mm} UpdateFail]{Mise à jours dynamique échouées}
\item[\hspace{1mm} UpdateBadPrereq]{Mise à jours dynamique rejetées à cause de prérequis non respectés}
\item[\hspace{1mm} RateDropped]{Réponses supprimées par les limites}
\item[\hspace{1mm} RateSlipped]{Réponses tronquées par les limites}
\item[\hspace{1mm} RPZRewrites]{Réponses de ré-écriture de policy zone.}
\end{description}
 
\vspace{1cm}{\huge Zone Maintenance Statistics Counters }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} NotifyOutv4]{notifications IPv4 envoyées}
\item[\hspace{1mm} NotifyOutv6]{notifications IPv6 envoyées}
\item[\hspace{1mm} NotifyInv4]{notifications IPv4 reçues}
\item[\hspace{1mm} NotifyInv6]{notifications IPv6 reçues}
\item[\hspace{1mm} NotifyRej]{Notifications entrantes rejetées}
\item[\hspace{1mm} SOAOutv4]{Recherches de SOA IPv4 envoyées}
\item[\hspace{1mm} SOAOutv6]{Recherches de SOA IPv6 envoyées}
\item[\hspace{1mm} AXFRReqv4]{AXFR IPv4 demandées}
\item[\hspace{1mm} AXFRReqv6]{AXFR IPv6 demandées}
\item[\hspace{1mm} IXFRReqv4]{IXFR IPv4 demandées}
\item[\hspace{1mm} IXFRReqv6]{IXFR IPv6 demandées}
\item[\hspace{1mm} XfrSuccess]{Demandes de transferts de zone réussies}
\item[\hspace{1mm} XfrFail]{Demandes de transferts de zone échouées}
\end{description}
 
\vspace{1cm}{\huge Resolver Statistics Counters }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} Queryv4]{Recherches IPv4 envoyées}
\item[\hspace{1mm} Queryv6]{Recherches IPv6 envoyées}
\item[\hspace{1mm} Responsev4]{Réponses IPv4 reçues}
\item[\hspace{1mm} Responsev6]{Réponses IPv6 reçues}
\item[\hspace{1mm} NXDOMAIN]{NXDOMAIN reçues}
\item[\hspace{1mm} SERVFAIL]{SERVFAIL reçues}
\item[\hspace{1mm} FORMERR]{FORMERR reçues}
\item[\hspace{1mm} OtherError]{Autres erreurs reçues}
\item[\hspace{1mm} EDNS0Fail]{Recherches EDNS(0) échouées}
\item[\hspace{1mm} Mismatch]{Réponses non-correspondantes reçues. le DNS ID l'adresse source et/ou le port sources de la réponse ne correspond pas à ce qui était attendu. Peut indiquer une tentative de cache poisoning}
\item[\hspace{1mm} Truncated]{Réponses tronquées reçues}
\item[\hspace{1mm} Lame]{Lame délégations reçues}
\item[\hspace{1mm} Retry]{Retentatives de recherche effectuées}
\item[\hspace{1mm} QueryAbort]{Recherche annulées du à un contrôle de quotas}
\item[\hspace{1mm} QuerySockFail]{Erreur en ouvrant des sockets. Généralement due à un limitation des descripteurs de fichier.}
\item[\hspace{1mm} QueryTimeout]{Timeouts de recherche}
\item[\hspace{1mm} GlueFetchv4]{recherches d'adresse NS IPv4 invoquées}
\item[\hspace{1mm} GlueFetchv6]{recherches d'adresse NS IPv6 invoquées}
\item[\hspace{1mm} GlueFetchv4Fail]{recherches d'adresse NS IPv4 échouées}
\item[\hspace{1mm} GlueFetchv6Fail]{recherches d'adresse NS IPv4 échouées}
\item[\hspace{1mm} ValAttempt]{Validation DNSSEC tentées}
\item[\hspace{1mm} ValOk]{Validation DNSSEC réussie}
\item[\hspace{1mm} ValNegOk]{Validation DNSSEC sur des informations négatives réussies}
\item[\hspace{1mm} ValFail]{validations DNSSEC échouées}
\item[\hspace{1mm} QryRTTnn]{Table de fréquence des RTTs de recherche.}
\end{description}
 
\vspace{1cm}{\huge Socket I/O Statistics Counters }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} <TYPE>Open]{Sockets ouverts avec succès}
\item[\hspace{1mm} <TYPE>OpenFail]{Erreur d'ouverture de sockets}
\item[\hspace{1mm} <TYPE>Close]{Sockets fermés}
\item[\hspace{1mm} <TYPE>BindFail]{Bind de sockets échoués}
\item[\hspace{1mm} <TYPE>ConnFail]{Erreurs de connexions aux sockets}
\item[\hspace{1mm} <TYPE>Conn]{Connections établies avec succès}
\item[\hspace{1mm} <TYPE>AcceptFail]{Erreur d'acceptation de demandes de connexion entrantes. Non applicable à UDP}
\item[\hspace{1mm} <TYPE>Accept]{Connexions entrant acceptées. Non applicable à UDP}
\item[\hspace{1mm} <TYPE>SendErr]{Erreurs dans les opération d'envois sur socket}
\item[\hspace{1mm} <TYPE>RecvErr]{Erreurs d'opérations de reception sur socket}
\end{description}
 
\vspace{1cm}{\huge chroot and setuid }
 
\
 
\hspace{1mm}  BIND9 peut être lancé dans un environnement chroot. Il n'est pas nécessaire de compiler named statiquement, mais en fonction de l'OS, il peut être nécessaire de définir /dev/zero, /dev/random, /dev/log, et /etc/localtime.
\vspace{5mm} \\
 
\end{flushleft}
\end{document}
