diff --git a/CHANGES b/CHANGES
index d09f3a9478..76e7106d04 100644
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,8 @@
statistics when hitting recursive clients
soft quota. [GL #1067]
+ --- 9.15.1 released ---
+
5248. [func] To clarify the configuration of DNSSEC keys,
the "managed-keys" and "trusted-keys" options
have both been deprecated. The new "dnssec-keys"
diff --git a/CONTRIBUTING b/CONTRIBUTING
index 003a7c8593..288bcab915 100644
--- a/CONTRIBUTING
+++ b/CONTRIBUTING
@@ -1,3 +1,5 @@
+CONTRIBUTING
+
BIND Source Access and Contributor Guidelines
Feb 22, 2018
diff --git a/HISTORY b/HISTORY
index c8b5cb9d15..1e3dc72233 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,3 +1,5 @@
+HISTORY
+
Functional enhancements from prior major releases of BIND 9
BIND 9.14
@@ -505,11 +507,11 @@ BIND 9.4.0
* Detect duplicates of UDP queries we are recursing on and drop them.
New stats category "duplicates".
* "USE INTERNAL MALLOC" is now runtime selectable.
- * The lame cache is now done on a basis as some servers only appear to
- be lame for certain query types.
+ * The lame cache is now done on a
Note: When reading the trust anchor file,
- delv treats managed-keys
- statements and trusted-keys
statements
- identically. That is, for a managed key, it is the
- initial key that is trusted; RFC 5011
- key management is not supported. delv
- will not consult the managed-keys database maintained by
- named. This means that if either of the
- keys in /etc/bind.keys
is revoked
+ delv treats dnssec-keys
+ initial-key
and static-key
+ entries identically. That is, even if a key is configured
+ with initial-key, indicating that it is
+ meant to be used only as an initializing key for RFC 5011
+ key maintenance, it is still treated by delv
+ as if it had been configured as a static-key.
+ delv does not consult the managed keys
+ database maintained by named. This means
+ that if either of the keys in
+ /etc/bind.keys
is revoked
and rolled over, it will be necessary to update
/etc/bind.keys
to use DNSSEC
validation in delv.
diff --git a/bin/dig/dig.1 b/bin/dig/dig.1
index 555c5dcb70..7da5c5693a 100644
--- a/bin/dig/dig.1
+++ b/bin/dig/dig.1
@@ -589,11 +589,11 @@ A synonym for
.RS 4
Toggle the setting of the RD (recursion desired) bit in the query\&. This bit is set by default, which means
\fBdig\fR
-normally sends recursive queries\&. Recursion is automatically disabled when the
+normally sends recursive queries\&. Recursion is automatically disabled when using the
\fI+nssearch\fR
-or
+option, and when using
\fI+trace\fR
-query options are used\&.
+except for an initial recursive query to get the list of root servers\&.
.RE
.PP
\fB+retry=T\fR
diff --git a/bin/dig/dig.html b/bin/dig/dig.html
index e4f85c60f8..d191d7a6b5 100644
--- a/bin/dig/dig.html
+++ b/bin/dig/dig.html
@@ -797,8 +797,10 @@
in the query. This bit is set by default, which means
dig normally sends recursive
queries. Recursion is automatically disabled when
- the +nssearch
or
- +trace
query options are used.
+ using the +nssearch
option, and
+ when using +trace
except for
+ an initial recursive query to get the list of root
+ servers.
+retry=T
acl string
{ address_match_element
; ... };
controls {
inet ( ipv4_address
| ipv6_address
|
@@ -85,7 +83,6 @@ controls
dlz string
{
database string
;
@@ -95,8 +92,16 @@ dlz
+dnssec-keys { string
( static-key |
+ initial-key ) integer
integer
integer
+ quoted_string
; ... };
+
dyndb string
quoted_string
{
unspecified-text
};
@@ -104,8 +109,7 @@ dyndb
key string
{
algorithm string
;
@@ -115,8 +119,7 @@ key
logging {
category string
{ string
; ... };
@@ -138,17 +141,17 @@ logging
See DNSSEC-KEYS.
-managed-keys { string
string
integer
- integer
integer
quoted_string
; ... };
+managed-keys { string
( static-key |
+ initial-key ) integer
integer
integer
+ quoted_string
; ... };
masters string
[ port integer
] [ dscp
integer
] { ( masters
| ipv4_address
[
@@ -158,8 +161,7 @@ masters
options {
allow-new-zones boolean
;
@@ -238,7 +240,6 @@ options
dnsrps-options { unspecified-text
};
dnssec-accept-expired boolean
;
dnssec-dnskey-kskonly boolean
;
- dnssec-enable boolean
;
dnssec-loadkeys-interval integer
;
dnssec-lookaside ( string
trust-anchor
string
| auto | no );
@@ -390,11 +391,12 @@ options
resolver-retry-interval integer
;
response-padding { address_match_element
; ... } block-size
integer
;
- response-policy { zone string
[ log boolean
] [ max-policy-ttl
- ttlval
] [ min-update-interval ttlval
] [ policy ( cname |
- disabled | drop | given | no-op | nodata | nxdomain | passthru
- | tcp-only quoted_string
) ] [ recursive-only boolean
] [
- nsip-enable boolean
] [ nsdname-enable boolean
]; ... } [
+ response-policy { zone string
[ add-soa boolean
] [ log
+ boolean
] [ max-policy-ttl ttlval
] [ min-update-interval
+ ttlval
] [ policy ( cname | disabled | drop | given | no-op |
+ nodata | nxdomain | passthru | tcp-only quoted_string
) ] [
+ recursive-only boolean
] [ nsip-enable boolean
] [
+ nsdname-enable boolean
]; ... } [ add-soa boolean
] [
break-dnssec boolean
] [ max-policy-ttl ttlval
] [
min-update-interval ttlval
] [ min-ns-dots integer
] [
nsip-wait-recurse boolean
] [ qname-wait-recurse boolean
]
@@ -461,8 +463,7 @@ options
plugin ( query ) string
[ { unspecified-text
} ];
@@ -470,8 +471,7 @@ plugin
server netprefix
{
bogus boolean
;
@@ -509,8 +509,7 @@ server
statistics-channels {
inet ( ipv4_address
| ipv6_address
|
@@ -522,17 +521,17 @@ statistics-channels
Deprecated - see DNSSEC-KEYS.
-trusted-keys { string
integer
integer
- integer
quoted_string
; ... };
+trusted-keys { string
integer
+ integer
integer
+ quoted_string
; ... };, deprecated
view string
[ class
] {
allow-new-zones boolean
;
@@ -604,7 +603,9 @@ view
dnsrps-options { unspecified-text
};
dnssec-accept-expired boolean
;
dnssec-dnskey-kskonly boolean
;
- dnssec-enable boolean
;
+ dnssec-keys { string
( static-key |
+ initial-key ) integer
integer
+ integer
quoted_string
; ... };
dnssec-loadkeys-interval integer
;
dnssec-lookaside ( string
trust-anchor
string
| auto | no );
@@ -642,9 +643,9 @@ view
key-directory quoted_string
;
lame-ttl ttlval
;
lmdb-mapsize sizeval
;
- managed-keys { string
string
- integer
integer
integer
- quoted_string
; ... };
+ managed-keys { string
( static-key |
+ initial-key ) integer
integer
+ integer
quoted_string
; ... };
masterfile-format ( map | raw | text );
masterfile-style ( full | relative );
match-clients { address_match_element
; ... };
@@ -727,11 +728,12 @@ view
resolver-retry-interval integer
;
response-padding { address_match_element
; ... } block-size
integer
;
- response-policy { zone string
[ log boolean
] [ max-policy-ttl
- ttlval
] [ min-update-interval ttlval
] [ policy ( cname |
- disabled | drop | given | no-op | nodata | nxdomain | passthru
- | tcp-only quoted_string
) ] [ recursive-only boolean
] [
- nsip-enable boolean
] [ nsdname-enable boolean
]; ... } [
+ response-policy { zone string
[ add-soa boolean
] [ log
+ boolean
] [ max-policy-ttl ttlval
] [ min-update-interval
+ ttlval
] [ policy ( cname | disabled | drop | given | no-op |
+ nodata | nxdomain | passthru | tcp-only quoted_string
) ] [
+ recursive-only boolean
] [ nsip-enable boolean
] [
+ nsdname-enable boolean
]; ... } [ add-soa boolean
] [
break-dnssec boolean
] [ max-policy-ttl ttlval
] [
min-update-interval ttlval
] [ min-ns-dots integer
] [
nsip-wait-recurse boolean
] [ qname-wait-recurse boolean
]
@@ -793,9 +795,10 @@ view
transfer-source-v6 ( ipv6_address
| * ) [ port ( integer
| * )
] [ dscp integer
];
trust-anchor-telemetry boolean
; // experimental
- trusted-keys { string
integer
- integer
integer
quoted_string
;
- ... };
+ trusted-keys { string
+ integer
integer
+ integer
+ quoted_string
; ... };, deprecated
try-tcp-refresh boolean
;
update-check-ksk boolean
;
use-alt-transfer-source boolean
;
@@ -907,8 +910,7 @@ view
zone string
[ class
] {
allow-notify { address_match_element
; ... };
@@ -1007,14 +1009,14 @@ zone
ddns-confgen(8)
diff --git a/bin/rndc/rndc.8 b/bin/rndc/rndc.8
index 0ce4c203a0..b859194604 100644
--- a/bin/rndc/rndc.8
+++ b/bin/rndc/rndc.8
@@ -284,7 +284,7 @@ maintain, and also requires the zone to be configured to allow dynamic DNS\&. (S
.PP
\fBmanaged\-keys \fR\fB\fI(status | refresh | sync | destroy)\fR\fR\fB \fR\fB[\fIclass\fR [\fIview\fR]]\fR
.RS 4
-Inspect and control the "managed\-keys" database which handles RFC 5011 DNSSEC trust anchor maintenance\&. If a view is specified, these commands are applied to that view; otherwise they are applied to all views\&.
+Inspect and control the "managed keys" database which handles RFC 5011 DNSSEC trust anchor maintenance\&. If a view is specified, these commands are applied to that view; otherwise they are applied to all views\&.
.sp
.RS 4
.ie n \{\
@@ -296,7 +296,7 @@ Inspect and control the "managed\-keys" database which handles RFC 5011 DNSSEC t
.\}
When run with the
status
-keyword, prints the current status of the managed\-keys database\&.
+keyword, prints the current status of the managed keys database\&.
.RE
.sp
.RS 4
@@ -309,7 +309,7 @@ keyword, prints the current status of the managed\-keys database\&.
.\}
When run with the
refresh
-keyword, forces an immediate refresh query to be sent for all the managed keys, updating the managed\-keys database if any new keys are found, without waiting the normal refresh interval\&.
+keyword, forces an immediate refresh query to be sent for all the managed keys, updating the managed keys database if any new keys are found, without waiting the normal refresh interval\&.
.RE
.sp
.RS 4
@@ -322,7 +322,7 @@ keyword, forces an immediate refresh query to be sent for all the managed keys,
.\}
When run with the
sync
-keyword, forces an immediate dump of the managed\-keys database to disk (in the file
+keyword, forces an immediate dump of the managed keys database to disk (in the file
managed\-keys\&.bind
or (\fIviewname\fR\&.mkeys)\&. This synchronizes the database with its journal file, so that the database\*(Aqs current contents can be inspected visually\&.
.RE
@@ -337,7 +337,7 @@ or (\fIviewname\fR\&.mkeys)\&. This synchronizes the database with its journal f
.\}
When run with the
destroy
-keyword, the managed\-keys database is shut down and deleted, and all key maintenance is terminated\&. This command should be used only with extreme caution\&.
+keyword, the managed keys database is shut down and deleted, and all key maintenance is terminated\&. This command should be used only with extreme caution\&.
.sp
Existing keys that are already trusted are not deleted from memory; DNSSEC validation can continue after this command is used\&. However, key maintenance operations will cease until
\fBnamed\fR
@@ -515,8 +515,12 @@ timer\&.
\fBsecroots \fR\fB[\-]\fR\fB \fR\fB[\fIview \&.\&.\&.\fR]\fR
.RS 4
Dump the security roots (i\&.e\&., trust anchors configured via
-\fBtrusted\-keys\fR,
-\fBmanaged\-keys\fR, or
+\fBdnssec\-keys\fR
+statements, or the synonymous
+\fBmanaged\-keys\fR
+or the deprecated
+\fBtrusted\-keys\fR
+statements, or via
\fBdnssec\-validation auto\fR) and negative trust anchors for the specified views\&. If no view is specified, all views are dumped\&. Security roots will indicate whether they are configured as trusted keys, managed keys, or initializing managed keys (managed keys that have not yet been updated by a successful key refresh query)\&.
.sp
If the first argument is "\-", then the output is returned via the
@@ -697,7 +701,7 @@ Delete a given TKEY\-negotiated key from the server\&. (This does not apply to s
.RS 4
List the names of all TSIG keys currently configured for use by
\fBnamed\fR
-in each view\&. The list both statically configured keys and dynamic TKEY\-negotiated keys\&.
+in each view\&. The list includes both statically configured keys and dynamic TKEY\-negotiated keys\&.
.RE
.PP
\fBvalidation ( on | off | status ) \fR\fB[\fIview \&.\&.\&.\fR]\fR\fB \fR
diff --git a/bin/rndc/rndc.html b/bin/rndc/rndc.html
index 8b9df50b16..d03708cb0f 100644
--- a/bin/rndc/rndc.html
+++ b/bin/rndc/rndc.html
@@ -378,7 +378,7 @@
- Inspect and control the "managed-keys" database which
+ Inspect and control the "managed keys" database which
handles RFC 5011 DNSSEC trust anchor maintenance. If a view
is specified, these commands are applied to that view;
otherwise they are applied to all views.
@@ -387,14 +387,14 @@
When run with the
When run with the
When run with the
When run with the
Dump the security roots (i.e., trust anchors
- configured via trusted-keys,
- managed-keys, or
- dnssec-validation auto) and negative trust
+ configured via dnssec-keys statements,
+ or the synonymous managed-keys or
+ the deprecated trusted-keys statements, or
+ via dnssec-validation auto) and negative trust
anchors for the specified views. If no view is specified, all
views are dumped. Security roots will indicate whether
they are configured as trusted keys, managed keys, or
@@ -905,7 +906,7 @@
List the names of all TSIG keys currently configured
for use by named in each view. The
- list both statically configured keys and dynamic
+ list includes both statically configured keys and dynamic
TKEY-negotiated keys.
managed-keys
(status | refresh | sync | destroy)
[class
[view
]]status
keyword, prints
- the current status of the managed-keys database.
+ the current status of the managed keys database.
refresh
keyword,
forces an immediate refresh query to be sent for all
- the managed keys, updating the managed-keys database
+ the managed keys, updating the managed keys database
if any new keys are found, without waiting the normal
refresh interval.
sync
keyword, forces an
- immediate dump of the managed-keys database to disk
+ immediate dump of the managed keys database to disk
(in the file managed-keys.bind
or
(
).
This synchronizes the database with its journal file, so
@@ -413,7 +413,7 @@
viewname
.mkeysdestroy
keyword, the
- managed-keys database is shut down and deleted, and all key
+ managed keys database is shut down and deleted, and all key
maintenance is terminated. This command should be used only
with extreme caution.
BIND 9.15.0 (Development Release)
+BIND 9.15.1 (Development Release)