2 - Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
3 - Copyright (C) 2000-2003 Internet Software Consortium.
5 - Permission to use, copy, modify, and/or distribute this software for any
6 - purpose with or without fee is hereby granted, provided that the above
7 - copyright notice and this permission notice appear in all copies.
9 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11 - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15 - PERFORMANCE OF THIS SOFTWARE.
17 <!-- $Id: man.rndc.conf.html,v 1.5 2015/09/03 07:33:34 christos Exp $ -->
20 <meta http-equiv=
"Content-Type" content=
"text/html; charset=ISO-8859-1">
21 <title>rndc.conf
</title>
22 <meta name=
"generator" content=
"DocBook XSL Stylesheets V1.71.1">
23 <link rel=
"start" href=
"Bv9ARM.html" title=
"BIND 9 Administrator Reference Manual">
24 <link rel=
"up" href=
"Bv9ARM.ch13.html" title=
"Manual pages">
25 <link rel=
"prev" href=
"man.rndc.html" title=
"rndc">
26 <link rel=
"next" href=
"man.rndc-confgen.html" title=
"rndc-confgen">
28 <body bgcolor=
"white" text=
"black" link=
"#0000FF" vlink=
"#840084" alink=
"#0000FF">
29 <div class=
"navheader">
30 <table width=
"100%" summary=
"Navigation header">
31 <tr><th colspan=
"3" align=
"center"><code class=
"filename">rndc.conf
</code></th></tr>
33 <td width=
"20%" align=
"left">
34 <a accesskey=
"p" href=
"man.rndc.html">Prev
</a> </td>
35 <th width=
"60%" align=
"center">Manual pages
</th>
36 <td width=
"20%" align=
"right"> <a accesskey=
"n" href=
"man.rndc-confgen.html">Next
</a>
42 <div class=
"refentry" lang=
"en">
43 <a name=
"man.rndc.conf"></a><div class=
"titlepage"></div>
44 <div class=
"refnamediv">
46 <p><code class=
"filename">rndc.conf
</code> — rndc configuration file
</p>
48 <div class=
"refsynopsisdiv">
50 <div class=
"cmdsynopsis"><p><code class=
"command">rndc.conf
</code> </p></div>
52 <div class=
"refsect1" lang=
"en">
53 <a name=
"id2619249"></a><h2>DESCRIPTION
</h2>
54 <p><code class=
"filename">rndc.conf
</code> is the configuration file
55 for
<span><strong class=
"command">rndc
</strong></span>, the BIND
9 name server control
56 utility. This file has a similar structure and syntax to
57 <code class=
"filename">named.conf
</code>. Statements are enclosed
58 in braces and terminated with a semi-colon. Clauses in
59 the statements are also semi-colon terminated. The usual
60 comment styles are supported:
66 C++ style: // to end of line
69 Unix style: # to end of line
71 <p><code class=
"filename">rndc.conf
</code> is much simpler than
72 <code class=
"filename">named.conf
</code>. The file uses three
73 statements: an options statement, a server statement
77 The
<code class=
"option">options
</code> statement contains five clauses.
78 The
<code class=
"option">default-server
</code> clause is followed by the
79 name or address of a name server. This host will be used when
80 no name server is given as an argument to
81 <span><strong class=
"command">rndc
</strong></span>. The
<code class=
"option">default-key
</code>
82 clause is followed by the name of a key which is identified by
83 a
<code class=
"option">key
</code> statement. If no
84 <code class=
"option">keyid
</code> is provided on the rndc command line,
85 and no
<code class=
"option">key
</code> clause is found in a matching
86 <code class=
"option">server
</code> statement, this default key will be
87 used to authenticate the server's commands and responses. The
88 <code class=
"option">default-port
</code> clause is followed by the port
89 to connect to on the remote name server. If no
90 <code class=
"option">port
</code> option is provided on the rndc command
91 line, and no
<code class=
"option">port
</code> clause is found in a
92 matching
<code class=
"option">server
</code> statement, this default port
93 will be used to connect.
94 The
<code class=
"option">default-source-address
</code> and
95 <code class=
"option">default-source-address-v6
</code> clauses which
96 can be used to set the IPv4 and IPv6 source addresses
100 After the
<code class=
"option">server
</code> keyword, the server
101 statement includes a string which is the hostname or address
102 for a name server. The statement has three possible clauses:
103 <code class=
"option">key
</code>,
<code class=
"option">port
</code> and
104 <code class=
"option">addresses
</code>. The key name must match the
105 name of a key statement in the file. The port number
106 specifies the port to connect to. If an
<code class=
"option">addresses
</code>
107 clause is supplied these addresses will be used instead of
108 the server name. Each address can take an optional port.
109 If an
<code class=
"option">source-address
</code> or
<code class=
"option">source-address-v6
</code>
110 of supplied then these will be used to specify the IPv4 and IPv6
111 source addresses respectively.
114 The
<code class=
"option">key
</code> statement begins with an identifying
115 string, the name of the key. The statement has two clauses.
116 <code class=
"option">algorithm
</code> identifies the authentication algorithm
117 for
<span><strong class=
"command">rndc
</strong></span> to use; currently only HMAC-MD5
118 (for compatibility), HMAC-SHA1, HMAC-SHA224, HMAC-SHA256
119 (default), HMAC-SHA384 and HMAC-SHA512 are
120 supported. This is followed by a secret clause which contains
121 the base-
64 encoding of the algorithm's authentication key. The
122 base-
64 string is enclosed in double quotes.
125 There are two common ways to generate the base-
64 string for the
126 secret. The BIND
9 program
<span><strong class=
"command">rndc-confgen
</strong></span>
128 be used to generate a random key, or the
129 <span><strong class=
"command">mmencode
</strong></span> program, also known as
130 <span><strong class=
"command">mimencode
</strong></span>, can be used to generate a
132 string from known input.
<span><strong class=
"command">mmencode
</strong></span> does
134 ship with BIND
9 but is available on many systems. See the
135 EXAMPLE section for sample command lines for each.
138 <div class=
"refsect1" lang=
"en">
139 <a name=
"id2661200"></a><h2>EXAMPLE
</h2>
140 <pre class=
"programlisting">
142 default-server localhost;
143 default-key samplekey;
148 <pre class=
"programlisting">
155 <pre class=
"programlisting">
158 addresses { localhost port
5353; };
163 <pre class=
"programlisting">
165 algorithm hmac-sha256;
166 secret
"6FMfj43Osz4lyb24OIe2iGEz9lf1llJO+lz";
171 <pre class=
"programlisting">
173 algorithm hmac-sha256;
174 secret
"R3HI8P6BKw9ZwXwN3VZKuQ==";
180 In the above example,
<span><strong class=
"command">rndc
</strong></span> will by
182 the server at localhost (
127.0.0.1) and the key called samplekey.
183 Commands to the localhost server will use the samplekey key, which
184 must also be defined in the server's configuration file with the
185 same name and secret. The key statement indicates that samplekey
186 uses the HMAC-SHA256 algorithm and its secret clause contains the
187 base-
64 encoding of the HMAC-SHA256 secret enclosed in double quotes.
190 If
<span><strong class=
"command">rndc -s testserver
</strong></span> is used then
<span><strong class=
"command">rndc
</strong></span> will
191 connect to server on localhost port
5353 using the key testkey.
194 To generate a random secret with
<span><strong class=
"command">rndc-confgen
</strong></span>:
196 <p><strong class=
"userinput"><code>rndc-confgen
</code></strong>
199 A complete
<code class=
"filename">rndc.conf
</code> file, including
201 randomly generated key, will be written to the standard
202 output. Commented-out
<code class=
"option">key
</code> and
203 <code class=
"option">controls
</code> statements for
204 <code class=
"filename">named.conf
</code> are also printed.
207 To generate a base-
64 secret with
<span><strong class=
"command">mmencode
</strong></span>:
209 <p><strong class=
"userinput"><code>echo
"known plaintext for a secret" | mmencode
</code></strong>
212 <div class=
"refsect1" lang=
"en">
213 <a name=
"id2662004"></a><h2>NAME SERVER CONFIGURATION
</h2>
215 The name server must be configured to accept rndc connections and
216 to recognize the key specified in the
<code class=
"filename">rndc.conf
</code>
217 file, using the controls statement in
<code class=
"filename">named.conf
</code>.
218 See the sections on the
<code class=
"option">controls
</code> statement in the
219 BIND
9 Administrator Reference Manual for details.
222 <div class=
"refsect1" lang=
"en">
223 <a name=
"id2662029"></a><h2>SEE ALSO
</h2>
224 <p><span class=
"citerefentry"><span class=
"refentrytitle">rndc
</span>(
8)
</span>,
225 <span class=
"citerefentry"><span class=
"refentrytitle">rndc-confgen
</span>(
8)
</span>,
226 <span class=
"citerefentry"><span class=
"refentrytitle">mmencode
</span>(
1)
</span>,
227 <em class=
"citetitle">BIND
9 Administrator Reference Manual
</em>.
230 <div class=
"refsect1" lang=
"en">
231 <a name=
"id2662068"></a><h2>AUTHOR
</h2>
232 <p><span class=
"corpauthor">Internet Systems Consortium
</span>
236 <div class=
"navfooter">
238 <table width=
"100%" summary=
"Navigation footer">
240 <td width=
"40%" align=
"left">
241 <a accesskey=
"p" href=
"man.rndc.html">Prev
</a> </td>
242 <td width=
"20%" align=
"center"><a accesskey=
"u" href=
"Bv9ARM.ch13.html">Up
</a></td>
243 <td width=
"40%" align=
"right"> <a accesskey=
"n" href=
"man.rndc-confgen.html">Next
</a>
247 <td width=
"40%" align=
"left" valign=
"top">
248 <span class=
"application">rndc
</span> </td>
249 <td width=
"20%" align=
"center"><a accesskey=
"h" href=
"Bv9ARM.html">Home
</a></td>
250 <td width=
"40%" align=
"right" valign=
"top"> <span class=
"application">rndc-confgen
</span>
255 <p style=
"text-align: center;">BIND
9.10.2-P4
</p>