[dns-operations] chrome's 10 character QNAMEs to detect NXDOMAIN rewriting
Robert Edmonds
edmonds at mycre.ws
Thu Nov 28 15:52:29 UTC 2013
Mark Andrews wrote:
> In message <20131128000148.GA20782 at mycre.ws>, Robert Edmonds writes:
> > i'm curious as to exactly what this root zone slaved resolver
> > configuration looks like and how it would behave. i don't believe i've
> > ever set up a resolver like that before.
>
> zone "." IN {
> type slave;
> file "slave/root";
> masters { 192.5.5.241; };
> notify no;
> };
>
> > if i understand things right, this config could only be achieved with
> > particular resolver implementations that combine authoritative and
> > recursive service into the same server, and the only implementation i
> > know of that does that is BIND 9. i believe unbound, powerdns, BIND 10,
> > djbdns, etc. are all either recursive only, or split recursive and
> > authoritative service into separate daemons, afaik. but i'm not
> > familiar with any of the closed source implementations.
> >
> > if such a config is possible, how is it supposed to work with DNSSEC?
> > if the DNS server loads a bad copy of the root zone somehow during an
> > AXFR, does it use its configured root trust anchor to determine that its
> > copy of the zone doesn't validate, or does the act of configuring the
> > root zone as an authoritative zone make it more trustworthy, thus
> > overriding the need to do DNSSEC validation at the root level?
>
> You can do stuff like this (cut-and-pasted from a live config).
>
> managed-keys {
> . initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0=";
> };
>
> view "secure" {
> match-clients { localnets; };
> match-recursive-only yes;
> zone . {
> type static-stub;
> server-addresses { 127.0.0.1; };
> };
> };
>
> view "external" {
> match-clients { localnets; };
> recursion no;
> allow-recursion { none; };
>
> zone "." IN {
> type slave;
> file "slave/root";
> masters { 192.5.5.241; };
> notify no;
> };
> };
>
> The same trick can be used to validate data from other zones that
> are locally served.
so, just to be clear, this config snippet alone:
zone "." IN {
type slave;
file "slave/root";
masters { 192.5.5.241; };
notify no;
};
is not sufficient if one wants to both slave and validate the root zone?
this snippet will bypass DNSSEC validation if configured into a
recursive server?
--
Robert Edmonds
More information about the dns-operations
mailing list