.mg TLD DNSSEC Outage: 2017-07-25
Updated: July 25, 2017
Overview
This page gives some details on the .mg (Madagascar) TLD DNSSEC outage on July 25, 2017.
Timeline / DNSViz
- 2017-07-25 18:59:03 UTC — RRSIGs 34 minutes in the future
- 2017-07-25 19:00:52 UTC — RRSIGs 32 minutes in the future
- 2017-07-25 19:03:09 UTC — RRSIGs 30 minutes in the future
- 2017-07-25 19:33:12 UTC — RRSIGs become valid; 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 July 25, 2017:
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: mg.
[B] MG. 3600 IN DNSKEY 257 3 5 ;{id = 64652 (ksk), size = 2048b}
MG. 3600 IN DNSKEY 256 3 5 ;{id = 44863 (zsk), size = 1024b}
[B] Error verifying denial of existence for mg. type A: No keys with the keytag and algorithm from the RRSIG found
;;[S] self sig OK; [B] bogus; [T] trusted
OpenDNS & DNS-OARC
OpenDNS does not support DNSSEC, while DNS-OARC unfortunately does, and thus, DNS-OARC's users saw SERVFAIL for queries under mg during this outage.
With OpenDNS, without DNSSEC, queries succeed:
$ dig ns mg. @resolver1.opendns.com.
; <<>> DiG 9.4.2-P2 <<>> ns mg. @resolver1.opendns.com.
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49410
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mg. IN NS
;; ANSWER SECTION:
mg. 172800 IN NS a.mg.dyntld.net.
mg. 172800 IN NS b.mg.dyntld.net.
mg. 172800 IN NS ns.dts.mg.
mg. 172800 IN NS ns.nic.mg.
mg. 172800 IN NS ns-mg.malagasy.com.
mg. 172800 IN NS censvrns0001.ird.fr.
;; Query time: 0 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Tue Jul 25 18:58:44 2017
;; MSG SIZE rcvd: 172
With DNS-OARC, because of DNSSEC, queries fail:
$ dig +dnssec ns mg. @184.105.193.73
; <<>> DiG 9.4.2-P2 <<>> +dnssec ns mg. @184.105.193.73
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 49182
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;mg. IN NS
;; Query time: 494 msec
;; SERVER: 184.105.193.73#53(184.105.193.73)
;; WHEN: Tue Jul 25 18:58:45 2017
;; MSG SIZE rcvd: 31
Logfile examples
- [1501009378] unbound[240:0] info: validation failure <mg. NS IN>: signature before inception date from 196.192.42.153 for key mg. while building chain of trust
- [1501010983] unbound[240:0] info: validation failure <mg. NS IN>: signature before inception date from 196.192.42.153 for key mg. while building chain of trust