xref: /minix3/external/bsd/bind/dist/bin/nsupdate/nsupdate.html (revision 00b67f09dd46474d133c95011a48590a8e8f94c7)
1*00b67f09SDavid van Moolenbroek<!--
2*00b67f09SDavid van Moolenbroek - Copyright (C) 2004-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
3*00b67f09SDavid van Moolenbroek - Copyright (C) 2000-2003 Internet Software Consortium.
4*00b67f09SDavid van Moolenbroek -
5*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any
6*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above
7*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies.
8*00b67f09SDavid van Moolenbroek -
9*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE.
16*00b67f09SDavid van Moolenbroek-->
17*00b67f09SDavid van Moolenbroek<!-- Id -->
18*00b67f09SDavid van Moolenbroek<html>
19*00b67f09SDavid van Moolenbroek<head>
20*00b67f09SDavid van Moolenbroek<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
21*00b67f09SDavid van Moolenbroek<title>nsupdate</title>
22*00b67f09SDavid van Moolenbroek<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
23*00b67f09SDavid van Moolenbroek</head>
24*00b67f09SDavid van Moolenbroek<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
25*00b67f09SDavid van Moolenbroek<a name="man.nsupdate"></a><div class="titlepage"></div>
26*00b67f09SDavid van Moolenbroek<div class="refnamediv">
27*00b67f09SDavid van Moolenbroek<h2>Name</h2>
28*00b67f09SDavid van Moolenbroek<p><span class="application">nsupdate</span> &#8212; Dynamic DNS update utility</p>
29*00b67f09SDavid van Moolenbroek</div>
30*00b67f09SDavid van Moolenbroek<div class="refsynopsisdiv">
31*00b67f09SDavid van Moolenbroek<h2>Synopsis</h2>
32*00b67f09SDavid van Moolenbroek<div class="cmdsynopsis"><p><code class="command">nsupdate</code>  [<code class="option">-d</code>] [<code class="option">-D</code>] [[<code class="option">-g</code>] |  [<code class="option">-o</code>] |  [<code class="option">-l</code>] |  [<code class="option">-y <em class="replaceable"><code>[<span class="optional">hmac:</span>]keyname:secret</code></em></code>] |  [<code class="option">-k <em class="replaceable"><code>keyfile</code></em></code>]] [<code class="option">-t <em class="replaceable"><code>timeout</code></em></code>] [<code class="option">-u <em class="replaceable"><code>udptimeout</code></em></code>] [<code class="option">-r <em class="replaceable"><code>udpretries</code></em></code>] [<code class="option">-R <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-v</code>] [<code class="option">-T</code>] [<code class="option">-P</code>] [<code class="option">-V</code>] [filename]</p></div>
33*00b67f09SDavid van Moolenbroek</div>
34*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
35*00b67f09SDavid van Moolenbroek<a name="id2543485"></a><h2>DESCRIPTION</h2>
36*00b67f09SDavid van Moolenbroek<p><span><strong class="command">nsupdate</strong></span>
37*00b67f09SDavid van Moolenbroek      is used to submit Dynamic DNS Update requests as defined in RFC 2136
38*00b67f09SDavid van Moolenbroek      to a name server.
39*00b67f09SDavid van Moolenbroek      This allows resource records to be added or removed from a zone
40*00b67f09SDavid van Moolenbroek      without manually editing the zone file.
41*00b67f09SDavid van Moolenbroek      A single update request can contain requests to add or remove more than
42*00b67f09SDavid van Moolenbroek      one
43*00b67f09SDavid van Moolenbroek      resource record.
44*00b67f09SDavid van Moolenbroek    </p>
45*00b67f09SDavid van Moolenbroek<p>
46*00b67f09SDavid van Moolenbroek      Zones that are under dynamic control via
47*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span>
48*00b67f09SDavid van Moolenbroek      or a DHCP server should not be edited by hand.
49*00b67f09SDavid van Moolenbroek      Manual edits could
50*00b67f09SDavid van Moolenbroek      conflict with dynamic updates and cause data to be lost.
51*00b67f09SDavid van Moolenbroek    </p>
52*00b67f09SDavid van Moolenbroek<p>
53*00b67f09SDavid van Moolenbroek      The resource records that are dynamically added or removed with
54*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span>
55*00b67f09SDavid van Moolenbroek      have to be in the same zone.
56*00b67f09SDavid van Moolenbroek      Requests are sent to the zone's master server.
57*00b67f09SDavid van Moolenbroek      This is identified by the MNAME field of the zone's SOA record.
58*00b67f09SDavid van Moolenbroek    </p>
59*00b67f09SDavid van Moolenbroek<p>
60*00b67f09SDavid van Moolenbroek      The
61*00b67f09SDavid van Moolenbroek      <code class="option">-d</code>
62*00b67f09SDavid van Moolenbroek      option makes
63*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span>
64*00b67f09SDavid van Moolenbroek      operate in debug mode.
65*00b67f09SDavid van Moolenbroek      This provides tracing information about the update requests that are
66*00b67f09SDavid van Moolenbroek      made and the replies received from the name server.
67*00b67f09SDavid van Moolenbroek    </p>
68*00b67f09SDavid van Moolenbroek<p>
69*00b67f09SDavid van Moolenbroek      The <code class="option">-D</code> option makes <span><strong class="command">nsupdate</strong></span>
70*00b67f09SDavid van Moolenbroek      report additional debugging information to <code class="option">-d</code>.
71*00b67f09SDavid van Moolenbroek    </p>
72*00b67f09SDavid van Moolenbroek<p>
73*00b67f09SDavid van Moolenbroek      The <code class="option">-L</code> option with an integer argument of zero or
74*00b67f09SDavid van Moolenbroek      higher sets the logging debug level.  If zero, logging is disabled.
75*00b67f09SDavid van Moolenbroek    </p>
76*00b67f09SDavid van Moolenbroek<p>
77*00b67f09SDavid van Moolenbroek      Transaction signatures can be used to authenticate the Dynamic
78*00b67f09SDavid van Moolenbroek      DNS updates.  These use the TSIG resource record type described
79*00b67f09SDavid van Moolenbroek      in RFC 2845 or the SIG(0) record described in RFC 2535 and
80*00b67f09SDavid van Moolenbroek      RFC 2931 or GSS-TSIG as described in RFC 3645.  TSIG relies on
81*00b67f09SDavid van Moolenbroek      a shared secret that should only be known to
82*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span> and the name server.  Currently,
83*00b67f09SDavid van Moolenbroek      the only supported encryption algorithm for TSIG is HMAC-MD5,
84*00b67f09SDavid van Moolenbroek      which is defined in RFC 2104.  Once other algorithms are
85*00b67f09SDavid van Moolenbroek      defined for TSIG, applications will need to ensure they select
86*00b67f09SDavid van Moolenbroek      the appropriate algorithm as well as the key when authenticating
87*00b67f09SDavid van Moolenbroek      each other.  For instance, suitable <span class="type">key</span> and
88*00b67f09SDavid van Moolenbroek      <span class="type">server</span> statements would be added to
89*00b67f09SDavid van Moolenbroek      <code class="filename">/etc/named.conf</code> so that the name server
90*00b67f09SDavid van Moolenbroek      can associate the appropriate secret key and algorithm with
91*00b67f09SDavid van Moolenbroek      the IP address of the client application that will be using
92*00b67f09SDavid van Moolenbroek      TSIG authentication.  SIG(0) uses public key cryptography.
93*00b67f09SDavid van Moolenbroek      To use a SIG(0) key, the public key must be stored in a KEY
94*00b67f09SDavid van Moolenbroek      record in a zone served by the name server.
95*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span> does not read
96*00b67f09SDavid van Moolenbroek      <code class="filename">/etc/named.conf</code>.
97*00b67f09SDavid van Moolenbroek    </p>
98*00b67f09SDavid van Moolenbroek<p>
99*00b67f09SDavid van Moolenbroek      GSS-TSIG uses Kerberos credentials.  Standard GSS-TSIG mode
100*00b67f09SDavid van Moolenbroek      is switched on with the <code class="option">-g</code> flag.  A
101*00b67f09SDavid van Moolenbroek      non-standards-compliant variant of GSS-TSIG used by Windows
102*00b67f09SDavid van Moolenbroek      2000 can be switched on with the <code class="option">-o</code> flag.
103*00b67f09SDavid van Moolenbroek    </p>
104*00b67f09SDavid van Moolenbroek<p><span><strong class="command">nsupdate</strong></span>
105*00b67f09SDavid van Moolenbroek      uses the <code class="option">-y</code> or <code class="option">-k</code> option
106*00b67f09SDavid van Moolenbroek      to provide the shared secret needed to generate a TSIG record
107*00b67f09SDavid van Moolenbroek      for authenticating Dynamic DNS update requests, default type
108*00b67f09SDavid van Moolenbroek      HMAC-MD5.  These options are mutually exclusive.
109*00b67f09SDavid van Moolenbroek    </p>
110*00b67f09SDavid van Moolenbroek<p>
111*00b67f09SDavid van Moolenbroek      When the <code class="option">-y</code> option is used, a signature is
112*00b67f09SDavid van Moolenbroek      generated from
113*00b67f09SDavid van Moolenbroek      [<span class="optional"><em class="parameter"><code>hmac:</code></em></span>]<em class="parameter"><code>keyname:secret.</code></em>
114*00b67f09SDavid van Moolenbroek      <em class="parameter"><code>keyname</code></em> is the name of the key, and
115*00b67f09SDavid van Moolenbroek      <em class="parameter"><code>secret</code></em> is the base64 encoded shared secret.
116*00b67f09SDavid van Moolenbroek      <em class="parameter"><code>hmac</code></em> is the name of the key algorithm;
117*00b67f09SDavid van Moolenbroek      valid choices are <code class="literal">hmac-md5</code>,
118*00b67f09SDavid van Moolenbroek      <code class="literal">hmac-sha1</code>, <code class="literal">hmac-sha224</code>,
119*00b67f09SDavid van Moolenbroek      <code class="literal">hmac-sha256</code>, <code class="literal">hmac-sha384</code>, or
120*00b67f09SDavid van Moolenbroek      <code class="literal">hmac-sha512</code>.  If <em class="parameter"><code>hmac</code></em>
121*00b67f09SDavid van Moolenbroek      is not specified, the default is <code class="literal">hmac-md5</code>.
122*00b67f09SDavid van Moolenbroek      NOTE: Use of the <code class="option">-y</code> option is discouraged because the
123*00b67f09SDavid van Moolenbroek      shared secret is supplied as a command line argument in clear text.
124*00b67f09SDavid van Moolenbroek      This may be visible in the output from
125*00b67f09SDavid van Moolenbroek      <span class="citerefentry"><span class="refentrytitle">ps</span>(1)</span>
126*00b67f09SDavid van Moolenbroek      or in a history file maintained by the user's shell.
127*00b67f09SDavid van Moolenbroek    </p>
128*00b67f09SDavid van Moolenbroek<p>
129*00b67f09SDavid van Moolenbroek      With the
130*00b67f09SDavid van Moolenbroek      <code class="option">-k</code> option, <span><strong class="command">nsupdate</strong></span> reads
131*00b67f09SDavid van Moolenbroek      the shared secret from the file <em class="parameter"><code>keyfile</code></em>.
132*00b67f09SDavid van Moolenbroek      Keyfiles may be in two formats: a single file containing
133*00b67f09SDavid van Moolenbroek      a <code class="filename">named.conf</code>-format <span><strong class="command">key</strong></span>
134*00b67f09SDavid van Moolenbroek      statement, which may be generated automatically by
135*00b67f09SDavid van Moolenbroek      <span><strong class="command">ddns-confgen</strong></span>, or a pair of files whose names are
136*00b67f09SDavid van Moolenbroek      of the format <code class="filename">K{name}.+157.+{random}.key</code> and
137*00b67f09SDavid van Moolenbroek      <code class="filename">K{name}.+157.+{random}.private</code>, which can be
138*00b67f09SDavid van Moolenbroek      generated by <span><strong class="command">dnssec-keygen</strong></span>.
139*00b67f09SDavid van Moolenbroek      The <code class="option">-k</code> may also be used to specify a SIG(0) key used
140*00b67f09SDavid van Moolenbroek      to authenticate Dynamic DNS update requests.  In this case, the key
141*00b67f09SDavid van Moolenbroek      specified is not an HMAC-MD5 key.
142*00b67f09SDavid van Moolenbroek    </p>
143*00b67f09SDavid van Moolenbroek<p>
144*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span> can be run in a local-host only mode
145*00b67f09SDavid van Moolenbroek      using the <code class="option">-l</code> flag.  This sets the server address to
146*00b67f09SDavid van Moolenbroek      localhost (disabling the <span><strong class="command">server</strong></span> so that the server
147*00b67f09SDavid van Moolenbroek      address cannot be overridden).  Connections to the local server will
148*00b67f09SDavid van Moolenbroek      use a TSIG key found in <code class="filename">/var/run/named/session.key</code>,
149*00b67f09SDavid van Moolenbroek      which is automatically generated by <span><strong class="command">named</strong></span> if any
150*00b67f09SDavid van Moolenbroek      local master zone has set <span><strong class="command">update-policy</strong></span> to
151*00b67f09SDavid van Moolenbroek      <span><strong class="command">local</strong></span>.  The location of this key file can be
152*00b67f09SDavid van Moolenbroek      overridden with the <code class="option">-k</code> option.
153*00b67f09SDavid van Moolenbroek    </p>
154*00b67f09SDavid van Moolenbroek<p>
155*00b67f09SDavid van Moolenbroek      By default, <span><strong class="command">nsupdate</strong></span>
156*00b67f09SDavid van Moolenbroek      uses UDP to send update requests to the name server unless they are too
157*00b67f09SDavid van Moolenbroek      large to fit in a UDP request in which case TCP will be used.
158*00b67f09SDavid van Moolenbroek      The
159*00b67f09SDavid van Moolenbroek      <code class="option">-v</code>
160*00b67f09SDavid van Moolenbroek      option makes
161*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span>
162*00b67f09SDavid van Moolenbroek      use a TCP connection.
163*00b67f09SDavid van Moolenbroek      This may be preferable when a batch of update requests is made.
164*00b67f09SDavid van Moolenbroek    </p>
165*00b67f09SDavid van Moolenbroek<p>
166*00b67f09SDavid van Moolenbroek      The <code class="option">-p</code> sets the default port number to use for
167*00b67f09SDavid van Moolenbroek      connections to a name server.  The default is 53.
168*00b67f09SDavid van Moolenbroek    </p>
169*00b67f09SDavid van Moolenbroek<p>
170*00b67f09SDavid van Moolenbroek      The <code class="option">-t</code> option sets the maximum time an update request
171*00b67f09SDavid van Moolenbroek      can
172*00b67f09SDavid van Moolenbroek      take before it is aborted.  The default is 300 seconds.  Zero can be
173*00b67f09SDavid van Moolenbroek      used
174*00b67f09SDavid van Moolenbroek      to disable the timeout.
175*00b67f09SDavid van Moolenbroek    </p>
176*00b67f09SDavid van Moolenbroek<p>
177*00b67f09SDavid van Moolenbroek      The <code class="option">-u</code> option sets the UDP retry interval.  The default
178*00b67f09SDavid van Moolenbroek      is
179*00b67f09SDavid van Moolenbroek      3 seconds.  If zero, the interval will be computed from the timeout
180*00b67f09SDavid van Moolenbroek      interval
181*00b67f09SDavid van Moolenbroek      and number of UDP retries.
182*00b67f09SDavid van Moolenbroek    </p>
183*00b67f09SDavid van Moolenbroek<p>
184*00b67f09SDavid van Moolenbroek      The <code class="option">-r</code> option sets the number of UDP retries. The
185*00b67f09SDavid van Moolenbroek      default is
186*00b67f09SDavid van Moolenbroek      3.  If zero, only one update request will be made.
187*00b67f09SDavid van Moolenbroek    </p>
188*00b67f09SDavid van Moolenbroek<p>
189*00b67f09SDavid van Moolenbroek      The <code class="option">-R <em class="replaceable"><code>randomdev</code></em></code> option
190*00b67f09SDavid van Moolenbroek      specifies a source of randomness.  If the operating system
191*00b67f09SDavid van Moolenbroek      does not provide a <code class="filename">/dev/random</code> or
192*00b67f09SDavid van Moolenbroek      equivalent device, the default source of randomness is keyboard
193*00b67f09SDavid van Moolenbroek      input.  <code class="filename">randomdev</code> specifies the name of
194*00b67f09SDavid van Moolenbroek      a character device or file containing random data to be used
195*00b67f09SDavid van Moolenbroek      instead of the default.  The special value
196*00b67f09SDavid van Moolenbroek      <code class="filename">keyboard</code> indicates that keyboard input
197*00b67f09SDavid van Moolenbroek      should be used.  This option may be specified multiple times.
198*00b67f09SDavid van Moolenbroek    </p>
199*00b67f09SDavid van Moolenbroek<p>
200*00b67f09SDavid van Moolenbroek      Other types can be entered using "TYPEXXXXX" where "XXXXX" is the
201*00b67f09SDavid van Moolenbroek      decimal value of the type with no leading zeros.  The rdata,
202*00b67f09SDavid van Moolenbroek      if present, will be parsed using the UNKNOWN rdata format,
203*00b67f09SDavid van Moolenbroek      (&lt;backslash&gt; &lt;hash&gt; &lt;space&gt; &lt;length&gt;
204*00b67f09SDavid van Moolenbroek      &lt;space&gt; &lt;hexstring&gt;).
205*00b67f09SDavid van Moolenbroek    </p>
206*00b67f09SDavid van Moolenbroek<p>
207*00b67f09SDavid van Moolenbroek      The <code class="option">-T</code> and <code class="option">-P</code> options print out
208*00b67f09SDavid van Moolenbroek      lists of non-meta types for which the type-specific presentation
209*00b67f09SDavid van Moolenbroek      formats are known.  <code class="option">-T</code> prints out the list of
210*00b67f09SDavid van Moolenbroek      IANA-assigned types.  <code class="option">-P</code> prints out the list of
211*00b67f09SDavid van Moolenbroek      private types specific to <span><strong class="command">named</strong></span>.  These options
212*00b67f09SDavid van Moolenbroek      may be combined.  <span><strong class="command">nsupdate</strong></span> will exit after the
213*00b67f09SDavid van Moolenbroek      lists are printed.
214*00b67f09SDavid van Moolenbroek    </p>
215*00b67f09SDavid van Moolenbroek<p>
216*00b67f09SDavid van Moolenbroek      The -V option causes <span><strong class="command">nsupdate</strong></span> to print the
217*00b67f09SDavid van Moolenbroek      version number and exit.
218*00b67f09SDavid van Moolenbroek    </p>
219*00b67f09SDavid van Moolenbroek</div>
220*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
221*00b67f09SDavid van Moolenbroek<a name="id2543885"></a><h2>INPUT FORMAT</h2>
222*00b67f09SDavid van Moolenbroek<p><span><strong class="command">nsupdate</strong></span>
223*00b67f09SDavid van Moolenbroek      reads input from
224*00b67f09SDavid van Moolenbroek      <em class="parameter"><code>filename</code></em>
225*00b67f09SDavid van Moolenbroek      or standard input.
226*00b67f09SDavid van Moolenbroek      Each command is supplied on exactly one line of input.
227*00b67f09SDavid van Moolenbroek      Some commands are for administrative purposes.
228*00b67f09SDavid van Moolenbroek      The others are either update instructions or prerequisite checks on the
229*00b67f09SDavid van Moolenbroek      contents of the zone.
230*00b67f09SDavid van Moolenbroek      These checks set conditions that some name or set of
231*00b67f09SDavid van Moolenbroek      resource records (RRset) either exists or is absent from the zone.
232*00b67f09SDavid van Moolenbroek      These conditions must be met if the entire update request is to succeed.
233*00b67f09SDavid van Moolenbroek      Updates will be rejected if the tests for the prerequisite conditions
234*00b67f09SDavid van Moolenbroek      fail.
235*00b67f09SDavid van Moolenbroek    </p>
236*00b67f09SDavid van Moolenbroek<p>
237*00b67f09SDavid van Moolenbroek      Every update request consists of zero or more prerequisites
238*00b67f09SDavid van Moolenbroek      and zero or more updates.
239*00b67f09SDavid van Moolenbroek      This allows a suitably authenticated update request to proceed if some
240*00b67f09SDavid van Moolenbroek      specified resource records are present or missing from the zone.
241*00b67f09SDavid van Moolenbroek      A blank input line (or the <span><strong class="command">send</strong></span> command)
242*00b67f09SDavid van Moolenbroek      causes the
243*00b67f09SDavid van Moolenbroek      accumulated commands to be sent as one Dynamic DNS update request to the
244*00b67f09SDavid van Moolenbroek      name server.
245*00b67f09SDavid van Moolenbroek    </p>
246*00b67f09SDavid van Moolenbroek<p>
247*00b67f09SDavid van Moolenbroek      The command formats and their meaning are as follows:
248*00b67f09SDavid van Moolenbroek      </p>
249*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
250*00b67f09SDavid van Moolenbroek<dt><span class="term">
251*00b67f09SDavid van Moolenbroek              <span><strong class="command">server</strong></span>
252*00b67f09SDavid van Moolenbroek               {servername}
253*00b67f09SDavid van Moolenbroek               [port]
254*00b67f09SDavid van Moolenbroek            </span></dt>
255*00b67f09SDavid van Moolenbroek<dd><p>
256*00b67f09SDavid van Moolenbroek              Sends all dynamic update requests to the name server
257*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>servername</code></em>.
258*00b67f09SDavid van Moolenbroek              When no server statement is provided,
259*00b67f09SDavid van Moolenbroek              <span><strong class="command">nsupdate</strong></span>
260*00b67f09SDavid van Moolenbroek              will send updates to the master server of the correct zone.
261*00b67f09SDavid van Moolenbroek              The MNAME field of that zone's SOA record will identify the
262*00b67f09SDavid van Moolenbroek              master
263*00b67f09SDavid van Moolenbroek              server for that zone.
264*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>port</code></em>
265*00b67f09SDavid van Moolenbroek              is the port number on
266*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>servername</code></em>
267*00b67f09SDavid van Moolenbroek              where the dynamic update requests get sent.
268*00b67f09SDavid van Moolenbroek              If no port number is specified, the default DNS port number of
269*00b67f09SDavid van Moolenbroek              53 is
270*00b67f09SDavid van Moolenbroek              used.
271*00b67f09SDavid van Moolenbroek            </p></dd>
272*00b67f09SDavid van Moolenbroek<dt><span class="term">
273*00b67f09SDavid van Moolenbroek              <span><strong class="command">local</strong></span>
274*00b67f09SDavid van Moolenbroek               {address}
275*00b67f09SDavid van Moolenbroek               [port]
276*00b67f09SDavid van Moolenbroek            </span></dt>
277*00b67f09SDavid van Moolenbroek<dd><p>
278*00b67f09SDavid van Moolenbroek              Sends all dynamic update requests using the local
279*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>address</code></em>.
280*00b67f09SDavid van Moolenbroek
281*00b67f09SDavid van Moolenbroek              When no local statement is provided,
282*00b67f09SDavid van Moolenbroek              <span><strong class="command">nsupdate</strong></span>
283*00b67f09SDavid van Moolenbroek              will send updates using an address and port chosen by the
284*00b67f09SDavid van Moolenbroek              system.
285*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>port</code></em>
286*00b67f09SDavid van Moolenbroek              can additionally be used to make requests come from a specific
287*00b67f09SDavid van Moolenbroek              port.
288*00b67f09SDavid van Moolenbroek              If no port number is specified, the system will assign one.
289*00b67f09SDavid van Moolenbroek            </p></dd>
290*00b67f09SDavid van Moolenbroek<dt><span class="term">
291*00b67f09SDavid van Moolenbroek              <span><strong class="command">zone</strong></span>
292*00b67f09SDavid van Moolenbroek               {zonename}
293*00b67f09SDavid van Moolenbroek            </span></dt>
294*00b67f09SDavid van Moolenbroek<dd><p>
295*00b67f09SDavid van Moolenbroek              Specifies that all updates are to be made to the zone
296*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>zonename</code></em>.
297*00b67f09SDavid van Moolenbroek              If no
298*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>zone</code></em>
299*00b67f09SDavid van Moolenbroek              statement is provided,
300*00b67f09SDavid van Moolenbroek              <span><strong class="command">nsupdate</strong></span>
301*00b67f09SDavid van Moolenbroek              will attempt determine the correct zone to update based on the
302*00b67f09SDavid van Moolenbroek              rest of the input.
303*00b67f09SDavid van Moolenbroek            </p></dd>
304*00b67f09SDavid van Moolenbroek<dt><span class="term">
305*00b67f09SDavid van Moolenbroek              <span><strong class="command">class</strong></span>
306*00b67f09SDavid van Moolenbroek               {classname}
307*00b67f09SDavid van Moolenbroek            </span></dt>
308*00b67f09SDavid van Moolenbroek<dd><p>
309*00b67f09SDavid van Moolenbroek              Specify the default class.
310*00b67f09SDavid van Moolenbroek              If no <em class="parameter"><code>class</code></em> is specified, the
311*00b67f09SDavid van Moolenbroek              default class is
312*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>IN</code></em>.
313*00b67f09SDavid van Moolenbroek            </p></dd>
314*00b67f09SDavid van Moolenbroek<dt><span class="term">
315*00b67f09SDavid van Moolenbroek              <span><strong class="command">ttl</strong></span>
316*00b67f09SDavid van Moolenbroek               {seconds}
317*00b67f09SDavid van Moolenbroek            </span></dt>
318*00b67f09SDavid van Moolenbroek<dd><p>
319*00b67f09SDavid van Moolenbroek              Specify the default time to live for records to be added.
320*00b67f09SDavid van Moolenbroek	      The value <em class="parameter"><code>none</code></em> will clear the default
321*00b67f09SDavid van Moolenbroek	      ttl.
322*00b67f09SDavid van Moolenbroek            </p></dd>
323*00b67f09SDavid van Moolenbroek<dt><span class="term">
324*00b67f09SDavid van Moolenbroek              <span><strong class="command">key</strong></span>
325*00b67f09SDavid van Moolenbroek               [hmac:] {keyname}
326*00b67f09SDavid van Moolenbroek               {secret}
327*00b67f09SDavid van Moolenbroek            </span></dt>
328*00b67f09SDavid van Moolenbroek<dd><p>
329*00b67f09SDavid van Moolenbroek              Specifies that all updates are to be TSIG-signed using the
330*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>keyname</code></em> <em class="parameter"><code>secret</code></em> pair.
331*00b67f09SDavid van Moolenbroek              If <em class="parameter"><code>hmac</code></em> is specified, then it sets the
332*00b67f09SDavid van Moolenbroek              signing algorithm in use; the default is
333*00b67f09SDavid van Moolenbroek              <code class="literal">hmac-md5</code>.  The <span><strong class="command">key</strong></span>
334*00b67f09SDavid van Moolenbroek              command overrides any key specified on the command line via
335*00b67f09SDavid van Moolenbroek              <code class="option">-y</code> or <code class="option">-k</code>.
336*00b67f09SDavid van Moolenbroek            </p></dd>
337*00b67f09SDavid van Moolenbroek<dt><span class="term">
338*00b67f09SDavid van Moolenbroek            <span><strong class="command">gsstsig</strong></span>
339*00b67f09SDavid van Moolenbroek          </span></dt>
340*00b67f09SDavid van Moolenbroek<dd><p>
341*00b67f09SDavid van Moolenbroek	      Use GSS-TSIG to sign the updated.  This is equivalent to
342*00b67f09SDavid van Moolenbroek	      specifying <code class="option">-g</code> on the commandline.
343*00b67f09SDavid van Moolenbroek            </p></dd>
344*00b67f09SDavid van Moolenbroek<dt><span class="term">
345*00b67f09SDavid van Moolenbroek            <span><strong class="command">oldgsstsig</strong></span>
346*00b67f09SDavid van Moolenbroek          </span></dt>
347*00b67f09SDavid van Moolenbroek<dd><p>
348*00b67f09SDavid van Moolenbroek	      Use the Windows 2000 version of GSS-TSIG to sign the updated.
349*00b67f09SDavid van Moolenbroek	      This is equivalent to specifying <code class="option">-o</code> on the
350*00b67f09SDavid van Moolenbroek	      commandline.
351*00b67f09SDavid van Moolenbroek            </p></dd>
352*00b67f09SDavid van Moolenbroek<dt><span class="term">
353*00b67f09SDavid van Moolenbroek            <span><strong class="command">realm</strong></span>
354*00b67f09SDavid van Moolenbroek             {[<span class="optional">realm_name</span>]}
355*00b67f09SDavid van Moolenbroek          </span></dt>
356*00b67f09SDavid van Moolenbroek<dd><p>
357*00b67f09SDavid van Moolenbroek	      When using GSS-TSIG use <em class="parameter"><code>realm_name</code></em> rather
358*00b67f09SDavid van Moolenbroek	      than the default realm in <code class="filename">krb5.conf</code>.  If no
359*00b67f09SDavid van Moolenbroek	      realm is specified the saved realm is cleared.
360*00b67f09SDavid van Moolenbroek            </p></dd>
361*00b67f09SDavid van Moolenbroek<dt><span class="term">
362*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">prereq</span>] nxdomain</strong></span>
363*00b67f09SDavid van Moolenbroek               {domain-name}
364*00b67f09SDavid van Moolenbroek            </span></dt>
365*00b67f09SDavid van Moolenbroek<dd><p>
366*00b67f09SDavid van Moolenbroek              Requires that no resource record of any type exists with name
367*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>.
368*00b67f09SDavid van Moolenbroek            </p></dd>
369*00b67f09SDavid van Moolenbroek<dt><span class="term">
370*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">prereq</span>] yxdomain</strong></span>
371*00b67f09SDavid van Moolenbroek               {domain-name}
372*00b67f09SDavid van Moolenbroek            </span></dt>
373*00b67f09SDavid van Moolenbroek<dd><p>
374*00b67f09SDavid van Moolenbroek              Requires that
375*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>
376*00b67f09SDavid van Moolenbroek              exists (has as at least one resource record, of any type).
377*00b67f09SDavid van Moolenbroek            </p></dd>
378*00b67f09SDavid van Moolenbroek<dt><span class="term">
379*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">prereq</span>] nxrrset</strong></span>
380*00b67f09SDavid van Moolenbroek               {domain-name}
381*00b67f09SDavid van Moolenbroek               [class]
382*00b67f09SDavid van Moolenbroek               {type}
383*00b67f09SDavid van Moolenbroek            </span></dt>
384*00b67f09SDavid van Moolenbroek<dd><p>
385*00b67f09SDavid van Moolenbroek              Requires that no resource record exists of the specified
386*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>type</code></em>,
387*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
388*00b67f09SDavid van Moolenbroek              and
389*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>.
390*00b67f09SDavid van Moolenbroek              If
391*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
392*00b67f09SDavid van Moolenbroek              is omitted, IN (internet) is assumed.
393*00b67f09SDavid van Moolenbroek            </p></dd>
394*00b67f09SDavid van Moolenbroek<dt><span class="term">
395*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">prereq</span>] yxrrset</strong></span>
396*00b67f09SDavid van Moolenbroek               {domain-name}
397*00b67f09SDavid van Moolenbroek               [class]
398*00b67f09SDavid van Moolenbroek               {type}
399*00b67f09SDavid van Moolenbroek            </span></dt>
400*00b67f09SDavid van Moolenbroek<dd><p>
401*00b67f09SDavid van Moolenbroek              This requires that a resource record of the specified
402*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>type</code></em>,
403*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
404*00b67f09SDavid van Moolenbroek              and
405*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>
406*00b67f09SDavid van Moolenbroek              must exist.
407*00b67f09SDavid van Moolenbroek              If
408*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
409*00b67f09SDavid van Moolenbroek              is omitted, IN (internet) is assumed.
410*00b67f09SDavid van Moolenbroek            </p></dd>
411*00b67f09SDavid van Moolenbroek<dt><span class="term">
412*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">prereq</span>] yxrrset</strong></span>
413*00b67f09SDavid van Moolenbroek               {domain-name}
414*00b67f09SDavid van Moolenbroek               [class]
415*00b67f09SDavid van Moolenbroek               {type}
416*00b67f09SDavid van Moolenbroek               {data...}
417*00b67f09SDavid van Moolenbroek            </span></dt>
418*00b67f09SDavid van Moolenbroek<dd><p>
419*00b67f09SDavid van Moolenbroek              The
420*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>data</code></em>
421*00b67f09SDavid van Moolenbroek              from each set of prerequisites of this form
422*00b67f09SDavid van Moolenbroek              sharing a common
423*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>type</code></em>,
424*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>,
425*00b67f09SDavid van Moolenbroek              and
426*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>
427*00b67f09SDavid van Moolenbroek              are combined to form a set of RRs.  This set of RRs must
428*00b67f09SDavid van Moolenbroek              exactly match the set of RRs existing in the zone at the
429*00b67f09SDavid van Moolenbroek              given
430*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>type</code></em>,
431*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>,
432*00b67f09SDavid van Moolenbroek              and
433*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>.
434*00b67f09SDavid van Moolenbroek              The
435*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>data</code></em>
436*00b67f09SDavid van Moolenbroek              are written in the standard text representation of the resource
437*00b67f09SDavid van Moolenbroek              record's
438*00b67f09SDavid van Moolenbroek              RDATA.
439*00b67f09SDavid van Moolenbroek            </p></dd>
440*00b67f09SDavid van Moolenbroek<dt><span class="term">
441*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">update</span>] del[<span class="optional">ete</span>]</strong></span>
442*00b67f09SDavid van Moolenbroek               {domain-name}
443*00b67f09SDavid van Moolenbroek               [ttl]
444*00b67f09SDavid van Moolenbroek               [class]
445*00b67f09SDavid van Moolenbroek               [type [data...]]
446*00b67f09SDavid van Moolenbroek            </span></dt>
447*00b67f09SDavid van Moolenbroek<dd><p>
448*00b67f09SDavid van Moolenbroek              Deletes any resource records named
449*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>domain-name</code></em>.
450*00b67f09SDavid van Moolenbroek              If
451*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>type</code></em>
452*00b67f09SDavid van Moolenbroek              and
453*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>data</code></em>
454*00b67f09SDavid van Moolenbroek              is provided, only matching resource records will be removed.
455*00b67f09SDavid van Moolenbroek              The internet class is assumed if
456*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
457*00b67f09SDavid van Moolenbroek              is not supplied.  The
458*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>ttl</code></em>
459*00b67f09SDavid van Moolenbroek              is ignored, and is only allowed for compatibility.
460*00b67f09SDavid van Moolenbroek            </p></dd>
461*00b67f09SDavid van Moolenbroek<dt><span class="term">
462*00b67f09SDavid van Moolenbroek              <span><strong class="command">[<span class="optional">update</span>] add</strong></span>
463*00b67f09SDavid van Moolenbroek               {domain-name}
464*00b67f09SDavid van Moolenbroek               {ttl}
465*00b67f09SDavid van Moolenbroek               [class]
466*00b67f09SDavid van Moolenbroek               {type}
467*00b67f09SDavid van Moolenbroek               {data...}
468*00b67f09SDavid van Moolenbroek            </span></dt>
469*00b67f09SDavid van Moolenbroek<dd><p>
470*00b67f09SDavid van Moolenbroek              Adds a new resource record with the specified
471*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>ttl</code></em>,
472*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>class</code></em>
473*00b67f09SDavid van Moolenbroek              and
474*00b67f09SDavid van Moolenbroek              <em class="parameter"><code>data</code></em>.
475*00b67f09SDavid van Moolenbroek            </p></dd>
476*00b67f09SDavid van Moolenbroek<dt><span class="term">
477*00b67f09SDavid van Moolenbroek              <span><strong class="command">show</strong></span>
478*00b67f09SDavid van Moolenbroek            </span></dt>
479*00b67f09SDavid van Moolenbroek<dd><p>
480*00b67f09SDavid van Moolenbroek              Displays the current message, containing all of the
481*00b67f09SDavid van Moolenbroek              prerequisites and
482*00b67f09SDavid van Moolenbroek              updates specified since the last send.
483*00b67f09SDavid van Moolenbroek            </p></dd>
484*00b67f09SDavid van Moolenbroek<dt><span class="term">
485*00b67f09SDavid van Moolenbroek              <span><strong class="command">send</strong></span>
486*00b67f09SDavid van Moolenbroek            </span></dt>
487*00b67f09SDavid van Moolenbroek<dd><p>
488*00b67f09SDavid van Moolenbroek              Sends the current message.  This is equivalent to entering a
489*00b67f09SDavid van Moolenbroek              blank line.
490*00b67f09SDavid van Moolenbroek            </p></dd>
491*00b67f09SDavid van Moolenbroek<dt><span class="term">
492*00b67f09SDavid van Moolenbroek              <span><strong class="command">answer</strong></span>
493*00b67f09SDavid van Moolenbroek            </span></dt>
494*00b67f09SDavid van Moolenbroek<dd><p>
495*00b67f09SDavid van Moolenbroek              Displays the answer.
496*00b67f09SDavid van Moolenbroek            </p></dd>
497*00b67f09SDavid van Moolenbroek<dt><span class="term">
498*00b67f09SDavid van Moolenbroek              <span><strong class="command">debug</strong></span>
499*00b67f09SDavid van Moolenbroek            </span></dt>
500*00b67f09SDavid van Moolenbroek<dd><p>
501*00b67f09SDavid van Moolenbroek              Turn on debugging.
502*00b67f09SDavid van Moolenbroek            </p></dd>
503*00b67f09SDavid van Moolenbroek<dt><span class="term">
504*00b67f09SDavid van Moolenbroek              <span><strong class="command">version</strong></span>
505*00b67f09SDavid van Moolenbroek            </span></dt>
506*00b67f09SDavid van Moolenbroek<dd><p>
507*00b67f09SDavid van Moolenbroek              Print version number.
508*00b67f09SDavid van Moolenbroek            </p></dd>
509*00b67f09SDavid van Moolenbroek<dt><span class="term">
510*00b67f09SDavid van Moolenbroek              <span><strong class="command">help</strong></span>
511*00b67f09SDavid van Moolenbroek            </span></dt>
512*00b67f09SDavid van Moolenbroek<dd><p>
513*00b67f09SDavid van Moolenbroek              Print a list of commands.
514*00b67f09SDavid van Moolenbroek            </p></dd>
515*00b67f09SDavid van Moolenbroek</dl></div>
516*00b67f09SDavid van Moolenbroek<p>
517*00b67f09SDavid van Moolenbroek    </p>
518*00b67f09SDavid van Moolenbroek<p>
519*00b67f09SDavid van Moolenbroek      Lines beginning with a semicolon are comments and are ignored.
520*00b67f09SDavid van Moolenbroek    </p>
521*00b67f09SDavid van Moolenbroek</div>
522*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
523*00b67f09SDavid van Moolenbroek<a name="id2544859"></a><h2>EXAMPLES</h2>
524*00b67f09SDavid van Moolenbroek<p>
525*00b67f09SDavid van Moolenbroek      The examples below show how
526*00b67f09SDavid van Moolenbroek      <span><strong class="command">nsupdate</strong></span>
527*00b67f09SDavid van Moolenbroek      could be used to insert and delete resource records from the
528*00b67f09SDavid van Moolenbroek      <span class="type">example.com</span>
529*00b67f09SDavid van Moolenbroek      zone.
530*00b67f09SDavid van Moolenbroek      Notice that the input in each example contains a trailing blank line so
531*00b67f09SDavid van Moolenbroek      that
532*00b67f09SDavid van Moolenbroek      a group of commands are sent as one dynamic update request to the
533*00b67f09SDavid van Moolenbroek      master name server for
534*00b67f09SDavid van Moolenbroek      <span class="type">example.com</span>.
535*00b67f09SDavid van Moolenbroek
536*00b67f09SDavid van Moolenbroek      </p>
537*00b67f09SDavid van Moolenbroek<pre class="programlisting">
538*00b67f09SDavid van Moolenbroek# nsupdate
539*00b67f09SDavid van Moolenbroek&gt; update delete oldhost.example.com A
540*00b67f09SDavid van Moolenbroek&gt; update add newhost.example.com 86400 A 172.16.1.1
541*00b67f09SDavid van Moolenbroek&gt; send
542*00b67f09SDavid van Moolenbroek</pre>
543*00b67f09SDavid van Moolenbroek<p>
544*00b67f09SDavid van Moolenbroek    </p>
545*00b67f09SDavid van Moolenbroek<p>
546*00b67f09SDavid van Moolenbroek      Any A records for
547*00b67f09SDavid van Moolenbroek      <span class="type">oldhost.example.com</span>
548*00b67f09SDavid van Moolenbroek      are deleted.
549*00b67f09SDavid van Moolenbroek      And an A record for
550*00b67f09SDavid van Moolenbroek      <span class="type">newhost.example.com</span>
551*00b67f09SDavid van Moolenbroek      with IP address 172.16.1.1 is added.
552*00b67f09SDavid van Moolenbroek      The newly-added record has a 1 day TTL (86400 seconds).
553*00b67f09SDavid van Moolenbroek      </p>
554*00b67f09SDavid van Moolenbroek<pre class="programlisting">
555*00b67f09SDavid van Moolenbroek# nsupdate
556*00b67f09SDavid van Moolenbroek&gt; prereq nxdomain nickname.example.com
557*00b67f09SDavid van Moolenbroek&gt; update add nickname.example.com 86400 CNAME somehost.example.com
558*00b67f09SDavid van Moolenbroek&gt; send
559*00b67f09SDavid van Moolenbroek</pre>
560*00b67f09SDavid van Moolenbroek<p>
561*00b67f09SDavid van Moolenbroek    </p>
562*00b67f09SDavid van Moolenbroek<p>
563*00b67f09SDavid van Moolenbroek      The prerequisite condition gets the name server to check that there
564*00b67f09SDavid van Moolenbroek      are no resource records of any type for
565*00b67f09SDavid van Moolenbroek      <span class="type">nickname.example.com</span>.
566*00b67f09SDavid van Moolenbroek
567*00b67f09SDavid van Moolenbroek      If there are, the update request fails.
568*00b67f09SDavid van Moolenbroek      If this name does not exist, a CNAME for it is added.
569*00b67f09SDavid van Moolenbroek      This ensures that when the CNAME is added, it cannot conflict with the
570*00b67f09SDavid van Moolenbroek      long-standing rule in RFC 1034 that a name must not exist as any other
571*00b67f09SDavid van Moolenbroek      record type if it exists as a CNAME.
572*00b67f09SDavid van Moolenbroek      (The rule has been updated for DNSSEC in RFC 2535 to allow CNAMEs to have
573*00b67f09SDavid van Moolenbroek      RRSIG, DNSKEY and NSEC records.)
574*00b67f09SDavid van Moolenbroek    </p>
575*00b67f09SDavid van Moolenbroek</div>
576*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
577*00b67f09SDavid van Moolenbroek<a name="id2544903"></a><h2>FILES</h2>
578*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
579*00b67f09SDavid van Moolenbroek<dt><span class="term"><code class="constant">/etc/resolv.conf</code></span></dt>
580*00b67f09SDavid van Moolenbroek<dd><p>
581*00b67f09SDavid van Moolenbroek            used to identify default name server
582*00b67f09SDavid van Moolenbroek          </p></dd>
583*00b67f09SDavid van Moolenbroek<dt><span class="term"><code class="constant">/var/run/named/session.key</code></span></dt>
584*00b67f09SDavid van Moolenbroek<dd><p>
585*00b67f09SDavid van Moolenbroek            sets the default TSIG key for use in local-only mode
586*00b67f09SDavid van Moolenbroek          </p></dd>
587*00b67f09SDavid van Moolenbroek<dt><span class="term"><code class="constant">K{name}.+157.+{random}.key</code></span></dt>
588*00b67f09SDavid van Moolenbroek<dd><p>
589*00b67f09SDavid van Moolenbroek            base-64 encoding of HMAC-MD5 key created by
590*00b67f09SDavid van Moolenbroek            <span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>.
591*00b67f09SDavid van Moolenbroek          </p></dd>
592*00b67f09SDavid van Moolenbroek<dt><span class="term"><code class="constant">K{name}.+157.+{random}.private</code></span></dt>
593*00b67f09SDavid van Moolenbroek<dd><p>
594*00b67f09SDavid van Moolenbroek            base-64 encoding of HMAC-MD5 key created by
595*00b67f09SDavid van Moolenbroek            <span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>.
596*00b67f09SDavid van Moolenbroek          </p></dd>
597*00b67f09SDavid van Moolenbroek</dl></div>
598*00b67f09SDavid van Moolenbroek</div>
599*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
600*00b67f09SDavid van Moolenbroek<a name="id2541982"></a><h2>SEE ALSO</h2>
601*00b67f09SDavid van Moolenbroek<p>
602*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2136</em>,
603*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 3007</em>,
604*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2104</em>,
605*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2845</em>,
606*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 1034</em>,
607*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2535</em>,
608*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2931</em>,
609*00b67f09SDavid van Moolenbroek      <span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
610*00b67f09SDavid van Moolenbroek      <span class="citerefentry"><span class="refentrytitle">ddns-confgen</span>(8)</span>,
611*00b67f09SDavid van Moolenbroek      <span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>.
612*00b67f09SDavid van Moolenbroek    </p>
613*00b67f09SDavid van Moolenbroek</div>
614*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
615*00b67f09SDavid van Moolenbroek<a name="id2542040"></a><h2>BUGS</h2>
616*00b67f09SDavid van Moolenbroek<p>
617*00b67f09SDavid van Moolenbroek      The TSIG key is redundantly stored in two separate files.
618*00b67f09SDavid van Moolenbroek      This is a consequence of nsupdate using the DST library
619*00b67f09SDavid van Moolenbroek      for its cryptographic operations, and may change in future
620*00b67f09SDavid van Moolenbroek      releases.
621*00b67f09SDavid van Moolenbroek    </p>
622*00b67f09SDavid van Moolenbroek</div>
623*00b67f09SDavid van Moolenbroek</div></body>
624*00b67f09SDavid van Moolenbroek</html>
625