man.delv.html revision e668599e6ae147a6d81f05622c78ddd981854251
e9458b1a7a19a63aa4c179f9ab20f4d50681c168Jens Elkner - Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
46c318705d1532d90572abf9ee869016583d985bTill Mossakowski - Copyright (C) 2000-2003 Internet Software Consortium.
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu Prodescu - Permission to use, copy, modify, and/or distribute this software for any
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder - purpose with or without fee is hereby granted, provided that the above
34bff097c14521b5e57ce37279a34256e1f78aa5Klaus Luettich - copyright notice and this permission notice appear in all copies.
2cff1f0e5a572a33bc692c96ce2a1590f160eed7cmaeder - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
46c318705d1532d90572abf9ee869016583d985bTill Mossakowski - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
4c8d3c5a9e938633f6147b5a595b9b93bfca99e6Christian Maeder - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
66771c3723200a54eceaf0d82de861ca4b917b05Christian Maeder - PERFORMANCE OF THIS SOFTWARE.
be110dccc9f7bd9e987b35943b16ccb22922248fChristian Maeder<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
66771c3723200a54eceaf0d82de861ca4b917b05Christian Maeder<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
66771c3723200a54eceaf0d82de861ca4b917b05Christian Maeder<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
d0c8d69c1a35ed2972ae093ecf7abb12dfbafb4dChristian Maeder<link rel="up" href="Bv9ARM.ch13.html" title="Manual pages">
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder<link rel="prev" href="man.host.html" title="host">
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder<link rel="next" href="man.dnssec-checkds.html" title="dnssec-checkds">
66771c3723200a54eceaf0d82de861ca4b917b05Christian Maeder<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder<table width="100%" summary="Navigation header">
be43c3fa0292555bd126784ae27ff5c1d23438cbChristian Maeder<tr><th colspan="3" align="center">delv</th></tr>
4c8d3c5a9e938633f6147b5a595b9b93bfca99e6Christian Maeder<a accesskey="p" href="man.host.html">Prev</a>�</td>
4c8d3c5a9e938633f6147b5a595b9b93bfca99e6Christian Maeder<td width="20%" align="right">�<a accesskey="n" href="man.dnssec-checkds.html">Next</a>
ffd2214759f0055aa5dfa95583a6060516ad766fChristian Maeder<a name="man.delv"></a><div class="titlepage"></div>
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder<p>delv — DNS lookup and validation utility</p>
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder<div class="cmdsynopsis"><p><code class="command">delv</code> [@server] [<code class="option">-4</code>] [<code class="option">-6</code>] [<code class="option">-a <em class="replaceable"><code>anchor-file</code></em></code>] [<code class="option">-b <em class="replaceable"><code>address</code></em></code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-d <em class="replaceable"><code>level</code></em></code>] [<code class="option">-i</code>] [<code class="option">-m</code>] [<code class="option">-p <em class="replaceable"><code>port#</code></em></code>] [<code class="option">-q <em class="replaceable"><code>name</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-x <em class="replaceable"><code>addr</code></em></code>] [name] [type] [class] [queryopt...]</p></div>
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder<div class="cmdsynopsis"><p><code class="command">delv</code> [<code class="option">-h</code>]</p></div>
be43c3fa0292555bd126784ae27ff5c1d23438cbChristian Maeder<div class="cmdsynopsis"><p><code class="command">delv</code> [<code class="option">-v</code>]</p></div>
be43c3fa0292555bd126784ae27ff5c1d23438cbChristian Maeder<div class="cmdsynopsis"><p><code class="command">delv</code> [queryopt...] [query...]</p></div>
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder<a name="id2617986"></a><h2>DESCRIPTION</h2>
af6e92e4a9ca308f928f9909acee115f801c5db5Ewaryst Schulz<p><span><strong class="command">delv</strong></span>
593ac6474255679d77ce1961474355822176ba43Christian Maeder (Domain Entity Lookup & Validation) is a tool for sending
649fdc0d0502d62d160c150684356fef2c273484Eugen Kuksa DNS queries and validating the results, using the the same internal
bcd35fcdda4233c42766519772b2e9fbab57f975Christian Maeder resolver and validator logic as <span><strong class="command">named</strong></span>.
3753288339ad80053053d92409bd37b335a96197Christian Maeder <span><strong class="command">delv</strong></span> will send to a specified name server all
3753288339ad80053053d92409bd37b335a96197Christian Maeder queries needed to fetch and validate the requested data; this
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder includes the original requested query, subsequent queries to follow
3753288339ad80053053d92409bd37b335a96197Christian Maeder CNAME or DNAME chains, and queries for DNSKEY, DS and DLV records
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder to establish a chain of trust for DNSSEC validation.
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder It does not perform iterative resolution, but simulates the
3753288339ad80053053d92409bd37b335a96197Christian Maeder behavior of a name server configured for DNSSEC validating and
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder By default, responses are validated using built-in DNSSEC trust
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder anchors for the root zone (".") and for the ISC DNSSEC lookaside
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder validation zone ("dlv.isc.org"). Records returned by
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder <span><strong class="command">delv</strong></span> are either fully validated or
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder were not signed. If validation fails, an explanation of
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder the failure is included in the output; the validation process
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder can be traced in detail. Because <span><strong class="command">delv</strong></span> does
9a7f7c6399a1014e51abc7049a5fbd265461e1a7Christian Maeder not rely on an external server to carry out validation, it can
9a7f7c6399a1014e51abc7049a5fbd265461e1a7Christian Maeder be used to check the validity of DNS responses in environments
593ac6474255679d77ce1961474355822176ba43Christian Maeder where local name servers may not be trustworthy.
dab742f3b90c81f4a926ef2cdb096d358fb72c12Christian Maeder Unless it is told to query a specific name server,
c3d02da98e2806333eacf170309abff7a1377e14notanartist <span><strong class="command">delv</strong></span> will try each of the servers listed in
c3d02da98e2806333eacf170309abff7a1377e14notanartist <code class="filename">/etc/resolv.conf</code>. If no usable server
c3d02da98e2806333eacf170309abff7a1377e14notanartist addresses are found, <span><strong class="command">delv</strong></span> will send
dab742f3b90c81f4a926ef2cdb096d358fb72c12Christian Maeder queries to the localhost addresses (127.0.0.1 for IPv4, ::1
593ac6474255679d77ce1961474355822176ba43Christian Maeder When no command line arguments or options are given,
897a04683fb30873e84dc3360dea770a4435971cChristian Maeder <span><strong class="command">delv</strong></span> will perform an NS query for "."
06b97c160c9160682f18591409cadc9e97873020Christian Maeder (the root zone).
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder<a name="id2618126"></a><h2>SIMPLE USAGE</h2>
8869b0b47d4ebc275098d1777301b652648b3c45Christian Maeder A typical invocation of <span><strong class="command">delv</strong></span> looks like:
38c817b94e0a5b1ae94178b1075c187e07bcc5e1Christian Maeder<pre class="programlisting"> delv @server name type </pre>
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder<dt><span class="term"><code class="constant">server</code></span></dt>
8869b0b47d4ebc275098d1777301b652648b3c45Christian Maeder is the name or IP address of the name server to query. This
94c729aeac99df6d844da014f46d584c035a91a6Christian Maeder can be an IPv4 address in dotted-decimal notation or an IPv6
38c817b94e0a5b1ae94178b1075c187e07bcc5e1Christian Maeder address in colon-delimited notation. When the supplied
8869b0b47d4ebc275098d1777301b652648b3c45Christian Maeder <em class="parameter"><code>server</code></em> argument is a hostname,
8869b0b47d4ebc275098d1777301b652648b3c45Christian Maeder <span><strong class="command">delv</strong></span> resolves that name before
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder querying that name server (note, however, that this
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder initial lookup is <span class="emphasis"><em>not</em></span> validated
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder If no <em class="parameter"><code>server</code></em> argument is
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder provided, <span><strong class="command">delv</strong></span> consults
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder <code class="filename">/etc/resolv.conf</code>; if an
e90b8ee3fac5c932d83af2061579c6b57d528885Christian Maeder address is found there, it queries the name server at
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder that address. If either of the <code class="option">-4</code> or
7968d3a131e5a684ec1ff0c6d88aae638549153dChristian Maeder <code class="option">-6</code> options are in use, then
a081d56252673c9e4a017e6282f59766f0cbcd42Christian Maeder only addresses for the corresponding transport
a081d56252673c9e4a017e6282f59766f0cbcd42Christian Maeder will be tried. If no usable addresses are found,
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder <span><strong class="command">delv</strong></span> will send queries to
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder the localhost addresses (127.0.0.1 for IPv4,
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder ::1 for IPv6).
2a9702a373738717c83824512bd9389b5870fc92Christian Maeder<dt><span class="term"><code class="constant">name</code></span></dt>
7968d3a131e5a684ec1ff0c6d88aae638549153dChristian Maeder is the domain name to be looked up.
f39c70229e74147a02d15bd45c05a0b1b325532dChristian Maeder<dt><span class="term"><code class="constant">type</code></span></dt>
db6729e623b4053149084ccf4b35e5308ac7e359Christian Maeder indicates what type of query is required —
bcd35fcdda4233c42766519772b2e9fbab57f975Christian Maeder ANY, A, MX, etc.
f997c50e79d277ae8d7d3bc536a276d67b75f953Simon Ulbricht <em class="parameter"><code>type</code></em> can be any valid query
be43c3fa0292555bd126784ae27ff5c1d23438cbChristian Maeder <em class="parameter"><code>type</code></em> argument is supplied,
f997c50e79d277ae8d7d3bc536a276d67b75f953Simon Ulbricht <span><strong class="command">delv</strong></span> will perform a lookup for an
cb2044812811d66efe038d914966e04290be93faChristian Maeder<dt><span class="term">-a <em class="replaceable"><code>anchor-file</code></em></span></dt>
94c729aeac99df6d844da014f46d584c035a91a6Christian Maeder Specifies a file from which to read DNSSEC trust anchors.
94c729aeac99df6d844da014f46d584c035a91a6Christian Maeder The default is <code class="filename">/etc/bind.keys</code>, which
cb2044812811d66efe038d914966e04290be93faChristian Maeder is included with <acronym class="acronym">BIND</acronym> 9 and contains
ffd2214759f0055aa5dfa95583a6060516ad766fChristian Maeder trust anchors for the root zone (".") and for the ISC
c4b508b43eb5e3a92e464b5f85b5a2b5ecd7d3c3cmaeder DNSSEC lookaside validation zone ("dlv.isc.org").
c4b508b43eb5e3a92e464b5f85b5a2b5ecd7d3c3cmaeder Keys that do not match the root or DLV trust-anchor
c4b508b43eb5e3a92e464b5f85b5a2b5ecd7d3c3cmaeder names are ignored; these key names can be overridden
0130083f314580170af1195037be3325f125fbceChristian Maeder Note: When reading the trust anchor file,
0130083f314580170af1195037be3325f125fbceChristian Maeder <span><strong class="command">delv</strong></span> treats <code class="option">managed-keys</code>
c4b508b43eb5e3a92e464b5f85b5a2b5ecd7d3c3cmaeder statements and <code class="option">trusted-keys</code> statements
0130083f314580170af1195037be3325f125fbceChristian Maeder identically. That is, for a managed key, it is the
0130083f314580170af1195037be3325f125fbceChristian Maeder <span class="emphasis"><em>initial</em></span> key that is trusted; RFC 5011
0130083f314580170af1195037be3325f125fbceChristian Maeder key management is not supported. <span><strong class="command">delv</strong></span>
0130083f314580170af1195037be3325f125fbceChristian Maeder will not consult the managed-keys database maintained by
0130083f314580170af1195037be3325f125fbceChristian Maeder <span><strong class="command">named</strong></span>. This means that if either of the
0130083f314580170af1195037be3325f125fbceChristian Maeder keys in <code class="filename">/etc/bind.keys</code> is revoked
0130083f314580170af1195037be3325f125fbceChristian Maeder and rolled over, it will be necessary to update
0130083f314580170af1195037be3325f125fbceChristian Maeder <code class="filename">/etc/bind.keys</code> to use DNSSEC
0130083f314580170af1195037be3325f125fbceChristian Maeder validation in <span><strong class="command">delv</strong></span>.
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa<dt><span class="term">-b <em class="replaceable"><code>address</code></em></span></dt>
23b1f89c05c67d7778e2736bd24fdec33212f323cmaeder Sets the source IP address of the query to
23b1f89c05c67d7778e2736bd24fdec33212f323cmaeder <em class="parameter"><code>address</code></em>. This must be a valid address
23b1f89c05c67d7778e2736bd24fdec33212f323cmaeder on one of the host's network interfaces or "0.0.0.0" or "::".
23b1f89c05c67d7778e2736bd24fdec33212f323cmaeder An optional source port may be specified by appending
23b1f89c05c67d7778e2736bd24fdec33212f323cmaeder "#<port>"
0130083f314580170af1195037be3325f125fbceChristian Maeder<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
0130083f314580170af1195037be3325f125fbceChristian Maeder Sets the query class for the requested data. Currently,
0130083f314580170af1195037be3325f125fbceChristian Maeder only class "IN" is supported in <span><strong class="command">delv</strong></span>
0130083f314580170af1195037be3325f125fbceChristian Maeder and any other value is ignored.
c4b508b43eb5e3a92e464b5f85b5a2b5ecd7d3c3cmaeder<dt><span class="term">-d <em class="replaceable"><code>level</code></em></span></dt>
0130083f314580170af1195037be3325f125fbceChristian Maeder Set the systemwide debug level to <code class="option">level</code>.
0130083f314580170af1195037be3325f125fbceChristian Maeder The allowed range is from 0 to 99.
649fdc0d0502d62d160c150684356fef2c273484Eugen Kuksa The default is 0 (no debugging).
0130083f314580170af1195037be3325f125fbceChristian Maeder Debugging traces from <span><strong class="command">delv</strong></span> become
0130083f314580170af1195037be3325f125fbceChristian Maeder more verbose as the debug level increases.
0130083f314580170af1195037be3325f125fbceChristian Maeder See the <code class="option">+mtrace</code>, <code class="option">+rtrace</code>,
0130083f314580170af1195037be3325f125fbceChristian Maeder and <code class="option">+vtrace</code> options below for additional
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder debugging details.
fb9ec1e4dd1877781ec2b491fb0a6bcd38a7b04dcmaeder Display the <span><strong class="command">delv</strong></span> help usage output and exit.
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder Insecure mode. This disables internal DNSSEC validation.
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder (Note, however, this does not set the CD bit on upstream
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder queries. If the server being queried is performing DNSSEC
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder validation, then it will not return invalid data; this
91eeff7b19b22d7e5c5d83fa6e357496e291c718Christian Maeder can cause <span><strong class="command">delv</strong></span> to time out. When it
fb9ec1e4dd1877781ec2b491fb0a6bcd38a7b04dcmaeder is necessary to examine invalid data to debug a DNSSEC
2ccdb81b4018e0a76f6dad3a940ba1241e98f6d9cmaeder problem, use <span><strong class="command">dig +cd</strong></span>.)
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder Enables memory usage debugging.
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder<dt><span class="term">-p <em class="replaceable"><code>port#</code></em></span></dt>
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder Specifies a destination port to use for queries instead of
1c4dfa148603d4fcf4cdd2ed66c8b6e1de0dd696Till Mossakowski the standard DNS port number 53. This option would be used
2ccdb81b4018e0a76f6dad3a940ba1241e98f6d9cmaeder with a name server that has been configured to listen
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder for queries on a non-standard port number.
ea2dff2ba7790f5c9f8f5454181f86f45d2674d2Christian Maeder<dt><span class="term">-q <em class="replaceable"><code>name</code></em></span></dt>
1c4dfa148603d4fcf4cdd2ed66c8b6e1de0dd696Till Mossakowski Sets the query name to <em class="parameter"><code>name</code></em>.
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder While the query name can be specified without using the
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder <code class="option">-q</code>, it is sometimes necessary to disambiguate
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder names from types or classes (for example, when looking up the
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder name "ns", which could be misinterpreted as the type NS,
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder or "ch", which could be misinterpreted as class CH).
f448ac6b7846addfe6041275edf1fb90962e76eacmaeder<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
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