nsupdate.html revision 2eeb74d1cf5355dd98f6d507a10086e16bb08c4b
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<!--
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - Copyright (C) 2004-2012, 2014, 2015 Internet Systems Consortium, Inc. ("ISC")
dcbd586414fbe6a9b4355081269912c864b72991Simon Ulbricht - Copyright (C) 2000-2003 Internet Software Consortium.
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht -
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu Prodescu - Permission to use, copy, modify, and/or distribute this software for any
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - purpose with or without fee is hereby granted, provided that the above
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht - copyright notice and this permission notice appear in all copies.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht -
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
d6d21a06b12c5d5be318a722e3cec4cac50618c7Simon Ulbricht - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht - PERFORMANCE OF THIS SOFTWARE.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht-->
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<html>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<head>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<title>nsupdate</title>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht</head>
aac93a690af05bd44beaea0d33bea1039fe508aeSimon Ulbricht<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" title="nsupdate">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<a name="man.nsupdate"></a><div class="titlepage"></div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
c208973c890b8f993297720fd0247bc7481d4304Christian Maeder
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="refnamediv">
af14ce5114c39c964531ebba25cbd46cf70ecd7fSimon Ulbricht<h2>Name</h2>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="application">nsupdate</span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht &#8212; Dynamic DNS update utility
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
8969a00d3fa8a33b08c85afd50ab675a56ee6f84Christian Maeder</div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="refsynopsisdiv" title="Synopsis">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<h2>Synopsis</h2>
b79718d28f308182b99c9053573cb57dad5268f6Simon Ulbricht <div class="cmdsynopsis"><p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="command">nsupdate</code>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-d</code>]
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht [<code class="option">-D</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-L <em class="replaceable"><code>level</code></em></code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-g</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht | [<code class="option">-o</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht | [<code class="option">-l</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht | [<code class="option">-y <em class="replaceable"><code>[<span class="optional">hmac:</span>]keyname:secret</code></em></code>]
0b9b34d5c7078caabe393d9433c576613222b579Simon Ulbricht | [<code class="option">-k <em class="replaceable"><code>keyfile</code></em></code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht ]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-t <em class="replaceable"><code>timeout</code></em></code>]
dcbd586414fbe6a9b4355081269912c864b72991Simon Ulbricht [<code class="option">-u <em class="replaceable"><code>udptimeout</code></em></code>]
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht [<code class="option">-r <em class="replaceable"><code>udpretries</code></em></code>]
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht [<code class="option">-R <em class="replaceable"><code>randomdev</code></em></code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-v</code>]
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht [<code class="option">-T</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-P</code>]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [<code class="option">-V</code>]
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht [filename]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p></div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="refsection" title="DESCRIPTION">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<a name="idp61049552"></a><h2>DESCRIPTION</h2>
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p><span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht is used to submit Dynamic DNS Update requests as defined in RFC 2136
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht to a name server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht This allows resource records to be added or removed from a zone
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht without manually editing the zone file.
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht A single update request can contain requests to add or remove more than
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht one
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht resource record.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Zones that are under dynamic control via
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht or a DHCP server should not be edited by hand.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Manual edits could
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht conflict with dynamic updates and cause data to be lost.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht The resource records that are dynamically added or removed with
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht have to be in the same zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Requests are sent to the zone's master server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht This is identified by the MNAME field of the zone's SOA record.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Transaction signatures can be used to authenticate the Dynamic
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht DNS updates. These use the TSIG resource record type described
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht in RFC 2845 or the SIG(0) record described in RFC 2535 and
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht RFC 2931 or GSS-TSIG as described in RFC 3645.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht TSIG relies on
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht a shared secret that should only be known to
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span> and the name server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht For instance, suitable <span class="type">key</span> and
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="type">server</span> statements would be added to
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="filename">/etc/named.conf</code> so that the name server
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht can associate the appropriate secret key and algorithm with
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht the IP address of the client application that will be using
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht TSIG authentication. You can use <span class="command"><strong>ddns-confgen</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht to generate suitable configuration fragments.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht uses the <code class="option">-y</code> or <code class="option">-k</code> options
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht to provide the TSIG shared secret. These options are mutually exclusive.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
24483f2ee2ecec569b06242055078638df627177Simon Ulbricht SIG(0) uses public key cryptography.
24483f2ee2ecec569b06242055078638df627177Simon Ulbricht To use a SIG(0) key, the public key must be stored in a KEY
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht record in a zone served by the name server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht GSS-TSIG uses Kerberos credentials. Standard GSS-TSIG mode
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht is switched on with the <code class="option">-g</code> flag. A
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht non-standards-compliant variant of GSS-TSIG used by Windows
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht 2000 can be switched on with the <code class="option">-o</code> flag.
dcbd586414fbe6a9b4355081269912c864b72991Simon Ulbricht </p>
dcbd586414fbe6a9b4355081269912c864b72991Simon Ulbricht </div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="refsection" title="OPTIONS">
dcbd586414fbe6a9b4355081269912c864b72991Simon Ulbricht<a name="idp61062480"></a><h2>OPTIONS</h2>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="variablelist"><dl>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-d</span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Debug mode. This provides tracing information about the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht update requests that are made and the replies received
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht from the name server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-D</span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Extra debug mode.
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht </p>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht </dd>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht<dt><span class="term">-k <em class="replaceable"><code>keyfile</code></em></span></dt>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht<dd>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht <p>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht The file containing the TSIG authentication key.
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht Keyfiles may be in two formats: a single file containing
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht a <code class="filename">named.conf</code>-format <span class="command"><strong>key</strong></span>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht statement, which may be generated automatically by
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>ddns-confgen</strong></span>, or a pair of files whose names are
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht of the format <code class="filename">K{name}.+157.+{random}.key</code> and
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="filename">K{name}.+157.+{random}.private</code>, which can be
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht generated by <span class="command"><strong>dnssec-keygen</strong></span>.
8b8548df458142254941ca61bbc1e7177f7c7c08Simon Ulbricht The <code class="option">-k</code> may also be used to specify a SIG(0) key used
d6d21a06b12c5d5be318a722e3cec4cac50618c7Simon Ulbricht to authenticate Dynamic DNS update requests. In this case, the key
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder specified is not an HMAC-MD5 key.
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder </p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </dd>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht<dt><span class="term">-l</span></dt>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht<dd>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht <p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht Local-host only mode. This sets the server address to
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder localhost (disabling the <span class="command"><strong>server</strong></span> so that the server
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht address cannot be overridden). Connections to the local server will
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht use a TSIG key found in <code class="filename">/var/run/named/session.key</code>,
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht which is automatically generated by <span class="command"><strong>named</strong></span> if any
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht local master zone has set <span class="command"><strong>update-policy</strong></span> to
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht <span class="command"><strong>local</strong></span>. The location of this key file can be
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht overridden with the <code class="option">-k</code> option.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </dd>
5a81c9ef37269e5c5bca9e3b8e4e230f293a585dSimon Ulbricht<dt><span class="term">-L <em class="replaceable"><code>level</code></em></span></dt>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht<dd>
c8dd144f13de2667bf3fddea71b0b22d4aa25ff1Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Set the logging debug level. If zero, logging is disabled.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-p <em class="replaceable"><code>port</code></em></span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Set the port to use for connections to a name server. The
23f5a785aa582c89a0eac4e3c03fae932e8c197aSimon Ulbricht default is 53.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-P</span></dt>
0425e5ed787f937a67a33d20c263fa72409bfe73Simon Ulbricht<dd>
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Print the list of private BIND-specific resource record
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht types whose format is understood
23f5a785aa582c89a0eac4e3c03fae932e8c197aSimon Ulbricht by <span class="command"><strong>nsupdate</strong></span>. See also
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht the <code class="option">-T</code> option.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-r <em class="replaceable"><code>udpretries</code></em></span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht The number of UDP retries. The default is 3. If zero, only
c8dd144f13de2667bf3fddea71b0b22d4aa25ff1Simon Ulbricht one update request will be made.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-R <em class="replaceable"><code>randomdev</code></em></span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Where to obtain randomness. If the operating system
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht does not provide a <code class="filename">/dev/random</code> or
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder equivalent device, the default source of randomness is keyboard
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder input. <code class="filename">randomdev</code> specifies the name of
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht a character device or file containing random data to be used
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht instead of the default. The special value
af14ce5114c39c964531ebba25cbd46cf70ecd7fSimon Ulbricht <code class="filename">keyboard</code> indicates that keyboard input
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder should be used. This option may be specified multiple times.
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder </p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </dd>
f9334cbadddf6e7e349b01279db9b2391d23d6b5Christian Maeder<dt><span class="term">-t <em class="replaceable"><code>timeout</code></em></span></dt>
f9334cbadddf6e7e349b01279db9b2391d23d6b5Christian Maeder<dd>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht <p>
af1369c2b9ce0cb2a290e499b1719441917c0196Simon Ulbricht The maximum time an update request can take before it is
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht aborted. The default is 300 seconds. Zero can be used to
663e95bc1a04e039893e2a5a0815358cda1170eeChristian Maeder disable the timeout.
5a81c9ef37269e5c5bca9e3b8e4e230f293a585dSimon Ulbricht </p>
5a81c9ef37269e5c5bca9e3b8e4e230f293a585dSimon Ulbricht </dd>
663e95bc1a04e039893e2a5a0815358cda1170eeChristian Maeder<dt><span class="term">-T</span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
23f5a785aa582c89a0eac4e3c03fae932e8c197aSimon Ulbricht Print the list of IANA standard resource record types
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht whose format is understood by <span class="command"><strong>nsupdate</strong></span>.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht <span class="command"><strong>nsupdate</strong></span> will exit after the lists are
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht printed. The <code class="option">-T</code> option can be combined
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder with the <code class="option">-P</code> option.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </p>
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder <p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht Other types can be entered using "TYPEXXXXX" where "XXXXX" is the
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht decimal value of the type with no leading zeros. The rdata,
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht if present, will be parsed using the UNKNOWN rdata format,
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder (&lt;backslash&gt; &lt;hash&gt; &lt;space&gt; &lt;length&gt;
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht &lt;space&gt; &lt;hexstring&gt;).
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </p>
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder </dd>
65660c22133e6de16f9ece7b36ac6423014b20aaChristian Maeder<dt><span class="term">-u <em class="replaceable"><code>udptimeout</code></em></span></dt>
761eb2b535a763e518887d72cf276f781304cf0eSimon Ulbricht<dd>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht <p>
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht The UDP retry interval. The default is 3 seconds. If zero,
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder the interval will be computed from the timeout interval and
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht number of UDP retries.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </p>
076f0bae1471e0122ae67c197bcac3e6799c0a31Christian Maeder </dd>
076f0bae1471e0122ae67c197bcac3e6799c0a31Christian Maeder<dt><span class="term">-v</span></dt>
aed438ce70de05d86d51932a078d829a3f6be5c2Christian Maeder<dd>
65c8e8b1cf766534fa0c9aec33e538dc3894ea13Christian Maeder <p>
af14ce5114c39c964531ebba25cbd46cf70ecd7fSimon Ulbricht Use TCP even for small update requests.
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder By default, <span class="command"><strong>nsupdate</strong></span>
af14ce5114c39c964531ebba25cbd46cf70ecd7fSimon Ulbricht uses UDP to send update requests to the name server unless they are too
af14ce5114c39c964531ebba25cbd46cf70ecd7fSimon Ulbricht large to fit in a UDP request in which case TCP will be used.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht TCP may be preferable when a batch of update requests is made.
7295fc55bb16da7bc967fdf6d63cdfd03b061127Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-V</span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Print the version number and exit.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">-y <em class="replaceable"><code>[<span class="optional">hmac:</span>]keyname:secret</code></em></span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Literal TSIG authentication key.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>keyname</code></em> is the name of the key, and
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht <em class="parameter"><code>secret</code></em> is the base64 encoded shared secret.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>hmac</code></em> is the name of the key algorithm;
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht valid choices are <code class="literal">hmac-md5</code>,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="literal">hmac-sha1</code>, <code class="literal">hmac-sha224</code>,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="literal">hmac-sha256</code>, <code class="literal">hmac-sha384</code>, or
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <code class="literal">hmac-sha512</code>. If <em class="parameter"><code>hmac</code></em>
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht is not specified, the default is <code class="literal">hmac-md5</code>.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht NOTE: Use of the <code class="option">-y</code> option is discouraged because the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht shared secret is supplied as a command line argument in clear text.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht This may be visible in the output from
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht <span class="citerefentry">
d6865474d3248c1d8ed080c221c4a9548b0a4bb3Simon Ulbricht <span class="refentrytitle">ps</span>(1)
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </span>
af1369c2b9ce0cb2a290e499b1719441917c0196Simon Ulbricht or in a history file maintained by the user's shell.
abee46762c1663b85c6f18d934cd11df83828f6eChristian Maeder </p>
af1369c2b9ce0cb2a290e499b1719441917c0196Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht</dl></div>
52e3fbd71a34c294b93a44c02829991e044d163bChristian Maeder </div>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <div class="refsection" title="INPUT FORMAT">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<a name="idp61114576"></a><h2>INPUT FORMAT</h2>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p><span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht reads input from
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>filename</code></em>
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht or standard input.
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht Each command is supplied on exactly one line of input.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Some commands are for administrative purposes.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht The others are either update instructions or prerequisite checks on the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht contents of the zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht These checks set conditions that some name or set of
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht resource records (RRset) either exists or is absent from the zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht These conditions must be met if the entire update request is to succeed.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Updates will be rejected if the tests for the prerequisite conditions
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht fail.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Every update request consists of zero or more prerequisites
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder and zero or more updates.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht This allows a suitably authenticated update request to proceed if some
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht specified resource records are present or missing from the zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht A blank input line (or the <span class="command"><strong>send</strong></span> command)
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht causes the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht accumulated commands to be sent as one Dynamic DNS update request to the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht name server.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht The command formats and their meaning are as follows:
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<div class="variablelist"><dl>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>server</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht {servername}
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [port]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Sends all dynamic update requests to the name server
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>servername</code></em>.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht When no server statement is provided,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht will send updates to the master server of the correct zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht The MNAME field of that zone's SOA record will identify the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht master
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht server for that zone.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>port</code></em>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht is the port number on
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>servername</code></em>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht where the dynamic update requests get sent.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht If no port number is specified, the default DNS port number of
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht 53 is
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht used.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>local</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht {address}
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht [port]
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Sends all dynamic update requests using the local
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>address</code></em>.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht When no local statement is provided,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht will send updates using an address and port chosen by the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht system.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>port</code></em>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht can additionally be used to make requests come from a specific
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht port.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht If no port number is specified, the system will assign one.
af1369c2b9ce0cb2a290e499b1719441917c0196Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>zone</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht {zonename}
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Specifies that all updates are to be made to the zone
faa53f457a1847053529e6cdeda3586329815392Simon Ulbricht <em class="parameter"><code>zonename</code></em>.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht If no
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>zone</code></em>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht statement is provided,
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>nsupdate</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht will attempt determine the correct zone to update based on the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht rest of the input.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>class</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht {classname}
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht </span></dt>
dd0d471630e5a700970dd61448de1a0b930c5981Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Specify the default class.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht If no <em class="parameter"><code>class</code></em> is specified, the
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht default class is
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <em class="parameter"><code>IN</code></em>.
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dt><span class="term">
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <span class="command"><strong>ttl</strong></span>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht {seconds}
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht </span></dt>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht<dd>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht <p>
366c3a899de56473bd4e714c5079d7a873411605Simon Ulbricht Specify the default time to live for records to be added.
The value <em class="parameter"><code>none</code></em> will clear the default
ttl.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>key</strong></span>
[hmac:] {keyname}
{secret}
</span></dt>
<dd>
<p>
Specifies that all updates are to be TSIG-signed using the
<em class="parameter"><code>keyname</code></em> <em class="parameter"><code>secret</code></em> pair.
If <em class="parameter"><code>hmac</code></em> is specified, then it sets the
signing algorithm in use; the default is
<code class="literal">hmac-md5</code>. The <span class="command"><strong>key</strong></span>
command overrides any key specified on the command line via
<code class="option">-y</code> or <code class="option">-k</code>.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>gsstsig</strong></span>
</span></dt>
<dd>
<p>
Use GSS-TSIG to sign the updated. This is equivalent to
specifying <code class="option">-g</code> on the command line.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>oldgsstsig</strong></span>
</span></dt>
<dd>
<p>
Use the Windows 2000 version of GSS-TSIG to sign the updated.
This is equivalent to specifying <code class="option">-o</code> on the
command line.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>realm</strong></span>
{[<span class="optional">realm_name</span>]}
</span></dt>
<dd>
<p>
When using GSS-TSIG use <em class="parameter"><code>realm_name</code></em> rather
than the default realm in <code class="filename">krb5.conf</code>. If no
realm is specified the saved realm is cleared.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>check-names</strong></span>
{[<span class="optional">yes_or_no</span>]}
</span></dt>
<dd>
<p>
Turn on or off check-names processing on records to
be added. Check-names has no effect on prerequisites
or records to be deleted. By default check-names
processing is on. If check-names processing fails
the record will not be added to the UPDATE message.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">prereq</span>] nxdomain</strong></span>
{domain-name}
</span></dt>
<dd>
<p>
Requires that no resource record of any type exists with name
<em class="parameter"><code>domain-name</code></em>.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">prereq</span>] yxdomain</strong></span>
{domain-name}
</span></dt>
<dd>
<p>
Requires that
<em class="parameter"><code>domain-name</code></em>
exists (has as at least one resource record, of any type).
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">prereq</span>] nxrrset</strong></span>
{domain-name}
[class]
{type}
</span></dt>
<dd>
<p>
Requires that no resource record exists of the specified
<em class="parameter"><code>type</code></em>,
<em class="parameter"><code>class</code></em>
and
<em class="parameter"><code>domain-name</code></em>.
If
<em class="parameter"><code>class</code></em>
is omitted, IN (internet) is assumed.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">prereq</span>] yxrrset</strong></span>
{domain-name}
[class]
{type}
</span></dt>
<dd>
<p>
This requires that a resource record of the specified
<em class="parameter"><code>type</code></em>,
<em class="parameter"><code>class</code></em>
and
<em class="parameter"><code>domain-name</code></em>
must exist.
If
<em class="parameter"><code>class</code></em>
is omitted, IN (internet) is assumed.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">prereq</span>] yxrrset</strong></span>
{domain-name}
[class]
{type}
{data...}
</span></dt>
<dd>
<p>
The
<em class="parameter"><code>data</code></em>
from each set of prerequisites of this form
sharing a common
<em class="parameter"><code>type</code></em>,
<em class="parameter"><code>class</code></em>,
and
<em class="parameter"><code>domain-name</code></em>
are combined to form a set of RRs. This set of RRs must
exactly match the set of RRs existing in the zone at the
given
<em class="parameter"><code>type</code></em>,
<em class="parameter"><code>class</code></em>,
and
<em class="parameter"><code>domain-name</code></em>.
The
<em class="parameter"><code>data</code></em>
are written in the standard text representation of the resource
record's
RDATA.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">update</span>] del[<span class="optional">ete</span>]</strong></span>
{domain-name}
[ttl]
[class]
[type [data...]]
</span></dt>
<dd>
<p>
Deletes any resource records named
<em class="parameter"><code>domain-name</code></em>.
If
<em class="parameter"><code>type</code></em>
and
<em class="parameter"><code>data</code></em>
is provided, only matching resource records will be removed.
The internet class is assumed if
<em class="parameter"><code>class</code></em>
is not supplied. The
<em class="parameter"><code>ttl</code></em>
is ignored, and is only allowed for compatibility.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>[<span class="optional">update</span>] add</strong></span>
{domain-name}
{ttl}
[class]
{type}
{data...}
</span></dt>
<dd>
<p>
Adds a new resource record with the specified
<em class="parameter"><code>ttl</code></em>,
<em class="parameter"><code>class</code></em>
and
<em class="parameter"><code>data</code></em>.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>show</strong></span>
</span></dt>
<dd>
<p>
Displays the current message, containing all of the
prerequisites and
updates specified since the last send.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>send</strong></span>
</span></dt>
<dd>
<p>
Sends the current message. This is equivalent to entering a
blank line.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>answer</strong></span>
</span></dt>
<dd>
<p>
Displays the answer.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>debug</strong></span>
</span></dt>
<dd>
<p>
Turn on debugging.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>version</strong></span>
</span></dt>
<dd>
<p>
Print version number.
</p>
</dd>
<dt><span class="term">
<span class="command"><strong>help</strong></span>
</span></dt>
<dd>
<p>
Print a list of commands.
</p>
</dd>
</dl></div>
<p>
</p>
<p>
Lines beginning with a semicolon are comments and are ignored.
</p>
</div>
<div class="refsection" title="EXAMPLES">
<a name="idp61256528"></a><h2>EXAMPLES</h2>
<p>
The examples below show how
<span class="command"><strong>nsupdate</strong></span>
could be used to insert and delete resource records from the
<span class="type">example.com</span>
zone.
Notice that the input in each example contains a trailing blank line so
that
a group of commands are sent as one dynamic update request to the
master name server for
<span class="type">example.com</span>.
</p>
<pre class="programlisting">
# nsupdate
&gt; update delete oldhost.example.com A
&gt; update add newhost.example.com 86400 A 172.16.1.1
&gt; send
</pre>
<p>
</p>
<p>
Any A records for
<span class="type">oldhost.example.com</span>
are deleted.
And an A record for
<span class="type">newhost.example.com</span>
with IP address 172.16.1.1 is added.
The newly-added record has a 1 day TTL (86400 seconds).
</p>
<pre class="programlisting">
# nsupdate
&gt; prereq nxdomain nickname.example.com
&gt; update add nickname.example.com 86400 CNAME somehost.example.com
&gt; send
</pre>
<p>
</p>
<p>
The prerequisite condition gets the name server to check that there
are no resource records of any type for
<span class="type">nickname.example.com</span>.
If there are, the update request fails.
If this name does not exist, a CNAME for it is added.
This ensures that when the CNAME is added, it cannot conflict with the
long-standing rule in RFC 1034 that a name must not exist as any other
record type if it exists as a CNAME.
(The rule has been updated for DNSSEC in RFC 2535 to allow CNAMEs to have
RRSIG, DNSKEY and NSEC records.)
</p>
</div>
<div class="refsection" title="FILES">
<a name="idp61262160"></a><h2>FILES</h2>
<div class="variablelist"><dl>
<dt><span class="term"><code class="constant">/etc/resolv.conf</code></span></dt>
<dd>
<p>
used to identify default name server
</p>
</dd>
<dt><span class="term"><code class="constant">/var/run/named/session.key</code></span></dt>
<dd>
<p>
sets the default TSIG key for use in local-only mode
</p>
</dd>
<dt><span class="term"><code class="constant">K{name}.+157.+{random}.key</code></span></dt>
<dd>
<p>
base-64 encoding of HMAC-MD5 key created by
<span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>.
</p>
</dd>
<dt><span class="term"><code class="constant">K{name}.+157.+{random}.private</code></span></dt>
<dd>
<p>
base-64 encoding of HMAC-MD5 key created by
<span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>.
</p>
</dd>
</dl></div>
</div>
<div class="refsection" title="SEE ALSO">
<a name="idp61276496"></a><h2>SEE ALSO</h2>
<p>
<em class="citetitle">RFC 2136</em>,
<em class="citetitle">RFC 3007</em>,
<em class="citetitle">RFC 2104</em>,
<em class="citetitle">RFC 2845</em>,
<em class="citetitle">RFC 1034</em>,
<em class="citetitle">RFC 2535</em>,
<em class="citetitle">RFC 2931</em>,
<span class="citerefentry">
<span class="refentrytitle">named</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">ddns-confgen</span>(8)
</span>,
<span class="citerefentry">
<span class="refentrytitle">dnssec-keygen</span>(8)
</span>.
</p>
</div>
<div class="refsection" title="BUGS">
<a name="idp61283792"></a><h2>BUGS</h2>
<p>
The TSIG key is redundantly stored in two separate files.
This is a consequence of nsupdate using the DST library
for its cryptographic operations, and may change in future
releases.
</p>
</div>
</div></body>
</html>