1*00b67f09SDavid van Moolenbroek<!-- 2*00b67f09SDavid van Moolenbroek - Copyright (C) 2013, 2014 Internet Systems Consortium, Inc. ("ISC") 3*00b67f09SDavid van Moolenbroek - 4*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any 5*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above 6*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies. 7*00b67f09SDavid van Moolenbroek - 8*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 9*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 10*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 11*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 12*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 13*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 14*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE. 15*00b67f09SDavid van Moolenbroek--> 16*00b67f09SDavid van Moolenbroek 17*00b67f09SDavid van Moolenbroek<!-- Id --> 18*00b67f09SDavid van Moolenbroek<html> 19*00b67f09SDavid van Moolenbroek<head> 20*00b67f09SDavid van Moolenbroek<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 21*00b67f09SDavid van Moolenbroek<title>dnssec-coverage</title> 22*00b67f09SDavid van Moolenbroek<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> 23*00b67f09SDavid van Moolenbroek</head> 24*00b67f09SDavid van Moolenbroek<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"> 25*00b67f09SDavid van Moolenbroek<a name="man.dnssec-coverage"></a><div class="titlepage"></div> 26*00b67f09SDavid van Moolenbroek<div class="refnamediv"> 27*00b67f09SDavid van Moolenbroek<h2>Name</h2> 28*00b67f09SDavid van Moolenbroek<p><span class="application">dnssec-coverage</span> — checks future DNSKEY coverage for a zone</p> 29*00b67f09SDavid van Moolenbroek</div> 30*00b67f09SDavid van Moolenbroek<div class="refsynopsisdiv"> 31*00b67f09SDavid van Moolenbroek<h2>Synopsis</h2> 32*00b67f09SDavid van Moolenbroek<div class="cmdsynopsis"><p><code class="command">dnssec-coverage</code> [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-l <em class="replaceable"><code>length</code></em></code>] [<code class="option">-f <em class="replaceable"><code>file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>DNSKEY TTL</code></em></code>] [<code class="option">-m <em class="replaceable"><code>max TTL</code></em></code>] [<code class="option">-r <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-c <em class="replaceable"><code>compilezone path</code></em></code>] [<code class="option">-k</code>] [<code class="option">-z</code>] [zone]</p></div> 33*00b67f09SDavid van Moolenbroek</div> 34*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en"> 35*00b67f09SDavid van Moolenbroek<a name="id2543419"></a><h2>DESCRIPTION</h2> 36*00b67f09SDavid van Moolenbroek<p><span><strong class="command">dnssec-coverage</strong></span> 37*00b67f09SDavid van Moolenbroek verifies that the DNSSEC keys for a given zone or a set of zones 38*00b67f09SDavid van Moolenbroek have timing metadata set properly to ensure no future lapses in DNSSEC 39*00b67f09SDavid van Moolenbroek coverage. 40*00b67f09SDavid van Moolenbroek </p> 41*00b67f09SDavid van Moolenbroek<p> 42*00b67f09SDavid van Moolenbroek If <code class="option">zone</code> is specified, then keys found in 43*00b67f09SDavid van Moolenbroek the key repository matching that zone are scanned, and an ordered 44*00b67f09SDavid van Moolenbroek list is generated of the events scheduled for that key (i.e., 45*00b67f09SDavid van Moolenbroek publication, activation, inactivation, deletion). The list of 46*00b67f09SDavid van Moolenbroek events is walked in order of occurrence. Warnings are generated 47*00b67f09SDavid van Moolenbroek if any event is scheduled which could cause the zone to enter a 48*00b67f09SDavid van Moolenbroek state in which validation failures might occur: for example, if 49*00b67f09SDavid van Moolenbroek the number of published or active keys for a given algorithm drops 50*00b67f09SDavid van Moolenbroek to zero, or if a key is deleted from the zone too soon after a new 51*00b67f09SDavid van Moolenbroek key is rolled, and cached data signed by the prior key has not had 52*00b67f09SDavid van Moolenbroek time to expire from resolver caches. 53*00b67f09SDavid van Moolenbroek </p> 54*00b67f09SDavid van Moolenbroek<p> 55*00b67f09SDavid van Moolenbroek If <code class="option">zone</code> is not specified, then all keys in the 56*00b67f09SDavid van Moolenbroek key repository will be scanned, and all zones for which there are 57*00b67f09SDavid van Moolenbroek keys will be analyzed. (Note: This method of reporting is only 58*00b67f09SDavid van Moolenbroek accurate if all the zones that have keys in a given repository 59*00b67f09SDavid van Moolenbroek share the same TTL parameters.) 60*00b67f09SDavid van Moolenbroek </p> 61*00b67f09SDavid van Moolenbroek</div> 62*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en"> 63*00b67f09SDavid van Moolenbroek<a name="id2543444"></a><h2>OPTIONS</h2> 64*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl> 65*00b67f09SDavid van Moolenbroek<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt> 66*00b67f09SDavid van Moolenbroek<dd><p> 67*00b67f09SDavid van Moolenbroek Sets the directory in which keys can be found. Defaults to the 68*00b67f09SDavid van Moolenbroek current working directory. 69*00b67f09SDavid van Moolenbroek </p></dd> 70*00b67f09SDavid van Moolenbroek<dt><span class="term">-f <em class="replaceable"><code>file</code></em></span></dt> 71*00b67f09SDavid van Moolenbroek<dd><p> 72*00b67f09SDavid van Moolenbroek If a <code class="option">file</code> is specified, then the zone is 73*00b67f09SDavid van Moolenbroek read from that file; the largest TTL and the DNSKEY TTL are 74*00b67f09SDavid van Moolenbroek determined directly from the zone data, and the 75*00b67f09SDavid van Moolenbroek <code class="option">-m</code> and <code class="option">-d</code> options do 76*00b67f09SDavid van Moolenbroek not need to be specified on the command line. 77*00b67f09SDavid van Moolenbroek </p></dd> 78*00b67f09SDavid van Moolenbroek<dt><span class="term">-l <em class="replaceable"><code>duration</code></em></span></dt> 79*00b67f09SDavid van Moolenbroek<dd> 80*00b67f09SDavid van Moolenbroek<p> 81*00b67f09SDavid van Moolenbroek The length of time to check for DNSSEC coverage. Key events 82*00b67f09SDavid van Moolenbroek scheduled further into the future than <code class="option">duration</code> 83*00b67f09SDavid van Moolenbroek will be ignored, and assumed to be correct. 84*00b67f09SDavid van Moolenbroek </p> 85*00b67f09SDavid van Moolenbroek<p> 86*00b67f09SDavid van Moolenbroek The value of <code class="option">duration</code> can be set in seconds, 87*00b67f09SDavid van Moolenbroek or in larger units of time by adding a suffix: 'mi' for minutes, 88*00b67f09SDavid van Moolenbroek 'h' for hours, 'd' for days, 'w' for weeks, 'mo' for months, 89*00b67f09SDavid van Moolenbroek 'y' for years. 90*00b67f09SDavid van Moolenbroek </p> 91*00b67f09SDavid van Moolenbroek</dd> 92*00b67f09SDavid van Moolenbroek<dt><span class="term">-m <em class="replaceable"><code>maximum TTL</code></em></span></dt> 93*00b67f09SDavid van Moolenbroek<dd> 94*00b67f09SDavid van Moolenbroek<p> 95*00b67f09SDavid van Moolenbroek Sets the value to be used as the maximum TTL for the zone or 96*00b67f09SDavid van Moolenbroek zones being analyzed when determining whether there is a 97*00b67f09SDavid van Moolenbroek possibility of validation failure. When a zone-signing key is 98*00b67f09SDavid van Moolenbroek deactivated, there must be enough time for the record in the 99*00b67f09SDavid van Moolenbroek zone with the longest TTL to have expired from resolver caches 100*00b67f09SDavid van Moolenbroek before that key can be purged from the DNSKEY RRset. If that 101*00b67f09SDavid van Moolenbroek condition does not apply, a warning will be generated. 102*00b67f09SDavid van Moolenbroek </p> 103*00b67f09SDavid van Moolenbroek<p> 104*00b67f09SDavid van Moolenbroek The length of the TTL can be set in seconds, or in larger units 105*00b67f09SDavid van Moolenbroek of time by adding a suffix: 'mi' for minutes, 'h' for hours, 106*00b67f09SDavid van Moolenbroek 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 107*00b67f09SDavid van Moolenbroek </p> 108*00b67f09SDavid van Moolenbroek<p> 109*00b67f09SDavid van Moolenbroek This option is mandatory unless the <code class="option">-f</code> has 110*00b67f09SDavid van Moolenbroek been used to specify a zone file. (If <code class="option">-f</code> has 111*00b67f09SDavid van Moolenbroek been specified, this option may still be used; it will override 112*00b67f09SDavid van Moolenbroek the value found in the file.) 113*00b67f09SDavid van Moolenbroek </p> 114*00b67f09SDavid van Moolenbroek</dd> 115*00b67f09SDavid van Moolenbroek<dt><span class="term">-d <em class="replaceable"><code>DNSKEY TTL</code></em></span></dt> 116*00b67f09SDavid van Moolenbroek<dd> 117*00b67f09SDavid van Moolenbroek<p> 118*00b67f09SDavid van Moolenbroek Sets the value to be used as the DNSKEY TTL for the zone or 119*00b67f09SDavid van Moolenbroek zones being analyzed when determining whether there is a 120*00b67f09SDavid van Moolenbroek possibility of validation failure. When a key is rolled (that 121*00b67f09SDavid van Moolenbroek is, replaced with a new key), there must be enough time 122*00b67f09SDavid van Moolenbroek for the old DNSKEY RRset to have expired from resolver caches 123*00b67f09SDavid van Moolenbroek before the new key is activated and begins generating 124*00b67f09SDavid van Moolenbroek signatures. If that condition does not apply, a warning 125*00b67f09SDavid van Moolenbroek will be generated. 126*00b67f09SDavid van Moolenbroek </p> 127*00b67f09SDavid van Moolenbroek<p> 128*00b67f09SDavid van Moolenbroek The length of the TTL can be set in seconds, or in larger units 129*00b67f09SDavid van Moolenbroek of time by adding a suffix: 'mi' for minutes, 'h' for hours, 130*00b67f09SDavid van Moolenbroek 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 131*00b67f09SDavid van Moolenbroek </p> 132*00b67f09SDavid van Moolenbroek<p> 133*00b67f09SDavid van Moolenbroek This option is mandatory unless the <code class="option">-f</code> has 134*00b67f09SDavid van Moolenbroek been used to specify a zone file, or a default key TTL was 135*00b67f09SDavid van Moolenbroek set with the <code class="option">-L</code> to 136*00b67f09SDavid van Moolenbroek <span><strong class="command">dnssec-keygen</strong></span>. (If either of those is true, 137*00b67f09SDavid van Moolenbroek this option may still be used; it will override the value found 138*00b67f09SDavid van Moolenbroek in the zone or key file.) 139*00b67f09SDavid van Moolenbroek </p> 140*00b67f09SDavid van Moolenbroek</dd> 141*00b67f09SDavid van Moolenbroek<dt><span class="term">-r <em class="replaceable"><code>resign interval</code></em></span></dt> 142*00b67f09SDavid van Moolenbroek<dd> 143*00b67f09SDavid van Moolenbroek<p> 144*00b67f09SDavid van Moolenbroek Sets the value to be used as the resign interval for the zone 145*00b67f09SDavid van Moolenbroek or zones being analyzed when determining whether there is a 146*00b67f09SDavid van Moolenbroek possibility of validation failure. This value defaults to 147*00b67f09SDavid van Moolenbroek 22.5 days, which is also the default in 148*00b67f09SDavid van Moolenbroek <span><strong class="command">named</strong></span>. However, if it has been changed 149*00b67f09SDavid van Moolenbroek by the <code class="option">sig-validity-interval</code> option in 150*00b67f09SDavid van Moolenbroek <code class="filename">named.conf</code>, then it should also be 151*00b67f09SDavid van Moolenbroek changed here. 152*00b67f09SDavid van Moolenbroek </p> 153*00b67f09SDavid van Moolenbroek<p> 154*00b67f09SDavid van Moolenbroek The length of the interval can be set in seconds, or in larger 155*00b67f09SDavid van Moolenbroek units of time by adding a suffix: 'mi' for minutes, 'h' for hours, 156*00b67f09SDavid van Moolenbroek 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 157*00b67f09SDavid van Moolenbroek </p> 158*00b67f09SDavid van Moolenbroek</dd> 159*00b67f09SDavid van Moolenbroek<dt><span class="term">-k</span></dt> 160*00b67f09SDavid van Moolenbroek<dd><p> 161*00b67f09SDavid van Moolenbroek Only check KSK coverage; ignore ZSK events. Cannot be 162*00b67f09SDavid van Moolenbroek used with <code class="option">-z</code>. 163*00b67f09SDavid van Moolenbroek </p></dd> 164*00b67f09SDavid van Moolenbroek<dt><span class="term">-z</span></dt> 165*00b67f09SDavid van Moolenbroek<dd><p> 166*00b67f09SDavid van Moolenbroek Only check ZSK coverage; ignore KSK events. Cannot be 167*00b67f09SDavid van Moolenbroek used with <code class="option">-k</code>. 168*00b67f09SDavid van Moolenbroek </p></dd> 169*00b67f09SDavid van Moolenbroek<dt><span class="term">-c <em class="replaceable"><code>compilezone path</code></em></span></dt> 170*00b67f09SDavid van Moolenbroek<dd><p> 171*00b67f09SDavid van Moolenbroek Specifies a path to a <span><strong class="command">named-compilezone</strong></span> binary. 172*00b67f09SDavid van Moolenbroek Used for testing. 173*00b67f09SDavid van Moolenbroek </p></dd> 174*00b67f09SDavid van Moolenbroek</dl></div> 175*00b67f09SDavid van Moolenbroek</div> 176*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en"> 177*00b67f09SDavid van Moolenbroek<a name="id2543745"></a><h2>SEE ALSO</h2> 178*00b67f09SDavid van Moolenbroek<p> 179*00b67f09SDavid van Moolenbroek <span class="citerefentry"><span class="refentrytitle">dnssec-checkds</span>(8)</span>, 180*00b67f09SDavid van Moolenbroek <span class="citerefentry"><span class="refentrytitle">dnssec-dsfromkey</span>(8)</span>, 181*00b67f09SDavid van Moolenbroek <span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>, 182*00b67f09SDavid van Moolenbroek <span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span> 183*00b67f09SDavid van Moolenbroek </p> 184*00b67f09SDavid van Moolenbroek</div> 185*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en"> 186*00b67f09SDavid van Moolenbroek<a name="id2543788"></a><h2>AUTHOR</h2> 187*00b67f09SDavid van Moolenbroek<p><span class="corpauthor">Internet Systems Consortium</span> 188*00b67f09SDavid van Moolenbroek </p> 189*00b67f09SDavid van Moolenbroek</div> 190*00b67f09SDavid van Moolenbroek</div></body> 191*00b67f09SDavid van Moolenbroek</html> 192