Bv9ARM.ch04.html revision 7208386cd37a2092c70eddf80cf29519b16c4c80
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - Copyright (C) 2000-2003 Internet Software Consortium.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - Permission to use, copy, modify, and distribute this software for any
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - purpose with or without fee is hereby granted, provided that the above
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - copyright notice and this permission notice appear in all copies.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
dda97aeba7480d08320ebceecae13b8531db1b81johanengelen - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
2e2b8bd323e3693f9d86f545ce049d3f1b45d1c2cilix - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm - PERFORMANCE OF THIS SOFTWARE.
2e2b8bd323e3693f9d86f545ce049d3f1b45d1c2cilix<!-- $Id: Bv9ARM.ch04.html,v 1.55 2005/06/20 03:30:27 marka Exp $ -->
fb5a72174252e0e79107dcad3bf5a2bbd73e349cjohanengelen<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
c0cd5511d3b975ebe07d019c1f5528108725e438johanengelen<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<link rel="up" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<link rel="prev" href="Bv9ARM.ch03.html" title="Chapter�3.�Name Server Configuration">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<link rel="next" href="Bv9ARM.ch05.html" title="Chapter�5.�The BIND 9 Lightweight Resolver">
56542e2b97ec8826cc692153b0e2d4f5ac8ef913johanengelen<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
56542e2b97ec8826cc692153b0e2d4f5ac8ef913johanengelen<table width="100%" summary="Navigation header">
56542e2b97ec8826cc692153b0e2d4f5ac8ef913johanengelen<tr><th colspan="3" align="center">Chapter�4.�Advanced DNS Features</th></tr>
d431763a9ec8059aa4962688de8144319969fb0fjohanengelen<a accesskey="p" href="Bv9ARM.ch03.html">Prev</a>�</td>
d431763a9ec8059aa4962688de8144319969fb0fjohanengelen<td width="20%" align="right">�<a accesskey="n" href="Bv9ARM.ch05.html">Next</a>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<a name="Bv9ARM.ch04"></a>Chapter�4.�Advanced DNS Features</h2></div></div></div>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect1"><a href="Bv9ARM.ch04.html#notify">Notify</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect1"><a href="Bv9ARM.ch04.html#dynamic_update">Dynamic Update</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dd><dl><dt><span class="sect2"><a href="Bv9ARM.ch04.html#journal">The journal file</a></span></dt></dl></dd>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect1"><a href="Bv9ARM.ch04.html#incremental_zone_transfers">Incremental Zone Transfers (IXFR)</a></span></dt>
79291918d036d77d586b6eba265d8d2ac0a7fee5cilix<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2539940">Split DNS</a></span></dt>
1e944d29efb206f5d0b5d1069cb098e22169d548cilix<dt><span class="sect1"><a href="Bv9ARM.ch04.html#tsig">TSIG</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540455">Generate Shared Keys for Each Pair of Hosts</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540529">Copying the Shared Secret to Both Machines</a></span></dt>
c0cd5511d3b975ebe07d019c1f5528108725e438johanengelen<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540539">Informing the Servers of the Key's Existence</a></span></dt>
c0cd5511d3b975ebe07d019c1f5528108725e438johanengelen<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540579">Instructing the Server to Use the Key</a></span></dt>
c0cd5511d3b975ebe07d019c1f5528108725e438johanengelen<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540705">TSIG Key Based Access Control</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540818">Errors</a></span></dt>
2e2b8bd323e3693f9d86f545ce049d3f1b45d1c2cilix<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2540832">TKEY</a></span></dt>
6c3e745a94ef6b25a4ef9f018d350a7535aa45afTed Gould<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2540881">SIG(0)</a></span></dt>
6c3e745a94ef6b25a4ef9f018d350a7535aa45afTed Gould<dt><span class="sect1"><a href="Bv9ARM.ch04.html#DNSSEC">DNSSEC</a></span></dt>
797bee69297bbdd86c5cff2e0771a71d1e2ac69dcilix<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2540949">Generating Keys</a></span></dt>
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2541086">Signing the Zone</a></span></dt>
a797dcb8e284cab19f60b3eff93a53a62abda263johanengelen<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2541234">Configuring Servers</a></span></dt>
d37634d73670180f99a3e0ea583621373d90ec4fJohan Engelen<dt><span class="sect1"><a href="Bv9ARM.ch04.html#id2541257">IPv6 Support in <span class="acronym">BIND</span> 9</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2541317">Address Lookups Using AAAA Records</a></span></dt>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<dt><span class="sect2"><a href="Bv9ARM.ch04.html#id2541338">Address to Name Lookups Using Nibble Format</a></span></dt>
fb5a72174252e0e79107dcad3bf5a2bbd73e349cjohanengelen<div class="titlepage"><div><div><h2 class="title" style="clear: both">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm <span class="acronym">DNS</span> NOTIFY is a mechanism that allows
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm servers to notify their slave servers of changes to a zone's data. In
0903335a0099bd7ee779925f43a15a2216a0e863johanengelen response to a <span><strong class="command">NOTIFY</strong></span> from a master
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm slave will check to see that its version of the zone is the
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm current version and, if not, initiate a zone transfer.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm For more information about
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm <span><strong class="command">NOTIFY</strong></span>, see the description of the
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm <span><strong class="command">notify</strong></span> option in <a href="Bv9ARM.ch06.html#boolean_options" title="Boolean Options">the section called “Boolean Options”</a> and
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm the description of the zone option <span><strong class="command">also-notify</strong></span> in
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm <a href="Bv9ARM.ch06.html#zone_transfers" title="Zone Transfers">the section called “Zone Transfers”</a>. The <span><strong class="command">NOTIFY</strong></span>
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz protocol is specified in RFC 1996.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<div class="titlepage"><div><div><h2 class="title" style="clear: both">
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<a name="dynamic_update"></a>Dynamic Update</h2></div></div></div>
79291918d036d77d586b6eba265d8d2ac0a7fee5cilix Dynamic Update is a method for adding, replacing or deleting
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm records in a master server by sending it a special form of DNS
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm messages. The format and meaning of these messages is specified
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm in RFC 2136.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm Dynamic update is enabled by
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm including an <span><strong class="command">allow-update</strong></span> or
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm <span><strong class="command">update-policy</strong></span> clause in the
ea3e4fdbdbf0a48ae887b096d301549da77d5707Johan Engelen <span><strong class="command">zone</strong></span> statement.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm Updating of secure zones (zones using DNSSEC) follows
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm RFC 3007: RRSIG and NSEC records affected by updates are automatically
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm regenerated by the server using an online zone key.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm Update authorization is based
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm on transaction signatures and an explicit server policy.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm<a name="journal"></a>The journal file</h3></div></div></div>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm All changes made to a zone using dynamic update are stored
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm in the zone's journal file. This file is automatically created
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm by the server when the first dynamic update takes place.
ea3e4fdbdbf0a48ae887b096d301549da77d5707Johan Engelen The name of the journal file is formed by appending the extension
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm corresponding zone
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm file unless specifically overridden. The journal file is in a
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm binary format and should not be edited manually.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm The server will also occasionally write ("dump")
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm the complete contents of the updated zone to its zone file.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm This is not done immediately after
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm each dynamic update, because that would be too slow when a large
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm zone is updated frequently. Instead, the dump is delayed by
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz up to 15 minutes, allowing additional updates to take place.
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz When a server is restarted after a shutdown or crash, it will replay
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz the journal file to incorporate into the zone any updates that
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz place after the last zone dump.
e7333a0a54c8d33b7397406dd76938aa430836d5joncruz Changes that result from incoming incremental zone transfers are
<span><strong class="command">rndc freeze <em class="replaceable"><code>zone</code></em></strong></span>.
<span><strong class="command">rndc unfreeze <em class="replaceable"><code>zone</code></em></strong></span>
internal and external resolvers is usually referred to as a <span class="emphasis"><em>Split DNS</em></span> setup. There are several reasons an organization
except queries for <code class="filename">site1.internal</code>, <code class="filename">site2.internal</code>, <code class="filename">site1.example.com</code>,
for <code class="filename">site1.example.com</code>, <code class="filename">site2.example.com</code>,<span class="emphasis"><em></em></span> <code class="filename">site1.internal</code>,
To protect the <code class="filename">site1.internal</code> and <code class="filename">site2.internal</code> domains,
be configured to serve the "public" version of the <code class="filename">site1</code> and <code class="filename">site2.example.com</code> zones.
and mail exchange (MX) records (<code class="filename">a.mx.example.com</code> and <code class="filename">b.mx.example.com</code>).
In addition, the public <code class="filename">site1</code> and <code class="filename">site2.example.com</code> zones
for information on how to configure your zone files, see <a href="Bv9ARM.ch03.html#sample_configuration" title="Sample Configurations">the section called “Sample Configurations”</a>
zone "site1.example.com" { // sample master zone
zone "site2.example.com" { // sample slave zone
zone "site1.internal" {
zone "site2.internal" {
zone "site1.example.com" { // sample slave zone
zone "site2.example.com" {
A shared secret is generated to be shared between <span class="emphasis"><em>host1</em></span> and <span class="emphasis"><em>host2</em></span>.
<strong class="userinput"><code>dnssec-keygen -a hmac-md5 -b 128 -n HOST host1-host2.</code></strong>
Imagine <span class="emphasis"><em>host1</em></span> and <span class="emphasis"><em>host 2</em></span>
both servers. The following is added to each server's <code class="filename">named.conf</code> file:
be told when keys are to be used. The following is added to the <code class="filename">named.conf</code> file
for <span class="emphasis"><em>host1</em></span>, if the IP address of <span class="emphasis"><em>host2</em></span> is
to that address, the message will be signed with the specified key. <span class="emphasis"><em>host1</em></span> will
configuration file (with <span class="emphasis"><em>host1</em></span>'s address) for <span class="emphasis"><em>host2</em></span> to
powerful <span><strong class="command">update-policy</strong></span> statement in <a href="Bv9ARM.ch06.html#dynamic_update_policies" title="Dynamic Update Policies">the section called “Dynamic Update Policies”</a>.
that the tools shipped with BIND 9.2.x and earlier are not compatible
<strong class="userinput"><code>dnssec-keygen -a RSASHA1 -b 768 -n ZONE child.example.</code></strong>
see <a href="Bv9ARM.ch09.html#ipv6addresses" title="IPv6 addresses (AAAA)">the section called “IPv6 addresses (AAAA)”</a>.
$ORIGIN example.com.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 14400 IN PTR host.example.com.