Этот вопрос аналогичен, но не описывает запутанный случай, почему NS
запись не может быть получена.
Одна из наших сред кэширования DNS (RHEL 5.8, BIND 9.3.6-20.P1.el5_8.4) вообще перестала возвращать какие-либо полезные данные для зоны. Обычно такая проблема оказывается устаревшей. NS
или склеить запись, но в этом конкретном случае я даже не могу заставить кеш сообщить о NS
запись для зоны.
dig @mycache somedomain NS
возвращается SERVFAIL
. Кэшированных записей серверов имен вообще нет.dig +trace
показывает здоровый путь делегирования, при этом последний сервер имен возвращает ответ. Запуск вручную dig
запрос к последнему серверу имен возвращает действительный NS
запись, соответствующий A
запись существует и согласована с клеем и т. д.Что дает? Почему нет NS
запись, которую мне нужно получить из кеша DNS, даже не плохую?
Если нет авторитетного ответа на NS
записи, то кэшировать нечего, кроме неспособности определить авторитет. Это то, что было кэшировано, и информация сервера в памяти о неполноценных серверах имен не может быть получена клиентом DNS. (или, скорее, это так близко, как вы собираетесь получить)
Обычно проблему с устаревшими записями серверов имен можно определить, сравнив NS
записывать в кеш то, что вы найдете в Интернете, но в этом случае нет авторитетных NS
запись в кеш. Склеивающие записи не являются авторитетными сами по себе; без авторитетного ответа просто нет авторитетного сервера имен.
Здесь обычно происходит одно из двух:
dig +trace
получает устаревший ответ для промежуточного сервера имен из вашего локального кеша, и в настоящий момент действительно существует проблема. Я рассмотрел это поведение в другом вопросе.NXDOMAIN
или SERVFAIL
при поиске связующих записей для поиска авторитетного сервера имен, и это событие было кэшировано. Даже если проблема была исправлена или клей был нанесен где-то еще, сервер имен не будет пытаться запрашивать его снова, пока не истечет внутренний таймер. Запрос на очистку кеша для рассматриваемой зоны обычно сбрасывает его.Последний случай обычно является виновником. Если вы хотите быть абсолютно уверены, возможно, удастся сбросить кэш времени выполнения вашего сервера имен и просмотреть клей в памяти. (т.е. BIND's rndc dumpdb
Учтите, что это очень дорогостоящая операция, если вы не можете ограничить объем дампа до одной зоны, и, как правило, чего следует избегать в сценариях с высокой нагрузкой.