DOKK / manpages / debian 10 / gdnsd / gdnsd.djbdns.5.en
GDNSD.DJBDNS(5) gdnsd GDNSD.DJBDNS(5)

gdnsd.djbdns - gdnsd support for the djbdns tinydns zone data format

  /etc/gdnsd/djbdns/my-djbdns-datafile:
    Zexample.com:a.ns.example.com:hostmaster.example.com::::::86400
    &example.com:192.0.2.1:a.ns.example.com.:86400
    &example.com:192.0.2.2:b.ns.example.com.:86400
    =foo.example.com:192.0.2.100:86400

This zone data backend implements the tinydns format described in <http://cr.yp.to/djbdns/tinydns-data.html>.

As of this writing, djbdns file format support is considered EXPERIMENTAL. Feel free to submit issues and/or pull requests to make the implementation and documentation more correct and complete! There are probably many legal djbdns zone datasets that do not load correctly (or at all) yet. However, there are users loading data from this in production.

The djbdns zone data backend loads all files found within the djbdns subdirectory of the daemon config directory, default /etc/gdnsd/djbdns/. Each file can contain multiple zones (identified by "Z" records).

At this time, unlike the RFC1035 zone data backend, the djbdns backend does not support automatic reloading of updates based on filesystem notification. It only explicitly reloads any changed data on "SIGUSR1" / "gdnsd reload-zones".

The following record types are implemented in the parser:

The "Z" type denotes the existence of a zone and defines its SOA-record. All records within a file must be contained within a zone defined by a "Z" entry.
& - NS (+ A)
Implemented.
. - NS + SOA (+ A)
The "." type is meant to create an SOA along with the zone's NS records. At this time, gdnsd doesn't support this record for defining the SOA or a zone's existence, and treats it just like "&" above.
@ - MX (+ A)
Implemented.
+ - A
If the 5th field is "~~", this can be used to create "DYNA" records as well, with the "plugin!resource" part in the 2nd field.
= - A + PTR
The autogeneration of PTR records for "=" is not implemented yet, so this is treated identically to "+" above.
If the 5th field is "~~", this can be used to create "DYNC" records as well, with the "plugin!resource" part in the 2nd field.
Implemented.
Implemented.
Implemented.
3 - AAAA
Not yet implemented.
6 - AAAA + PTR
Not yet implemented.
^ - PTR
Not yet implemented.
: - Raw
Not yet implemented.

gdnsd(8), gdnsd.config(5), gdnsd.zonefile(8)

The gdnsd manual.

Copyright (c) 2014 Brandon L Black <blblack@gmail.com>

This file is part of gdnsd.

gdnsd is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

gdnsd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with gdnsd. If not, see <http://www.gnu.org/licenses/>.

2021-02-11 gdnsd 2.4.3