我注意到 cloudflare 名称服务器无法解析某些 DNS 名称,并使用 SERVFAIL 回复。但是,当我运行 dig 命令时,我仍然会收到回复。这是为什么?
$ dig sdo.gsfc.nasa.gov @1.1.1.1
; <<>> DiG 9.11.4-4-Debian <<>> sdo.gsfc.nasa.gov @1.1.1.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 2956
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1452
;; QUESTION SECTION:
;sdo.gsfc.nasa.gov. IN A
;; ANSWER SECTION:
sdo.gsfc.nasa.gov. 300 IN CNAME gs671-sdoweb.ndc.nasa.gov.
gs671-sdoweb.ndc.nasa.gov. 827 IN A 129.164.137.36
;; Query time: 763 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Di Aug 28 10:56:15 CEST 2018
;; MSG SIZE rcvd: 93
答案1
假设您的粘贴内容没有经过任何修改(即意外地将两个不同输出的粘贴内容组合在一起),那么您发布的内容并不是常见的行为。在回答此问题时,我无法重现此行为。
ASERVFAIL
表示 DNS 解析立即失败,通常伴随 0 个答案。在这种情况下提供答案通常是一个矛盾:如果您能够提供答案,为什么您要将响应标记为服务器故障?
除非这是一项我还没见过的新的实验性 RFC 的实现(我会在评论中向一些专家咨询),否则这很可能是软件本身的一个错误。Serverfault 上没有人可以为这种性质的错误提供技术支持,所以你最好的选择是向 Cloudflare 开具一张票据,请他们调查此事。