web-dev-qa-db-ja.com

PDNSサーバーの正しいセットアップ手順は何ですか?

DNSサーバーの世界は初めてですが、現在の仕事の一環として、オフィスのネットワークインフラストラクチャをアップグレードする必要があります。

利用可能なオプションを検討した後、私はPowerDNSソリューションPDNSサーバーを使用することにしました。主に、MySQLバックエンドによる簡単な管理オプションが原因です。

私はすでにPDNSサーバーを実行しており、自分のニーズに合わせて機能していますが、古いBIND9と新しいPDNSからの応答にはいくつかの大きな違いがあります。追加のセクションが欠落している、答えが「権限がない」などです。

基本的に、DNSのrequirementsは次のとおりです。

  • 要求されたドメインがMySQLバックエンド(intranet-domain.ourdomain.comなど)のレコードにある場合、応答は信頼できるはずです。
  • MySQLバックエンドのレコードにないリクエストされたドメインの場合、リクエストは外部ネットワークに転送され、適切な権限のあるDNSから回答を取得する必要があります。

現在の設定は次のとおりです。

  • Debian 7
  • pdns(標準リポジトリから3.2)+ pdns-backend-mysql + poweradmin
  • pdns-recursor(それ以外の場合は、外部ドメイン名を解決していませんでした)

質問

  • 外部アドレスの解決を機能させるために、本当にpdns-recursorが必要ですか?不明なアドレスをISPのDNSに転送する方法がある場合は、教えてください。
  • 応答をBIND9のようにする方法は?たとえば、要求されたアドレスなどについてNSについて説明している追加のセクションも参照してください。
  • さらに、DHCP PDNSをプライマリとして、BIND9をセカンダリとして設定した場合、応答は常にPDNSではなくBIND9から送信されます。すべてのレコードとゾーンをBIND9からMySQLバックエンドにインポートしましたが。それを修正するには?

pdns.conf

allow-recursion=192.168.1.0/8,10.0.0.0/16,127.0.0.0/8 
allow-recursion-override=on 
config-dir=/etc/powerdns 
daemon=yes 
disable-axfr=yes 
guardian=yes 
lazy-recursion=yes 
local-address=192.168.1.5 
local-port=53 
master=yes 
module-dir=/usr/lib/powerdns 
recursor=127.0.0.1 
setgid=pdns 
setuid=pdns 
socket-dir=/var/run 
version-string=powerdns 
out-of-zone-additional-processing=yes 
include=/etc/powerdns/pdns.d

recursor.conf

local-address=127.0.0.1
local-port=53
quiet=yes
setgid=pdns
setuid=pdns

pdns.local.gmysql

launch=gmysql
gmysql-Host=localhost
gmysql-port=
gmysql-dbname=pdns
gmysql-user=pdns
gmysql-password=pdns
gmysql-dnssec=yes
4

再帰リゾルバと権威ネームサーバーを1つのサーバーに統合したいようです。

構成ファイルで再帰オプションを指定することにより、再帰的な処理を必要とする質問は指定されたIPアドレスに渡されます

http://doc.powerdns.com/html/recursion.html

ドキュメントはN.B。の状態になります:

非常にタイトなパケットループにつながるPowerDNS Authoritative Server自体をリカーサに向けないように注意してください!

127.0.0.1のみにpdns-recursorを配置することで、2つを分離できたようです。

DigまたはHostコマンドをサーバーのIPに送信してテストし、dnsサーバーのすべてのインターフェイスでWiresharkまたはtcpdumpで何が発生するかを監視できます。

権威フラグについては、質問3を参照してください。

http://doc.powerdns.com/pdns-users-faq.html

コメントに基づいて編集:

別のネームサーバーを再帰として使用する場合は、それをpdns.confの再帰設定で設定します。例えば:

再帰:8.8.8.8

2
dmourati