Я заметил, что сервер имен 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
Предполагая, что ваша паста не была изменена каким-либо образом (т.е. случайно комбинируя пасты из двух разных выходов), то, что вы опубликовали, не является обычным поведением, которое обычно наблюдается в дикой природе. Я не смог воспроизвести поведение во время этого ответа.
А SERVFAIL
указывает на немедленный сбой в разрешении DNS и обычно сопровождается 0 ответами. Дать ответ в этом контексте, как правило, было бы противоречием: если бы вы могли дать ответ, зачем бы вам отмечать ответ как сбой сервера?
Если это не реализация нового экспериментального RFC, которого я еще не видел (я пингуюсь с некоторыми ветеринарами в комментариях), это, скорее всего, ошибка в самом программном обеспечении. Никто на Serverfault не может предоставить техническую помощь для устранения ошибки такого рода, поэтому лучше всего открыть заявку в Cloudflare и попросить их изучить ее.