Windows 2000ネットワーク解剖
Windows NTドメインコントローラとの混在環境

Active Directoryドメイン内にWindows NTのBDCが存在する環境

 Windows 2000のドメインコントローラは,Windows 2000クライアントに対して,Kerberosによる認証サービスを提供するほか,Windows NT 4.0のような従来クライアントに対して,NTLMによる認証サービスを提供する。これらはいずれも,従来のWindows NTドメインではPDCやBDCが担っていたサービスである。Active Directoryのドメイン内には,従来クライアントに対してWindows NTドメインにおけるPDCの役割を提供する「PDCエミュレータ」が存在する。PDCエミュレータは,Active Directoryドメイン内に1台のみ存在しており,従来クライアントに対する認証サービスや,Active Directoryドメイン内に存在するWindows NT 4.0のBDCに対する複製サービスを提供する。


訂正! [2002/01/17]の訂正
 以下の文中では、「Windows NT 4.0クライアントはPDCエミュレータとなっているWindows 2000のドメインコントローラでなければ認証されない」と記述しています。しかし、この点について読者から誤りであるとの指摘がありました。
 実際にWindows 2000のドメインコントローラ2台とWindows NT 4.0(SP6a)を使用し、再度検証してみたところ,指摘のとおり、PDCエミュレータとなっているWindows 2000ドメインコントローラがダウンした状態でも、Windows NT 4.0クライアントからドメインにログオンできました。
 したがって、下記の記述内容は誤りとなります。以下のとおり,訂正させていただくとともに,記述に関して誤りがあったことを読者の皆様にお詫びさせていただきます。
 「Windows 2000のドメインコントローラは、PDCエミュレータであるかどうかにかかわらず、Windows 2000やWindows NT 4.0のクライアントに対して認証サービスを提供する。ただし、Windows NT 4.0クライアントを使用する場合には,次の2点に注意する必要がある。(1)パスワードの変更が発生した場合は,PDCエミュレータに対して要求すること、(2)サイトを認識できないために、ネットワーク的に近いドメインコントローラで認証するとは限らないこと−−である。このうち(2)については、Active Directoryクライアントを導入することにより、サイトを認識可能になり、注意点を改善できる。」
 なお,Windows 2000のリソースキット「Chapter 2 - Active Directory Data Storage」のWindows 2000 SAM Storageには、Windows 2000のドメインコントローラがWindows NT 4.0クライアントに対し認証サービスを提供する旨の記述があります。

 PDCエミュレータ以外のWindows 2000のドメインコントローラは,たとえ何台あろうとも,従来クライアントに対する認証サービスを提供しない(この点については,前回の記事で検証したとおりである)。つまり,PDCエミュレータの役割を担ったドメインコントローラがダウンした場合,従来クライアントはドメインにログオンすることができなくなり,ドメイン内で利用できるはずの各種サービスを受けることができなくなるのである。

 小規模なネットワークでは,この点が問題になることは少ないだろう。PDCエミュレータの役割を担ったドメインコントローラがダウンしても,別のWindows 2000のドメインコントローラにPDCエミュレータの役割を移動させればよいからである。しかし,WANを利用している中規模から大規模なネットワークでは,これとは別の問題が発生する。Windows 2000クライアントであれば,サイトを認識し,自分の所属するサイトのドメインコントローラを利用しようとする。しかし従来クライアントは,PDCエミュレータとなっているドメインコントローラしか利用できないため,PDCエミュレータに対して負荷が集中したり,WANのトラフィックが増大したりすることが懸念されるのである。Windows 2000への移行段階では,Windows NT 4.0やWindows 95/98などの従来クライアントがネットワーク内に混在するのが一般的であると思われるので,この問題が及ぼす影響は大きい。

 その解決策として,Microsoft社は,Windows NTでサイトを識別できるようにすると発表している(このアップデートはWindows NT 4.0 Service Pack 7に含まれるという)。しかし,これが実際に現実のものとなるかは,まだ不明瞭である。前回のテスト結果によると,PDCエミュレータ以外のドメインコントローラは,従来クライアントに対する認証サービスを提供していなかった。Windows NT 4.0 Service Pack 7にアップデートすることにより,サイトを認識し,ほかのドメインコントローラも利用できるようになるのか,あるいは別の認証方式を利用するのかなど,不明な点も多い。また,たとえWindows NT 4.0 Service Pack 7によって,望むべき最良の結果が得られたとしても,ネットワーク内にWindows 98/95が多数存在する場合には,やはり既述の問題から逃れることはできない。

 以上のような理由によって,従来クライアントが存在する場合には,従来と同様,Windows NT 4.0のBDCを用意することが現実的な回答となる。Active DirectoryドメインにおけるBDCの役割は,Windows NTドメインにおけるBDCと変わらない。Windows 2000のドメインコントローラであるPDCエミュレータからドメインの情報を複製し,従来クライアントからの認証要求に対応する役割を担う。複製の方式も,Windows 2000のドメインコントローラ間で利用されているマルチマスタ方式ではなく,PDCエミュレータからBDCへと一方的に更新データを送信するシングルマスタ方式である。サイトが複数ある場合には,従来クライアントが存在する各サイトにBDCを配置することで,従来クライアントの認証にBDCを利用させることができる。具体的には,従来クライアントのLMHOSTSファイルに,自分のサイトのBDCを指定すればよい。このように設定することで,強制的に管理者の望むBDCを選択させることができる。

192.168.1.22 W2K-1 #PRE #DOM:ACTIVE

 ただし,Active DirectoryドメインにWindows NT 4.0のBDCを追加できるのは,ドメインが混在モードで運用されているときのみである。ネイティブモードに切り替えると,BDCを追加することはできなくなるので,注意してほしい。ネイティブモードと混在モードの違いについては,ほかの記事でもすでに詳しく解説されているため,本稿ではBDCに関連する話題のみを取り上げることにする。

 混在モードにおけるActive Directoryドメインでは,Windows NT 4.0のBDCを新規に追加することができる。しかし,ネイティブモードに移行させた時点でNetLogon複製のサポートが終了するため,BDCを新規に追加することはできなくなる。NetLogon複製のサポートが終了するということは,その時点で存在しているBDCに対するアカウント情報等の複製も終了するということである。つまり,Active Directoryドメインをネイティブモードに移行したあとで,新規にユーザーアカウントを作成しても,その情報はBDCに通知されない。すでに存在しているユーザーアカウントのパスワードを変更した場合も同様で,BDCに変更は通知されない。ただし,BDCに対して指定したパスワードが間違っている場合には,PDCエミュレータにパスワードを確認するため,ログオンすることは可能である。以上のような特性から,ネイティブモードへの移行は,BDCが本当に不要になった時点――つまり,従来クライアントがなくなったか,アップデートなどによってActive Directoryへの対応が強化されて従来クライアントでしか動作しないアプリケーションなどがなくなった場合に実施することが望ましい。

 なお,Active Directoryドメインに新規のBDCを追加する場合は,あらかじめWindows 2000のドメインコントローラでBDCとするコンピュータのコンピュータアカウントを作成しておく必要がある。コンピュータアカウントを作成するには,Windows 2000のドメインコントローラでsrvmgr.exeコマンドを実行するのが最も簡単である(Windows NTのサーバーマネージャと同じインタフェースである)。

Prev 2/11 Next