diff options
author | 2017-10-24 10:16:03 +0100 | |
---|---|---|
committer | 2017-10-24 10:16:03 +0100 | |
commit | fcd0342e42a8be5a1cfe41304f0a8099b1bc0e06 (patch) | |
tree | 5fa74c98e7a4c729cd8597f477c14a41ca7503cc /README.md | |
parent | 5f813bcc216642021ae50b07a8aead2e73e9d059 (diff) | |
download | coredns-fcd0342e42a8be5a1cfe41304f0a8099b1bc0e06.tar.gz coredns-fcd0342e42a8be5a1cfe41304f0a8099b1bc0e06.tar.zst coredns-fcd0342e42a8be5a1cfe41304f0a8099b1bc0e06.zip |
CIDR query routing (#1159)
* core: allow all CIDR ranges in zone specifications
Allow (e.g.) a v4 reverse on a /17. If a zone is specified in such a
way a FilterFunc is set in the config. This filter is checked against
incoming queries.
For all other queries this adds a 'x != nil' check which will not impact
performace too much. Benchmark function is added as well to check for
this as wel.
Add multiple tests in tests/server_reverse_test.go.
Benchmark shows in the non-reverse case this hardly impact the speed:
~~~
classless:
pkg: github.com/coredns/coredns/core/dnsserver
BenchmarkCoreServeDNS-4 1000000 1431 ns/op 16 B/op 1 allocs/op
pkg: github.com/coredns/coredns/core/dnsserver
BenchmarkCoreServeDNS-4 1000000 1429 ns/op 16 B/op 1 allocs/op
master:
pkg: github.com/coredns/coredns/core/dnsserver
BenchmarkCoreServeDNS-4 1000000 1412 ns/op 16 B/op 1 allocs/op
pkg: github.com/coredns/coredns/core/dnsserver
BenchmarkCoreServeDNS-4 1000000 1429 ns/op 16 B/op 1 allocs/op
~~~
* README.md updates
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -155,9 +155,11 @@ IP addresses are also allowed. They are automatically converted to reverse zones ~~~ Means you are authoritative for `0.0.10.in-addr.arpa.`. -The netmask must be dividable by 8, if it is not the reverse conversion is not done. This also works -for IPv6 addresses. If for some reason you want to serve a zone named `10.0.0.0/24` add the closing -dot: `10.0.0.0/24.` as this also stops the conversion. +This also works for IPv6 addresses. If for some reason you want to serve a zone named `10.0.0.0/24` +add the closing dot: `10.0.0.0/24.` as this also stops the conversion. + +This even works for CIDR (See RFC 1518 and 1519) addressing, i.e `10.0.0.0/25`, CoreDNS will then +check if the `in-addr` request falls in the correct range. Listening on TLS and for gRPC? Use: |