diff options
author | 2017-10-27 20:08:25 +0100 | |
---|---|---|
committer | 2017-10-27 20:08:25 +0100 | |
commit | a63f2ae7a29c0ef324ea56d95c740985cdb988ca (patch) | |
tree | 995af1ca5b8b7972eb1c26b15b9a52a95cffe6b6 /README.md | |
parent | b5d8f2a3d1b82d8198edae40d284ce78991b1c54 (diff) | |
download | coredns-a63f2ae7a29c0ef324ea56d95c740985cdb988ca.tar.gz coredns-a63f2ae7a29c0ef324ea56d95c740985cdb988ca.tar.zst coredns-a63f2ae7a29c0ef324ea56d95c740985cdb988ca.zip |
doc: update README (#1178)
People are using it in prod and some other updates.
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 33 |
1 files changed, 17 insertions, 16 deletions
@@ -7,8 +7,8 @@ [](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fcoredns%2Fcoredns?ref=badge_shield) [](https://bestpractices.coreinfrastructure.org/projects/1250) -CoreDNS is a DNS server that started as a fork of [Caddy](https://github.com/mholt/caddy/). It has -the same model: it chains plugins. +CoreDNS (written in Go) chains [plugins](https://coredns.io/plugins). Each plugin performs a DNS +function. CoreDNS is a [Cloud Native Computing Foundation](https://cncf.io) inception level project. @@ -20,7 +20,7 @@ CoreDNS aims to be a fast and flexible DNS server. The keyword here is *flexible are able to do what you want with your DNS data. And if not: write a plugin! CoreDNS can listen for DNS request coming in over UDP/TCP (go'old DNS), TLS ([RFC -7858](https://tools.ietf.org/html/rfc7858)) and gRPC (not a standard). +7858](https://tools.ietf.org/html/rfc7858)) and [gRPC](https://grpc.io) (not a standard). Currently CoreDNS is able to: @@ -41,17 +41,17 @@ Currently CoreDNS is able to: * Support the CH class: `version.bind` and friends (*chaos*). * Profiling support (*pprof*). * Rewrite queries (qtype, qclass and qname) (*rewrite*). -* Echo back the IP address, transport and port number used (*whoami*). +* Echo back the IP address, transport and port number used (*whoami*). This is also the default + plugin that gets loaded when CoreDNS can't find a Corefile to load. Each of the plugins has a README.md of its own, see [coredns.io/plugins](https://coredns.io/plugins) -for all in-tree plugins. +for all in-tree plugins, and [coredns.io/explugins](https://coredns.io/explugins) for all +out-of-tree plugins. ## Status -CoreDNS can be used as an authoritative nameserver for your domains. All in all, CoreDNS should be -able to provide you with enough functionality to replace parts of BIND 9, Knot, NSD or PowerDNS and -SkyDNS. Most documentation is in the source and blog articles can be [found -here](https://coredns.io). If you do want to use CoreDNS in production, please let us know. +CoreDNS can be used as an authoritative nameserver for your domains. CoreDNS should be able to +provide you with enough functionality to replace parts of BIND 9, Knot, NSD or PowerDNS and SkyDNS. ## Compilation @@ -85,8 +85,8 @@ The above command alone will have `coredns` binary generated. ## Examples When starting CoreDNS without any configuration, it loads the -[*whoami*](https://coredns.io/plugins/whoami) plugin and starts -listening on port 53 (override with `-dns.port`), it should show the following: +[*whoami*](https://coredns.io/plugins/whoami) plugin and starts listening on port 53 (override with +`-dns.port`), it should show the following: ~~~ txt .:53 @@ -106,7 +106,7 @@ Start a simple proxy, you'll need to be root to start listening on port 53. `Corefile` contains: -~~~ txt +~~~ corefile .:53 { proxy . 8.8.8.8:53 log @@ -114,11 +114,12 @@ Start a simple proxy, you'll need to be root to start listening on port 53. ~~~ Just start CoreDNS: `./coredns`. Then just query on that port (53). The query should be forwarded to -8.8.8.8 and the response will be returned. Each query should also show up in the log. +8.8.8.8 and the response will be returned. Each query should also show up in the log which is +printed on standard output. -Serve the (NSEC) DNSSEC-signed `example.org` on port 1053, with errors and logging sent to stdout. -Allow zone transfers to everybody, but specifically mention 1 IP address so that CoreDNS can send -notifies to it. +Serve the (NSEC) DNSSEC-signed `example.org` on port 1053, with errors and logging sent to standard +output. Allow zone transfers to everybody, but specifically mention 1 IP address so that CoreDNS can +send notifies to it. ~~~ txt example.org:1053 { |