dnssec-tools.org DNSSEC Outage:
2017-12-17 to 2017-12-26
Updated: December 27, 2017
Overview
This page gives some details on the dnssec-tools.org DNSSEC outage from December 17 to December 26, 2017.
Timeline / DNSViz
- 2017-12-17 00:24:33 UTC — RRSIGs expire
- 2017-12-17 00:26:27 UTC — expired RRSIGs
- 2017-12-17 00:27:31 UTC — expired RRSIGs
- 2017-12-17 00:30:12 UTC — expired RRSIGs
- 2017-12-17 00:33:01 UTC — expired RRSIGs
- 2017-12-17 00:33:22 UTC — expired RRSIGs
- 2017-12-17 00:33:54 UTC — expired RRSIGs
- 2017-12-20 01:11:39 UTC — expired RRSIGs
- 2017-12-21 01:26:56 UTC — expired RRSIGs
- 2017-12-23 03:06:17 UTC — expired RRSIGs
- 2017-12-26 13:20:06 UTC — expired RRSIGs
- 2017-12-26 15:24:24 UTC — last personally observed DNSSEC failure
- 2017-12-26 17:33:46 UTC — DNSSEC outage over
DNSSEC Debugger
Unlike DNSViz, Verisign's DNSSEC Debugger doesn't archive results, so here's a screenshot of my web browser's output from December 17, 2017:

Google Public DNS: with and without DNSSEC
DNSSEC can be disabled in queries via the CD (checking disabled) bit. Let's compare DNS queries with and without DNSSEC.
With DNSSEC, DNS queries fail:
$ dig +dnssec a dnssec-tools.org. @8.8.8.8
; <<>> DiG 9.4.2-P2 <<>> +dnssec a dnssec-tools.org. @8.8.8.8
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 8324
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 512
;; QUESTION SECTION:
;dnssec-tools.org. IN A
;; Query time: 109 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Dec 17 00:26:38 2017
;; MSG SIZE rcvd: 45
You have to disable DNSSEC to make DNS queries work:
$ dig +cd a dnssec-tools.org. @8.8.8.8
; <<>> DiG 9.4.2-P2 <<>> +cd a dnssec-tools.org. @8.8.8.8
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56381
;; flags: qr rd ra cd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;dnssec-tools.org. IN A
;; ANSWER SECTION:
dnssec-tools.org. 230 IN A 64.90.35.104
;; Query time: 8 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Dec 17 00:26:38 2017
;; MSG SIZE rcvd: 50
drill trace
Since DNSSEC contains so much garbage, I put the complete drill trace into its own file with the relevant portion below (emphasis added):
;; Domain: dnssec-tools.org.
[B] dnssec-tools.org. 300 IN DNSKEY 256 3 5 ;{id = 3147 (zsk), size = 1024b}
dnssec-tools.org. 300 IN DNSKEY 256 3 5 ;{id = 19221 (zsk), size = 1024b}
dnssec-tools.org. 300 IN DNSKEY 257 3 5 ;{id = 34816 (ksk), size = 4096b}
[B] dnssec-tools.org. 300 IN A 64.90.35.104
;; Error: No keys with the keytag and algorithm from the RRSIG found
;;[S] self sig OK; [B] bogus; [T] trusted
Logfile examples
- [1513478394] unbound[68929:0] info: validation failure <dnssec-tools.org. A IN>: signature expired from 208.79.240.3 for key dnssec-tools.org. while building chain of trust
- [1513483131] unbound[68929:0] info: validation failure <www.dnssec-tools.org. A IN>: signature expired from 68.78.72.20 for key dnssec-tools.org. while building chain of trust
- [1513479574] unbound[68929:0] info: validation failure <www.dnssec-tools.org. A IN>: signature expired from 75.101.48.145 for key dnssec-tools.org. while building chain of trust
- [1513488073] unbound[68929:0] info: validation failure <dnssec-tools.org. MX IN>: signature expired from 208.79.241.3 for key dnssec-tools.org. while building chain of trust
- [1513488214] unbound[68929:0] info: validation failure <dnssec-tools.org. CAA IN>: signature expired from 199.101.97.233 for key dnssec-tools.org. while building chain of trust
- [1513819050] unbound[74085:0] info: validation failure <www.dnssec-tools.org. A IN>: signature expired from 199.101.97.233 for key dnssec-tools.org. while building chain of trust
- [1514301864] unbound[80533:0] info: validation failure <www.dnssec-tools.org. A IN>: signature expired from 208.79.241.3 for key dnssec-tools.org. while building chain of trust