mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-29 01:04:15 -04:00 
			
		
		
		
	doc: update README (#1178)
People are using it in prod and some other updates.
This commit is contained in:
		
							
								
								
									
										33
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										33
									
								
								README.md
									
									
									
									
									
								
							| @@ -7,8 +7,8 @@ | |||||||
| [](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fcoredns%2Fcoredns?ref=badge_shield) | [](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fcoredns%2Fcoredns?ref=badge_shield) | ||||||
| [](https://bestpractices.coreinfrastructure.org/projects/1250) | [](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 | CoreDNS (written in Go) chains [plugins](https://coredns.io/plugins). Each plugin performs a DNS | ||||||
| the same model: it chains plugins. | function. | ||||||
|  |  | ||||||
| CoreDNS is a [Cloud Native Computing Foundation](https://cncf.io) inception level project. | 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! | 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 | 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: | Currently CoreDNS is able to: | ||||||
|  |  | ||||||
| @@ -41,17 +41,17 @@ Currently CoreDNS is able to: | |||||||
| * Support the CH class: `version.bind` and friends (*chaos*). | * Support the CH class: `version.bind` and friends (*chaos*). | ||||||
| * Profiling support (*pprof*). | * Profiling support (*pprof*). | ||||||
| * Rewrite queries (qtype, qclass and qname) (*rewrite*). | * 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) | 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 | ## Status | ||||||
|  |  | ||||||
| CoreDNS can be used as an authoritative nameserver for your domains. All in all, CoreDNS should be | CoreDNS can be used as an authoritative nameserver for your domains. CoreDNS should be able to | ||||||
| able to provide you with enough functionality to replace parts of BIND 9, Knot, NSD or PowerDNS and | provide you with enough functionality to replace parts of BIND 9, Knot, NSD or PowerDNS and SkyDNS. | ||||||
| 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. |  | ||||||
|  |  | ||||||
| ## Compilation | ## Compilation | ||||||
|  |  | ||||||
| @@ -85,8 +85,8 @@ The above command alone will have `coredns` binary generated. | |||||||
| ## Examples | ## Examples | ||||||
|  |  | ||||||
| When starting CoreDNS without any configuration, it loads the | When starting CoreDNS without any configuration, it loads the | ||||||
| [*whoami*](https://coredns.io/plugins/whoami) plugin and starts | [*whoami*](https://coredns.io/plugins/whoami) plugin and starts listening on port 53 (override with | ||||||
| listening on port 53 (override with `-dns.port`), it should show the following: | `-dns.port`), it should show the following: | ||||||
|  |  | ||||||
| ~~~ txt | ~~~ txt | ||||||
| .:53 | .:53 | ||||||
| @@ -106,7 +106,7 @@ Start a simple proxy, you'll need to be root to start listening on port 53. | |||||||
|  |  | ||||||
| `Corefile` contains: | `Corefile` contains: | ||||||
|  |  | ||||||
| ~~~ txt | ~~~ corefile | ||||||
| .:53 { | .:53 { | ||||||
|     proxy . 8.8.8.8:53 |     proxy . 8.8.8.8:53 | ||||||
|     log |     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 | 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. | Serve the (NSEC) DNSSEC-signed `example.org` on port 1053, with errors and logging sent to standard | ||||||
| Allow zone transfers to everybody, but specifically mention 1 IP address so that CoreDNS can send | output. Allow zone transfers to everybody, but specifically mention 1 IP address so that CoreDNS can | ||||||
| notifies to it. | send notifies to it. | ||||||
|  |  | ||||||
| ~~~ txt | ~~~ txt | ||||||
| example.org:1053 { | example.org:1053 { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user