;; Exemple "exhaustif" d'une base de zone DNS. ;; -------------------------------------------- ;; ;; NBs :- Compatible pour bind 9.3.0 ;; (les lignes ;X; identifient des entrées invalides ;; pour cette version de bindou pour cette zone) ;; - le nom de la zone est "zone.test." ;; - la zone est active localement sur ipv6-1.int-evry.fr. ;; Sommaire : ;; --1-- Directives sur le fichier de zone ;; --2-- Définition de la zone DNS (Records obligatoires : SOA, NS) ;; --3-- Entrées "Classiques" pour une zone Directe ;; --4-- Entrées pour une zone Reverse ;; --5-- D'autres RR et particularités ;; --6-- semantique du Wildcard ;; --1-- Directives sur le fichier de zone $ORIGIN zone.test. ; Nom du domaine courant pour la construction de FQDN $TTL 86400 ; Valeur par defaut des TTLs des records de la zone ; NB: defini dans RFC 2308, pas dans RFC1035 $INCLUDE DNSKEY.key ; inclusion de fichier, (ici clés publiques DNSSEC) ;; --2-- Définition de la Zone DNS ;;; --2a-- Identification de la Base (Requis et Unique dans la zone) @ IN SOA ( NS1.zone.test. ; ce serveur (primaire) Pascal\.Hennequin.int-evry.fr. ; mail administrateur de la zone 2005031801 ; Numero de serie :annee/mois/jours/version 21600 ; delai mise a jour par les secondaires = 6 heures 3600 ; tempo de reprise si echec mise a jour = 1 heure 3600000 ; abandon de reprise de mise a jour = 1000 heures 86400 ; Duree de vie des reponses negatives = 1 jour ) ;;; --2b-- Serveurs Authoritatives de la zone (primaires ou secondaires) @ NS NS1.zone.test. @ NS NS1.xxx.test. @ NS NS3.yyy.test. ;; --3-- Entrees "Classiques" pour une Zone Directe ;;; --3a-- Definition des Adresses de mail "user@zone.test" : @ MX 10 SMTP1.zone.test. @ MX 25 SMTP2.xxx.test. @ MX 30 SMTP3.zzz.test. spam MX 10 NULLSMTP.xxx.test ; "user@spam.zone.test" ;;; --3b-- Adresses et informations complementaires de machines ;; quelques infos réelles: ;; 157.159.100.74 == ipv6-1.int-evry.fr ;; 157.159.100.57 == alambix.int-evry.fr ;; Faittout en v6 == alambix.int-evry.fr ;; FaitRien en v4 == bonemine.int-evry.fr ;; CauseQueV6 en v6 == bonemine.int-evry.fr NS1 A 157.159.100.74 ; requis avec le NS dans -2b- ;!! DANGER: ne pas modifier sans modifier la !! ;!! la glue correspondante dans la zone mere !! SMTP1 A 157.159.100.74 ; requis avec le MX en -3a- FaitTout A 157.159.100.57 ; une machine avec adresse IPV4 A 157.159.105.5 ; et meme 2 adresses IPV4 AAAA 2001:660:3203:1000:203:baff:fe0e:5559 ; et aussi IPV6 A6 64 ::203:baff:fe0e:5559 6INT-SUB1 ; idem autre format HINFO INTEL-386 WINDOWS-NT-5 ; proceseur et OS HINFO INTEL-386 LINUX-2.4 ; double boot ! HINFO ( "intel inside" ; forme libre "Double boot: WinDaube, Debian") ; TXT "Machine qui fait tout" ; commentaires GPOS -32.6882 116.8652 50.0 ; ou est elle ? LOC 52 14 05 N 00 08 50 E 50m ; idem en mn et secondes RP ( pascal\.hennequin.int-evry.fr. ;email du responsable PH.zone.test. ) ; et + dans un TXT RP michel\.gardie.int-evry.fr. . ;email sans + PH TXT "mon telephone : ..." ; le + du RP FaitRien A 157.159.100.58 FaitAussi A 157.159.105.3 Secours A 157.159.105.4 ;;; --3c-- Alias de nom www CNAME FaitRien wwwbis CNAME FaitRien ;! wwwbis CNAME www est interdit ! ;;;... TBD autres contraintes sur CNAME ... ;;; --3d-- Sous-domaines sans delegation www.priv CNAME FaitTout ftp.priv A 157.159.105.10 il.fait.bo A 157.159.105.11 TXT "et cho" il.fait.cho CNAME il.fait.bo ;;; --3e-- Delegation d'une sous zone "subzone.zone.test." subzone NS NS1-SUB.xxx.test. ; un 1er serveur de la sous-zone subzone NS NS2-SUB.subzone ; un 2eme serveur situe dans la sous-zone NS2-SUB.subzone A 157.159.111.111 ; Glue obligatoire pour NS2-SUB.subzone ;; les autres records xxx.subzone sont maintenant ;; interdits dans ce fichier ;; --4-- Entrées pour une zone Reverse ;;ces entrees doivent etre dans un fichier de zone different ;;; --4a-- reverse V4 ;X; 5.105.159.157.in-addr.arpa. PTR il.fait.bo.zone.test. ;;; --4a-- reverse V6 ;X; b.a.2.5.e.0.e.f.f.f.a.b.3.0.2.0.1.0.0.0.c.1.1.0.4.0.3.0.e.f.f.3.ip6.arpa. ( ;X; PTR CauseQueV6.zone.test. ) ;; ou plus synthetique ;X; $ORIGIN c.1.1.0.4.0.3.0.e.f.f.3.ip6.arpa. ;X; b.a.2.5.e.0.e.f.f.f.a.b.3.0.2.0.1.0.0.0 PTR CauseQueV6.zone.test. ;X; 9.5.5.5.e.0.e.f.f.f.a.b.3.0.2.0.1.0.0.0 PTR FaitTout.zone.test. ;; --5-- D'autres RR ;;; --5a-- SRV , NB: le nommage est conventionnel _http._tcp SRV 0 3 80 FaitTout ; priorite, poids, port, machine SRV 0 1 8080 FaitAussi ; moins performant (1/4 pour lui) SRV 5 0 8080 Secours ; si aucun des 2 autres _ldap._tcp SRV 0 3 389 FaitTout _www._tcp CNAME _http._tcp *._tcp SRV 0 0 0 . ;; pas d'autres services avec l'usage du wildcard *._udp SRV 0 0 0 . ;;; --5b-- Variantes pour les adresse IPv6 CauseQueV6 AAAA 2001:660:3203:1000:203:baff:fe0e:52ab ;; ou CauseQueV6 A6 64 ::203:baff:fe0e:52ab 6SITE-SUNET1 6SITE-SUBNET1 A6 48 0:0:0:1000:: 6BONE-SITE 6BONE-SITE A6 0 2001:660:3203:: ;;; --5c-- D'autres type d'adresse toto X25 311061700956 toto ISDN 150862028003217 titi ISDN 150862028003217 004 ;sous adresse toto NSAP 0x47.0005.80.005a00.0000.0001.e133.ffffff000161.00 ;NSAP for CLNS rfc 1706 rfc1348 ;Xt;oto ATMA 39.246f.000e7c9c031200010001.000012345678.00 ;ATM only draft; not RFC , not BIND9 ;;; --5d-- Label avec le caractere "." index\.html TXT "le nom index.html du domaine courant" index.html TXT "le nom index du sous-domaine html du domaine courant" ;;; --5e-- Entrées prédéfinies dans bind9 ;X; version.bind. 0 CH TXT "9.3.0" ;X; authors.bind. 0 CH TXT "Bob Halley" ;X; authors.bind. 0 CH TXT "David Lawrence" ;X; .... ;; --5f-- et en vrac : toto WKS 10.0.118.1 UDP echo tftp time WKS 10.0.118.1 TCP ( telnet discard sunrpc systat netstat ) toto AFSDB 1 missouri.test. AFSDB 1 yukon.test. AFSDB 2 nile.test. ;;Route Through toto RT 2 Relay.test. RT 10 Relaybis.test. ;;Address Prefix List foo APL 1:192.168.32.0/21 !1:192.168.38.0/28 _axfr.sbo APL 1:127.0.0.1/32 1:172.16.64.0/22 multicast APL 1:224.0.0.0/4 2:FF00:0:0:0:0:0:0:0/8 ;X; 42.168.192.IN-ADDR.ARPA. APL ( 1:192.168.42.0/26 1:192.168.42.64/26 ;X; 1:192.168.42.128/25 ) ;; EID, NIMLOC (Nimrod Routing !) only draft 1996, not in BIND9 ;X;VENERA A 10.1.0.52 ;X; A 128.9.0.32 ;X; EID 813F 4B7C DAB3 4217 ;X; NIMLOC 3227 45 0A 01 00 34 ;X; NIMLOC 752341 59EAC4 5780 0920 ;; Non standard Microsoft WINS, WINS-R ;X; @ 0 IN WINS xxx.xxx.xxx.xxx yyy.yyy.yyy.yyy ;X; @ 0 IN WINS-R nom_zone ;; Reverse V6 deprecated avec DNAME ; dans la base reverse de l'ISP : la delegation de prefixe ipv6 ;X; \[x200106603203/48].ip6.arpa. DNAME R6BONE-SITE.zone.test. ; dans la base directe du site : les infos reverses ;X; \[x0001/16].R6BONE-SITE DNAME R6SITE-SUB1 ;X; \[x0203bafffe0e52ab/64].R6SITE-SUB1 PTR CauseQueV6 ;; D'autres RR non traités ; SIG KEY NXT DS / RRSIG DNSKEY NSEC (cf DNSSEC); ; CERT KX PX NAPTR SINK IPSECKEY SSHFP ; GID UID UINFO UNSPEC MB MD MF MG MINFO MR ;; --6-- Semantique (!) du Wildcard, (avec bind 9.3.0) * TXT "wildcard" ;-----------------------------------------------------------------------------+ ; Requete TXT | reponse | commentaire | ;-----------------------------------------------------------------------------+ ;======== Avec des Labels de base ============================================+ ;n'importe.zone.test. | "wildcard" | naturel | ;faittout.zone.test. | "Machine qui fait tout"| * n'ecrase pas nom existant| ;faitrien.zone.test. | NOERROR, 0 RR | idem !!! meme pour un nom | ; | | sans record TXT | ;======== Avec des sous domaines =============================================+ ;A.B.zone.test. | "wildcard" | * s'applique aussi | ;il.fait.bo.zone.test. | "et cho" | * n'ecrase pas | ;il.fait.cho.zone.test. | CNAME et TXT "et cho" | idem avec CNAME | ;ftp.priv.zone.test. | NOERROR, 0 RR | idem si nom existe sans TXT| ;allo.subzone.zone.test.| NXDOMAIN | mais pas de *, si sous-zone| ; | avec delegation | ;======== C'est pas si simple !!! ============================================+ ;bo.zone.test. | NOERROR, 0 RR |existence implicite du nom | ; | sans aucun RR sur ce nom | ;A.b.zone.test. | "wildcard" |inexistence avec * | ;A.bo.zone.test. | NXDOMAIN |inexistence sans * !! | ;... ;-----------------------------------------------------------------------------+ ;... Quid si on ajoute dans la zone un RR : *.bo TXT "wildcard bis"