delv.docbook revision 83a28ca274521e15086fc39febde507bcc4e145e
af062818b47340eef15700d2f0211576ba3506eevboxsync<!DOCTYPE book [
af062818b47340eef15700d2f0211576ba3506eevboxsync<!ENTITY mdash "&#8212;">]>
af062818b47340eef15700d2f0211576ba3506eevboxsync<!--
af062818b47340eef15700d2f0211576ba3506eevboxsync - Copyright (C) 2014-2016 Internet Systems Consortium, Inc. ("ISC")
af062818b47340eef15700d2f0211576ba3506eevboxsync -
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-->
af062818b47340eef15700d2f0211576ba3506eevboxsync
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 <info>
af062818b47340eef15700d2f0211576ba3506eevboxsync <date>2014-04-23</date>
af062818b47340eef15700d2f0211576ba3506eevboxsync </info>
af062818b47340eef15700d2f0211576ba3506eevboxsync <refentryinfo>
af062818b47340eef15700d2f0211576ba3506eevboxsync <corpname>ISC</corpname>
af062818b47340eef15700d2f0211576ba3506eevboxsync <corpauthor>Internet Systems Consortium, Inc.</corpauthor>
af062818b47340eef15700d2f0211576ba3506eevboxsync </refentryinfo>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <refmeta>
af062818b47340eef15700d2f0211576ba3506eevboxsync <refentrytitle>delv</refentrytitle>
af062818b47340eef15700d2f0211576ba3506eevboxsync <manvolnum>1</manvolnum>
af062818b47340eef15700d2f0211576ba3506eevboxsync <refmiscinfo>BIND9</refmiscinfo>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync </refmeta>
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync <refnamediv>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <refname>delv</refname>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <refpurpose>DNS lookup and validation utility</refpurpose>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync </refnamediv>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <docinfo>
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync <copyright>
af062818b47340eef15700d2f0211576ba3506eevboxsync <year>2014</year>
af062818b47340eef15700d2f0211576ba3506eevboxsync <year>2015</year>
af062818b47340eef15700d2f0211576ba3506eevboxsync <year>2016</year>
af062818b47340eef15700d2f0211576ba3506eevboxsync <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </copyright>
554f00fe75489f3f3ce7fbb6d126ce1d2c5c922cvboxsync </docinfo>
ee6bcfc59fe3b0230aad85e2ef63d0402b7719b2vboxsync
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <refsynopsisdiv>
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsync <cmdsynopsis sepchar=" ">
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <command>delv</command>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <arg choice="opt" rep="norepeat">@server</arg>
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 <arg choice="opt" rep="norepeat">name</arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat">type</arg>
a3133ef29cdf3656735d569fd64e54c9286effc0vboxsync <arg choice="opt" rep="norepeat">class</arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="repeat">queryopt</arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </cmdsynopsis>
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsync
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <cmdsynopsis sepchar=" ">
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <command>delv</command>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <arg choice="opt" rep="norepeat"><option>-h</option></arg>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync </cmdsynopsis>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <cmdsynopsis sepchar=" ">
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <command>delv</command>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <arg choice="opt" rep="norepeat"><option>-v</option></arg>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </cmdsynopsis>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <cmdsynopsis sepchar=" ">
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsync <command>delv</command>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync <arg choice="opt" rep="repeat">queryopt</arg>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync <arg choice="opt" rep="repeat">query</arg>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </cmdsynopsis>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync </refsynopsisdiv>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync <refsection><info><title>DESCRIPTION</title></info>
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync
845d0e4d3aefdc097ff0b3f1b1808f4b72e0a7d0vboxsync <para><command>delv</command>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync (Domain Entity Lookup &amp; 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 </para>
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync <para>
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.
9a0dee30f5bea4fb02c0e836cd9689822e4645d1vboxsync </para>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <para>
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 </para>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync <para>
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
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync for IPv6).
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </refsection>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <refsection><info><title>SIMPLE USAGE</title></info>
af062818b47340eef15700d2f0211576ba3506eevboxsync
91563ca66c54f5974bd78d4a8e51e1a690c03e0fvboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync A typical invocation of <command>delv</command> looks like:
5112e32d7072e280613921c982a6672f2c859cf3vboxsync <programlisting> delv @server name type </programlisting>
af062818b47340eef15700d2f0211576ba3506eevboxsync where:
91563ca66c54f5974bd78d4a8e51e1a690c03e0fvboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term><constant>server</constant></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 <command>delv</command> resolves that name before
af062818b47340eef15700d2f0211576ba3506eevboxsync querying that name server (note, however, that this
af062818b47340eef15700d2f0211576ba3506eevboxsync initial lookup is <emphasis>not</emphasis> validated
af062818b47340eef15700d2f0211576ba3506eevboxsync by DNSSEC).
5112e32d7072e280613921c982a6672f2c859cf3vboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync If no <parameter>server</parameter> argument is
af062818b47340eef15700d2f0211576ba3506eevboxsync provided, <command>delv</command> consults
af062818b47340eef15700d2f0211576ba3506eevboxsync <filename>/etc/resolv.conf</filename>; if an
af062818b47340eef15700d2f0211576ba3506eevboxsync address is found there, it queries the name server at
af062818b47340eef15700d2f0211576ba3506eevboxsync that address. If either of the <option>-4</option> or
af062818b47340eef15700d2f0211576ba3506eevboxsync <option>-6</option> options are in use, then
af062818b47340eef15700d2f0211576ba3506eevboxsync only addresses for the corresponding transport
af062818b47340eef15700d2f0211576ba3506eevboxsync will be tried. If no usable addresses are found,
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>delv</command> will send queries to
af062818b47340eef15700d2f0211576ba3506eevboxsync the localhost addresses (127.0.0.1 for IPv4,
af062818b47340eef15700d2f0211576ba3506eevboxsync ::1 for IPv6).
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term><constant>name</constant></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync is the domain name to be looked up.
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term><constant>type</constant></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync indicates what type of query is required &mdash;
af062818b47340eef15700d2f0211576ba3506eevboxsync ANY, A, MX, etc.
af062818b47340eef15700d2f0211576ba3506eevboxsync <parameter>type</parameter> can be any valid query
af062818b47340eef15700d2f0211576ba3506eevboxsync type. If no
af062818b47340eef15700d2f0211576ba3506eevboxsync <parameter>type</parameter> argument is supplied,
af062818b47340eef15700d2f0211576ba3506eevboxsync <command>delv</command> will perform a lookup for an
af062818b47340eef15700d2f0211576ba3506eevboxsync A record.
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync </variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync </refsection>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <refsection><info><title>OPTIONS</title></info>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <variablelist>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-a <replaceable class="parameter">anchor-file</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync Keys that do not match the root or DLV trust-anchor
af062818b47340eef15700d2f0211576ba3506eevboxsync names are ignored; these key names can be overridden
af062818b47340eef15700d2f0211576ba3506eevboxsync using the <option>+dlv=NAME</option> or
af062818b47340eef15700d2f0211576ba3506eevboxsync <option>+root=NAME</option> options.
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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
5112e32d7072e280613921c982a6672f2c859cf3vboxsync <filename>/etc/bind.keys</filename> to use DNSSEC
5112e32d7072e280613921c982a6672f2c859cf3vboxsync validation in <command>delv</command>.
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-b <replaceable class="parameter">address</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 "#&lt;port&gt;"
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-c <replaceable class="parameter">class</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-d <replaceable class="parameter">level</replaceable></term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-h</term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
af062818b47340eef15700d2f0211576ba3506eevboxsync Display the <command>delv</command> help usage output and exit.
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync </varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync <varlistentry>
af062818b47340eef15700d2f0211576ba3506eevboxsync <term>-i</term>
af062818b47340eef15700d2f0211576ba3506eevboxsync <listitem>
af062818b47340eef15700d2f0211576ba3506eevboxsync <para>
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 problem, use <command>dig +cd</command>.)
af062818b47340eef15700d2f0211576ba3506eevboxsync </para>
af062818b47340eef15700d2f0211576ba3506eevboxsync </listitem>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync
9811e5280582debe26aac8a3b5e30d489450014avboxsync <varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <term>-m</term>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <listitem>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <para>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync Enables memory usage debugging.
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </para>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </listitem>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync </varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <varlistentry>
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync <term>-p <replaceable class="parameter">port#</replaceable></term>
<listitem>
<para>
Specifies a destination port to use for queries instead of
the standard DNS port number 53. This option would be used
with a name server that has been configured to listen
for queries on a non-standard port number.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-q <replaceable class="parameter">name</replaceable></term>
<listitem>
<para>
Sets the query name to <parameter>name</parameter>.
While the query name can be specified without using the
<option>-q</option>, it is sometimes necessary to disambiguate
names from types or classes (for example, when looking up the
name "ns", which could be misinterpreted as the type NS,
or "ch", which could be misinterpreted as class CH).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-t <replaceable class="parameter">type</replaceable></term>
<listitem>
<para>
Sets the query type to <parameter>type</parameter>, which
can be any valid query type supported in BIND 9 except
for zone transfer types AXFR and IXFR. As with
<option>-q</option>, this is useful to distinguish
query name type or class when they are ambiguous.
it is sometimes necessary to disambiguate names from types.
</para>
<para>
The default query type is "A", unless the <option>-x</option>
option is supplied to indicate a reverse lookup, in which case
it is "PTR".
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-v</term>
<listitem>
<para>
Print the <command>delv</command> version and exit.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-x <replaceable class="parameter">addr</replaceable></term>
<listitem>
<para>
Performs a reverse lookup, mapping an addresses to
a name. <parameter>addr</parameter> is an IPv4 address in
dotted-decimal notation, or a colon-delimited IPv6 address.
When <option>-x</option> is used, there is no need to provide
the <parameter>name</parameter> or <parameter>type</parameter>
arguments. <command>delv</command> automatically performs a
lookup for a name like <literal>11.12.13.10.in-addr.arpa</literal>
and sets the query type to PTR. IPv6 addresses are looked up
using nibble format under the IP6.ARPA domain.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-4</term>
<listitem>
<para>
Forces <command>delv</command> to only use IPv4.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-6</term>
<listitem>
<para>
Forces <command>delv</command> to only use IPv6.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
<refsection><info><title>QUERY OPTIONS</title></info>
<para><command>delv</command>
provides a number of query options which affect the way results are
displayed, and in some cases the way lookups are performed.
</para>
<para>
Each query option is identified by a keyword preceded by a plus sign
(<literal>+</literal>). Some keywords set or reset an
option. These may be preceded by the string
<literal>no</literal> to negate the meaning of that keyword.
Other keywords assign values to options like the timeout interval.
They have the form <option>+keyword=value</option>.
The query options are:
<variablelist>
<varlistentry>
<term><option>+[no]cdflag</option></term>
<listitem>
<para>
Controls whether to set the CD (checking disabled) bit in
queries sent by <command>delv</command>. This may be useful
when troubleshooting DNSSEC problems from behind a validating
resolver. A validating resolver will block invalid responses,
making it difficult to retrieve them for analysis. Setting
the CD flag on queries will cause the resolver to return
invalid responses, which <command>delv</command> can then
validate internally and report the errors in detail.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]class</option></term>
<listitem>
<para>
Controls whether to display the CLASS when printing
a record. The default is to display the CLASS.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]ttl</option></term>
<listitem>
<para>
Controls whether to display the TTL when printing
a record. The default is to display the TTL.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]rtrace</option></term>
<listitem>
<para>
Toggle resolver fetch logging. This reports the
name and type of each query sent by <command>delv</command>
in the process of carrying out the resolution and validation
process: this includes including the original query and
all subsequent queries to follow CNAMEs and to establish a
chain of trust for DNSSEC validation.
</para>
<para>
This is equivalent to setting the debug level to 1 in
the "resolver" logging category. Setting the systemwide
debug level to 1 using the <option>-d</option> option will
product the same output (but will affect other logging
categories as well).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]mtrace</option></term>
<listitem>
<para>
Toggle message logging. This produces a detailed dump of
the responses received by <command>delv</command> in the
process of carrying out the resolution and validation process.
</para>
<para>
This is equivalent to setting the debug level to 10
for the "packets" module of the "resolver" logging
category. Setting the systemwide debug level to 10 using
the <option>-d</option> option will produce the same output
(but will affect other logging categories as well).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]vtrace</option></term>
<listitem>
<para>
Toggle validation logging. This shows the internal
process of the validator as it determines whether an
answer is validly signed, unsigned, or invalid.
</para>
<para>
This is equivalent to setting the debug level to 3
for the "validator" module of the "dnssec" logging
category. Setting the systemwide debug level to 3 using
the <option>-d</option> option will produce the same output
(but will affect other logging categories as well).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]short</option></term>
<listitem>
<para>
Provide a terse answer. The default is to print the answer in a
verbose form.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]comments</option></term>
<listitem>
<para>
Toggle the display of comment lines in the output. The default
is to print comments.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]rrcomments</option></term>
<listitem>
<para>
Toggle the display of per-record comments in the output (for
example, human-readable key information about DNSKEY records).
The default is to print per-record comments.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]crypto</option></term>
<listitem>
<para>
Toggle the display of cryptographic fields in DNSSEC records.
The contents of these field are unnecessary to debug most DNSSEC
validation failures and removing them makes it easier to see
the common failures. The default is to display the fields.
When omitted they are replaced by the string "[omitted]" or
in the DNSKEY case the key id is displayed as the replacement,
e.g. "[ key id = value ]".
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]trust</option></term>
<listitem>
<para>
Controls whether to display the trust level when printing
a record. The default is to display the trust level.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]split[=W]</option></term>
<listitem>
<para>
Split long hex- or base64-formatted fields in resource
records into chunks of <parameter>W</parameter> characters
(where <parameter>W</parameter> is rounded up to the nearest
multiple of 4).
<parameter>+nosplit</parameter> or
<parameter>+split=0</parameter> causes fields not to be
split at all. The default is 56 characters, or 44 characters
when multiline mode is active.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]all</option></term>
<listitem>
<para>
Set or clear the display options
<option>+[no]comments</option>,
<option>+[no]rrcomments</option>, and
<option>+[no]trust</option> as a group.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]multiline</option></term>
<listitem>
<para>
Print long records (such as RRSIG, DNSKEY, and SOA records)
in a verbose multi-line format with human-readable comments.
The default is to print each record on a single line, to
facilitate machine parsing of the <command>delv</command>
output.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]dnssec</option></term>
<listitem>
<para>
Indicates whether to display RRSIG records in the
<command>delv</command> output. The default is to
do so. Note that (unlike in <command>dig</command>)
this does <emphasis>not</emphasis> control whether to
request DNSSEC records or whether to validate them.
DNSSEC records are always requested, and validation
will always occur unless suppressed by the use of
<option>-i</option> or <option>+noroot</option> and
<option>+nodlv</option>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]root[=ROOT]</option></term>
<listitem>
<para>
Indicates whether to perform conventional (non-lookaside)
DNSSEC validation, and if so, specifies the
name of a trust anchor. The default is to validate using
a trust anchor of "." (the root zone), for which there is
a built-in key. If specifying a different trust anchor,
then <option>-a</option> must be used to specify a file
containing the key.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]dlv[=DLV]</option></term>
<listitem>
<para>
Indicates whether to perform DNSSEC lookaside validation,
and if so, specifies the name of the DLV trust anchor.
The default is to perform lookaside validation using
a trust anchor of "dlv.isc.org", for which there is a
built-in key. If specifying a different name, then
<option>-a</option> must be used to specify a file
containing the DLV key.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]tcp</option></term>
<listitem>
<para>
Controls whether to use TCP when sending queries.
The default is to use UDP unless a truncated
response has been received.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>+[no]unknownformat</option></term>
<listitem>
<para>
Print all RDATA in unknown RR type presentation format
(RFC 3597). The default is to print RDATA for known types
in the type's presentation format.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsection>
<refsection><info><title>FILES</title></info>
<para><filename>/etc/bind.keys</filename></para>
<para><filename>/etc/resolv.conf</filename></para>
</refsection>
<refsection><info><title>SEE ALSO</title></info>
<para><citerefentry>
<refentrytitle>dig</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>,
<citerefentry>
<refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
</citerefentry>,
<citetitle>RFC4034</citetitle>,
<citetitle>RFC4035</citetitle>,
<citetitle>RFC4431</citetitle>,
<citetitle>RFC5074</citetitle>,
<citetitle>RFC5155</citetitle>.
</para>
</refsection>
</refentry>