この記事では、Active Directory にオブジェクトを追加したり、システム状態のバックアップからドメイン コントローラーを復元したりするときに発生するエラーを解決するソリューションを提供します。
元の KB 番号: 839879
現象
この記事は、Windows 2000 以降のすべてのバージョンに適用されます。 新しいユーザー、グループ、コンピューター、メールボックス、ドメイン コントローラー、またはその他のオブジェクトを Microsoft Windows Server コンピューター上の Active Directory に追加しようとすると、次のエラー メッセージが表示されることがあります。
ディレクトリ サービスが相対識別子を割り当てられなかったため、オブジェクトを作成できません。
システム状態のバックアップからドメイン コントローラーを復元すると、システム ログに次のエラー メッセージが含まれている可能性があります。
イベントの種類:エラー
イベント ソース: SAM イベント
カテゴリ:なしイベント ID: 16650
アカウント識別子アロケーターが正しく初期化できませんでした。 レコード データには、エラーの原因となった NT エラー コードが含まれています。 Windows は、初期化が成功するまで再試行します。その時点まで、このドメイン コントローラーでのアカウントの作成は拒否されます。 エラーの正確な理由を示す可能性がある他の SAM イベント ログを探します。
詳細スイッチと共に Dcdiag
コマンドを使用して、追加のエラーを探すこともできます。 これを行うには、次の手順を実行します。
- [開始をクリックし、実行をクリックし、[開く] ボックスに「cmd」と入力し、[
OK] をクリック 。 - コマンド プロンプトで「
DCdiag /v
」と入力して Enter キーを押します。
Dcdiag /v
入力すると、次のようなエラー メッセージが表示されることがあります。
テストの開始: RidManager
* ドメインで使用可能な RID プールは 2355 ~ 1073741823
*
dc01.contoso.com
は RID マスターです* RID マスターを使用した DsBind が成功しました
* rIDAllocationPool は 1355 から 1854 です
* rIDNextRID: 0 DS に破損したデータがある: rIDPreviousAllocationPool 値が無効です
* rIDPreviousAllocationPool は 0 ~ 0 です。割り当てられた rids はありません。イベント ログを確認してください。
.........................DC01 失敗したテスト RidManager警告: rid セット参照が削除されます。
CN=RID SetDEL:cfe0828c-8842-4cb1-a642-6d9991d0516d,CN=Deleted Objects,DC= contoso,DC= com のldap_search_sW。2 で失敗した場合、システムは指定されたファイルを見つけることができません。
.........................DC01 失敗したテスト RidManager
テストの開始: RidManager
* ドメインで使用可能な RID プールは 3104 ~ 1073741823
警告: FSMO ロール所有者が削除されます。
*
dc01.contoso.com
は RID マスターです* RID マスターを使用した DsBind が成功しました
警告: rid セット参照が削除されます。
CN=RID SetDEL:5a128cf2-f365-47bc-a883-8ff9561ff545 のldap_search_sW、CN=Deleted Objects,DC=contoso,DC=com for rid info failed with 2: System cannot find the file specified. .........................DC01 失敗したテスト RidManager
テストの開始: KnowsOfRoleHolders
Role Rid Owner = CN="NTDS Settings DEL:fd615439-1ebb-4652-b16f-3f8517d25593",CN=dc01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=contoso,DC=com Warning: CN="NTDS Settings DEL:fd615439-1ebb-4652-b16f-3f8517d25593",CN=dc01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=contoso,DC=com は Rid 所有者ですが、削除されます。
システム イベント ログに、問題のトラブルシューティングに役立つその他のエラーが表示される場合もあります。
イベント ID: 16647
イベント ソース: SAM
説明: ドメイン コントローラーが新しいアカウント識別子プールの要求を開始しています。
イベントの種類: エラー
イベント ソース: SAM イベント カテゴリ:なし
イベント ID: 16645
説明: このドメイン コントローラーに割り当てられた最大アカウント識別子が割り当てられています。 ドメイン コントローラーが新しい識別子プールを取得できませんでした。 その理由として、ドメイン コントローラーがマスター ドメイン コントローラーに接続できなかったことが考えられます。 このコントローラーでのアカウントの作成は、新しいプールが割り当てられるまで失敗します。 ドメインにネットワークまたは接続の問題がある場合や、マスター ドメイン コントローラーがオフラインであるか、ドメインに存在しない可能性があります。 マスター ドメイン コントローラーが実行され、ドメインに接続されていることを確認します。
原因
この問題は、次のいずれかのシナリオで発生します。
相対 ID (RID) マスターがバックアップから復元されると、他のドメイン コントローラーと同期して、他の RID マスターがオンラインでないことを確認しようとします。 ただし、同期に使用できるドメイン コントローラーがない場合、またはレプリケーションが機能していない場合、同期プロセスは失敗します。
Note
ドメインに常に 1 つのドメイン コントローラーのみが含まれている場合、RID マスターは他のドメイン コントローラーとの同期を試みません。 ドメイン コントローラーには、他のドメイン コントローラーに関する知識がありません。
RID プールが使い果たされたか、RID 割り当てに関連する Active Directory 内のオブジェクトが正しくない値を使用しているか、または不足しています。
解決方法
Windows で名前付けコンテキストのレプリケーション リンクを削除する
Windows 2000 以降のバージョンでは、2 つ目のドメイン コントローラーを復元して初期同期を完了できます。 2 つ目のドメイン コントローラーを復元できない場合は、存在しないドメイン コントローラーでメタデータのクリーンアップを実行するか、Active Directory 名前付けコンテキストへのレプリケーション リンクを削除する必要があります。 後で他のドメイン コントローラーを復元する場合は、メタデータのクリーンアップを実行する代わりに、レプリケーション リンクを削除する必要があります。
Active Directory の名前付けコンテキストへのレプリケーション リンクを削除する前に、 Repadmin
コマンドを使用して objectGUID 値を識別する必要があります。 これを行うには、次の手順を実行します。
[開始をクリックし、実行をクリックし、[開く] ボックスに「cmd」と入力し、[
OK] をクリック 。コマンド プロンプトで、「
repadmin /showreps
」と入力します。 次のような出力が表示されます。CN=Schema,CN=Configuration,DC=contoso,DC=comDefault-First-Site-Name\DC02 via RPC objectGuid: <GUID> Last attempt @ <DateTime> が成功しました。
CN=Configuration,DC=contoso,DC=com Default-First-Site-Name\DC02 via RPC objectGuid: <GUID> last attempt @ <DateTime> was successful.
DC=contoso,DC=com Default-First-Site-Name\DC02 via RPC objectGuid: <GUID> 最後の試行 @ <DateTime> が成功しました。
レプリケーション リンクを削除する
repadmin /delete
を入力します。 次の例に示すように、名前付けコンテキストと objectGUID を指定します。repadmin /delete CN=Schema,CN=Configuration,DC=contoso,DC=com DC01 <GUID>._msdcs.contoso.com /localonly repadmin /delete CN=Configuration,DC=contoso,DC=com DC01 <GUID>._msdcs.contoso.com /localonly repadmin /delete DC=contoso,DC=com DC01 <GUID>._msdcs.contoso.com /localonly
RID マスター コンピューターを再起動します。 RID マスターが正しく初期化されます。
ドメイン内の他のすべてのドメイン コントローラーのドメイン コントローラー メタデータを削除する
2 つ目のドメイン コントローラーを復元または接続して、初期同期を完了できます。 2 つ目のドメイン コントローラーを追加できない場合は、存在しないドメイン コントローラーでメタデータ のクリーンアップを実行してドメインから完全に削除するか、Active Directory 名前付けコンテキストへのレプリケーション リンクを削除する必要があります。 メタデータを削除する方法の詳細については、次の記事番号をクリックして、サーバー メタデータのクリーンアップ 記事を参照してください。
RID 割り当てに関連する Active Directory オブジェクトが有効であることを確認する
RID 割り当てに関連する Active Directory オブジェクトが有効であることを確認するには、次の手順に従います。
[すべてのユーザー] グループに、ネットワーク ユーザー権限からこのコンピューターへのアクセスがあることを確認します。 この設定は、グループ ポリシー オブジェクト エディターの [
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment
] の場所で構成できます。Windows 2000 サポート ツールをインストールします。 これらのツールは、Windows 2000 および Windows Server 2003 CD-ROM のサポート フォルダーにあります。 これらのツールをインストールしたら、
ADSI Edit
を開始します。 これを行うには、次の手順を実行します。- [開始 ] をクリック、[ 実行] をクリックし、[ 開く ] ボックスに「mmc」と入力して、[ OK] をクリック。
- Windows 2000 で、[ Console] をクリックし、[スナップインの追加と削除 ] をクリック。 Windows Server 2003 で、[ File] をクリックし、[スナップインの追加と削除] クリック。
- Add/Remove スナップインで、[追加をクリックし、ADSIEditをクリックして、Add をクリックします。
- [閉じる] をクリックしてから [OK] をクリックします。
MMC で、[
ADSIEdit を右クリックし、[ に接続] をクリック。Connections の設定の [接続ポイントで、[既知の名前付けコンテキストを選択] をクリック。 ドロップダウン リストで、 domainをクリックし、 OKをクリックします。
domainを展開し、ドメインの識別名を展開します。 たとえば、 DC=contoso、DC=com を展開します。
OU=ドメイン コントローラーを展開します。
確認するドメイン コントローラーを右クリックし、 Properties をクリックします。
表示するプロパティの選択メニューをクリックし、userAccountControl をクリックします。
userAccountControl の値が 532480 であることを確認します。 userAccountControl値を変更するには、ドメイン コントローラーのプロパティ ダイアログ ボックスの [Edit をクリックします。
Integer 属性エディターで、Value フィールドに「532480」と入力し、OK をクリックします。
RID マスターが別のドメイン コントローラーとレプリケートしていることを確認する
新しく昇格されたドメイン コントローラーがイベント 16650 を生成した場合、ドメイン コントローラーは RID マスターではない別のドメイン コントローラーからレプリケーション情報を取得している可能性があります。 昇格中に、新しいドメイン コントローラーのコンピューター アカウントが変更されます。 これらの変更が RID マスター ロールを保持するドメイン コントローラーにレプリケートされていない場合、新しく昇格されたドメイン コントローラーが RID プールを取得しようとすると、要求は失敗します。
RID マスターがその直接パートナーの少なくとも 1 人とレプリケートしていることを確認するには、次の手順に従います。
CN=RID Set オブジェクトが存在することを確認します。
CN=RID Set オブジェクトは、左側のウィンドウの OU=Domain Controllers でドメイン コントローラーが選択されている場合に、ADSI Edit の右側のウィンドウにあります。
CN=RID Set オブジェクトが存在しない場合は、そのドメイン コントローラーを降格してから、再度昇格してオブジェクトを作成する必要があります。
CN=RID Set オブジェクトが存在する場合は、次の例に示すように、ドメイン コントローラーのコンピューター アカウント オブジェクトの rIDSetReferences 属性が RID Set オブジェクトの識別名を指していることを確認します。CN=RID Set、CN=DC01、OU=Domain Controllers、CN=contoso、DC=local
rIDSetReferences属性が RID Set オブジェクトの識別名を指していない場合は、Microsoft 製品サポート サービスにお問い合わせください。
状態
この動作は仕様によるものです。
関連情報
822053 エラー メッセージ: "ディレクトリ サービスが相対識別子を割り当てられなかったため、Windows でオブジェクトを作成できません"