CoreDNS-007 has been released!
CoreDNS is a DNS server that chains plugins, where each plugin implements a DNS feature.
Because of this we moved repos: https://github.com/coredns is the main overarching repo. There is an automatic redirect in place from the old repo.
And… We have a new logo! We’re also discussion a website redesign for https://coredns.io and this blog.
Back to the release.
ServeDNSis extended to take a context. This allows (for instance) tracing to start at an earlier entrypoint.
- gRPC and TLS are made first class citizens. See the zone
specification on how
to use it. TL;DR using
grpc://makes the server talk gRPC. The
tlsdirective is used to specify TLS certificates.
- Zipkin tracing can be enabled for all plugin.
- rewrite now allows you to add or modify EDNS0 local or NSID options. The framework is in place to add additional EDNS0 types in the future.
- etcd when no upstreams are defined won’t default to using 22.214.171.124, 126.96.36.199; it just does not resolve external names in that case.
- erratic now can also delay queries and send queries with Truncated set.
- metrics will happily start as many (different) listeners as you want (if you really need that).
- startup and shutdown allow for command to be run during startup or shutdown. These directly use the code from Caddy, see Caddy’s docs.
- kubernetes now implements a
fallthroughoption to pass queries that would result in NXDOMAIN to the next plugin, even if the query is in the cluster domain. This enables custom DNS entries in the cluster domain (as long as they do not overlap with a normal Kubernetes record). To facilitate this the plugin ordering is also altered to put kubernetes in the chain before other backends.
- cache will no longer cache RRSIGs that will expire while cached.
The following people helped with getting this release done:
Chris Aniszczyk, Chris O’Haver, Christoph Görn, Dominic, John Belamaric, Jonathan Boulle, Michael, Michael S. Fischer, Miek Gieben, Yong Tang, Yue Ko.
If you want to help, please check out one of the issues and start coding!
For documentation and help, see our community page.