- o Added FORWARDING macro for generating forward-only zones.
- o Added BLACKHOLE macro for blackhole zones as per RFC 6303.
+Version 4.0 [2011-10-22]
+
+ This version brings several incompatible changes with a common
+ goal: instead of generating a full named.conf, produce a fragment
+ which can be included from a parent config file.
+
+ o BIND_OPTIONS, FORWARD and SLAVE are gone. Just write the
+ options to the parent config file. (If you think it is somewhat
+ inconvenient, ask BIND developers to change the config file
+ parser, so that multiple options { } sections can be specified.)
+ o Root hints became optional. If you want them, use ROOTHINT().
+
+ Furthermore, several features have been added:
+
+ o A FORWARDING macro for generating forward-only zones.
+ o A BLACKHOLE macro for blackhole zones as per RFC 6303.
Blackhole zones in example cf/domains updated to use this macro.
- o Given that BIND does not support combination of options { }
- sections, we do not generate them any longer -- write the
- appropriate options to BIND config file and include the part
- with the list of zones generated by NSC from there. This means
- that BIND_OPTIONS, FORWARD and SLAVE are gone.
o When contents of a zone do not change, the version number is
- not incremented.
+ not incremented. Unfortunately, BIND tends to produce a warning
+ in such cases, and it be turned off.
Version 3.1 [2008-05-21]
- Domain Name Server Configuration Utilities -- NSC 3.1
+ Domain Name Server Configuration Utilities -- NSC 4.0
- (c) 1997--2008 Martin Mares <mj@ucw.cz>
+ (c) 1997--2011 Martin Mares <mj@ucw.cz>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------------------------------------------------------------
-WARNING: NSC has undergone significant changes between versions 2.3 and 2.99b.
-See NEWS for the summary of changes. Most importantly, the configuration files are
-NOT compatible with the old releases.
+WARNING: There were several incompatible changes between versions 3.1 and 4.0.
+ See NEWS for the summary of changes.
------------------------------------------------------------------------------------
NSC is a set of shell and M4 scripts for easy maintenance of DNS zone files
-and name server daemon configuration (currently available only for BIND 8.X,
+and name server daemon configuration (currently available only for BIND 8.x/9.x,
but easily portable for other daemons). It has been designed to make administration
of a DNS server a piece of cake (unlike other utilities which resemble more
an English pudding :-) ), which includes automatic generation of reverse records
for all your hosts, handling of classless reverse delegations and support for IPv6
-(AAAA and PTR in in6.arpa, not A6 and DNAME which seem to be dying out).
+(AAAA and PTR in ip6.arpa, not A6 and DNAME which seem to be dying out).
- NSC requires GNU m4 and a POSIX-compatible shell, some of the extra utilities
-require Perl 5. I've tested everything on Linux (Debian Woody), but the whole
-package should run on other unices as well.
+ NSC requires GNU m4, a POSIX-compatible shell and the `md5sum' utility (which
+is present for examile in GNU coreutils). Some of the extra utilities require
+Perl 5. I've tested everything on Linux (Debian Squeeze), but the whole package
+should run on other unices as well.
The whole package can be used and distributed according to the terms of the
GNU General Public License. See file COPYING in any of the GNU utility archives
- Create a directory where all NSC files will reside (e.g., /etc/named)
and copy everything from the NSC distribution here.
- - Symlink /etc/bind/named.conf (or /etc/named.conf or where the config file
- of your installation of BIND resides) to /etc/named/named.conf
+ - Add an include directive to your BIND configuration file (usually
+ /etc/bind/named.conf), referring to /etc/named/named.conf.
- Change directory to /etc/named
- Create cf/<domain-name> for all domains (again, you can easily follow
the example domains).
+ - If you are using BIND 9.x, make the `bak' directory writable
+ by the bind user.
+
- Run bin/nsconfig (Makefile and named.conf will be generated).
- Run make.
- Enjoy your new DNS setup. If everything goes OK, be happy. Else
write a bug report :-)
- - Every time you modify the domain files
+ - Every time you modify the domain files, re-run make. If you have
+ added or removed domains or changed options which affect named.conf,
+ re-run bin/nsconfig before make.
An interesting companion to this package is the DNS Sleuth -- a DNS zone
consistency checker. It's a simple utility written in Perl with help of the
m4/ - M4 scripts (used by the commands)
zone/ - primary zone files
bak/ - backups of zones we serve as a secondary NS for
+ hash/ - hashes of zone files used for detection of changes
ver/ - version files where NSC remembers version
numbers of the primary zones
CFDIR Directory with config files (default: cf)
ZONEDIR Directory with zone files (default: zone)
BAKDIR Directory with backup files (default: bak)
+HASHDIR Directory with zone hashes (default: hash)
VERSDIR Directory with version files (default: var)
ROOTCACHE File with the cache of root name servers
The Makefile generated by NSC offers the following targets:
all (default) - update all zone files and reload the daemon
- clean - clean all generated zone files and backups
+ clean - clean all generated zone files, backups, and hashes
clobber - clean + delete Makefile and named.conf
(wise to do after major reconfigurations)
distclean - clobber + delete all version files (use only
for the NSC itself and unless documented, messing with them can
bring surprising results. If you need to use such a name in your
zone file (maybe you like to shout in your host names :-) ),
- quote it with ` and '.
+ quote it like `this'.
o Don't use commas, quotes nor parentheses in your record names.