[dns-operations] Cloudflare public DNS sometimes forwards incomplete&duplicated subset of NSEC RRs
Marek Vavruša
marek at vavrusa.com
Wed Sep 16 18:50:31 UTC 2020
Hi Viktor, I forgot to update this thread, but this should be fixed.
Best,
Marek
On Tue, 1 Sep 2020 at 10:19, Marek Vavruša <marek at vavrusa.com> wrote:
>
> Thanks Viktor, this looks like a bug in writing NSECs to the final response.
>
> On Mon, 31 Aug 2020 at 23:09, Viktor Dukhovni <ietf-dane at dukhovni.org> wrote:
> >
> >
> > My validating resolver downstream of CF 1.1.1.1 (among others) at times
> > sees "bogus" denial of existence for:
> >
> > _25._tcp.mx.runbox.com IN TLSA ?
> >
> > This is because the set of NSEC records forwarded by Cloudflare for this
> > domain is not complete. Looking across the major public DNS services:
> >
> > * All return AD=1
> > * I see the same zone apex SOA and signature for all
> > * The same NSEC record and signature for "munin01" for all
> > * The apex wildcard record and signature identically ONLY from
> > Google, Verisign and Quad9. From CloudFlare, I get the munin01
> > NSEC record and signature twice, but this alone fails to validate the
> > NODATA response.
> >
> > CF -> @ 1.1.1.1 _25._tcp.mx.runbox.com. IN TLSA ? ; +dnssec
> > runbox.com. IN SOA dns61.copyleft.no. hostmaster at copyleft.no. 3000008471 14400 3600 1296000 3600
> > runbox.com. IN RRSIG SOA 13 2 86400 20200914155225 20200831142225 38438 runbox.com. <same SOA sig>
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> >
> > GOOG -> @ 8.8.8.8 _25._tcp.mx.runbox.com. IN TLSA ?
> > runbox.com. IN SOA dns61.copyleft.no. hostmaster at copyleft.no. 3000008471 14400 3600 1296000 3600
> > *.runbox.com. IN NSEC _acme-challenge.runbox.com. A MX RRSIG NSEC
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > runbox.com. IN RRSIG SOA 13 2 86400 20200914155225 20200831142225 38438 runbox.com. <same SOA sig>
> > *.runbox.com. IN RRSIG NSEC 13 2 3600 20200914155225 20200831142225 38438 runbox.com. <apex-wildcard-sig>
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> >
> > VRSN -> @ 64.6.64.6 _25._tcp.mx.runbox.com. IN TLSA ?
> > runbox.com. IN SOA dns61.copyleft.no. hostmaster at copyleft.no. 3000008471 14400 3600 1296000 3600
> > runbox.com. IN RRSIG SOA 13 2 86400 20200914155225 20200831142225 38438 runbox.com. <same SOA sig>
> > *.runbox.com. IN NSEC _acme-challenge.runbox.com. A MX RRSIG NSEC
> > *.runbox.com. IN RRSIG NSEC 13 2 3600 20200914155225 20200831142225 38438 runbox.com. <apex-wildcard-sig>
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> >
> > Q9 -> @ 9.9.9.10 _25._tcp.mx.runbox.com. IN TLSA ?
> > runbox.com. IN SOA dns61.copyleft.no. hostmaster at copyleft.no. 3000008471 14400 3600 1296000 3600
> > runbox.com. IN RRSIG SOA 13 2 86400 20200914155225 20200831142225 38438 runbox.com. <same SOA sig>
> > *.runbox.com. IN NSEC _acme-challenge.runbox.com. A MX RRSIG NSEC
> > *.runbox.com. IN RRSIG NSEC 13 2 3600 20200914155225 20200831142225 38438 runbox.com. <apex-wildcard-sig>
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> >
> > The same incomplete/redundant response comes back from 1.1.1.1 when
> > queried from California, New York and Germany, presumably different
> > instances, with fresh uncached results. Oddly enough, if I send the
> > same query to CF with also the "CD" bit set, I get a better answer,
> > be it this time with "AD=0":
> >
> > @ 1.1.1.1 _25._tcp.mx.runbox.com. IN TLSA ? ; +cd +dnssec
> > runbox.com. IN SOA dns61.copyleft.no. hostmaster at copyleft.no. 3000008471 14400 3600 1296000 3600
> > runbox.com. IN RRSIG SOA 13 2 86400 20200914155225 20200831142225 38438 runbox.com. <same SOA sig>
> > *.runbox.com. IN NSEC _acme-challenge.runbox.com. A MX RRSIG NSEC
> > munin01.runbox.com. IN NSEC ipmi.mysql01.runbox.com. A RRSIG NSEC
> > *.runbox.com. IN RRSIG NSEC 13 2 3600 20200914155225 20200831142225 38438 runbox.com. <apex-wildcard-sig>
> > munin01.runbox.com. IN RRSIG NSEC 13 3 3600 20200914155225 20200831142225 38438 runbox.com. <munin01-nsec-sig>
> >
> > Asking again without "cd" brings back the original incomplete answer.
> >
> > --
> > Viktor.
> > _______________________________________________
> > dns-operations mailing list
> > dns-operations at lists.dns-oarc.net
> > https://lists.dns-oarc.net/mailman/listinfo/dns-operations
More information about the dns-operations
mailing list