Powerdns recursor がルートサーバーの停止に対処

Powerdns recursor がルートサーバーの停止に対処

クエリされたルート サーバーがダウンしているときに、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 を返す場合と、良好な結果を返す場合とで結果が異なります。この結果はパケット キャッシュから来ているようです。

私は Nagios 監視マシンにローカル pdns-recursor を設定し、それを使用して/etc/resolv.confNagios が DNS ゾーンまたはサーバーの問題を迅速に検出できるようにします (そうしないと、問題が検出されるまでに 1 日以上かかることがあります)。私の設定は次のとおり/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 の他のルート サーバーを試行させる方法がわかりません。照会されたルート サーバーの 1 つがダウンしているときにクライアントに SERVFAIL を返すのは意味がありません。

編集: サーバーを 16.04 にアップグレードし、Power DNS 4.0 を使用しました。ルート サーバー B をip(6)tables1 日間ブロックしましたが、悪影響はないようです。したがって、このバージョンの方が適切に対処できるようです。

答え1

/etc/powerdns/recursor.conf のヒントファイルにルートサーバーを追加する必要があります。
ヒントファイルにルートマスターまたはスレーブを以下のように追加します。

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

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

関連情報