Назад | Перейти на главную страницу

Рекурсор PowerDns устраняет сбой корневого сервера

У меня возникают проблемы с powerdns-recursor (версия 3.5.3-1ubuntu0.1, Ubuntu 14.04), возвращающим SERVFAIL, когда запрашиваемый корневой сервер не работает. Я бы подумал, что он запросит еще один, но вместо этого он просто вернет SERVFAIL ...

В настоящее время b.root-servers.net (199.9.14.201) не работает (по крайней мере, для меня):

# dig google.com @199.9.14.201

; <<>> DiG 9.9.5-3ubuntu0.17-Ubuntu <<>> google.com @199.9.14.201
;; global options: +cmd
;; connection timed out; no servers could be reached

и мой локальный сервер варьируется между возвращением SERVFAIL и хорошим результатом. Этот результат, кажется, исходит из кеша пакетов.

Я установил локальный рекурсор pdns на нашей машине мониторинга Nagios и использую его в /etc/resolv.conf чтобы убедиться, что Nagios быстро обнаруживает проблемы с зоной DNS или сервером (в противном случае может пройти день или больше, прежде чем проблема будет обнаружена). Мой /etc/powerdns/recursor.conf является:

local-address=127.0.0.1, ::1
local-port=53
max-cache-ttl=60
quiet=no
setgid=pdns
setuid=pdns

Я не могу понять, как заставить Power DNS пробовать другие корневые серверы на SERVFAIL. Для меня не имеет смысла возвращать SERVFAIL клиенту, когда один из запрашиваемых корневых серверов не работает.

Изменить: я обновил сервер до 16.04 с Power DNS 4.0. Я заблокировал корневой сервер B с помощью ip(6)tables в течение дня, и, кажется, не имеет никаких побочных эффектов. Итак, эта версия, кажется, справляется с этим лучше.

вы должны добавить свой корневой сервер в файл подсказок на /etc/powerdns/recursor.conf
добавьте своего корневого мастера или подчиненных в файл подсказок, как показано ниже

.                          360000000      NS    my-dns-root-server.com

my-dns-root-server.com     360000000      A     {your root server ip}