Hello Wido,
On 26 Jul 2016, at 10:22, Wido den Hollander wrote:
wido@crew:~$ dig -6 +trace NSEC c.secure.widodh.nl
; <<>> DiG 9.9.5-3ubuntu0.8-Ubuntu <<>> -6 +trace NSEC
c.secure.widodh.nl
;; global options: +cmd
...
...
widodh.nl. 3600 IN NS v1.pcextreme.nl.
widodh.nl. 3600 IN NS v2.pcextreme.nl.
widodh.nl. 3600 IN NS v3.pcextreme.eu.
widodh.nl. 3600 IN DS 44692 8 2
C9AABC5574CF0772A5AC75120DA56FE387BCF52DC8122B04EA7FC41B 8EFDF47C
widodh.nl. 3600 IN RRSIG DS 8 2 3600 20160804065721 20160721071001
14028 nl. DaT8QiwTBDPnUTNdM25EMQl4zjRjwxL52pinbv/8nsWdx39egO9eOktK
IpS+ntcTv22JYdI4yLrT3HjbeoPMBnAGPKOCQ9hSfnogNFeZATnV9Pti
zPrvqsdsqeGgRWhFWHVY52TuPxjkC5D1B0ZkYPtKpj3/pduY8PYtA5M4 6Ko=
;; Received 418 bytes from 2a00:1188:5::212#53(ns4.dns.nl) in 14 ms
secure.widodh.nl. 3600 IN RRSIG NSEC 8 3 3600 20160804000000
20160714000000 7725 widodh.nl.
XWDj2A4iaEC3ZDxKaiRT/+qIrP7QZ+uuUHz/MYHh76cE2m0Kd4RGhK75
qErhKPOGzg0i+LJ1ePceRFHr0rFO1xPRyQlbAaqxOeeTARGXLLN4SPY5
Ze+qwA0RppIei0Fi2GXJ5+Lha/v57RcGpnLOGgz/NqU3HolTr0Fq+nnf 9j4=
secure.widodh.nl. 3600 IN NSEC soekris.widodh.nl. NS DS RRSIG
NSEC
;; Received 255 bytes from 2001:14a0:300:4::53#53(v2.pcextreme.nl) in
13 ms
wido@crew:~$
v2.pcextreme.nl in this case does NOT respond with NS records
delegating 'secure.widodh.nl' to the *auroradns* servers.
That’s a bug!
Turning on query logging showed me:
select min(ordername) from records where ordername > 'secure c' and
domain_id=8131 and disabled=0 and ordername is not null
select ordername, name from records where ordername <= 'secure c' and
domain_id=8131 and disabled=0 and ordername is not null order by 1
desc limit 1
SELECT content,ttl,prio,type,domain_id,disabled,name,auth FROM records
WHERE disabled=0 and name='secure.widodh.nl' and domain_id=8131
This setup seems to think that because 'widodh.nl' exists on that
setup it has to look locally for the NSEC before and after and not
delegate it towards the other nameservers.
That’s not exactly what’s going wrong, but yes, it is broken.
The last query yields three NS records and one DS record, just as it
is supposed to do.
And indeed that is what it should be giving you, like with any other
type you query (except DS which is supposed to be special).
I am starting to think this is a issue with PowerDNS 3.4.9 and the
MySQL backend. However, I'm not 100% sure as the NSEC part of DNSSEC
is still not 100% clear to me.
Yes, this is an issue in PowerDNS. I have also confirmed it on
4.0.x/master. It is not specific to MySQL, it is broken the same way
with every backend (including non-SQL ones). Can you post your
wonderfully extensive report at
https://github.com/PowerDNS/pdns/issues/new ? Thanks!
Kind regards,
--
Peter van Dijk
PowerDNS.COM BV - https://www.powerdns.com/
_______________________________________________
Pdns-dev mailing list
Pdns-dev@mailman.powerdns.com
https://mailman.powerdns.com/mailman/listinfo/pdns-dev