Недавно у меня возникла проблема, когда удаленная служба, запрашивающая IP-адрес для моего сервера (с размещенным поставщиком DNS), отвечала:
DNS problem: SERVFAIL looking up A for mysql.xavamedia.nl
(Обновление: удаленный сервис, упомянутый здесь: Let's Encrypt; я подал ошибку в их систему отслеживания проблем, которая привела меня на этот путь.)
При тестировании в моей локальной сети я смог убедиться, что иногда я получаю пустой ответ DNS от размещенного DNS-сервера. По-видимому, это периодически, потому что это происходит только тогда, когда записи DNS не находятся в кэше, и это только проблема, когда DNS-сервер действительно занят.
Вот описание Wireshark пустого ответного сообщения:
Конечно, поскольку большинство DNS-запросов и ответов отправляются по протоколу UDP, локальный распознаватель просто подождет ответ, а затем сдастся. Что меня сейчас интересует, есть ли рекомендации по времени ответа DNS? Мой DNS-хостер как бы пожал плечами и сказал, что мой локальный распознаватель отправил пустой ответ слишком рано. У меня никогда раньше не было этой проблемы, но я удивлен режимом сбоя - пустым ответом DNS без кода ошибки.
Кто-нибудь знает некоторые рекомендации о том, как это должно работать, и когда / как я могу доказать, что мой DNS-хостинг делает что-то не так?
dig
/nslookup
или рассечение Wireshark. (tcpdump
не будет достаточно хорош) Если вы используетеnslookup
,set debug
сначала выполните .