From 11b31832284b41033b3dfe1dec188b5b888582cb Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sat, 22 Oct 2011 22:39:37 +0200 Subject: [PATCH] Preparing for release of version 4.0 --- NEWS | 26 ++++++++++++++++++-------- README | 37 ++++++++++++++++++++++--------------- TODO | 2 -- m4/dnslib.m4 | 2 +- m4/mkconf.m4 | 2 +- m4/mkmf.m4 | 2 +- nsc.lsm | 8 ++++---- 7 files changed, 47 insertions(+), 32 deletions(-) diff --git a/NEWS b/NEWS index a4da74d..c5bebcc 100644 --- a/NEWS +++ b/NEWS @@ -1,13 +1,23 @@ - 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] diff --git a/README b/README index 4e6b56b..e7f7a00 100644 --- a/README +++ b/README @@ -1,29 +1,29 @@ - Domain Name Server Configuration Utilities -- NSC 3.1 + Domain Name Server Configuration Utilities -- NSC 4.0 - (c) 1997--2008 Martin Mares + (c) 1997--2011 Martin Mares ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ------------------------------------------------------------------------------------ -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 @@ -37,8 +37,8 @@ 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 @@ -48,6 +48,9 @@ GNU General Public License. See file COPYING in any of the GNU utility archives - Create cf/ 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. @@ -55,7 +58,9 @@ GNU General Public License. See file COPYING in any of the GNU utility archives - 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 @@ -78,6 +83,7 @@ files and subdirectories: 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 @@ -328,6 +334,7 @@ ROOT Root directory of the whole package (default: /etc/named) 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 @@ -350,7 +357,7 @@ DAYS(n) Convert days to seconds 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 @@ -454,7 +461,7 @@ However, there is a couple of things you need to care about: 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. diff --git a/TODO b/TODO index bf97c01..8cddb5f 100644 --- a/TODO +++ b/TODO @@ -1,3 +1 @@ freebsd: don't use `-f' in hostname - -BIND9: `bak' must be owned by the bind user diff --git a/m4/dnslib.m4 b/m4/dnslib.m4 index 9fc84fe..6cdb921 100644 --- a/m4/dnslib.m4 +++ b/m4/dnslib.m4 @@ -1,6 +1,6 @@ dnl ### dnl ### NSC -- Library Functions For DNS Processing -dnl ### (c) 1997--2008 Martin Mares +dnl ### (c) 1997--2011 Martin Mares dnl ### divert(-1) diff --git a/m4/mkconf.m4 b/m4/mkconf.m4 index ebf6532..927ea9e 100644 --- a/m4/mkconf.m4 +++ b/m4/mkconf.m4 @@ -1,6 +1,6 @@ dnl ### dnl ### NSC -- BIND Config File Builder -dnl ### (c) 1997--2006 Martin Mares +dnl ### (c) 1997--2011 Martin Mares dnl ### include(m4/dnslib.m4) diff --git a/m4/mkmf.m4 b/m4/mkmf.m4 index 6d8c90b..d224efa 100644 --- a/m4/mkmf.m4 +++ b/m4/mkmf.m4 @@ -1,6 +1,6 @@ dnl ### dnl ### NSC -- Makefile Builder -dnl ### (c) 1997--2008 Martin Mares +dnl ### (c) 1997--2011 Martin Mares dnl ### include(m4/dnslib.m4) diff --git a/nsc.lsm b/nsc.lsm index 704c7ab..89a60db 100644 --- a/nsc.lsm +++ b/nsc.lsm @@ -1,14 +1,14 @@ Begin3 Title: Name Server Configurator -Version: 3.1 -Entered-date: 080521 +Version: 4.0 +Entered-date: 111022 Description: Set of utilities and M4 scripts for easy maintenance of DNS zone files and also automatic generation of BIND 8/9 configuration files. Requires GNU m4 and a Posix-compatible shell. Keywords: named, bind, dns Author: mj@ucw.cz (Martin Mares) Maintained-by: mj@ucw.cz (Martin Mares) -Primary-site: atrey.karlin.mff.cuni.cz pub/local/mj/net/nsc-3.1.tar.gz -Alternate-site: metalab.unc.edu pub/Linux/system/network/management/nsc-3.1.tar.gz +Primary-site: atrey.karlin.mff.cuni.cz pub/local/mj/net/nsc-4.0.tar.gz +Alternate-site: metalab.unc.edu pub/Linux/system/network/management/nsc-4.0.tar.gz Copying-policy: GPL End -- 2.39.2