This is a C version of a utility that will notify slave DNS servers to download zone updates from the master. There are Perl scripts that do the same thing, but if you don't have/want Perl or the dependent modules, or need the ability to set the source IP to the non-default interface (because you are using a multi-homed host), this utility can be useful.

This was written in particular for djbdns DNS servers that need to interoperate with BIND servers. This utility has been tested on a Solaris/Linux system.

Other djbdns utilities can be found at


The command line options are
Usage: ./dns-notify [ -h | -v | -s{ip} | -d{ip} | -r{retries} | -t{timeout} | {zones ...} ] ...

		-h      This help message.
		-v      Toggle verbose diagnostic flag. [default=quiet]
		-s{ip}	Source IP of notify messages; useful if host is
			multi-homed and is not zone serving from its primary
			interface. [default: primary IP]
		-d{ip}	IP or hostname to send notify messages to.
		-r{retries}	Retries. [default:3]
		-t{timeout}	Seconds to wait for reply before retry. [default:2]
		{zones ...}	Zone(s) to update.

	Arguments are acted upon in the order they are given.  Multiple zones
	on different slave servers can be notified:

		-dslave1 {zone1 ...} -dslave2 {zone2 ...}

	If a set of zones are replicated by multiple slave servers, you'll have
	notify each server separately:

		-dslave1 {zone ...} -dslave2 {zone ...}



	Joseph Tam
	Email: tam(at)math(dot)ubc(dot)ca
	Network Administrator
	Department of Mathematics
	University of British Columbia
	Canada V6T 1Z2

	Phone:	604-822-6621
	Fax:	604-822-6074