From 696c602e2dc98cfb40bd590e4fc036fedd2118aa Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Fri, 20 Dec 2019 10:39:16 +0000 Subject: [PATCH] Release 166 (#174) Signed-off-by: Miek Gieben --- content/blog/coredns-1.6.5.md | 2 +- content/plugins/acl.md | 2 +- content/plugins/any.md | 2 +- content/plugins/auto.md | 2 +- content/plugins/autopath.md | 2 +- content/plugins/azure.md | 2 +- content/plugins/bind.md | 2 +- content/plugins/cache.md | 10 ++++++++-- content/plugins/cancel.md | 4 ++-- content/plugins/chaos.md | 4 ++-- content/plugins/clouddns.md | 6 +++--- content/plugins/debug.md | 4 ++-- content/plugins/dnssec.md | 4 ++-- content/plugins/dnstap.md | 4 ++-- content/plugins/erratic.md | 4 ++-- content/plugins/errors.md | 4 ++-- content/plugins/etcd.md | 4 ++-- content/plugins/file.md | 4 ++-- content/plugins/forward.md | 4 ++-- content/plugins/grpc.md | 4 ++-- content/plugins/health.md | 4 ++-- content/plugins/hosts.md | 4 ++-- content/plugins/import.md | 4 ++-- content/plugins/k8s_external.md | 4 ++-- content/plugins/kubernetes.md | 4 ++-- content/plugins/loadbalance.md | 4 ++-- content/plugins/log.md | 4 ++-- content/plugins/loop.md | 4 ++-- content/plugins/metadata.md | 4 ++-- content/plugins/metrics.md | 4 ++-- content/plugins/nsid.md | 4 ++-- content/plugins/pprof.md | 4 ++-- content/plugins/ready.md | 4 ++-- content/plugins/reload.md | 6 +++--- content/plugins/rewrite.md | 4 ++-- content/plugins/root.md | 4 ++-- content/plugins/route53.md | 4 ++-- content/plugins/secondary.md | 4 ++-- content/plugins/sign.md | 31 +++++++++++++++++++------------ content/plugins/template.md | 4 ++-- content/plugins/tls.md | 4 ++-- content/plugins/trace.md | 4 ++-- content/plugins/transfer.md | 11 +++++------ content/plugins/whoami.md | 4 ++-- data/coredns.toml | 2 +- 45 files changed, 110 insertions(+), 98 deletions(-) diff --git a/content/blog/coredns-1.6.5.md b/content/blog/coredns-1.6.5.md index dab4eb4..bb426a9 100644 --- a/content/blog/coredns-1.6.5.md +++ b/content/blog/coredns-1.6.5.md @@ -3,7 +3,7 @@ title = "CoreDNS-1.6.5 Release" description = "CoreDNS-1.6.5 Release Notes." tags = ["Release", "1.6.5", "Notes"] release = "1.6.5" -date = 2019-11-05T10:00:00+00:00 +date = 2019-11-06T10:00:00+00:00 author = "coredns" +++ diff --git a/content/plugins/acl.md b/content/plugins/acl.md index 0214cdf..ee1f6d0 100644 --- a/content/plugins/acl.md +++ b/content/plugins/acl.md @@ -4,5 +4,5 @@ description = "" weight = 1 tags = [ "plugin", "acl" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234482" +date = "2019-12-12T16:13:55.314314" +++ diff --git a/content/plugins/any.md b/content/plugins/any.md index e00d9bb..62bd733 100644 --- a/content/plugins/any.md +++ b/content/plugins/any.md @@ -4,7 +4,7 @@ description = "*any* gives a minimal response to ANY queries." weight = 2 tags = [ "plugin", "any" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234601" +date = "2019-12-12T16:13:55.314511" +++ ## Description diff --git a/content/plugins/auto.md b/content/plugins/auto.md index c594bd1..f453ba3 100644 --- a/content/plugins/auto.md +++ b/content/plugins/auto.md @@ -4,7 +4,7 @@ description = "*auto* enables serving zone data from an RFC 1035-style master fi weight = 3 tags = [ "plugin", "auto" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234674" +date = "2019-12-12T16:13:55.314696" +++ ## Description diff --git a/content/plugins/autopath.md b/content/plugins/autopath.md index 3385bc3..056b95c 100644 --- a/content/plugins/autopath.md +++ b/content/plugins/autopath.md @@ -4,7 +4,7 @@ description = "*autopath* allows for server-side search path completion." weight = 4 tags = [ "plugin", "autopath" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234736" +date = "2019-12-12T16:13:55.314849" +++ ## Description diff --git a/content/plugins/azure.md b/content/plugins/azure.md index e0d66d6..5f9ac97 100644 --- a/content/plugins/azure.md +++ b/content/plugins/azure.md @@ -4,7 +4,7 @@ description = "*azure* enables serving zone data from Microsoft Azure DNS servic weight = 5 tags = [ "plugin", "azure" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234799" +date = "2019-12-12T16:13:55.315000" +++ ## Description diff --git a/content/plugins/bind.md b/content/plugins/bind.md index 670e5cb..9cbc74c 100644 --- a/content/plugins/bind.md +++ b/content/plugins/bind.md @@ -4,7 +4,7 @@ description = "*bind* overrides the host to which the server should bind." weight = 6 tags = [ "plugin", "bind" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234863" +date = "2019-12-12T16:13:55.315163" +++ ## Description diff --git a/content/plugins/cache.md b/content/plugins/cache.md index bc752f7..ef24627 100644 --- a/content/plugins/cache.md +++ b/content/plugins/cache.md @@ -1,10 +1,10 @@ +++ title = "cache" description = "*cache* enables a frontend cache." -weight = 7 +weight = 8 tags = [ "plugin", "cache" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234936" +date = "2019-12-12T16:13:55.315486" +++ ## Description @@ -37,6 +37,7 @@ cache [TTL] [ZONES...] { success CAPACITY [TTL] [MINTTL] denial CAPACITY [TTL] [MINTTL] prefetch AMOUNT [[DURATION] [PERCENTAGE%]] + serve_stale [DURATION] } ~~~ @@ -53,6 +54,10 @@ cache [TTL] [ZONES...] { **DURATION** defaults to 1m. Prefetching will happen when the TTL drops below **PERCENTAGE**, which defaults to `10%`, or latest 1 second before TTL expiration. Values should be in the range `[10%, 90%]`. Note the percent sign is mandatory. **PERCENTAGE** is treated as an `int`. +* `serve_stale`, when serve\_stale is set, cache always will serve an expired entry to a client if there is one + available. When this happens, cache will attempt to refresh the cache entry after sending the expired cache + entry to the client. The responses have a TTL of 0. **DURATION** is how far back to consider + stale responses as fresh. The default duration is 1h. ## Capacity and Eviction @@ -72,6 +77,7 @@ If monitoring is enabled (via the *prometheus* plugin) then the following metric * `coredns_cache_hits_total{server, type}` - Counter of cache hits by cache type. * `coredns_cache_misses_total{server}` - Counter of cache misses. * `coredns_cache_drops_total{server}` - Counter of dropped messages. +* `coredns_cache_served_stale_total{server}` - Counter of requests served from stale cache entries. Cache types are either "denial" or "success". `Server` is the server handling the request, see the metrics plugin for documentation. diff --git a/content/plugins/cancel.md b/content/plugins/cancel.md index b04057b..2e3dcb8 100644 --- a/content/plugins/cancel.md +++ b/content/plugins/cancel.md @@ -1,10 +1,10 @@ +++ title = "cancel" description = "*cancel* cancels a request's context after 5001 milliseconds." -weight = 8 +weight = 9 tags = [ "plugin", "cancel" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.234997" +date = "2019-12-12T16:13:55.315635" +++ ## Description diff --git a/content/plugins/chaos.md b/content/plugins/chaos.md index 81a84d6..55e7706 100644 --- a/content/plugins/chaos.md +++ b/content/plugins/chaos.md @@ -1,10 +1,10 @@ +++ title = "chaos" description = "*chaos* allows for responding to TXT queries in the CH class." -weight = 9 +weight = 10 tags = [ "plugin", "chaos" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235051" +date = "2019-12-12T16:13:55.315777" +++ ## Description diff --git a/content/plugins/clouddns.md b/content/plugins/clouddns.md index 70ca45e..6af30bd 100644 --- a/content/plugins/clouddns.md +++ b/content/plugins/clouddns.md @@ -1,10 +1,10 @@ +++ title = "clouddns" description = "*clouddns* enables serving zone data from GCP Cloud DNS." -weight = 10 +weight = 11 tags = [ "plugin", "clouddns" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235113" +date = "2019-12-12T16:13:55.315947" +++ ## Description @@ -62,7 +62,7 @@ Enable clouddns with fallthrough: ~~~ txt example.org { - clouddns example.org.:gcp-example-project:example-zone clouddns example.com.:gcp-example-project:example-zone-2 { + clouddns example.org.:gcp-example-project:example-zone example.com.:gcp-example-project:example-zone-2 { fallthrough example.gov. } } diff --git a/content/plugins/debug.md b/content/plugins/debug.md index 31835ab..c528946 100644 --- a/content/plugins/debug.md +++ b/content/plugins/debug.md @@ -1,10 +1,10 @@ +++ title = "debug" description = "*debug* disables the automatic recovery upon a crash so that you'll get a nice stack trace." -weight = 11 +weight = 12 tags = [ "plugin", "debug" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235167" +date = "2019-12-12T16:13:55.316090" +++ ## Description diff --git a/content/plugins/dnssec.md b/content/plugins/dnssec.md index b5df4f2..6502b3f 100644 --- a/content/plugins/dnssec.md +++ b/content/plugins/dnssec.md @@ -1,10 +1,10 @@ +++ title = "dnssec" description = "*dnssec* enables on-the-fly DNSSEC signing of served data." -weight = 12 +weight = 13 tags = [ "plugin", "dnssec" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235259" +date = "2019-12-12T16:13:55.316276" +++ ## Description diff --git a/content/plugins/dnstap.md b/content/plugins/dnstap.md index dd194d4..6678ad2 100644 --- a/content/plugins/dnstap.md +++ b/content/plugins/dnstap.md @@ -1,10 +1,10 @@ +++ title = "dnstap" description = "*dnstap* enables logging to dnstap." -weight = 13 +weight = 14 tags = [ "plugin", "dnstap" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235330" +date = "2019-12-12T16:13:55.316508" +++ ## Description diff --git a/content/plugins/erratic.md b/content/plugins/erratic.md index db5a614..fd1b460 100644 --- a/content/plugins/erratic.md +++ b/content/plugins/erratic.md @@ -1,10 +1,10 @@ +++ title = "erratic" description = "*erratic* a plugin useful for testing client behavior." -weight = 14 +weight = 15 tags = [ "plugin", "erratic" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235402" +date = "2019-12-12T16:13:55.316671" +++ ## Description diff --git a/content/plugins/errors.md b/content/plugins/errors.md index 46206da..c25d755 100644 --- a/content/plugins/errors.md +++ b/content/plugins/errors.md @@ -1,10 +1,10 @@ +++ title = "errors" description = "*errors* enables error logging." -weight = 15 +weight = 16 tags = [ "plugin", "errors" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235465" +date = "2019-12-12T16:13:55.316831" +++ ## Description diff --git a/content/plugins/etcd.md b/content/plugins/etcd.md index a1d7ad4..c49c142 100644 --- a/content/plugins/etcd.md +++ b/content/plugins/etcd.md @@ -1,10 +1,10 @@ +++ title = "etcd" description = "*etcd* enables SkyDNS service discovery from etcd." -weight = 16 +weight = 17 tags = [ "plugin", "etcd" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235577" +date = "2019-12-12T16:13:55.317033" +++ ## Description diff --git a/content/plugins/file.md b/content/plugins/file.md index eeb4156..b485b47 100644 --- a/content/plugins/file.md +++ b/content/plugins/file.md @@ -1,10 +1,10 @@ +++ title = "file" description = "*file* enables serving zone data from an RFC 1035-style master file." -weight = 17 +weight = 18 tags = [ "plugin", "file" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235674" +date = "2019-12-12T16:13:55.317196" +++ ## Description diff --git a/content/plugins/forward.md b/content/plugins/forward.md index 2148c0b..19780a6 100644 --- a/content/plugins/forward.md +++ b/content/plugins/forward.md @@ -1,10 +1,10 @@ +++ title = "forward" description = "*forward* facilitates proxying DNS messages to upstream resolvers." -weight = 18 +weight = 19 tags = [ "plugin", "forward" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235769" +date = "2019-12-12T16:13:55.317408" +++ ## Description diff --git a/content/plugins/grpc.md b/content/plugins/grpc.md index f8b61b9..ed713e2 100644 --- a/content/plugins/grpc.md +++ b/content/plugins/grpc.md @@ -1,10 +1,10 @@ +++ title = "grpc" description = "*grpc* facilitates proxying DNS messages to upstream resolvers via gRPC protocol." -weight = 19 +weight = 20 tags = [ "plugin", "grpc" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235860" +date = "2019-12-12T16:13:55.317545" +++ ## Description diff --git a/content/plugins/health.md b/content/plugins/health.md index a48161e..4dd9f83 100644 --- a/content/plugins/health.md +++ b/content/plugins/health.md @@ -1,10 +1,10 @@ +++ title = "health" description = "*health* enables a health check endpoint." -weight = 20 +weight = 21 tags = [ "plugin", "health" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.235925" +date = "2019-12-12T16:13:55.317695" +++ ## Description diff --git a/content/plugins/hosts.md b/content/plugins/hosts.md index 32d5814..b749c63 100644 --- a/content/plugins/hosts.md +++ b/content/plugins/hosts.md @@ -1,10 +1,10 @@ +++ title = "hosts" description = "*hosts* enables serving zone data from a `/etc/hosts` style file." -weight = 21 +weight = 22 tags = [ "plugin", "hosts" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236009" +date = "2019-12-12T16:13:55.317821" +++ ## Description diff --git a/content/plugins/import.md b/content/plugins/import.md index 921d4d4..a0e46e1 100644 --- a/content/plugins/import.md +++ b/content/plugins/import.md @@ -1,10 +1,10 @@ +++ title = "import" description = "*import* includes files or references snippets from a Corefile." -weight = 22 +weight = 23 tags = [ "plugin", "import" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236075" +date = "2019-12-12T16:13:55.317934" +++ ## Description diff --git a/content/plugins/k8s_external.md b/content/plugins/k8s_external.md index aa7da0c..b8ce755 100644 --- a/content/plugins/k8s_external.md +++ b/content/plugins/k8s_external.md @@ -1,10 +1,10 @@ +++ title = "k8s_external" description = "*k8s_external* resolves load balancer and external IPs from outside Kubernetes clusters." -weight = 23 +weight = 24 tags = [ "plugin", "k8s_external" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236143" +date = "2019-12-12T16:13:55.318104" +++ ## Description diff --git a/content/plugins/kubernetes.md b/content/plugins/kubernetes.md index 7741a80..db783c5 100644 --- a/content/plugins/kubernetes.md +++ b/content/plugins/kubernetes.md @@ -1,10 +1,10 @@ +++ title = "kubernetes" description = "*kubernetes* enables reading zone data from a Kubernetes cluster." -weight = 24 +weight = 25 tags = [ "plugin", "kubernetes" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236261" +date = "2019-12-12T16:13:55.318339" +++ ## Description diff --git a/content/plugins/loadbalance.md b/content/plugins/loadbalance.md index 4e7e568..4ca92b1 100644 --- a/content/plugins/loadbalance.md +++ b/content/plugins/loadbalance.md @@ -1,10 +1,10 @@ +++ title = "loadbalance" description = "*loadbalance* randomizes the order of A, AAAA and MX records." -weight = 25 +weight = 26 tags = [ "plugin", "loadbalance" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236326" +date = "2019-12-12T16:13:55.318492" +++ ## Description diff --git a/content/plugins/log.md b/content/plugins/log.md index f59e03c..a3625a6 100644 --- a/content/plugins/log.md +++ b/content/plugins/log.md @@ -1,10 +1,10 @@ +++ title = "log" description = "*log* enables query logging to standard output." -weight = 26 +weight = 27 tags = [ "plugin", "log" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236414" +date = "2019-12-12T16:13:55.318697" +++ ## Description diff --git a/content/plugins/loop.md b/content/plugins/loop.md index 1a4bf96..30a92ee 100644 --- a/content/plugins/loop.md +++ b/content/plugins/loop.md @@ -1,10 +1,10 @@ +++ title = "loop" description = "*loop* detects simple forwarding loops and halts the server." -weight = 27 +weight = 28 tags = [ "plugin", "loop" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236499" +date = "2019-12-12T16:13:55.318882" +++ ## Description diff --git a/content/plugins/metadata.md b/content/plugins/metadata.md index acea24f..174f064 100644 --- a/content/plugins/metadata.md +++ b/content/plugins/metadata.md @@ -1,10 +1,10 @@ +++ title = "metadata" description = "*metadata* enables a metadata collector." -weight = 28 +weight = 29 tags = [ "plugin", "metadata" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236561" +date = "2019-12-12T16:13:55.319050" +++ ## Description diff --git a/content/plugins/metrics.md b/content/plugins/metrics.md index 2b3fdfc..29c50aa 100644 --- a/content/plugins/metrics.md +++ b/content/plugins/metrics.md @@ -1,10 +1,10 @@ +++ title = "prometheus" description = "*prometheus* enables [Prometheus](https://prometheus.io/) metrics." -weight = 29 +weight = 30 tags = [ "plugin", "metrics" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236628" +date = "2019-12-12T16:13:55.319204" +++ ## Description diff --git a/content/plugins/nsid.md b/content/plugins/nsid.md index 92f1d08..d21e09b 100644 --- a/content/plugins/nsid.md +++ b/content/plugins/nsid.md @@ -1,10 +1,10 @@ +++ title = "nsid" description = "*nsid* adds an identifier of this server to each reply." -weight = 30 +weight = 31 tags = [ "plugin", "nsid" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236694" +date = "2019-12-12T16:13:55.319362" +++ ## Description diff --git a/content/plugins/pprof.md b/content/plugins/pprof.md index c9eb4bd..efd6392 100644 --- a/content/plugins/pprof.md +++ b/content/plugins/pprof.md @@ -1,10 +1,10 @@ +++ title = "pprof" description = "*pprof* publishes runtime profiling data at endpoints under `/debug/pprof`." -weight = 31 +weight = 32 tags = [ "plugin", "pprof" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236784" +date = "2019-12-12T16:13:55.319532" +++ ## Description diff --git a/content/plugins/ready.md b/content/plugins/ready.md index 678c843..86f6ef3 100644 --- a/content/plugins/ready.md +++ b/content/plugins/ready.md @@ -1,10 +1,10 @@ +++ title = "ready" description = "*ready* enables a readiness check HTTP endpoint." -weight = 32 +weight = 33 tags = [ "plugin", "ready" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236843" +date = "2019-12-12T16:13:55.319702" +++ ## Description diff --git a/content/plugins/reload.md b/content/plugins/reload.md index e13cd3f..26fe37d 100644 --- a/content/plugins/reload.md +++ b/content/plugins/reload.md @@ -1,10 +1,10 @@ +++ title = "reload" description = "*reload* allows automatic reload of a changed Corefile." -weight = 33 +weight = 34 tags = [ "plugin", "reload" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.236920" +date = "2019-12-12T16:13:55.319933" +++ ## Description @@ -43,7 +43,7 @@ reload [INTERVAL] [JITTER] The plugin will check for changes every **INTERVAL**, subject to +/- the **JITTER** duration. -* **INTERVAL** and **JITTER** are Golang (durations)[[https://golang.org/pkg/time/#ParseDuration](https://golang.org/pkg/time/#ParseDuration)]. +* **INTERVAL** and **JITTER** are Golang [durations](https://golang.org/pkg/time/#ParseDuration). The default **INTERVAL** is 30s, default **JITTER** is 15s, the minimal value for **INTERVAL** is 2s, and for **JITTER** it is 1s. If **JITTER** is more than half of **INTERVAL**, it will be set to half of **INTERVAL** diff --git a/content/plugins/rewrite.md b/content/plugins/rewrite.md index e21a693..c87672f 100644 --- a/content/plugins/rewrite.md +++ b/content/plugins/rewrite.md @@ -1,10 +1,10 @@ +++ title = "rewrite" description = "*rewrite* performs internal message rewriting." -weight = 34 +weight = 35 tags = [ "plugin", "rewrite" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237049" +date = "2019-12-12T16:13:55.320301" +++ ## Description diff --git a/content/plugins/root.md b/content/plugins/root.md index 7224366..57ec052 100644 --- a/content/plugins/root.md +++ b/content/plugins/root.md @@ -1,10 +1,10 @@ +++ title = "root" description = "*root* simply specifies the root of where to find (zone) files." -weight = 35 +weight = 36 tags = [ "plugin", "root" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237114" +date = "2019-12-12T16:13:55.320477" +++ ## Description diff --git a/content/plugins/route53.md b/content/plugins/route53.md index cd592e0..577ba8f 100644 --- a/content/plugins/route53.md +++ b/content/plugins/route53.md @@ -1,10 +1,10 @@ +++ title = "route53" description = "*route53* enables serving zone data from AWS route53." -weight = 36 +weight = 37 tags = [ "plugin", "route53" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237188" +date = "2019-12-12T16:13:55.320656" +++ ## Description diff --git a/content/plugins/secondary.md b/content/plugins/secondary.md index 8f4f683..143897e 100644 --- a/content/plugins/secondary.md +++ b/content/plugins/secondary.md @@ -1,10 +1,10 @@ +++ title = "secondary" description = "*secondary* enables serving a zone retrieved from a primary server." -weight = 37 +weight = 38 tags = [ "plugin", "secondary" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237252" +date = "2019-12-12T16:13:55.320857" +++ ## Description diff --git a/content/plugins/sign.md b/content/plugins/sign.md index dcf7c87..6df9bc9 100644 --- a/content/plugins/sign.md +++ b/content/plugins/sign.md @@ -1,10 +1,10 @@ +++ title = "sign" description = "*sign* adds DNSSEC records to zone files." -weight = 38 +weight = 39 tags = [ "plugin", "sign" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237341" +date = "2019-12-12T16:13:55.321106" +++ ## Description @@ -12,8 +12,7 @@ date = "2019-11-05T13:47:41.237341" The *sign* plugin is used to sign (see RFC 6781) zones. In this process DNSSEC resource records are added. The signatures that sign the resource records sets have an expiration date, this means the signing process must be repeated before this expiration data is reached. Otherwise the zone's data -will go BAD (RFC 4035, Section 5.5). The *sign* plugin takes care of this. *Sign* works, but has -a couple of limitations, see the "Bugs" section. +will go BAD (RFC 4035, Section 5.5). The *sign* plugin takes care of this. Only NSEC is supported, *sign* does not support NSEC3. @@ -35,17 +34,21 @@ it do key or algorithm rollovers - it just signs. Both these dates are only checked on the SOA's signature(s). - * Create signatures that have an inception of -3 hours (minus a jitter between 0 and 18 hours) + * Create RRSIGs that have an inception of -3 hours (minus a jitter between 0 and 18 hours) and a expiration of +32 days for every given DNSKEY. + * Add NSEC records for all names in the zone. The TTL for these is the negative cache TTL from the + SOA record. + * Add or replace *all* apex CDS/CDNSKEY records with the ones derived from the given keys. For each key two CDS are created one with SHA1 and another with SHA256. * Update the SOA's serial number to the *Unix epoch* of when the signing happens. This will overwrite *any* previous serial number. -Thus there are two ways that dictate when a zone is signed. Normally every 6 days (plus jitter) it -will be resigned. If for some reason we fail this check, the 14 days before expiring kicks in. + +There are two ways that dictate when a zone is signed. Normally every 6 days (plus jitter) it will +be resigned. If for some reason we fail this check, the 14 days before expiring kicks in. Keys are named (following BIND9): `K++.key` and `K++.private`. The keys **must not** be included in your zone; they will be added by *sign*. These keys can be @@ -147,8 +150,8 @@ example.org example.net { This will lead to `db.example.org` be signed *twice*, as this entire section is parsed twice because you have specified the origins `example.org` and `example.net` in the server block. -Forcibly resigning a zone can be accomplished by removing the signed zone file (CoreDNS will keep on -serving it from memory), and sending SIGUSR1 to the process to make it reload and resign the zone +Forcibly resigning a zone can be accomplished by removing the signed zone file (CoreDNS will keep +on serving it from memory), and sending SIGUSR1 to the process to make it reload and resign the zone file. ## Also See @@ -156,9 +159,13 @@ file. The DNSSEC RFCs: RFC 4033, RFC 4034 and RFC 4035. And the BCP on DNSSEC, RFC 6781. Further more the manual pages coredns-keygen(1) and dnssec-keygen(8). And the *file* plugin's documentation. -Coredns-keygen can be found at in the coredns-keygen directory. +Coredns-keygen can be found at +[https://github.com/coredns/coredns-utils](https://github.com/coredns/coredns-utils) in the +coredns-keygen directory. + +Other useful DNSSEC tools can be found in [ldns](https://nlnetlabs.nl/projects/ldns/about/), e.g. +`ldns-key2ds` to create DS records from DNSKEYs. ## Bugs -`keys directory` is not implemented. Glue records are currently signed, and no DS records are added -for child zones. +`keys directory` is not implemented. diff --git a/content/plugins/template.md b/content/plugins/template.md index ebe9c9c..a48e7ba 100644 --- a/content/plugins/template.md +++ b/content/plugins/template.md @@ -1,10 +1,10 @@ +++ title = "template" description = "*template* allows for dynamic responses based on the incoming query." -weight = 39 +weight = 40 tags = [ "plugin", "template" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237463" +date = "2019-12-12T16:13:55.321369" +++ ## Description diff --git a/content/plugins/tls.md b/content/plugins/tls.md index 588d40b..b489170 100644 --- a/content/plugins/tls.md +++ b/content/plugins/tls.md @@ -1,10 +1,10 @@ +++ title = "tls" description = "*tls* allows you to configure the server certificates for the TLS and gRPC servers." -weight = 40 +weight = 41 tags = [ "plugin", "tls" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237544" +date = "2019-12-12T16:13:55.321553" +++ ## Description diff --git a/content/plugins/trace.md b/content/plugins/trace.md index 8e251b9..bee1859 100644 --- a/content/plugins/trace.md +++ b/content/plugins/trace.md @@ -1,10 +1,10 @@ +++ title = "trace" description = "*trace* enables OpenTracing-based tracing of DNS requests as they go through the plugin chain." -weight = 41 +weight = 42 tags = [ "plugin", "trace" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237610" +date = "2019-12-12T16:13:55.321710" +++ ## Description diff --git a/content/plugins/transfer.md b/content/plugins/transfer.md index 765415e..2d24dc8 100644 --- a/content/plugins/transfer.md +++ b/content/plugins/transfer.md @@ -1,20 +1,19 @@ +++ title = "transfer" -description = "*transfer* answer zone transfers requests for compatible authoritative" -weight = 42 +description = "*transfer* perform zone transfers for other plugins." +weight = 43 tags = [ "plugin", "transfer" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237663" +date = "2019-12-12T16:13:55.321855" +++ -plugins. ## Description This plugin answers zone transfers for authoritative plugins that implement `transfer.Transferer`. -Transfer answers AXFR requests and IXFR requests with AXFR fallback if the -zone has changed. +Transfer answers full zone transfer (AXFR) requests and incremental zone transfer (IXFR) requests +with AXFR fallback if the zone has changed. Notifies are not currently supported. diff --git a/content/plugins/whoami.md b/content/plugins/whoami.md index 0897d1e..c432514 100644 --- a/content/plugins/whoami.md +++ b/content/plugins/whoami.md @@ -1,10 +1,10 @@ +++ title = "whoami" description = "*whoami* returns your resolver's local IP address, port and transport." -weight = 43 +weight = 44 tags = [ "plugin", "whoami" ] categories = [ "plugin" ] -date = "2019-11-05T13:47:41.237724" +date = "2019-12-12T16:13:55.322031" +++ ## Description diff --git a/data/coredns.toml b/data/coredns.toml index b6393ae..8e82efa 100644 --- a/data/coredns.toml +++ b/data/coredns.toml @@ -1,2 +1,2 @@ [release] - version = "1.6.5" + version = "1.6.6"