dcpromo のレプリケーション フェーズ中の内部エラー メッセージのトラブルシューティング

この記事では、Active Directory インストール ウィザード (Dcpromo) のレプリケーション フェーズ中に発生する内部エラーのトラブルシューティング方法について説明します。

適用対象: Windows Server 2019、Windows Server 2016、Windows Server 2012 R2
元の KB 番号: 265090

注:

ホーム ユーザー: この記事は、テクニカル サポート エージェントと IT プロフェッショナルのみが使用することを目的としています。 問題のヘルプを探している場合は、 Microsoft コミュニティに問い合わせてください

概要

昇格中、ディレクトリ サービス オブジェクトは、スキーマ、構成、およびドメインの更新シーケンス番号 (USN) (低から高) の順序でレプリケートされます。 内部エラーは、レプリケートされた子オブジェクトの親コンテナーがローカル ディレクトリ サービスに存在しない場合に発生する可能性があります。

この問題は、次のいずれかのシナリオで発生する可能性があります。

  • 親が過去に削除され、親が期限切れになり、ファントムに変換されたライブ オブジェクトがあります。 そのため、子オブジェクトをレプリケートできなくなります。ReplPrepareDataToShip の親オブジェクトに対する FillGuidAndSid の呼び出しが成功せず、エラーが報告されます (8352 = ERROR_DS_NOT_AN_OBJECT)。 このエラーにより、子オブジェクトの送信レプリケーションが終了し、レプリケーションの内部エラー メッセージが表示されます。

    ファントム親を持つライブ (または削除済み) オブジェクトがある場合、Active Directory は、順序が整っていないレプリケーション要件のため、ライブ オブジェクトを一時的に受け入れます。 ガベージ コレクションなどのディスク クリーンアップ プロシージャは、親に子オブジェクトがある場合、削除されたオブジェクトをファントムに変換することはできません。 Windows 2000 Service Pack 2 (SP2) の時点で Ntdsa.dll ファイルを使用すると、ディレクトリ サービスでこのような状況を回避できます。 ただし、このファイルは、問題が既に発生した後は修正されません。

  • 権限 のある復元 コマンドは、Windows Server 2003 以降のバージョンの Ntdsutil ツールを使用する場合に使用します。 Ntdsutil.exe は、Active Directory で指定されたコンテナーと子オブジェクトの USN を増やします。 Ntdsutil.exe のベータ 版では、Lost and Found コンテナーの USN が誤って増加する可能性があります。 コンテナーがローカル ディレクトリ サービスで作成される前に、Lost and Found コンテナー宛てのオブジェクトがレプリケートされると、次のイベントが報告されます。

    イベント 1084: レプリケーションが内部エラーで失敗しました

    このシナリオを回避するために、Lost コンテナーと Found コンテナーは通常、レプリケートされる最初のコンテナーの 1 つです。

内部エラーは、通常または管理者が開始した Active Directory レプリケーション中に、既存の Active Directory ドメイン コントローラーでも発生する可能性があります。

このエラー メッセージのトラブルシューティング手順

  1. ネットワーク モニター、イベント ログ、またはDcpromo.logを使用して、Active Directory レプリケーション中に使用されているソース サーバーを見つけます (Active Directory インストール ウィザードを使用している場合)。

  2. Active Directory インストール ウィザードを使用しているときにこのエラーが発生し、複数のレプリケーション パートナーが存在する可能性がある場合は、Active Directory インストール ウィザードの応答ファイルを使用してソース サーバーを検索します。 使用できるソース ドメイン コントローラーには、新しい子ドメインの親ドメインのドメイン コントローラー、レプリケートされたドメイン コントローラーの場合は同じドメイン内のドメイン コントローラーなどがあります。 または、特定のソース サーバーが疑わしい場合は、疑わしいコンピューターで Net Logon サービスを停止し、別のドメイン コントローラーから検索します。

  3. ソース サーバーで、次のレジストリ サブキーを見つけてクリックします。

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Diagnostics

    次の値を編集します。

    • 9 内部処理: 診断レベルを 1 に設定します。
    • 7 内部構成: 診断レベルを 3 に設定します。
    • 5 レプリケーション イベント: 診断レベルを 3 に設定します。
  4. レジストリ エディターを使用して、昇格するコンピューター (たとえば、Ntds.reg) にソース サーバーからキーをエクスポート\NTDSします。 レプリケーションが発生したときに内部エラーが発生しているコンピューターにファイルをコピーします。 Active Directory インストール ウィザードの実行中に内部エラーが発生した場合は、ファイルを簡単に起動できるように、.reg ファイルを問題のあるドメイン コントローラー上のデスクトップにコピーします。

    または、Windows キーを押しながら R キーを押し、そのファイルに焦点を当てたステージングされたエクスプローラー ウィンドウから.reg ファイルをドラッグします。 [ OK] を選択 して、.reg ファイルの内容をレジストリに追加します。

  5. 昇格しているコンピューターがスキーマの名前付けコンテキストのレプリケートを開始したら、Ntds.reg ファイルを実行してレジストリ キーと設定を \NTDS\Diagnostics ビルドします。

    警告

    NTDS\Diagnosticsこの昇格フェーズにはレジストリ キーが存在せず、移行先ドメイン コントローラーで手動で作成する必要があります。 Active Directory インストール ウィザードの NTDS\Diagnostics 実行中にレジストリ キーが読み込まれすぎる場合、キーは既定値で上書きされ、イベントは記録されません。 既存のドメイン コントローラーの場合、レジストリ設定はいつでも有効にすることができます。

  6. ソース サーバーと移行先サーバーのディレクトリ サービス イベント ログを調べます。 内部イベントは、ソース サーバーにイベント ID 1173 として表示されます。 内部エラーの前に発生する NTDS レプリケーション イベントを確認して、レプリケートされるオブジェクトのグローバルユニバーサル ID (GUID) を見つけます。 (同じオブジェクトをレプリケートしようとすると、バックツーバック試行が発生する可能性があります)。 問題のあるオブジェクトまたはコンテナーの GUID を記録します。

  7. Ldp.exe を開始し、接続を開始し、ソース サーバーにバインドします。 [ 参照 ] メニューの [ 削除] を選択します。 識別名パスの場合は、「GUID=GUID#」と入力<します>(例: <GUID=b2d605a4-b9e6-4505-ba59-895e91a9a7b5>)。 検索スコープを [基本] に設定し、指定した GUID を削除します。

  8. Ldp.exe を使用して、 TombstoneLifetime 属性の値を 2 に設定します (廃棄オブジェクトが削除されるまでの日数)。 TombstoneLifetime は、次の識別名パスにあります。

    CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,,DC= root domain ,DC=COM

    TombstoneLifetime 属性が存在し、その値が 2 であることを確認します。 値が 2 未満の場合、値は無効であり、サーバーは既定値の 60 日を使用します。 (ADSIEDIT を使用してこの属性を変更することもできます)。

    注:

    廃棄オブジェクトが削除されるまで 2 日間待ってから、ドメイン コントローラーを再起動してガベージ コレクション プロセスを続行する前に、さらに 60 分以上待つ必要がある場合があります。

  9. ソース ドメイン コントローラーでガベージ コレクションを開始します。 次のレジストリ キーを見つけてクリックします。

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Diagnostics key

    次の値を編集します。

    • 6 ガベージ コレクション: 診断レベルを 3 に設定します。
    • 9 内部処理: 診断レベルを 1 に設定します。

    ガベージ コレクションを強制するには、ドメイン コントローラーを再起動します。 ガベージ コレクションは、ドメイン コントローラーを再起動してから 15 分後に実行されます。 診断レベルで、ディレクトリ サービス イベント ログにガベージ コレクション イベントが記録されるようになりました。

  10. オブジェクトが削除されたことを確認するには、次のコマンドを実行します。

    repadmin /showmeta "<"GUID for deleted object">"
    

    このようなオブジェクトがないというメッセージが表示された場合、オブジェクトは既に正常に削除されており、Active Directory インストール ウィザードを正常に実行できるようになりました。 オブジェクトがまだガベージ コレクション プロセスを受けていない場合は、isDeleted 属性のメタデータが必要です。 isDeleted 属性に関連付けられているタイム スタンプは削除時刻です。 削除時刻が少なくとも 2 日前に設定されていることを確認します(例:

    repadmin /showmeta "<GUID=b2d605a4-b9e6-4505-ba59-895e91a9a7b>"
    
  11. この問題が解決したら、診断ログ 記録レベルを 0 にリセットし、廃棄ストーンの有効期間を以前の状態に戻すか、値を完全に削除してコンピューターに既定値の使用を求めます。 TombstoneLifetime 設定は、システム状態と Active Directory バックアップの耐用年数を定義する上で重要です。 TombstoneLifetime が 2 に設定されている場合、 2 日より前のバックアップ テープは使用できません。 2 日以上ダウンしているドメイン コントローラーは、バックアップから復元するか、再インストールする必要があります。

次のテキストは、ソース サーバーと移行先サーバーのディレクトリ サービス イベント ログで報告されるイベントの例です。

イベントの種類: 情報イベント ソース: NTDS レプリケーション イベント カテゴリ: レプリケーション イベント ID: 1240 日付: MM/DD/YY 時刻: HH:MM:SS AM|PM ユーザー: S-1-5-21-1151542997-2719369742-1698538726-500 コンピューター: computer_source 説明: プロパティ 0 (objectClass) of object CN="NTDS Settings DEL:51c6913c-9221-4ac4-8513-9155ddd7e15ad",CN="ZA9902000 DEL:37eabd48-bc 98-483f-b2fd-9c8869e9c3ce",CN=Servers,CN=Bull,CN=Sites,CN=Configuration,DC=mma,DC=fr (GUID 51c6913c-9221-9221-9 4ac4-8513-9155dd7e15ad) は DSA 6abec3d1-3054-41c8-a362-5a0c5b7d5d71 に送信されています。

イベントの種類: 警告イベント ソース: NTDS 全般イベント カテゴリ: 内部処理イベント ID: 1173 日付: MM/DD/YY 時刻: HH:MM:SS AM|PM ユーザー: S-1-5-21-1151542997-2719369742-1698538726-500 コンピューター: computer_source説明: 内部イベント: 例外 e0010002 がパラメーター 8442 と 20a0 (内部 ID 11003a1) で発生しました。

次のテキストは、昇格しているコンピューターの Active Directory インストール ウィザード ログで報告されます。 このサンプル Dcpromo.log ファイルでは、昇格されているコンピューター \\computer_promotedが、\\computer_sourceからソーシングされるときに、Active Directory インストール ウィザードで "内部エラー" が発生しています。 3 つの名前付けコンテキストのいずれかがレプリケートされている間に発生するエラー 8442 に注意してください ("レプリケーション システムで内部エラーが発生しました")。 次の例は、構成の名前付けコンテキストでエラーが発生することを示しています。

MM/DD HH:MM:SS [INFO] レプリケーション CN=Configuration,DC=win2ktest,DC=A,DC=com: 1783 オブジェクトのうち 917 個を受信しました。
MM/DD HH:MM:SS [INFO] レプリケーション CN=Configuration,DC=win2ktest,DC=A,DC=com: 1783 オブジェクトのうち 1049 個を受信しました。
MM/DD HH:MM:SS [INFO] レプリケーション CN=Configuration,DC=win2ktest,DC=A,DC=com: 1783 オブジェクトのうち 1181 個を受信しました。
MM/DD HH:MM:SS [INFO] レプリケーション CN=Configuration,DC=win2ktest,DC=A,DC=com: 1783 オブジェクトのうち 1200 個を受信しました。
MM/DD HH:MM:SS [INFO] エラー - ディレクトリ サービスは、リモート サーバー computer_source.test.a.comからパーティション CN=Configuration、DC=test、DC=A、DC=com をレプリケートできませんでした。 (8442)
MM/DD HH:MM:SS [INFO] NtdsInstall for test.a.com returned 8442
MM/DD HH:MM:SS [INFO] DsRolepInstallDs が 8442 を返しました
MM/DD HH:MM:SS [ERROR] Directory Service へのインストールに失敗しました (8442)
MM/DD HH:MM:SS [INFO] サービス NETLOGON の開始
MM/DD HH:MM:SS [INFO] サービス NETLOGON を 2 に構成すると 0 が返される
MM/DD HH:MM:SS [INFO] \computer_source.test.a.com... forcomputer_promotedonコンピューター アカウントを検索します。
MM/DD HH:MM:SS [INFO] サーバー アカウントの構成
MM/DD HH:MM:SS [INFO] NtdsSetReplicaMachineAccount が 0 を返しました
MM/DD HH:MM:SS [INFO] CN=GAXGPTS01,CN=Computers,DC=test,DC=A,DC=com accountcomputer_sourceto移動しようとしました