1<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" 2 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" 3 [<!ENTITY mdash "—">]> 4<!-- 5 - Copyright (C) 2013, 2014 Internet Systems Consortium, Inc. ("ISC") 6 - 7 - Permission to use, copy, modify, and/or distribute this software for any 8 - purpose with or without fee is hereby granted, provided that the above 9 - copyright notice and this permission notice appear in all copies. 10 - 11 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 12 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 13 - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 14 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 15 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 16 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 - PERFORMANCE OF THIS SOFTWARE. 18--> 19 20<refentry id="man.dnssec-coverage"> 21 <refentryinfo> 22 <date>January 11, 2014</date> 23 </refentryinfo> 24 25 <refmeta> 26 <refentrytitle><application>dnssec-coverage</application></refentrytitle> 27 <manvolnum>8</manvolnum> 28 <refmiscinfo>BIND9</refmiscinfo> 29 </refmeta> 30 31 <refnamediv> 32 <refname><application>dnssec-coverage</application></refname> 33 <refpurpose>checks future DNSKEY coverage for a zone</refpurpose> 34 </refnamediv> 35 36 <docinfo> 37 <copyright> 38 <year>2013</year> 39 <year>2014</year> 40 <holder>Internet Systems Consortium, Inc. ("ISC")</holder> 41 </copyright> 42 </docinfo> 43 44 <refsynopsisdiv> 45 <cmdsynopsis> 46 <command>dnssec-coverage</command> 47 <arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg> 48 <arg><option>-l <replaceable class="parameter">length</replaceable></option></arg> 49 <arg><option>-f <replaceable class="parameter">file</replaceable></option></arg> 50 <arg><option>-d <replaceable class="parameter">DNSKEY TTL</replaceable></option></arg> 51 <arg><option>-m <replaceable class="parameter">max TTL</replaceable></option></arg> 52 <arg><option>-r <replaceable class="parameter">interval</replaceable></option></arg> 53 <arg><option>-c <replaceable class="parameter">compilezone path</replaceable></option></arg> 54 <arg><option>-k</option></arg> 55 <arg><option>-z</option></arg> 56 <arg choice="opt">zone</arg> 57 </cmdsynopsis> 58 </refsynopsisdiv> 59 60 <refsect1> 61 <title>DESCRIPTION</title> 62 <para><command>dnssec-coverage</command> 63 verifies that the DNSSEC keys for a given zone or a set of zones 64 have timing metadata set properly to ensure no future lapses in DNSSEC 65 coverage. 66 </para> 67 <para> 68 If <option>zone</option> is specified, then keys found in 69 the key repository matching that zone are scanned, and an ordered 70 list is generated of the events scheduled for that key (i.e., 71 publication, activation, inactivation, deletion). The list of 72 events is walked in order of occurrence. Warnings are generated 73 if any event is scheduled which could cause the zone to enter a 74 state in which validation failures might occur: for example, if 75 the number of published or active keys for a given algorithm drops 76 to zero, or if a key is deleted from the zone too soon after a new 77 key is rolled, and cached data signed by the prior key has not had 78 time to expire from resolver caches. 79 </para> 80 <para> 81 If <option>zone</option> is not specified, then all keys in the 82 key repository will be scanned, and all zones for which there are 83 keys will be analyzed. (Note: This method of reporting is only 84 accurate if all the zones that have keys in a given repository 85 share the same TTL parameters.) 86 </para> 87 </refsect1> 88 89 <refsect1> 90 <title>OPTIONS</title> 91 92 <variablelist> 93 <varlistentry> 94 <term>-K <replaceable class="parameter">directory</replaceable></term> 95 <listitem> 96 <para> 97 Sets the directory in which keys can be found. Defaults to the 98 current working directory. 99 </para> 100 </listitem> 101 </varlistentry> 102 103 <varlistentry> 104 <term>-f <replaceable class="parameter">file</replaceable></term> 105 <listitem> 106 <para> 107 If a <option>file</option> is specified, then the zone is 108 read from that file; the largest TTL and the DNSKEY TTL are 109 determined directly from the zone data, and the 110 <option>-m</option> and <option>-d</option> options do 111 not need to be specified on the command line. 112 </para> 113 </listitem> 114 </varlistentry> 115 116 <varlistentry> 117 <term>-l <replaceable class="parameter">duration</replaceable></term> 118 <listitem> 119 <para> 120 The length of time to check for DNSSEC coverage. Key events 121 scheduled further into the future than <option>duration</option> 122 will be ignored, and assumed to be correct. 123 </para> 124 <para> 125 The value of <option>duration</option> can be set in seconds, 126 or in larger units of time by adding a suffix: 'mi' for minutes, 127 'h' for hours, 'd' for days, 'w' for weeks, 'mo' for months, 128 'y' for years. 129 </para> 130 </listitem> 131 </varlistentry> 132 133 <varlistentry> 134 <term>-m <replaceable class="parameter">maximum TTL</replaceable></term> 135 <listitem> 136 <para> 137 Sets the value to be used as the maximum TTL for the zone or 138 zones being analyzed when determining whether there is a 139 possibility of validation failure. When a zone-signing key is 140 deactivated, there must be enough time for the record in the 141 zone with the longest TTL to have expired from resolver caches 142 before that key can be purged from the DNSKEY RRset. If that 143 condition does not apply, a warning will be generated. 144 </para> 145 <para> 146 The length of the TTL can be set in seconds, or in larger units 147 of time by adding a suffix: 'mi' for minutes, 'h' for hours, 148 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 149 </para> 150 <para> 151 This option is mandatory unless the <option>-f</option> has 152 been used to specify a zone file. (If <option>-f</option> has 153 been specified, this option may still be used; it will override 154 the value found in the file.) 155 </para> 156 </listitem> 157 </varlistentry> 158 159 <varlistentry> 160 <term>-d <replaceable class="parameter">DNSKEY TTL</replaceable></term> 161 <listitem> 162 <para> 163 Sets the value to be used as the DNSKEY TTL for the zone or 164 zones being analyzed when determining whether there is a 165 possibility of validation failure. When a key is rolled (that 166 is, replaced with a new key), there must be enough time 167 for the old DNSKEY RRset to have expired from resolver caches 168 before the new key is activated and begins generating 169 signatures. If that condition does not apply, a warning 170 will be generated. 171 </para> 172 <para> 173 The length of the TTL can be set in seconds, or in larger units 174 of time by adding a suffix: 'mi' for minutes, 'h' for hours, 175 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 176 </para> 177 <para> 178 This option is mandatory unless the <option>-f</option> has 179 been used to specify a zone file, or a default key TTL was 180 set with the <option>-L</option> to 181 <command>dnssec-keygen</command>. (If either of those is true, 182 this option may still be used; it will override the value found 183 in the zone or key file.) 184 </para> 185 </listitem> 186 </varlistentry> 187 188 <varlistentry> 189 <term>-r <replaceable class="parameter">resign interval</replaceable></term> 190 <listitem> 191 <para> 192 Sets the value to be used as the resign interval for the zone 193 or zones being analyzed when determining whether there is a 194 possibility of validation failure. This value defaults to 195 22.5 days, which is also the default in 196 <command>named</command>. However, if it has been changed 197 by the <option>sig-validity-interval</option> option in 198 <filename>named.conf</filename>, then it should also be 199 changed here. 200 </para> 201 <para> 202 The length of the interval can be set in seconds, or in larger 203 units of time by adding a suffix: 'mi' for minutes, 'h' for hours, 204 'd' for days, 'w' for weeks, 'mo' for months, 'y' for years. 205 </para> 206 </listitem> 207 </varlistentry> 208 209 <varlistentry> 210 <term>-k</term> 211 <listitem> 212 <para> 213 Only check KSK coverage; ignore ZSK events. Cannot be 214 used with <option>-z</option>. 215 </para> 216 </listitem> 217 </varlistentry> 218 219 <varlistentry> 220 <term>-z</term> 221 <listitem> 222 <para> 223 Only check ZSK coverage; ignore KSK events. Cannot be 224 used with <option>-k</option>. 225 </para> 226 </listitem> 227 </varlistentry> 228 229 230 <varlistentry> 231 <term>-c <replaceable class="parameter">compilezone path</replaceable></term> 232 <listitem> 233 <para> 234 Specifies a path to a <command>named-compilezone</command> binary. 235 Used for testing. 236 </para> 237 </listitem> 238 </varlistentry> 239 </variablelist> 240 </refsect1> 241 242 <refsect1> 243 <title>SEE ALSO</title> 244 <para> 245 <citerefentry> 246 <refentrytitle>dnssec-checkds</refentrytitle><manvolnum>8</manvolnum> 247 </citerefentry>, 248 <citerefentry> 249 <refentrytitle>dnssec-dsfromkey</refentrytitle><manvolnum>8</manvolnum> 250 </citerefentry>, 251 <citerefentry> 252 <refentrytitle>dnssec-keygen</refentrytitle><manvolnum>8</manvolnum> 253 </citerefentry>, 254 <citerefentry> 255 <refentrytitle>dnssec-signzone</refentrytitle><manvolnum>8</manvolnum> 256 </citerefentry> 257 </para> 258 </refsect1> 259 260 <refsect1> 261 <title>AUTHOR</title> 262 <para><corpauthor>Internet Systems Consortium</corpauthor> 263 </para> 264 </refsect1> 265 266</refentry><!-- 267 - Local variables: 268 - mode: sgml 269 - End: 270--> 271