Unsere Zonefiles sind nun ziemlich unübersichtlich, aber bei
bind
sind einige Abkürzungen möglich. bind weiß ja
(wir werden es ihm später sagen), welche Domain in welcher Datei
liegt.
bei dem Eintrag:
selflinux.zone |
ns1.selflinux.de. IN A 192.168.1.1
|
Beispielsweise ist ja klar, dass er zu ".selflinux.de."
gehört (sonst wäre es die falsche Datei!). Das kann man
weglassen. Auch die Klasse kann man weglassen, dann wird
"IN" angenommen, man erhält:
selflinux.zone |
ns1 A 192.168.1.1
|
Die Domain wird an alle Namen angehängt, nicht jedoch an
IP-Adressen, die hinter einem "A" stehen. Aber an Namen,
die z.B. hinter einem "CNAME" stehen, es sei denn,
diese sind explizit als vollständig angegeben und enden mit
einem ".".
Beim SOA Record ist das ähnlich:
selflinux.zone |
selflinux.de. IN SOA pri-ns.selflinux.de. admin.selflinux.de. (...)
|
Für die Domain "selflinux.de", in deren Datei wir uns
ja befinden, kann man auch "@" schreiben, also:
selflinux.zone |
@ IN SOA pri-ns.selflinux.de. admin.selflinux.de. (...)
|
Die Domain wird auch hier angehängt, deshalb geht auch:
selflinux.zone |
@ SOA pri-ns admin (...)
|
aber es sieht nicht mehr sehr gut aus... Der Autor mag z.B. gar
keine Abkürzungen in SOA Records, aber das ist Geschmackssache.
Es gibt noch eine weitere Abkürzung: Gibt es mehrere RRs für
dasselbe Objekt, so muß dieses nur einmal (beim ersten RR)
genannt werden. Die weiteren werden dann so angenommen, also ist
auch erlaubt:
selflinux.zone |
selflinux.de. IN NS ns1.selflinux.de.
IN NS ns2.selflinux.de.
|
Da hier diese Einträge direkt nach dem SOA Record kommen (der ja
ein RR für "selflinux.de." ist), kann man bei 1. NS RR
(also beim 2. RR der Zone) dieses auch noch weglassen, was in
der Praxis meistens gemacht wird.
Auch muß man (für bind, andere DNS-Server
machen das vielleicht anders!) die Zeiten im SOA und TTLs nicht
unbedingt in Sekunden angeben, man schreibt statt
"3600" einfach "3H".
Es gibt für Tage (days) "D", für Wochen (weeks)
"W" und für Minuten (minutes) "M".
Verwendet man keine TTL-Angaben bei den Records, wird ein
Defaultwert verwendet. Ältere bind-Versionen
verwenden hierzu stets min. TTL aus dem SOA Record, neuere
kennen dazu die Direktive $TTL, die im Zonefile
eingestellt wird. In den Beispielen wird hier immer eine
Default-TTL von einem Tag verwendet: $TTL 1d.
|