1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134
|
=head1 nsdiff
=head2 create an "nsupdate" script from DNS zone file differences
The B<nsdiff> program examines the old and new versions of a DNS zone,
and outputs the differences as a script for use by BIND's B<nsupdate>
program. It provides a bridge between static zone files and dynamic
updates.
The B<nspatch> script is a wrapper around C<nsdiff | nsupdate> that
checks and reports errors in a manner suitable for running from B<cron>.
The B<nsvi> script makes it easy to edit a dynamic zone.
=over
I<I've fallen in <3 with nsdiff/nsvi> - JP Mens
=back
If you use BIND 9.7 or 9.8, you can use B<nsdiff> as an alternative
to the DNSSEC C<inline-signing> feature which appeared in BIND 9.9.
The server updates the DNSSEC records dynamically, but you can
continue to manage the unsigned static zone file as before and use
C<`nsdiff | nsupdate`> to push changes to the server.
There are other situations where you have a zone which is partly
dynamic and partly static, for example, a reverse DNS zone mostly
updated by a DHCP server, which also has a few static entries. You can
use B<nsdiff> to update the static part of the zone.
=head2 Dependencies
To run nsdiff you need perl-5.10 or newer, and BIND version 9.7 or
newer, specifically the B<dig>, B<named-compilezone>, and B<nsupdate>
utilities.
=head2 Install
To install, run:
perl Makefile.PL
make install
To install in a particular place, use something like
perl Makefile.pl PREFIX=${HOME}
=head2 Downloads
=over
=item Documentation
The nsdiff homepage is L<https://dotat.at/prog/nsdiff/>
Read the nsdiff manual: L<https://dotat.at/prog/nsdiff/nsdiff.html>
Read the nspatch manual: L<https://dotat.at/prog/nsdiff/nspatch.html>
Read the nsvi manual: L<https://dotat.at/prog/nsdiff/nsvi.html>
=item Code
Download the bare nsdiff perl source: L<https://dotat.at/prog/nsdiff/nsdiff>
Download the source distribution:
=over
=item
L<https://dotat.at/prog/nsdiff/DNS-nsdiff-1.85.tar.gz>
=back
=item Source repositories
You can clone or browse the repository from:
=over
=item
L<git://dotat.at/nsdiff.git>
=item
L<https://dotat.at/cgi/git/nsdiff.git>
=item
L<https://github.com/fanf2/nsdiff.git>
=back
=back
=head2 Feedback
Please send bug reports or patches to me at <dot@dotat.at>.
Any contribution that you want included in `nsdiff` must be licensed
under 0BSD and/or MIT-0, and must include a `Signed-off-by:` line to
certify that you wrote it or otherwise have the right to pass it on
as a open-source patch, according to the Developer's Certificate of
Origin 1.1.
=over
=item
0BSD: L<https://opensource.org/license/0BSD>
=item
MIT-0 L<https://opensource.org/license/mit-0>
=item
DCO: L<https://developercertificate.org>
=back
=head2 Licence
Permission is hereby granted to use, copy, modify, and/or
distribute this software for any purpose with or without fee.
This software is provided 'as is', without warranty of any kind.
In no event shall the authors be liable for any damages arising
from the use of this software.
SPDX-License-Identifier: 0BSD OR MIT-0
|