この特集のトップページへ

Directory design 2... 複製トラフィックから見たドメイン設計
sankaku.gif 頻繁に使われるドメインコントローラ

 参考までに,グローバルカタログを使ってフォレスト全体からオブジェクトを検索するときに,どのような作業工程となるのかを,RC2版に基づいて見ておくことにする。ここでは,親ドメイン(parent.com)と子ドメイン(child.parent.com)が,それぞれ別のサイトで構成されているものとする。また,それぞれに1台ずつドメインコントローラが配置され,グローバルカタログサーバーとDNSサーバーはparent.comドメインに1台ずつ設置されているものとする。

Fig.10 フォレスト全体の検索
fig10.gif

  1. DNSサーバーが動的更新をサポートしている場合,parent.comドメインとchild.parent.comドメインのドメインコントローラは,起動時に2つの処理を実行する。まず,ドメインコントローラは,ローカルコンピュータの\winnt\system32\config\Netlogon.dnsファイルに記述されているNetlogonサービスを使って,SRVレコード,CNAMEレコード,AレコードをDNSサーバーに登録する。続いて,DNSサーバーに登録されている,そのドメインコントローラに必要なレコード(自分のドメインにかかわるレコードや親ドメインにかかわるレコードなど)をクライアントとして名前解決し、その結果をキャッシュしておく。
     
  2. あるユーザーがグローバルカタログを使ってフォレスト全体からオブジェクトを検索しようとした場合,問い合わせ先のグローバルカタログサーバーを探さなければならない。そのとき,クライアントはDNSに直接“_gc”のSRVレコードを問い合わせるのではなく,自分のドメインのドメインコントローラに「どのサーバーに検索要求を送ればよいのか」と問い合わせる。
     
  3. ドメインコントローラは,すでにグローバルカタログサーバーのSRVレコードを知っているので,それをLDAPRefferalとしてクライアントに返す。
     
  4. クライアントがドメインコントローラからLDAPサーバーのIPアドレスを取得できなかった場合には,DNSにAレコードを問い合わせ,グローバルカタログサーバーにTCPポート3268番を使ってオブジェクトの検索要求を送る。指定した情報がグローバルカタログにあれば,結果が戻ってくる。
     

 すでに何度か述べたように,オブジェクトの検索やログオン処理などの応答速度を重視したい場合には,サイト内に,DNSサーバー,ドメインコントローラ,グローバルカタログサーバーを,最低1台(フォールトトレラントを考慮した場合はドメインコントローラを2台)は配置しておきたい。

 少なくとも,ユーザーが何かと頻繁にアクセスするドメインコントローラは,各サイトに配置するようにしたほうがよいだろう。しかしこの場合も,サイトが異なるドメインコントローラ間で複製が発生するため,ディレクトリ内容を変更する頻度や複製スケジュールによっては,小規模なサイトにドメインコントローラを配置するほうが,サイトを越えたドメインコントローラに毎回問い合わせるよりもコストがかかってしまうこともある。その場合には,無理にサイトごとに1台のドメインコントローラを配置する必要はない。

prevpg.gif Directory design 16/18 nextpg.gif