I’ve been gradually requesting certificates for a few thousand domains, which is going very well. However, out of all of them, I’m having trouble with just one - proofs.ruthgillson.com
This domain correctly returns NOERROR for CAA queries on the sub and parent domain, and doesn’t appear to have any strange situations with inaccessible AAAA or DNSSEC issues. I’m stumped!
This is great, thanks! I didn’t know about this tool’s existence. So the next logical question is, why does it show SERVFAIL when the authoritative servers do not? Are the responses cached externally for some period of time by LetsEncrypt?
$ dig proofs.ruthgillson.com CAA @ns3.ideaworldhq.net
; <<>> DiG 9.10.6 <<>> proofs.ruthgillson.com CAA @ns3.ideaworldhq.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59789
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 27
;; WARNING: recursion requested but not available
Not by default, but for cases where the response is larger than 512 bytes (our advertised edns buffersize value) there will be a truncated response from the authoritative nameserver and we will retry the query over TCP.
I suspect that's what is happening here, dig @ns3.ideaworldhq.net +norecurse proofs.ruthgillson.com shows big authority/additional information sections in the answer. Delivering a truncated answer without supporting TCP queries will result in the Let's Encrypt issuance problems you've observed.