図1 ActiveDirectoryではドメイン・コントローラのアドレス情報をDNSサーバーが管理<BR>クライアント・パソコンはログオン時にDNSサーバーに自分のドメインを管理するドメイン・コントローラのアドレス情報を問い合わせる。
図1 ActiveDirectoryではドメイン・コントローラのアドレス情報をDNSサーバーが管理<BR>クライアント・パソコンはログオン時にDNSサーバーに自分のドメインを管理するドメイン・コントローラのアドレス情報を問い合わせる。
[画像のクリックで拡大表示]
図2 DNSサーバーに登録されているレコード情報&lt;BR&gt;ActiveDirectoryではドメイン・コントローラなどのアドレス情報をDNSサーバーに登録し,クライアントが探せるようにする。図はWindowsServer2003でDNSサーバーを構成した場合に格納されている情報の例。
図2 DNSサーバーに登録されているレコード情報<BR>ActiveDirectoryではドメイン・コントローラなどのアドレス情報をDNSサーバーに登録し,クライアントが探せるようにする。図はWindowsServer2003でDNSサーバーを構成した場合に格納されている情報の例。
[画像のクリックで拡大表示]

 Active Directory(アクティブ・ディレクトリ)はWindows 2000以降で導入されたWindowsネットワークを統合的に管理するしくみです。Active Directoryを使うことでサーバー・マシンが個別に管理していたユーザーとパスワードの対応表(ユーザー管理台帳)などを,ドメイン・コントローラというサーバー・マシンが集中管理し,ほかのサーバーやクライアント・マシンはその情報を参照するようにできます。

 こうしておけば,クライアント・ユーザーがパスワードを変更するとき,ドメイン・コントローラの情報を書き換えるだけで済みます。管理者も,人事異動などのときに,ユーザーを追加したり削除する作業をドメイン・コントローラに対して行えば済みます。個々のサーバー・マシンに対してユーザー情報を更新する必要がなくなり,管理の手間を大幅に削減できるわけです。

リソースの検索にDNSを使う

 ただし,Active Directoryを使うためにはDNSサーバーを運用する必要があります。DNSサーバーは,インターネットのリソース(コンピュータ名,メール・サーバー名など)を管理するために作られました。Active Directoryは,このしくみを流用してWindowsネットワークのリソースを探すために利用します。

 例えば,Active Directoryのドメインに所属するコンピュータにユーザーがログオンするときに,DNSサーバーが利用されます(図1[拡大表示])。流れを確認しておきましょう。

 ユーザーの情報はドメイン・コントローラのユーザー台帳で管理されています。したがって,ユーザーがコンピュータにログオンするためには,ドメイン・コントローラにアクセスして認証を受ける必要があります。しかし,自分を管理しているドメイン・コントローラはどれかわかりません。

 そこでログオンを受け付けたクライアント・パソコンは,DNSサーバーに対してユーザーが所属するドメインの名前を通知し,そのドメインを管理しているドメイン・コントローラの名前を教えてもらいます。

DNSがないとログインできない

 すると,DNSサーバーは適切なドメイン・コントローラの名前(DNS名)を通知してきます。

 実際には,ドメイン・コントローラの情報はサービス(SRV)レコードとしてDNSサーバーに登録されます。図2[拡大表示]でハイライト表示している「_ldap」の行がドメイン・コントローラの情報を示しています。

 ここでは「testdom.jp」というドメインを管理するドメイン・コントローラが「server1.testdom.jp」であると示しています。ここから類推できるように,ドメイン・コントローラはLDAP(エルダップ)*サーバーとしてDNSサーバーに登録されています。

 ドメイン・コントローラの名前を取得したクライアント・パソコンは,その名前に対応するIPアドレスを調べます。ここでもDNSサーバーに問い合わせ要求パケットを送るのが一般的です。

 こうして得たIPアドレスによって,クライアント・パソコンはようやくドメイン・コントローラにアクセスできるようになります。そして,パソコンはユーザーの認証をドメイン・コントローラに依頼するのです。

 もしDNSサーバーが存在しなかったり,DNSサーバーに必要な情報が登録されていないと,一連の動作は失敗します。つまり,ユーザーはActive Directoryのドメインへアクセスできなくなってしまいます。

 なお図2では,しくみを理解しやすくするためにDNSサーバーとドメイン・コントローラを別々のコンピュータで運用するように説明しました。

 もちろん別々のコンピュータを使って運用することは可能ですが,実際にActive Directoryを構築する場合は,Windowsに組み込まれたDNSサーバー・ソフトを利用するのが一般的です。こうするとDNSサーバーとドメイン・コントローラが連携し,管理を一元化できるからです。


●筆者:湯山 拓(ゆやま たく)
NECソフト
ICTシステム事業部