Another way to transfer zones

Bernhard Schmidt berni at
Sat Jun 19 19:04:07 UTC 2004


I've been working on a replacement for nsd-xfer/bind-xfer for the use 
with NSD for some evenings now, and since I believe that at least some 
of you do have the same problem I experienced during my transition to 
NSD (that is, bind-xfer is only available in BIND8, which is sometimes a 
little bit peeky in being compiled, plus the many invokations of that 
program during the regular update are slow as hell) I decided to publish 
it. Perhaps it is of some use to you.

It basically accepts data in the nsd.zones format from STDIN and tries 
to check/transfer any zone that has a masters keyword. It can do TSIG 
for SOA and AXFR (only tested with one BIND9 master), it should be quite 
error-resistant with useful log-messages, and it is fast (about 10 times 
faster than the regular nsdc update cycle on my box with about hundred 
slave zones).

There is no README yet... I've implemented some (maybe useful) 
commandline switches you can see with --help. I'm no professional perl 
scripter, this is my first release of something I wrote ever. The code 
sucks in large chunks, and there are parts in it I have to forget every 
evening to fall asleep.

Slave directories are not created automatically, you have to do that by 
hand. Generally most open() calls have to be made something more error 
prune, I'm working on that currently. cannot do IPv6 
transport at the moment (due to Net::DNS not supporting it) and you need 
  an nsd-xfer.conf (even if you do not use TSIG at all).

Use on your own risk. I don't guarantee that it won't blow your system. 
If anyone thinks this is of use or even better has some patches I'd be 
happy to accept them and include them. Give me some motivation to keep 
working on that thing, otherways it will end like most of my small 
scripts ("works here") :-)

Oh, and the most important thing... here is the URL

it needs the Net::DNS perl module (version 0.46-2 of Debian testing 
here, don't know how old the version can be to support all functions).


More information about the nsd-users mailing list