1*d83a80eeSchristosUpgrading from NSD 3.x to NSD 4 2*d83a80eeSchristos 3*d83a80eeSchristosby Wouter C.A. Wijngaards, NLnetLabs, Jul 2012 4*d83a80eeSchristos 5*d83a80eeSchristosThis document lists the changes in the upgrade from NSD 3 to NSD 4 systems. 6*d83a80eeSchristos(scroll down for the NSD 2.x to NSD 3 upgrade manual). 7*d83a80eeSchristos 8*d83a80eeSchristos* nsdc is gone. You can control the daemon via kill -HUP and kill -TERM, 9*d83a80eeSchristosor you can use nsd-control. 10*d83a80eeSchristos 11*d83a80eeSchristos* to setup nsd-control you have to run nsd-control-setup (as root) and enable 12*d83a80eeSchristosremote-control in the nsd.conf file. It uses SSL to contact the daemon. 13*d83a80eeSchristos 14*d83a80eeSchristos* the nsd.conf file from NSD3 can be used for NSD4 (defaults for new stuff). 15*d83a80eeSchristos * the difffile: setting is no longer used but ignored for 16*d83a80eeSchristos backwards compatibility. 17*d83a80eeSchristos * zones listed in nsd.conf are served. 18*d83a80eeSchristos * the zonelistfile: setting sets the file where zones that are 19*d83a80eeSchristos added dynamically (and can be removed dynamically) are stored. 20*d83a80eeSchristos * the xfrdir: is used to store temporary zone transfer files. 21*d83a80eeSchristos * it is possible to define patterns in the nsd.conf file and 22*d83a80eeSchristos use the patterns to give config settings for the zones. 23*d83a80eeSchristos * patterns accept the same sort of settings which NSD3-zones did. 24*d83a80eeSchristos * you can make super-patterns with the include-pattern: setting 25*d83a80eeSchristos * the zonefile: statement creates directories when needed, if they 26*d83a80eeSchristos do not exist. In the zonefile: statement you can use %s (and 27*d83a80eeSchristos other codes) to use (part of) the name of the zone to generate 28*d83a80eeSchristos the pathname of the zonefile. 29*d83a80eeSchristos * if there is no zonefile (for slave zones) it is not used. 30*d83a80eeSchristos 31*d83a80eeSchristos* nsdc rebuild and so on is gone, use nsd-control reload or kill -HUP. 32*d83a80eeSchristos * it scans if zonefiles are modified and reads those. 33*d83a80eeSchristos * you can also specify a zone by name and have nsd read that file. 34*d83a80eeSchristos * if you nsd-control reconfig it rereads the config file for zones. 35*d83a80eeSchristos* nsdc patch is not necessary 36*d83a80eeSchristos * the database is edited at runtime. 37*d83a80eeSchristos * it mmap's the nsd.db file for file I/O, this increases 38*d83a80eeSchristos virtual memory usage of NSD with the size of the file. 39*d83a80eeSchristos * if you like cronjobs, you could have one to nsd-control write 40*d83a80eeSchristos and write slave zones that have changed to their zonefile. 41*d83a80eeSchristos* other nsdc commands, reconfig (reread patterns, zones, keys), 42*d83a80eeSchristos add a zone, delete a zone, and zone transfer control, statistics. 43*d83a80eeSchristos 44*d83a80eeSchristos 45*d83a80eeSchristos 46*d83a80eeSchristosUpgrading from NSD 2.x to NSD 3 47*d83a80eeSchristos 48*d83a80eeSchristosby Wouter C.A. Wijngaards, NLnetLabs, Aug 2006 49*d83a80eeSchristos 50*d83a80eeSchristosThis document lists the changes in the upgrade from NSD 2 to NSD 3 systems. 51*d83a80eeSchristos 52*d83a80eeSchristos* The nsdc.conf file is gone. 53*d83a80eeSchristos * specify the config file to nsdc by using the -c <file> option. 54*d83a80eeSchristos * binaries are searched for in the installation bin directory, 55*d83a80eeSchristos in the PATH and in the directory of nsdc.sh itself. 56*d83a80eeSchristos * other options go into the new nsd.conf file. 57*d83a80eeSchristos 58*d83a80eeSchristos* The nsd.masters file is gone, replaced by nsd.conf. 59*d83a80eeSchristos * Look at nsd.conf.5 manual page to see format. 60*d83a80eeSchristos * you can list nsd-commandline-options, zones, masters, slaves, keys. 61*d83a80eeSchristos * TSIG support: please list the TSIG keys in nsd.conf, or do this with 62*d83a80eeSchristos include: "keys.conf" and provide additional security for that file. 63*d83a80eeSchristos * For every zone include lines: 64*d83a80eeSchristos zone: 65*d83a80eeSchristos name: "example.com" 66*d83a80eeSchristos zonefile: "example.com.txt" 67*d83a80eeSchristos * For secondary zones include in the zone entry: 68*d83a80eeSchristos request-xfr: <ip of master> <tsig keyname or NOKEY> 69*d83a80eeSchristos allow-notify: <same as above> 70*d83a80eeSchristos * For master zones include in the zone entry: 71*d83a80eeSchristos provide-xfr: <ip of slave> <tsig keyname or NOKEY> 72*d83a80eeSchristos notify: <same as above> 73*d83a80eeSchristos * NSD does not provide IXFR, so for secondaries that connect to NSD use 74*d83a80eeSchristos request-xfr: AXFR <ip> <key> that will only use AXFR, not IXFR to 75*d83a80eeSchristos request zone transfers. 76*d83a80eeSchristos 77*d83a80eeSchristos* No more need for a cron job to do a nsdc update. 78*d83a80eeSchristos * nsd will update automatically all secondary zones from master. 79*d83a80eeSchristos * You should never need to do nsdc update or nsdc notify by hand. 80*d83a80eeSchristos * You can still use a cronjob to do nsdc patch. 81*d83a80eeSchristos nsdc patch moves the zone transfer content from temporary storage 82*d83a80eeSchristos to the zone files, recompiles the database and reloads nsd. 83*d83a80eeSchristos 84