この特集のトップページへ
Chapter 9:既存DNSとの統合 〜BINDとの相互運用〜

見出し 9.2 既存のDNSサーバーをセカンダリサーバーとして利用する

 セカンダリサーバーにBINDを使用する場合には,本当にその必要があるかどうかを十分に検討する必要がある。

 すでに「8.2.5 Active Directoryとの統合」で説明したとおり,Microsoft DNSサーバーは,Active Directoryとの統合モードで運用するとマルチマスタレプリケーションで動作する。しかし,BINDをはじめとする一般的なDNSサーバーは,プライマリ/セカンダリで構成されたシングルマスタレプリケーションで動作する。そのため,統合モードで運用されているMicrosoft DNSサーバーのマルチマスタレプリケーションに,BINDを参加させることはできない。とはいえ,Active Directoryとの統合モードで運用されているMicrosoft DNSサーバーをプライマリサーバーとして,BINDをセカンダリサーバーとして,それぞれ構成することは可能である(Fig.9-2)。したがって,BIND側でMicrosoft DNSサーバーをプライマリサーバーとして指定することにより,全体としては正常に動作させることができる。

Fig.9-2 既存のDNSサーバーをセカンダリサーバーとして利用する構成
fig.9-2

 注意しなければならないことは,マルチマスタレプリケーションモデルでは任意のMicrosoft DNSサーバーのゾーン情報が更新される可能性があるので,BIND側で指定されているプライマリサーバーが常に最新のゾーン情報を保持しているとは限らないということである。逆に,ゾーンをActive Directoryと統合しなかった場合,Microsoft DNSサーバーはセキュアDynamic DNSを使用できなくなってしまい,セキュリティ上の問題が発生することになる。

 Microsoft DNSサーバーが1台しか存在しない場合は,上記のような問題は発生しない。ネットワークが小規模で,Windows 2000 Serverが1台しかないような環境では,費用を抑えるために,LinuxやFreeBSDなどにBINDを導入し,これをセカンダリサーバーとして構成してもよいだろう。

 セカンダリサーバーにBINDを使用する場合は,SRVレコードをサポートしていることが最低条件となる。BIND 8.1.2以降はこの条件を満たしているが,できるだけ最新バージョン(本稿の執筆時点ではBIND 8.2.2-P5)を使用することをお勧めする。BIND 4.9.5以前を使用している場合は,この条件を満たしていないので,残念ながらActive Directory環境で使用することはできない(4.9.5-t2aからSRVレコードのサポートが開始されている)。その場合,BIND 8.2.2-P5以降に移行するか,Microsoft DNSサーバーを使用することを選択する必要がある。

 Active Directory環境では,必須条件となるSRVレコードのサポート以外にも,Dynamic DNSのサポートやIncremental Zone Transeferのサポートも推奨されている。Active Directoryを使用している環境でDNSサーバーがIncremental Zone Transferをサポートしていないと,ゾーン情報の転送で無駄なトラフィックがかなり発生することが予想されるので,注意してほしい。Windows 2000に添付されているMicrosoft DNS以外を使用するのであれば,RFC1034RFC1035に従っていることはもちろんであるが,さらに次の条件を満たしていることが望ましい。

  • RFC2052で提唱されているSRVレコードのサポート(必須)
  • RFC1995で提唱されているIncremental Zone Transfer(推奨)
  • RFC1996で提唱されているDNS NOTIFY(推奨)
  • RFC2136で提唱されているDynamic DNS(推奨)
prev Chapter 9 3/14 next