delv.docbook revision 83a28ca274521e15086fc39febde507bcc4e145e
af062818b47340eef15700d2f0211576ba3506eevboxsync<!ENTITY mdash "—">]>
af062818b47340eef15700d2f0211576ba3506eevboxsync - Copyright (C) 2014-2016 Internet Systems Consortium, Inc. ("ISC")
af062818b47340eef15700d2f0211576ba3506eevboxsync - This Source Code Form is subject to the terms of the Mozilla Public
af062818b47340eef15700d2f0211576ba3506eevboxsync - License, v. 2.0. If a copy of the MPL was not distributed with this
a3133ef29cdf3656735d569fd64e54c9286effc0vboxsync - file, You can obtain one at http://mozilla.org/MPL/2.0/.
af062818b47340eef15700d2f0211576ba3506eevboxsync<!-- Converted by db4-upgrade version 1.0 -->
af062818b47340eef15700d2f0211576ba3506eevboxsync<refentry xmlns:db="http://docbook.org/ns/docbook" version="5.0" xml:id="man.delv">
af062818b47340eef15700d2f0211576ba3506eevboxsync <refentryinfo>
af062818b47340eef15700d2f0211576ba3506eevboxsync <corpauthor>Internet Systems Consortium, Inc.</corpauthor>
af062818b47340eef15700d2f0211576ba3506eevboxsync </refentryinfo>
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync <refnamediv>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <refpurpose>DNS lookup and validation utility</refpurpose>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync </refnamediv>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <copyright>
af062818b47340eef15700d2f0211576ba3506eevboxsync <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </copyright>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <refsynopsisdiv>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <arg choice="opt" rep="norepeat"><option>-4</option></arg>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <arg choice="opt" rep="norepeat"><option>-6</option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">anchor-file</replaceable></option></arg>
554f00fe75489f3f3ce7fbb6d126ce1d2c5c922cvboxsync <arg choice="opt" rep="norepeat"><option>-b <replaceable class="parameter">address</replaceable></option></arg>
554f00fe75489f3f3ce7fbb6d126ce1d2c5c922cvboxsync <arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">class</replaceable></option></arg>
5112e32d7072e280613921c982a6672f2c859cf3vboxsync <arg choice="opt" rep="norepeat"><option>-d <replaceable class="parameter">level</replaceable></option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-i</option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-m</option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">port#</replaceable></option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-q <replaceable class="parameter">name</replaceable></option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">type</replaceable></option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-x <replaceable class="parameter">addr</replaceable></option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </cmdsynopsis>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <arg choice="opt" rep="norepeat"><option>-h</option></arg>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync </cmdsynopsis>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-v</option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </cmdsynopsis>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </cmdsynopsis>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync </refsynopsisdiv>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync <refsection><info><title>DESCRIPTION</title></info>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync (Domain Entity Lookup & Validation) is a tool for sending
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync DNS queries and validating the results, using the same internal
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync resolver and validator logic as <command>named</command>.
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <command>delv</command> will send to a specified name server all
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync queries needed to fetch and validate the requested data; this
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync includes the original requested query, subsequent queries to follow
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync CNAME or DNAME chains, and queries for DNSKEY, DS and DLV records
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync to establish a chain of trust for DNSSEC validation.
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync It does not perform iterative resolution, but simulates the
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync behavior of a name server configured for DNSSEC validating and
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync forwarding.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync By default, responses are validated using built-in DNSSEC trust
91563ca66c54f5974bd78d4a8e51e1a690c03e0fvboxsync anchors for the root zone (".") and for the ISC DNSSEC lookaside
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync validation zone ("dlv.isc.org"). Records returned by
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <command>delv</command> are either fully validated or
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync were not signed. If validation fails, an explanation of
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync the failure is included in the output; the validation process
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync can be traced in detail. Because <command>delv</command> does
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync not rely on an external server to carry out validation, it can
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync be used to check the validity of DNS responses in environments
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync where local name servers may not be trustworthy.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync Unless it is told to query a specific name server,
91563ca66c54f5974bd78d4a8e51e1a690c03e0fvboxsync <command>delv</command> will try each of the servers listed in
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <filename>/etc/resolv.conf</filename>. If no usable server
554f00fe75489f3f3ce7fbb6d126ce1d2c5c922cvboxsync addresses are found, <command>delv</command> will send
554f00fe75489f3f3ce7fbb6d126ce1d2c5c922cvboxsync queries to the localhost addresses (127.0.0.1 for IPv4, ::1
af062818b47340eef15700d2f0211576ba3506eevboxsync When no command line arguments or options are given,
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>delv</command> will perform an NS query for "."
af062818b47340eef15700d2f0211576ba3506eevboxsync (the root zone).
af062818b47340eef15700d2f0211576ba3506eevboxsync </refsection>
af062818b47340eef15700d2f0211576ba3506eevboxsync <refsection><info><title>SIMPLE USAGE</title></info>
af062818b47340eef15700d2f0211576ba3506eevboxsync A typical invocation of <command>delv</command> looks like:
5112e32d7072e280613921c982a6672f2c859cf3vboxsync <programlisting> delv @server name type </programlisting>
af062818b47340eef15700d2f0211576ba3506eevboxsync <variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync is the name or IP address of the name server to query. This
af062818b47340eef15700d2f0211576ba3506eevboxsync can be an IPv4 address in dotted-decimal notation or an IPv6
af062818b47340eef15700d2f0211576ba3506eevboxsync address in colon-delimited notation. When the supplied
af062818b47340eef15700d2f0211576ba3506eevboxsync <parameter>server</parameter> argument is a hostname,
af062818b47340eef15700d2f0211576ba3506eevboxsync querying that name server (note, however, that this
af062818b47340eef15700d2f0211576ba3506eevboxsync initial lookup is <emphasis>not</emphasis> validated
af062818b47340eef15700d2f0211576ba3506eevboxsync by DNSSEC).
af062818b47340eef15700d2f0211576ba3506eevboxsync address is found there, it queries the name server at
af062818b47340eef15700d2f0211576ba3506eevboxsync that address. If either of the <option>-4</option> or
af062818b47340eef15700d2f0211576ba3506eevboxsync only addresses for the corresponding transport
af062818b47340eef15700d2f0211576ba3506eevboxsync will be tried. If no usable addresses are found,
af062818b47340eef15700d2f0211576ba3506eevboxsync the localhost addresses (127.0.0.1 for IPv4,
af062818b47340eef15700d2f0211576ba3506eevboxsync ::1 for IPv6).
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync is the domain name to be looked up.
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync indicates what type of query is required —
af062818b47340eef15700d2f0211576ba3506eevboxsync ANY, A, MX, etc.
af062818b47340eef15700d2f0211576ba3506eevboxsync type. If no
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>delv</command> will perform a lookup for an
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync </variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync </refsection>
af062818b47340eef15700d2f0211576ba3506eevboxsync <variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-a <replaceable class="parameter">anchor-file</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync Specifies a file from which to read DNSSEC trust anchors.
af062818b47340eef15700d2f0211576ba3506eevboxsync The default is <filename>/etc/bind.keys</filename>, which
af062818b47340eef15700d2f0211576ba3506eevboxsync is included with <acronym>BIND</acronym> 9 and contains
af062818b47340eef15700d2f0211576ba3506eevboxsync trust anchors for the root zone (".") and for the ISC
af062818b47340eef15700d2f0211576ba3506eevboxsync DNSSEC lookaside validation zone ("dlv.isc.org").
af062818b47340eef15700d2f0211576ba3506eevboxsync Keys that do not match the root or DLV trust-anchor
af062818b47340eef15700d2f0211576ba3506eevboxsync names are ignored; these key names can be overridden
af062818b47340eef15700d2f0211576ba3506eevboxsync Note: When reading the trust anchor file,
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>delv</command> treats <option>managed-keys</option>
af062818b47340eef15700d2f0211576ba3506eevboxsync statements and <option>trusted-keys</option> statements
af062818b47340eef15700d2f0211576ba3506eevboxsync identically. That is, for a managed key, it is the
af062818b47340eef15700d2f0211576ba3506eevboxsync <emphasis>initial</emphasis> key that is trusted; RFC 5011
af062818b47340eef15700d2f0211576ba3506eevboxsync key management is not supported. <command>delv</command>
af062818b47340eef15700d2f0211576ba3506eevboxsync will not consult the managed-keys database maintained by
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>named</command>. This means that if either of the
af062818b47340eef15700d2f0211576ba3506eevboxsync keys in <filename>/etc/bind.keys</filename> is revoked
af062818b47340eef15700d2f0211576ba3506eevboxsync and rolled over, it will be necessary to update
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-b <replaceable class="parameter">address</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync Sets the source IP address of the query to
af062818b47340eef15700d2f0211576ba3506eevboxsync <parameter>address</parameter>. This must be a valid address
af062818b47340eef15700d2f0211576ba3506eevboxsync on one of the host's network interfaces or "0.0.0.0" or "::".
af062818b47340eef15700d2f0211576ba3506eevboxsync An optional source port may be specified by appending
af062818b47340eef15700d2f0211576ba3506eevboxsync "#<port>"
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-c <replaceable class="parameter">class</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync Sets the query class for the requested data. Currently,
af062818b47340eef15700d2f0211576ba3506eevboxsync only class "IN" is supported in <command>delv</command>
af062818b47340eef15700d2f0211576ba3506eevboxsync and any other value is ignored.
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-d <replaceable class="parameter">level</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync Set the systemwide debug level to <option>level</option>.
af062818b47340eef15700d2f0211576ba3506eevboxsync The allowed range is from 0 to 99.
af062818b47340eef15700d2f0211576ba3506eevboxsync The default is 0 (no debugging).
af062818b47340eef15700d2f0211576ba3506eevboxsync Debugging traces from <command>delv</command> become
af062818b47340eef15700d2f0211576ba3506eevboxsync more verbose as the debug level increases.
af062818b47340eef15700d2f0211576ba3506eevboxsync See the <option>+mtrace</option>, <option>+rtrace</option>,
af062818b47340eef15700d2f0211576ba3506eevboxsync and <option>+vtrace</option> options below for additional
af062818b47340eef15700d2f0211576ba3506eevboxsync debugging details.
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync Display the <command>delv</command> help usage output and exit.
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync Insecure mode. This disables internal DNSSEC validation.
af062818b47340eef15700d2f0211576ba3506eevboxsync (Note, however, this does not set the CD bit on upstream
af062818b47340eef15700d2f0211576ba3506eevboxsync queries. If the server being queried is performing DNSSEC
af062818b47340eef15700d2f0211576ba3506eevboxsync validation, then it will not return invalid data; this
af062818b47340eef15700d2f0211576ba3506eevboxsync can cause <command>delv</command> to time out. When it
af062818b47340eef15700d2f0211576ba3506eevboxsync is necessary to examine invalid data to debug a DNSSEC
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </varlistentry>
9811e5280582debe26aac8a3b5e30d489450014avboxsync <varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync Enables memory usage debugging.
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </listitem>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <term>-p <replaceable class="parameter">port#</replaceable></term>
using nibble format under the IP6.ARPA domain.
e.g. "[ key id = value ]".
a trust anchor of "dlv.isc.org", for which there is a