System administration

CoreDNS – DNS server that chains plugins

CoreDNS is a DNS server/forwarder, written in Go, that chains plugins. Each plugin performs a (DNS) function.

CoreDNS is a fast and flexible DNS server. With CoreDNS you are able to do what you want with your DNS data by using plugins. If some functionality is not provided out of the box you can add it by writing a plugin.

The software can listen for DNS requests coming in over UDP/TCP (go’old DNS), TLS (RFC 7858), also called DoT, DNS over HTTP/2 – DoH – (RFC 8484) and gRPC (not a standard).

This is free and open source software.

Key Features

  • Serve zone data from a file; both DNSSEC (NSEC only) and DNS are supported (file and auto).
  • Retrieve zone data from primaries, i.e., act as a secondary server (AXFR only) (secondary).
  • Sign zone data on-the-fly (dnssec).
  • Load balancing of responses (loadbalance).
  • Allow for zone transfers, i.e., act as a primary server (file + transfer).
  • Automatically load zone files from disk (auto).
  • Caching of DNS responses (cache).
  • Use etcd as a backend (replacing SkyDNS) (etcd).
  • Use k8s (kubernetes) as a backend (kubernetes).
  • Serve as a proxy to forward queries to some other (recursive) nameserver (forward).
  • Provide metrics (by using Prometheus) (prometheus).
  • Provide query (log) and error (errors) logging.
  • Integrate with cloud providers (route53).
  • Support the CH class: version.bind and friends (chaos).
  • Support the RFC 5001 DNS name server identifier (NSID) option (nsid).
  • Profiling support (pprof).
  • Rewrite queries (qtype, qclass and qname) (rewrite and template).
  • Block ANY queries (any).
  • Provide DNS64 IPv6 Translation (dns64).

Website: coredns.io
Support: GitHub Code Repository
Developer: CoreDNS Authors
License: Apache License 2.0

CoreDNS is written in Go. Learn Go with our recommended free books and free tutorials.


Related Software

DNS Servers
CoreDNSDNS server that chains plugins
BINDFlexible, full-featured DNS system
PowerDNSAuthoritative server, the Recursor, and Dnsdist
NSDNLnet Labs Name Server Daemon
TechnitiumSelf host a DNS server for privacy and security
SmartDNSLocal DNS server that accepts DNS query requests from local clients
UnboundValidating, recursive, caching DNS resolver
HickoryRust-based DNS client, server and resolver
YADIFALightweight authoritative Name Server with DNSSEC capabilities
Knot DNSHigh-performance authoritative-only DNS server
gdnsdAuthoritative-only DNS server
DnsmasqNetwork infrastructure: DNS, DHCP, router advertisement and network boot
acme-dnsSimplified DNS server with a RESTful HTTP API
encrypted-dnsModern encrypted DNS server
MaraDNSSmall DNS server
aardvark-dnsAuthoritative DNS server for A/AAAA container records
FDNSEncrypted DNS proxy designed for small networks and Linux desktops
tinydnsTiny DNS server with simple JSON config
pkdnsDNS server resolving pkarr self-sovereign domains
dproxLightweight DNS proxy server
PopuraDNSSimple DNS server with decentralized domain names support
pdnsdDNS server designed for local caching of DNS information
dnrsDNS server written in rust

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments