Why doesn't the DNS resolve after a nameserver change, despite a recursive DNS lookup being successful?

I recently migrated a domain I own from Cloudflare to Netlify DNS, so I had to update my nameservers. When I run a recursive DNS lookup that bypasses DNS cache everything seems to be set up correctly:

$ dig howtogit.net +trace
(output truncated)
howtogit.net.       20  IN  A   159.65.199.87
;; Received 57 bytes from 198.51.44.1#53(dns1.p01.nsone.net) in 18 ms

However, a regular DNS lookup fails:

$ nslookup howtogit.net                                                                               
Server:     192.168.1.1
Address:    192.168.1.1#53

** server can't find howtogit.net: SERVFAIL

I assume that if caching was at fault, Cloudflare would still resolve the lookup which it doesn't. A lookup at 8.8.8.8 (Google's DNS) also fails:

$ dig @8.8.8.8 howtogit.net

; <<>> DiG 9.10.6 <<>> @8.8.8.8 howtogit.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 63809
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;howtogit.net.          IN  A

;; Query time: 43 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Sep 23 13:05:50 CEST 2018
;; MSG SIZE  rcvd: 41

Since DNS records are cached, I also tried flushing Google's DNS cache for my NS and A records. I'm still getting the same result, despite the change having happened over 10 hours ago.

Is my configuration incorrect? How do I make sure my DNS can resolve properly again?


It would appear that the howtogit.net zone used to he signed, and that after switching nameservers it is no longer signed.

However, you have left the old DS record in place, indicating that the zone must be signed with some specific key.

Either remove the DS record or sign the zone again and update the DS record as necessary (the DS record is managed through your registrar).

If you look at the tail end of relevant dig +trace output it's actually quite clear that this must be the case (DS as part of referral but no DNSKEY on the authoritative end, or just no signatures if you query some other type):

$ dig +trace +all howtogit.net DNSKEY

...

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63298
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 6, ADDITIONAL: 5

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;howtogit.net.                  IN      DNSKEY

;; AUTHORITY SECTION:
howtogit.net.           172800  IN      NS      dns1.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns2.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns3.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns4.p01.nsone.net.
howtogit.net.           86400   IN      DS      2371 13 2 F7822E035739507BFB9ED504B65FFE7A95698E58C069EF1DE754EED0 55E6799F
howtogit.net.           86400   IN      RRSIG   DS 8 2 86400 20180927051931 20180920040931 7934 net. POLNdGPgCCeF6ClG4ro1mkUI5DpqUuuLLeR4WCly1L5GbOTgPnzg02Nx 2Sse2dYDLJLB1EQYotZkvVm8GNFS5iE8UQlmp4GA3yxTgUeifw5PX6Eh kiJSip37/CyGCTy6OMPoVeMgQjLnrxt1aAOsnO5BszeGY7gD6ee/XHMO zc4=

;; ADDITIONAL SECTION:
dns1.p01.nsone.net.     172800  IN      A       198.51.44.1
dns2.p01.nsone.net.     172800  IN      A       198.51.45.1
dns3.p01.nsone.net.     172800  IN      A       198.51.44.65
dns4.p01.nsone.net.     172800  IN      A       198.51.45.65

;; Query time: 159 msec
;; SERVER: 2001:503:231d::2:30#53(2001:503:231d::2:30)
;; WHEN: Sun Sep 23 11:35:52 UTC 2018
;; MSG SIZE  rcvd: 402

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53062
;; flags: qr aa; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;howtogit.net.                  IN      DNSKEY

;; AUTHORITY SECTION:
howtogit.net.           3600    IN      SOA     dns1.p01.nsone.net. hostmaster.nsone.net. 1537613509 43200 7200 1209600 3600

;; Query time: 1 msec
;; SERVER: 198.51.45.65#53(198.51.45.65)
;; WHEN: Sun Sep 23 11:35:52 UTC 2018
;; MSG SIZE  rcvd: 103

$