named-checkzone.docbook 15.8 KB
Newer Older
1 2
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
               "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
3
	       [<!ENTITY mdash "&#8212;">]>
Brian Wellington's avatar
Brian Wellington committed
4
<!--
Automatic Updater's avatar
Automatic Updater committed
5
 - Copyright (C) 2004-2007, 2009  Internet Systems Consortium, Inc. ("ISC")
6
 - Copyright (C) 2000-2002  Internet Software Consortium.
Brian Wellington's avatar
Brian Wellington committed
7
 -
Automatic Updater's avatar
Automatic Updater committed
8
 - Permission to use, copy, modify, and/or distribute this software for any
Brian Wellington's avatar
Brian Wellington committed
9 10 11
 - purpose with or without fee is hereby granted, provided that the above
 - copyright notice and this permission notice appear in all copies.
 -
Mark Andrews's avatar
Mark Andrews committed
12 13 14 15 16 17 18
 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
 - AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 - PERFORMANCE OF THIS SOFTWARE.
Brian Wellington's avatar
Brian Wellington committed
19
-->
Mark Andrews's avatar
Mark Andrews committed
20

21
<!-- $Id: named-checkzone.docbook,v 1.37 2009/11/10 20:02:01 each Exp $ -->
22
<refentry id="man.named-checkzone">
23 24 25 26 27 28 29 30 31 32
  <refentryinfo>
    <date>June 13, 2000</date>
  </refentryinfo>

  <refmeta>
    <refentrytitle><application>named-checkzone</application></refentrytitle>
    <manvolnum>8</manvolnum>
    <refmiscinfo>BIND9</refmiscinfo>
  </refmeta>

33 34 35 36
  <docinfo>
    <copyright>
      <year>2004</year>
      <year>2005</year>
Mark Andrews's avatar
Mark Andrews committed
37
      <year>2006</year>
Mark Andrews's avatar
Mark Andrews committed
38
      <year>2007</year>
Automatic Updater's avatar
Automatic Updater committed
39
      <year>2009</year>
40 41 42 43 44 45
      <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
    </copyright>
    <copyright>
      <year>2000</year>
      <year>2001</year>
      <year>2002</year>
Mark Andrews's avatar
Mark Andrews committed
46
      <holder>Internet Software Consortium.</holder>
47 48 49
    </copyright>
  </docinfo>

50 51
  <refnamediv>
    <refname><application>named-checkzone</application></refname>
52 53
    <refname><application>named-compilezone</application></refname>
    <refpurpose>zone file validity checking or converting tool</refpurpose>
54 55 56 57 58 59
  </refnamediv>

  <refsynopsisdiv>
    <cmdsynopsis>
      <command>named-checkzone</command>
      <arg><option>-d</option></arg>
60
      <arg><option>-h</option></arg>
Mark Andrews's avatar
Mark Andrews committed
61
      <arg><option>-j</option></arg>
62
      <arg><option>-q</option></arg>
63
      <arg><option>-v</option></arg>
64
      <arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
65 66
      <arg><option>-f <replaceable class="parameter">format</replaceable></option></arg>
      <arg><option>-F <replaceable class="parameter">format</replaceable></option></arg>
67
      <arg><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
68
      <arg><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
69
      <arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
70
      <arg><option>-M <replaceable class="parameter">mode</replaceable></option></arg>
71
      <arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
72
      <arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
73
      <arg><option>-S <replaceable class="parameter">mode</replaceable></option></arg>
74 75 76 77 78 79 80 81 82 83 84 85 86 87
      <arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
      <arg><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
      <arg><option>-D</option></arg>
      <arg><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
      <arg choice="req">zonename</arg>
      <arg choice="req">filename</arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>named-compilezone</command>
      <arg><option>-d</option></arg>
      <arg><option>-j</option></arg>
      <arg><option>-q</option></arg>
      <arg><option>-v</option></arg>
      <arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
88
      <arg><option>-C <replaceable class="parameter">mode</replaceable></option></arg>
89 90 91 92 93 94 95 96
      <arg><option>-f <replaceable class="parameter">format</replaceable></option></arg>
      <arg><option>-F <replaceable class="parameter">format</replaceable></option></arg>
      <arg><option>-i <replaceable class="parameter">mode</replaceable></option></arg>
      <arg><option>-k <replaceable class="parameter">mode</replaceable></option></arg>
      <arg><option>-m <replaceable class="parameter">mode</replaceable></option></arg>
      <arg><option>-n <replaceable class="parameter">mode</replaceable></option></arg>
      <arg><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
      <arg><option>-s <replaceable class="parameter">style</replaceable></option></arg>
97 98
      <arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
      <arg><option>-w <replaceable class="parameter">directory</replaceable></option></arg>
99
      <arg><option>-D</option></arg>
100
      <arg><option>-W <replaceable class="parameter">mode</replaceable></option></arg>
101
      <arg choice="req"><option>-o <replaceable class="parameter">filename</replaceable></option></arg>
102 103 104 105 106 107 108
      <arg choice="req">zonename</arg>
      <arg choice="req">filename</arg>
    </cmdsynopsis>
  </refsynopsisdiv>

  <refsect1>
    <title>DESCRIPTION</title>
109 110 111 112 113
    <para><command>named-checkzone</command>
      checks the syntax and integrity of a zone file.  It performs the
      same checks as <command>named</command> does when loading a
      zone.  This makes <command>named-checkzone</command> useful for
      checking zone files before configuring them into a name server.
114
    </para>
115 116 117 118 119 120 121
    <para>
        <command>named-compilezone</command> is similar to
	<command>named-checkzone</command>, but it always dumps the
        zone contents to a specified file in a specified format.
	Additionally, it applies stricter check levels by default,
        since the dump output will be used as an actual zone file
	loaded by <command>named</command>.
122
	When manually specified otherwise, the check levels must at
123 124
        least be as strict as those specified in the
	<command>named</command> configuration file.
Mark Andrews's avatar
Mark Andrews committed
125
     </para>
126 127 128 129 130 131 132 133
  </refsect1>

  <refsect1>
    <title>OPTIONS</title>

    <variablelist>
      <varlistentry>
        <term>-d</term>
134 135 136 137 138
        <listitem>
          <para>
            Enable debugging.
          </para>
        </listitem>
139 140
      </varlistentry>

141 142 143 144 145 146 147 148 149
      <varlistentry>
        <term>-h</term>
        <listitem>
          <para>
            Print the usage summary and exit.
          </para>
        </listitem>
      </varlistentry>

150 151
      <varlistentry>
        <term>-q</term>
152 153 154 155 156
        <listitem>
          <para>
            Quiet mode - exit code only.
          </para>
        </listitem>
157 158
      </varlistentry>

159 160
      <varlistentry>
        <term>-v</term>
161 162 163 164 165 166
        <listitem>
          <para>
            Print the version of the <command>named-checkzone</command>
            program and exit.
          </para>
        </listitem>
167 168
      </varlistentry>

169
      <varlistentry>
170
        <term>-j</term>
171 172
        <listitem>
          <para>
173 174
            When loading the zone file read the journal if it exists.
          </para>
175
        </listitem>
176
      </varlistentry>
177

178 179
      <varlistentry>
        <term>-c <replaceable class="parameter">class</replaceable></term>
180 181
        <listitem>
          <para>
182
            Specify the class of the zone.  If not specified, "IN" is assumed.
183 184
          </para>
        </listitem>
185 186
      </varlistentry>

187 188 189 190
      <varlistentry>
        <term>-i <replaceable class="parameter">mode</replaceable></term>
	<listitem>
	  <para>
191
	      Perform post-load zone integrity checks.  Possible modes are
192
	      <command>"full"</command> (default),
193 194 195
	      <command>"full-sibling"</command>,
	      <command>"local"</command>,
	      <command>"local-sibling"</command> and
196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212
	      <command>"none"</command>.
	  </para>
	  <para>
	      Mode <command>"full"</command> checks that MX records
	      refer to A or AAAA record (both in-zone and out-of-zone
	      hostnames).  Mode <command>"local"</command> only
	      checks MX records which refer to in-zone hostnames.
	  </para>
	  <para>
	      Mode <command>"full"</command> checks that SRV records
	      refer to A or AAAA record (both in-zone and out-of-zone
	      hostnames).  Mode <command>"local"</command> only
	      checks SRV records which refer to in-zone hostnames.
	  </para>
	  <para>
	      Mode <command>"full"</command> checks that delegation NS
	      records refer to A or AAAA record (both in-zone and out-of-zone
213
	      hostnames).  It also checks that glue address records
214 215 216 217 218
	      in the zone match those advertised by the child.
	      Mode <command>"local"</command> only checks NS records which
	      refer to in-zone hostnames or that some required glue exists,
	      that is when the nameserver is in a child zone.
	  </para>
219 220 221 222 223 224
	  <para>
	      Mode <command>"full-sibling"</command> and
	      <command>"local-sibling"</command> disable sibling glue
	      checks but are otherwise the same as <command>"full"</command>
	      and <command>"local"</command> respectively.
	  </para>
225 226 227 228 229 230
	  <para>
	      Mode <command>"none"</command> disables the checks.
	  </para>
	</listitem>
      </varlistentry>

231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
      <varlistentry>
	<term>-f <replaceable class="parameter">format</replaceable></term>
	<listitem>
	  <para>
	    Specify the format of the zone file.
	    Possible formats are <command>"text"</command> (default)
	    and <command>"raw"</command>.
	  </para>
	</listitem>
      </varlistentry>

      <varlistentry>
	<term>-F <replaceable class="parameter">format</replaceable></term>
	<listitem>
	  <para>
	    Specify the format of the output file specified.
	    Possible formats are <command>"text"</command> (default)
	    and <command>"raw"</command>.
	    For <command>named-checkzone</command>,
	    this does not cause any effects unless it dumps the zone
	    contents.
	  </para>
	</listitem>
      </varlistentry>

256 257
      <varlistentry>
        <term>-k <replaceable class="parameter">mode</replaceable></term>
258 259
        <listitem>
          <para>
Mark Andrews's avatar
Mark Andrews committed
260
            Perform <command>"check-names"</command> checks with the
261 262 263 264 265
	    specified failure mode.
            Possible modes are <command>"fail"</command>
	    (default for <command>named-compilezone</command>),
            <command>"warn"</command>
	    (default for <command>named-checkzone</command>) and
266 267 268
            <command>"ignore"</command>.
          </para>
        </listitem>
269 270
      </varlistentry>

271 272 273 274 275 276 277 278 279 280 281 282
      <varlistentry>
        <term>-m <replaceable class="parameter">mode</replaceable></term>
        <listitem>
          <para>
            Specify whether MX records should be checked to see if they
            are addresses.  Possible modes are <command>"fail"</command>,
            <command>"warn"</command> (default) and
            <command>"ignore"</command>.
          </para>
        </listitem>
      </varlistentry>

283 284 285 286 287 288 289 290 291 292 293 294
      <varlistentry>
	<term>-M <replaceable class="parameter">mode</replaceable></term>
        <listitem>
	  <para>
	    Check if a MX record refers to a CNAME.
            Possible modes are <command>"fail"</command>,
            <command>"warn"</command> (default) and
            <command>"ignore"</command>.
	  </para>
        </listitem>
      </varlistentry>

295 296
      <varlistentry>
        <term>-n <replaceable class="parameter">mode</replaceable></term>
297 298 299
        <listitem>
          <para>
            Specify whether NS records should be checked to see if they
300 301 302 303 304
            are addresses.
	    Possible modes are <command>"fail"</command>
	    (default for <command>named-compilezone</command>),
            <command>"warn"</command>
	    (default for <command>named-checkzone</command>) and
305 306 307
            <command>"ignore"</command>.
          </para>
        </listitem>
308 309
      </varlistentry>

310 311 312 313
      <varlistentry>
        <term>-o <replaceable class="parameter">filename</replaceable></term>
        <listitem>
          <para>
314
            Write zone output to <filename>filename</filename>.
315 316
	    If <filename>filename</filename> is <filename>-</filename> then
	    write to standard out.
317
	    This is mandatory for <command>named-compilezone</command>.
318 319 320 321
          </para>
        </listitem>
      </varlistentry>

322 323 324 325 326 327
      <varlistentry>
	<term>-s <replaceable class="parameter">style</replaceable></term>
	<listitem>
	  <para>
	    Specify the style of the dumped zone file.
	    Possible styles are <command>"full"</command> (default)
328
	    and <command>"relative"</command>.
329 330
	    The full format is most suitable for processing
	    automatically by a separate script.
331
	    On the other hand, the relative format is more
332 333 334 335 336 337 338 339 340 341
	    human-readable and is thus suitable for editing by hand.
	    For <command>named-checkzone</command>
	    this does not cause any effects unless it dumps the zone
	    contents.
	    It also does not have any meaning if the output format
	    is not text.
	  </para>
	</listitem>
      </varlistentry>

342 343 344 345 346 347 348 349 350 351 352 353
      <varlistentry>
	<term>-S <replaceable class="parameter">mode</replaceable></term>
        <listitem>
	  <para>
	    Check if a SRV record refers to a CNAME.
            Possible modes are <command>"fail"</command>,
            <command>"warn"</command> (default) and
            <command>"ignore"</command>.
	  </para>
        </listitem>
      </varlistentry>

354 355 356 357
      <varlistentry>
        <term>-t <replaceable class="parameter">directory</replaceable></term>
        <listitem>
          <para>
358
            Chroot to <filename>directory</filename> so that
359 360 361
            include
            directives in the configuration file are processed as if
            run by a similarly chrooted named.
362 363 364 365 366 367 368 369
          </para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>-w <replaceable class="parameter">directory</replaceable></term>
        <listitem>
          <para>
370 371 372 373 374
            chdir to <filename>directory</filename> so that
            relative
            filenames in master file $INCLUDE directives work.  This
            is similar to the directory clause in
            <filename>named.conf</filename>.
375 376 377 378
          </para>
        </listitem>
      </varlistentry>

379 380
      <varlistentry>
        <term>-D</term>
381 382 383
        <listitem>
          <para>
            Dump zone file in canonical format.
384
	    This is always enabled for <command>named-compilezone</command>.
385 386
          </para>
        </listitem>
387 388
      </varlistentry>

389 390
      <varlistentry>
        <term>-W <replaceable class="parameter">mode</replaceable></term>
391 392 393 394 395 396 397 398 399 400
        <listitem>
          <para>
            Specify whether to check for non-terminal wildcards.
            Non-terminal wildcards are almost always the result of a
            failure to understand the wildcard matching algorithm (RFC 1034).
            Possible modes are <command>"warn"</command> (default)
            and
            <command>"ignore"</command>.
          </para>
        </listitem>
401 402
      </varlistentry>

403 404
      <varlistentry>
        <term>zonename</term>
405 406 407 408 409
        <listitem>
          <para>
            The domain name of the zone being checked.
          </para>
        </listitem>
410 411 412 413
      </varlistentry>

      <varlistentry>
        <term>filename</term>
414 415 416 417 418
        <listitem>
          <para>
            The name of the zone file.
          </para>
        </listitem>
419 420 421 422 423 424 425 426
      </varlistentry>

    </variablelist>

  </refsect1>

  <refsect1>
    <title>RETURN VALUES</title>
427 428 429 430
    <para><command>named-checkzone</command>
      returns an exit status of 1 if
      errors were detected and 0 otherwise.
    </para>
431 432 433 434
  </refsect1>

  <refsect1>
    <title>SEE ALSO</title>
435 436
    <para><citerefentry>
        <refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
437
      </citerefentry>,
438 439 440
      <citerefentry>
        <refentrytitle>named-checkconf</refentrytitle><manvolnum>8</manvolnum>  
      </citerefentry>,
441 442 443 444 445 446 447
      <citetitle>RFC 1035</citetitle>,
      <citetitle>BIND 9 Administrator Reference Manual</citetitle>.
    </para>
  </refsect1>

  <refsect1>
    <title>AUTHOR</title>
448
    <para><corpauthor>Internet Systems Consortium</corpauthor>
449 450 451
    </para>
  </refsect1>

452
</refentry><!--
453 454 455 456
 - Local variables:
 - mode: sgml
 - End:
-->