[RFC-9250]: Add QUIC server support (#6182)

Add DNS-over-QUIC server 

Signed-off-by: jaehnri <joao.henri.cr@gmail.com>
Signed-off-by: João Henri <joao.henri.cr@gmail.com>
This commit is contained in:
João Henri
2023-07-31 16:34:31 -03:00
committed by GitHub
parent b7c9d3e155
commit cc7a364633
15 changed files with 759 additions and 4 deletions

View File

@@ -18,9 +18,12 @@ CoreDNS is a fast and flexible DNS server. The key word here is *flexible*: with
are able to do what you want with your DNS data by utilizing plugins. If some functionality is not
provided out of the box you can add it by [writing a plugin](https://coredns.io/explugins).
CoreDNS can listen for DNS requests coming in over UDP/TCP (go'old DNS), TLS ([RFC
7858](https://tools.ietf.org/html/rfc7858)), also called DoT, DNS over HTTP/2 - DoH -
([RFC 8484](https://tools.ietf.org/html/rfc8484)) and [gRPC](https://grpc.io) (not a standard).
CoreDNS can listen for DNS requests coming in over:
* UDP/TCP (go'old DNS).
* TLS - DoT ([RFC 7858](https://tools.ietf.org/html/rfc7858)).
* DNS over HTTP/2 - DoH ([RFC 8484](https://tools.ietf.org/html/rfc8484)).
* DNS over QUIC - DoQ ([RFC 9250](https://tools.ietf.org/html/rfc9250)).
* [gRPC](https://grpc.io) (not a standard).
Currently CoreDNS is able to:
@@ -211,6 +214,15 @@ tls://example.org grpc://example.org {
}
~~~
Similarly, for QUIC (DoQ):
~~~ corefile
quic://example.org {
whoami
tls mycert mykey
}
~~~
And for DNS over HTTP/2 (DoH) use:
~~~ corefile