Zonendatei - LinkFang.de





Zonendatei


Eine Zonendatei ist Teil der Konfiguration des Nameservers BIND für das Domain Name System. Sie besteht aus einer Liste von Resource Records (RR). Eine Zonendatei beschreibt eine Zone vollständig. Es muss genau ein SOA Resource Record und mindestens ein NS Resource Record vorhanden sein. Der SOA-RR befindet sich meist am Anfang einer Zonendatei.

Neben den Syntax-Regeln der einzelnen RR-Typen definieren die RFC-Standards verschiedene globale Syntax-Regeln. Hauptziel dieser globalen Regeln ist, die Lesbarkeit von Zonendateien zu verbessern. Ein Syntax-Fehler führt meist dazu, dass die gesamte Zonendatei als unbrauchbar angesehen wird. Der Nameserver verhält sich dann ähnlich, als wäre diese Zone gar nicht vorhanden. Auf DNS-Anfragen reagiert er mit einer SERVFAIL-Fehlermeldung (wenn die Zone tatsächlich nicht vorhanden ist, reagiert er mit NXDOMAIN).

Regeln

Regel 1 – Leerzeilen

Leerzeilen sind zulässig.

Regel 2 – Kommentare

Kommentare werden durch ; (Semikolon) eingeleitet. Alles, was rechts von einem ; auftaucht, gilt als Kommentar. Kommentare werden beim Zonentransfer nicht mitübertragen.

Regel 3 – mehrzeilige Anweisungen

Soll ein Resource-Record auf mehrere Zeilen verteilt werden, so müssen Klammern verwendet werden.

Beispiel:

     example.com. 1800  IN  SOA  ns1.example.com. mailbox.example.com. (
                                                100   ; Seriennummer
                                                300   ; Refresh Time
                                                100   ; Retry Time
                                                6000  ; Expire Time
                                                600   ; negative Caching Zeit
                                               )
     example.com. 1800  IN  NS ns1.example.com.
     ns1.example.com. 1800  IN  A    172.27.182.17
     ns1.example.com. 1800  IN  AAAA 2001:db8::f:a
     www.example.com. 1800  IN  A    192.168.1.2
     www.example.com. 1800  IN  AAAA 2001:db8::1:2

Regel 4 – @ als Platzhalter für Zonennamen

Erscheint der Name der Zone – der sogenannte Origin – ohne Extension isoliert, so darf er durch ein „@“ ersetzt werden.

Beispiel Datei example.com:

     @                  1800  IN  SOA ns1.example.com. mailbox.example.com. (
                                                100   ; Seriennummer
                                                300   ; Refresh Time
                                                100   ; Retry Time
                                                6000  ; Expire Time
                                                600   ; negative Caching Zeit
                                               )
     @                  1800  IN  NS     ns1.example.com.
     @                  1800  IN  A      1.2.3.4
     @                  1800  IN  AAAA   2001:db8::1:2:3:4
     alias.example.com. 1800  IN  CNAME  @
     ns1.example.com. 1800  IN  A      172.27.182.17
     ns1.example.com. 1800  IN  AAAA   2001:db8::53
     www.example.com. 1800  IN  A      192.168.1.2
     www.example.com. 1800  IN  AAAA   fd00::1:2

Regel 5 – Zonenname darf weggelassen werden

Erscheint der Origin (Name der Zonen) am Ende eines Namens, so darf er weggelassen werden. Man beachte den Unterschied, der durch den weggelassenen Punkt am Ende des Namens entsteht: Namen mit anhängendem Punkt sind vollqualifiziert, und Namen ohne Punkt sind immer relativ zur Origin, wie man an den letzten beiden Beispielen sieht.

Beispiel Zone example.com:

     @                  1800  IN  SOA ns1 mailbox (
                                                100   ; Seriennummer
                                                300   ; Refresh Time
                                                100   ; Retry Time
                                                6000  ; Expire Time
                                                600   ; negative Caching Zeit
                                               )
     @                  1800  IN  NS ns1
     ns1                1800  IN  A  172.27.182.17
     www 1800  IN  A  192.168.1.2
     www.abteilung 1800  IN  A  192.168.1.3      ; bedeutet www.abteilung.example.com
     www.example.com 1800  IN  A  192.168.1.4      ; bedeutet wegen fehlenden Punkts www.example.com.example.com

Regel 6 – nur der erste Name muss angegeben werden

Haben zwei oder mehr aufeinanderfolgende RRs den gleichen Namen, so braucht nur der erste angegeben zu werden.

     ns1.example.com. 1800  IN  A      172.27.182.17
                        1800  IN  AAAA   2001:db8::53
     www.example.com. 1800  IN  A      192.168.1.2
                        1800  IN  AAAA   fd00::1:2

Regel 7 – „IN“ muss nur einmal angegeben werden

Das Klassenfeld „IN“ braucht nur beim ersten RR angegeben zu werden.

Beispiel:

     @                  1800  IN  SOA ns1 mailbox (
                                                100   ; Seriennummer
                                                300   ; Refresh Time
                                                100   ; Retry Time
                                                6000  ; Expire Time
                                                600   ; negative Caching Zeit
                                               )
                        1800   NS ns1          ; der Name darf weggelassen werden
     ns1                1800   A   172.27.182.17
     www 1800   A   192.168.1.2

Regel 8 – TTL

Ist in einem RR kein TTL (Time to live) vorhanden, so wird der letzte in der Zonendatei vorher vorhandene TTL-Wert verwendet. Ist vorher kein TTL vorhanden, so wird der Wert aus dem SOA Resource Record genommen.

Beispiel:

     @              IN  SOA  ns1 mailbox 100 300 100 6000 1234
                        NS   ns1               ; =1234 aus SOA
     ns1                A    172.27.182.17     ; TTL=1234 aus SOA
     www 20        A    192.168.1.2       ; ab hier gilt TTL=20
     test A    1.2.3.4           ; TTL=20 aus vorherigem Eintrag

Die Einheit für Zeitangaben wie z. B. TTL ist Sekunden (ersichtlich in Ripe-203[1])

Regel 9 – $ORIGIN

Standard-Origin ist der Zonenname, wie er in der Datei named.conf.local definiert wurde. Mit der $ORIGIN-Anweisung können beliebige andere Origins definiert werden. Ein neu definierter Origin ist für alle folgenden Zeilen bis zur nächsten $ORIGIN-Anweisung gültig.

Beispiel Zone example.com:

     @        IN  SOA  ns1 mailbox 100 300 100 6000 1800
                  NS   ns1
     ns1          A    172.27.182.17
     www A    192.168.1.2
     $ORIGIN sub.example.com.
     xxx A    1.2.3.4

Regel 10 – $TTL

Mit der $TTL-Anweisung kann ein Default-TTL-Wert vorgegeben werden.

Beispiel:

     $TTL 1800
     @        IN  SOA  ns1 mailbox 100 300 100 6000 600
                  NS   ns1
     ns1          A    172.27.182.17

Regel 11 – $INCLUDE

Mit $INCLUDE-Anweisungen können weitere Dateien eingebunden werden. Diese müssen natürlich eine korrekte Syntax aufweisen. Die $INCLUDE-Anweisung hat nur lokale Bedeutung. Beim Zonentransfer wird die expandierte Zone übertragen.

Beispiel:

     @        IN  SOA  ns1 mailbox 100 300 100 6000 1800
                  NS   ns1
     ns1          A    172.27.182.17
     $INCLUDE     /var/named/mx-records.txt
     $INCLUDE     /var/named/a-records.txt

Sonstiges

Beim bekannten BIND-Nameserver existiert außerdem die $GENERATE-Anweisung, mit der Resource-Records automatisch erzeugt werden können.

Weblinks

Einzelnachweise

  1. Peter Koch: Recommendations for DNS SOA Values. RIPE DNS Working Group, Juni 1999, abgerufen am 15. April 2013.
da:Zonefil

hu:DNS-zónafájl


Kategorien: Domain Name System

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Zonendatei (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.