現在オフラインです。再接続するためにインターネットの接続を待っています

ディレクトリ サービス サーバーの検出と DSAccess の使用法

この記事は、以前は次の ID で公開されていました: JP250570
重要 : この資料には、レジストリの編集方法が記載されています。万一に備えて、編集の前には必ずレジストリをバックアップし、レジストリの復元方法を理解しておいてください。バックアップ、復元、および編集方法の詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
256986 Microsoft Windows レジストリの説明
概要
DSAccess は、ディレクトリ情報のアクセスおよび格納に使用する、Microsoft Exchange 2000 Server および Microsoft Exchange Server 2003 の内部プロセスです。この資料では、Exchange Server コンピュータを含むトポロジに存在する可能性のあるディレクトリ サービス サーバーを静的または動的に検出するように、DSAccess を構成する方法について説明します。ここで説明する情報はすべて、単一の Exchange Server コンピュータに関連しています。レジストリに対して行う構成はすべて、トポロジ内のすべての Exchange Server コンピュータに対して行う必要があります。最後に、動的に検出されたディレクトリ サービス サーバーの一覧は、特定の Exchange Server コンピュータにも適用されます。この動的な一覧は、Exchange 2000 または Exchange 2003 が複数存在する環境では、一意であるという保証はされません。

最新の Microsoft Exchange 2000 Server の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
301378 [XGEN] 最新の Exchange 2000 Server Service Pack の入手方法
詳細
DSAccess では、一連の使用可能なディレクトリ サービス サーバーが、グローバル カタログ サーバー、ドメイン コントローラ、構成ドメイン コントローラの 3 つのカテゴリ (重複の場合あり) にパーティション分割されます。

Exchange Server ユーザー コンテキストのディレクトリ サービス トランザクションでは、ほぼすべてでグローバル カタログがターゲットとなります。ただし、発行された検索で要求されているユーザー オブジェクトの場所が、要求元のサービスで十分に認識されている場合は、ドメイン コントローラを使用してユーザー コンテキストを要求できます。グローバル カタログとして使用するディレクトリ サービス サーバーは、それ自体がドメイン コントローラでもあるため、このサーバーを両方のタイプのディレクトリとして使用できます。DSAccess では、使用可能なグローバル カタログおよびドメイン コントローラの一覧が生成され、ディレクトリ サービスの状態の変化が検出されたときに定期的に更新されます。この一覧は、ディレクトリ サービス (カテゴライザ、DSProxy、System Attendant サービスなど) にアクセスするためのゲートウェイとして必ずしも DSAccess を使用しない他のディレクトリ コンシューマに分配できます。ただし、その後のディレクトリ サービスの状態の変化は、この一覧を要求しているサービスが検出されるまで処理されません。

使用可能なディレクトリ サービス サーバーごとに、DSAccess では、DSAccess を使用している各プロセス専用の LDAP 接続が開かれます。DSAccess では、これらの LDAP 接続が、検出されたディレクトリ サービスの状態情報 (Up、Slow、Down) で更新され、この状態情報に基づいて要求がチャネルされます。これらの使用可能なドメイン コントローラおよびグローバル カタログへの一連の LDAP 接続と、それに関連付けられている状態によって、プロセスのプロファイルが形成されます。信頼性とスケーラビリティのために、DSAccess では、LDAP 接続の間でユーザー コンテキストのディレクトリ サービス要求をラウンドロビン形式で分散させる負荷分散メカニズムがサポートされています。レジストリ内のすべてのプロファイルを、特定のディレクトリ サービス サーバーのセットのみを使用するように静的に構成できます。ただし、これらの接続の実際の状態および負荷分散は、プロセスによって (プロファイルによって) 異なる場合があります。このことは、構成コンテキスト要求には該当しません。

DSAccess では、すべての構成コンテキスト要求に対して、単一のドメイン コントローラのみが使用されます。これは、レプリケーション待ち時間 (Microsoft Windows 2000 のアーキテクチャに存在する複数マスタのディレクトリ サービス環境が原因) の問題を削減するため、また、さまざまなドメイン コントローラに対して部分的なディレクトリの追加や変更が行われることを避けるためです。この単一の構成ドメイン コントローラは、すべてのプロファイルで共有されます。

DSAccess 静的ディレクトリ サービス サーバーの使用法

警告 : レジストリ エディタの使い方を誤ると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリ エディタの誤用により発生した問題に関しては、一切責任を負わないものとします。レジストリ エディタは、自己の責任においてご使用ください。

DSAccess は、ディレクトリ サービスの負荷を一連の指定したディレクトリ サービス サーバーにチャネルするように、静的に構成できます。この構成は、レジストリで行います。他の変更と同様に、レジストリを更新する際には細心の注意が必要です。Exchange Server の他のサービスと同様に、DSAccess では、レジストリで指定されているディレクトリ サービス サーバーの有効性はチェックされず、またスペルミスその他の誤りも認識されません。初期化時に、DSAccess ではまずレジストリを読み取って、静的に構成されているドメイン コントローラやグローバル カタログの有無が確認されます。静的に構成されているドメイン コントローラまたはグローバル カタログがある場合は、ドメイン コントローラの動的な検出は実行されません。一方、レジストリに対して静的構成がまったく行われていない場合、DSAccess ではトポロジ内でディレクトリ サービス サーバーが動的に検出されます (「動的サーバーの検出と使用法」を参照)。この資料で説明しているレジストリ キーは、デフォルトでは存在しません。

DSAccess が静的に構成されている場合、エラーが発生しても、動的に検出される可能性のある他のドメイン コントローラやグローバル カタログが DSAccess で使用されることはありません。その結果、静的に構成されているドメイン コントローラやグローバル カタログがすべて停止した場合、DSAccess の操作はすべて失敗します。グローバル カタログが静的に構成されていて、レジストリでドメイン コントローラがまったく指定されていない場合は、使用可能なドメイン コントローラが動的に検出され、使用されます。同様に、ドメイン コントローラが静的に構成されていて、レジストリでグローバル カタログがまったく指定されていない場合は、使用可能なグローバル カタログが動的に検出されて使用されます。構成ドメイン コントローラが静的に構成されていない場合、構成ドメイン コントローラは使用可能なドメイン コントローラの一覧から取得されます (この一覧は動的構成でも静的構成でもかまいません)。上記で説明したように、ユーザー コンテキストの要求に使用するドメイン コントローラおよびグローバル カタログは、プロファイルに依存します。このため、これらの設定のレジストリ内の場所は、Profiles\Default サブキーの下に指定されます。DSAccess で使用するドメイン コントローラ サーバーおよびグローバル カタログ サーバーを静的に構成するには、以下のレジストリ キーが必要です。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Profiles\Default\UserDC1 (UserDC2 など)

IsGC = REG_DWORD 0x0
HostName = REG_SZ DC_DomainName.CompanyName.com
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Profiles\Default\UserGC1 (UserGC2 など)

IsGC = REG_DWORD 0x1
HostName = REG_SZ GC_DomainName.CompanyName.com
DSAccess で使用する構成ドメイン コントローラは、次の 3 つのうちいずれかの方法で設定できます。
  • レジストリで静的に構成
  • 動的に検出
  • Microsoft Exchange System Attendant でサービス開始時に設定
構成ドメイン コントローラ設定の最初の 2 つの方法については、次のレジストリ参照の後で説明します。Exchange 2000 Server および Exchange 2000 Server SP1 では、Microsoft Exchange System Attendant を開始したときに、構成ドメイン コントローラが選択されます。この選択は、DSAccess で最長 10 時間有効になります。Exchange 2000 Server SP2 以降では、Microsoft Exchange System Attendant で構成ドメイン コントローラが選択されるのは、セットアップ時またはアップグレード時にサービスが初めて開始したときだけです。どの場合も、構成ドメイン コントローラがレジストリで静的に構成されている場合は、System Attendant による選択は無視されます。構成ドメイン コントローラの静的な構成は、推奨として DSAccess に受け入れられます。つまり、構成ドメイン コントローラが静的に設定されている場合、DSAccess では構成コンテキスト要求用にこのドメイン コントローラが優先されるということです。このドメイン コントローラが使用できなくなると、使用可能なドメイン コントローラの一覧から代わりのドメイン コントローラが選択されます。この場合、DSAccess は、使用可能なユーザー ドメイン コントローラを選択することによって構成ドメイン コントローラをフェール オーバーし、構成ドメイン コントローラのレジストリ キーが設定されていないかのように動作します。上記で説明したように、構成ドメイン コントローラはすべてのプロファイルで共有されます。このため、構成ドメイン コントローラのレジストリ設定は、以下の例に示すように、\Instance0 サブキーの下で指定されます。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Instance0

ConfigDCHostName = REG_SZ configDC_DomainName.CompanyName.com

Exchange 2000 Server および Exchange 2000 Server SP1 での DSAccess 動的 DS サーバーの検出と使用法

初期化の際に、一連の静的に構成されたドメイン コントローラまたはグローバル カタログがレジストリ内に見つからない場合、DSAccess では、トポロジ内で使用可能なディレクトリ サービス サーバーが動的に検出されます。検出アルゴリズムは、検索対象がドメイン コントローラかグローバル カタログか、また DSAccess が Exchange 2000 サーバーの場所に依存するかどうかによって異なります。以下の説明は、Exchange 2000 Server および Exchange 2000 Server SP1 に該当します。Exchange 2000 SP2 以降の DSAccess で使用される方法は異なり、ここでは説明していません。

レジストリを最初に調べた後に、DSAccess では、DsGetDCName() への Win32 API 呼び出しを利用して、Exchange 2000 サーバーのローカル ドメインにあるドメイン コントローラ (または DsctxGetContextEx2() 呼び出しで呼び出し側から渡されるものがある場合はそのドメイン コントローラ) に対して DsBind が発行されます。次に、DsListServersForDomainInSite() への Win32 API 呼び出しが、DSAccess からこのドメイン コントローラに対して発行されます。この呼び出しでは、ローカルのドメインおよびサイトにあるすべてのドメイン コントローラの一覧が提供されます。DSAccess では、最大 10 個のドメイン コントローラがプロファイルに保存され、ラウンド ロビン形式で (プロセスごとに) 負荷分散されます。グローバル カタログ検出のアルゴリズムは少々異なります。

DSAccess では、上記と同じドメイン コントローラ接続を使用してグローバル カタログが検出されます。DsListServersInSite() は、サイト内のすべての "サーバー" を一覧表示するために呼び出される DSAccess の内部 API です。

: この呼び出しの "サーバー" は、DsListServersInSite に対する Win32 API 呼び出しの場合とは意味が異なります。これは API 定義のバグです。現在、ディレクトリ サービス検出用の Win32 API はすべてドメイン固有です。Exchange 2000 はグローバル カタログに大きく依存しているため、また低速リンクで接続されている複数のサイトにドメインが分散していることが原因で発生することがある待ち時間の問題を回避するために、DSAccess では、サイト固有のディレクトリ サービス検出メカニズムが独自に作成されています。

DSAccess が依然としてバインドされている現在のドメイン コントローラへの LDAP 接続を使用して、DSAccess では Exchange 2000 サーバーのローカル サイトにあるディレクトリ サービス サーバー (存在する場合) ごとに NTDS 設定オブジェクトの Options 属性を読み取ります。サーバーがグローバル カタログと見なされるのは、Options 属性が存在し、グローバル カタログ フラグが設定されている場合のみです。現在のサイトでグローバル カタログが見つからない場合、DSAccess では Win32 API DsGetDCName() が呼び出され、単一の使用可能なグローバル カタログが返されます。"リモートの" グローバル カタログが 1 つだけ選択されるのは、このグローバル カタログが低速リンクで接続されている可能性があるためです。この場合、必要な負荷分散のスケーラビリティを達成できません。

DSAccess では、Kerberos チケットがタイム アウトしたとき (デフォルトは 10 時間)、構成が変更されたとき (新しいグローバル カタログまたはドメイン コントローラがトポロジに追加されたとき)、またはグローバル カタログやドメイン コントローラがすべて停止したときに、完全なネットワークの再検出が実行されます。通常の操作で、グローバル カタログまたはドメイン コントローラが停止する場合があります。この場合、他に使用可能なサーバーがあれば、DSAccess ではネットワークの再検出は行われません。この特定のディレクトリ サービスに "Down" のフラグを設定し、その後 5 分ごとに ping するだけです。このダウンしたディレクトリ サービスは、オンラインに戻ると再度使用されます。

DSAccess で使用される構成ドメイン コントローラは、デフォルトでは、ドメイン コントローラおよびグローバル カタログの最初の動的検出時に DSAccess が初めてバインドされたものと同じドメイン コントローラに設定されます。静的に構成されているドメイン コントローラまたはグローバル カタログがあり、構成ドメイン コントローラが明示的に構成されていない場合、DSAccess ではドメイン コントローラ構成済み一覧の最初のドメイン コントローラが構成ドメイン コントローラとして使用されます。DSAccess で使用されている構成ドメイン コントローラが使用できなくなった場合は、一連の使用可能なドメイン コントローラの中から別の構成ドメイン コントローラが選択されます。構成ドメイン コントローラでの変更はすべて、同じコンピュータで DSAccess を使用しているすべてのプロセスに適用されます。

Exchange 2000 Server SP2 以降での DSAccess 動的 DS サーバーの検出と使用法

Exchange 2000 Server SP2 以降のバージョンでは、ディレクトリ サービス サーバーに DSAccess の役割を静的に割り当てるためにレジストリを編集する必要はなくなりました。このオプションは、グラフィカル ユーザー インターフェイスで使用可能になっています。

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
318221 [XADM] DSAccess タブの完全な機能が Exchange 2000 Service Pack 2 コンピュータ使用時にしか利用できない
XADM
プロパティ

文書番号:250570 - 最終更新日: 11/26/2007 01:43:00 - リビジョン: 2.3

  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • kbinfo kbexchange2000sp2fix KB250570
フィードバック