Active Directory レプリケーション エラー 8464: 同期の試行に失敗しました

この記事では、Active Directory レプリケーション エラー 8464 のトラブルシューティングに役立ちます。

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

注意

ホーム ユーザー: この記事は、テクニカル サポート エージェントと IT 担当者のみを対象としています。 問題に関するヘルプを探している場合は、Microsoft に問い合Community。

現象

この記事では、Active Directory レプリケーションが失敗し、エラー 8464 が返される問題を解決するための現象、原因、解決方法について説明します。

16 進エラー コード: 0x00002110
12 月のエラー コード: 8464
シンボリック名: ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET
エラーの説明: 宛先 DC が現在、ソースからの新しい部分属性の同期を待機中のため、同期の試行が失敗しました。 最近のスキーマ変更で部分属性セットが変更された場合、この条件は正常です。 コピー先の部分属性セットは、ソース部分属性セットのサブセットではありません。
ヘッダー: winerror.h

さらに、次のようなActiveDirectory_DomainService NTDS Replication イベント 1704 エントリがログに記録されます。

ログ名: ディレクトリ サービス
イベント ID :1704
イベント ソース: ActiveDirectory_DomainService /NTDS レプリケーション
タスク カテゴリ: グローバル カタログ
イベント テキスト: グローバル カタログは、次のドメイン コントローラーから、次のディレクトリ パーティションの部分属性セットのメンバーのレプリケーションを開始しました。

ディレクトリ パーティション:
DC= <name> ,DC= <domain> ,DC=com

ドメイン コントローラー:
<fqdn>

これは、1 つ以上の属性が部分属性セットに追加された場合の特別なレプリケーション サイクルです。

注意

スキーマを拡張した後、または部分属性セット (PAS) に新しい属性を追加した後に、Active Directory レプリケーション状態 8464 が表示されるのが一般的です。 このメッセージは、レプリケーションが一時的に遅れることを示しています。 ACTIVE Directory レプリケーションの状態 8464 は、PAS が更新プロセスを終了した後に消え去る。

原因

この問題は、PAS に属性が追加されると PAS 同期がトリガーされる場合に発生します。

詳細については、「詳細情報」セクションを参照してください。

解決方法

これは PAS 同期の標準的な部分なので、解決手順は不要です。 このレプリケーションの状態が環境内で 1 週間以上続く場合のトラブルシューティング手順については、「詳細」セクションを参照してください。

詳細

状態 8464 の原因の詳細

属性のスキーマ定義は、Schema パーティションに属性Schema オブジェクトとして格納されます。 [この属性をグローバル カタログにレプリケートする] チェック ボックスをオンにすると、isMemberOfPartialAttributeSet 属性が attributeSchema オブジェクトの TRUE に設定されます。 この属性が TRUE に設定されている属性Schema オブジェクトでは、対応する属性が部分属性セットに含まれます。

PAS 同期が発生すると (PAS 拡張機能の結果)、レプリケーション タスク キューに特殊なタスクがあります。 このDRS_SYNC_PASフラグは、この特殊なタスクを識別します。

最適化されていない Active Directory トポロジまたは Active Directory レプリケーションの失敗により、PAS 更新プロセスが大幅に遅延する可能性があります。 通常、PAS 更新プロセス中に Active Directory レプリケーション状態 8464 が表示されます。

Active Directory レプリケーションの状態 8464 を確認する方法

Active Directory レプリケーション状態レポートの状態を示すコマンドおよび他のツールでは、レプリケーションの試行が遅延し、状態 Repadmin 8464 が発生します。

通常、8464 の状態を引用するコマンドと他のツールを次に示します。これらに Repadmin 限定されない場合があります。

DC2 から DC1 への着信レプリケーションが遅延している場合の出力 Repadmin /showrepl 例を次に示します。

ドメイン \ DC2 DSA オプション: IS_GC オプション: (なし) DSA オブジェクト GUID: <GUID> DSA 呼び出し ID: <ID>
DC=child,DC=root,DC=contoso,DC=com
RPC DSA オブジェクト GUID によるドメイン DC1: 最後の試行 \ <GUID> @ 2014-08-28 04:50:44 が通常の理由で遅延され、結果 8464 (0x2110)

コマンドの詳細な出力を次に示 Repadmin /showrepl します。

\RPC 経由のドメイン TRDC1
DSA オブジェクト GUID: <GUID> アドレス: xxxxxxxxxx._msdcs.root.contoso.com DSA 呼び出し ID: SYNC_ON_STARTUP DO_SCHEDULED_SYNCS PARTIAL_ATTRIBUTE_SET <ID> USN: 0/OU、234943/PU
@の最後 <Date & Time> の試行は、通常の理由で遅延されました。結果 8464 (0x2110):
宛先 DC が現在、ソースからの新しい部分属性の同期を待機中のため、同期の試行が失敗しました。 最近のスキーマ変更で部分属性セットが変更された場合、この条件は正常です。
コピー先の部分属性セットは、ソース部分属性セットのサブセットではありません。 最後の成功 @ <Date & Time> .

宛先ドメイン コントローラーを確認する方法

注意

これらの手順では、環境の Active Directory レプリケーション トポロジ、レプリケーション状態データの相関関係、Active Directory レプリケーション間隔または接続の一時的な変更について理解する必要があります。

  1. Active Directory レプリケーション状態 8464 がログに記録された 1 つのパーティションに対して、1 つの宛先ドメイン コントローラーを識別します。 次の手順では、このドメイン コントローラーとパーティションを使用します (パーティションとドメイン コントローラーの間を移動しません)。

    注意

    この手順では、最初にブリッジヘッド サーバーとハブ サイト ドメイン コントローラーの更新に集中できます。

  2. 次のデータを収集します。 レプリケーション先のドメイン コントローラーとソース ドメイン コントローラーのレプリケーション状態の結果を確認します。 次のコマンドを実行して結果をエクスポートします。

    1. すべてのグローバル カタログ サーバー間で現在の PAS 同期状態を比較します。 次のコマンドを実行して、結果をファイルにエクスポートpas_domain.txtします。

      repadmin /showattr gc: <Partition_DN> /gc /atts:partialattributeset >pas_domain.txt
      
    2. レプリケーション先とソース ドメイン コントローラーのレプリケーション状態の結果を確認します。 次のコマンドを実行して結果をエクスポートします。

      Repadmin /showrepl <DestinationDC> /verbose >repl_destDC.txt
      Repadmin /showrepl <SourceDC> /verbose >repl_sourceDC.txt
      Repadmin /showrepl * /csv >showrepl.csv
      
    3. PAS のすべての属性の一覧。 これは、現在のカウントを決定する場合に役立ちます。 次のコマンドを実行して、結果をファイルにエクスポートpas.txtします。

      repadmin /showattr fsmo_schema: ncobj:schema: /filter:"(ismemberofpartialattributeset=TRUE)" /subtree /atts:dn >pas.txt
      
    4. イベント ID 1704 と 1702 は、ディレクトリ サービス イベント ログで PAS 同期が完了したと示すので確認します。 イベント ID 1702 の例を次に示します。

      ログ名: ディレクトリ サービス
      イベント ID: 1702
      イベント ソース: ActiveDirectory_DomainService /NTDS レプリケーション
      タスク カテゴリ: グローバル カタログ
      イベント テキスト: グローバル カタログは、次のドメイン コントローラーから次のディレクトリ パーティションの部分属性セットの同期を完了しました。

      ディレクトリ パーティション:
      DC= <name> ,DC= <domain> ,DC=com

      ドメイン コントローラー:
      <fqdn>

      これは、1 つ以上の属性が部分属性セットに追加された場合の特別なレプリケーション サイクルです。

  3. 古い PAS またはソース ドメイン コントローラーが古い PAS を使用して、宛先ドメイン コントローラーに基づいてデータを分析します。

    • 宛先ドメイン コントローラーに更新された PAS が含されていない場合は、次の操作を行います。
      1. ソース パートナーが更新された値を持っているかどうかを判断します。
      2. 状態 8464 をクリアするために、更新先と最新ではないソース ドメイン コントローラーを更新します。
      3. 最新のソース ドメイン コントローラーを使用してレプリケーションを手動で開始します。 または、接続が存在しない場合は、ソース ドメイン コントローラーを作成してレプリケートします。
      4. 宛先ドメイン コントローラーが更新された場合、更新されていないソース ドメイン コントローラーの状態 8464 が記録されます。
    • 宛先ドメイン コントローラーに更新された PAS があるが、ソース ドメイン コントローラーが更新されていない場合、状態 8464 はソースが更新されるまでクリアされません。 または、最新のドメイン コントローラーを使用してレプリケーションを手動で開始することで、ソース ドメイン コントローラーを更新できます。

Pas_domain.txt手順

出力の関心のある値は、v1.cAttrs = text の後に一覧表示されます。 この数値は、PAS に含まれる属性の数を表示します。 これらの値を各パーティションのグローバル カタログ (GC) ごとに比較します。 すべての GC に同じ値が表示される場合、すべての GC は同期されます (すべて更新された PAS を持っているか、すべて同期されません)。 すべての値が同じ場合は、他のパーティションまたはダンプ スキーマの出力の値と比較し、PAS の属性のリストをカウントします。

DC1 が CHILD パーティションの部分属性セットを更新していないサンプル ログを次に示します。 また、DC2 は PAS 更新プロセスを完了しました。 子ドメイン パーティションの完全なコピーを含む ChildDC1 が原因で、partialattributeset 属性にデータが含まれているため、ChildDC1 のデータはログに記録されません。

Repadmin: 完全な DC サーバーに対してコマンド /showattr を実行 DC1.root.contoso.com
DN: DC=child,DC=root,DC=contoso,DC=com
1> partialAttributeSet: { dwVersion = 1; dwFlag = 0;V1.cAttrs = 196、V1.rgPartialAttr = 0、3、4、6、7、8、9
Repadmin: 完全な DC サーバーに対してコマンド /showattr を実行 ChildDC1.child.root.contoso.com
DN: DC=child,DC=root,DC=contoso,DC=com
Repadmin: 完全な DC サーバーに対してコマンド /showattr を実行 DC2.root.contoso.com
DN: DC=child,DC=root,DC=contoso,DC=com
1> partialAttributeSet: { dwVersion = 1; dwFlag = 0;V1.cAttrs = 203、V1.rgPartialAttr = 0、3、4、6、7、8、9

Pas.txt手順

PAS の属性の一覧を識別する

PAS の属性の一覧を表示するには、repadmin または別のツールを使用して、ismemberofpartialattributeset 値が TRUE に設定されているすべての属性についてスキーマ パーティションを照会します。

repadmin /showattr fsmo_schema: ncobj:schema: /filter:"(ismemberofpartialattributeset=TRUE)" /subtree /atts:dn >pas.txt

TRUE という単語がすべての大文字のテキストに含む必要があります。

LDIFDE を使用して、次の数と共にこのデータを達成できます。

Ldifde -f pas.txt -d "cn=schema,cn=configuration,dc=forestRootDN" -r "(ismemberofpartialattributeset=TRUE)" 196 entries exported

PAS の属性の数を特定する

repadmin 出力から属性の数を達成するには、次の手順を実行します。

  1. [テキスト ファイル] を [メモ帳]で開きます
  2. ファイルの先頭と末尾に空白行を削除します。
  3. "Repadmin: running command /showatt" で始まるファイルの上部にある行を削除します。
  4. ファイル内のテキストの最後の行にポインターを置き、Ctrl + G キーボード ショートカットを押して [行に移動] ダイアログ ボックス 開きます。 このウィンドウの行番号は、部分属性セット内の属性の数を表します。

Directory Service イベント ログ

グローバル カタログ イベントの診断ログを有効にして、部分的な属性セットの更新サイクルに関する詳細を表示します。 レプリケーション イベントの詳細を有効にした後、Directory Services イベント ログを表示します。

グローバル カタログ イベントの診断ログを有効にするには、次の手順を実行します。

  1. Regedit を開きます。
  2. 次のレジストリ キーを見つけてクリックします。
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics
  3. グローバル カタログのイベント ログを構成します。
    1. レジストリ エディターの右側 **、[18** グローバル カタログ] エントリをダブルクリックします。
    2. [値のデータ] ボックスに「3」 と入力し 、[OK] をクリックします
  4. Regedit を閉じます。

部分的な属性同期でのレプリケーションの状態サイクル

宛先ドメイン コントローラーがソース ドメイン コントローラーから更新された PAS の同期を待機している場合、Active Directory レプリケーション状態 8464 メッセージがログに記録されます。

注意

PAS_Sync タスクに対して選択されたドメイン コントローラーは、次のレプリケーション間隔 (既存の一連のレプリカ パートナーから) で別のソース ドメイン コントローラーに移動できます。

PAS を同期する新しい試行は、レプリケーション スケジュールに基づいて行います。 タスクに別のソースが選択されているPAS_Sync、レプリケーションは通常、以前のソース ドメイン コントローラーで続行されます。 PAS が正常に更新されると、更新されたドメイン コントローラーへの同じパーティションのレプリケーションは、更新された PAS なしでドメイン コントローラーから失敗します。 このシナリオでは、同じレプリケーション状態がログに記録されます。

宛先ドメイン コントローラーが PAS を更新していない場合、次のいずれかのプロセスが発生します。

  • PAS を更新する 1 つのレプリカ ソースを選択します。 次に、同期の開始時にイベント 1704 が記録されます。
  • ソースに更新された PAS 自体が存在しない場合、Active Directory レプリケーション状態 8464 がログに記録され、診断ログが有効な場合はイベント ID 1705 がログに記録されます。
  • PAS 更新タスクが失敗し、新しいソースが選択されている場合、診断ログが有効になっている場合、イベント ID 1706 がログに記録されます。
  • 同じパーティションの他のドメイン コントローラーからのレプリケーションは、通常どおり続行されます (エラーがない場合、状態 0 がログに記録されます)。

PAS 同期サイクルの例

このセクションは、PAS 同期サイクルのサンプルです。 次の表は、フォレスト内のドメイン コントローラーです。

ドメイン コントローラー ドメイン
DC1 Root.contoso.com
DC2 Root.contoso.com
ChildDC1 Child.root.contoso.com
ChildDC2 Child.root.contoso.com
TRDC1 Treeroot.fabrikam.com

フォレストの構造を次に示します。

フォレストの構造。

次のような状況で問題が発生します。

  • スキーマ拡張機能を使用して、7 つの新しい属性が PAS に追加されます。 したがって、PAS の属性の数は 196 から 203 に増加します。
  • これにより、PAS 同期が開始されます。 すべての GC は、各 GC パーティション内のこれら 7 つの属性のデータをソース化する必要があります。
  • 次の図は、1 つのパーティションの更新を示しています。
  • この環境でのレプリケーション間隔は 15 分です。
  • パーティションの書き込み可能なコピーをホストする DC からのレプリケーションをブロックする既存の条件が存在します。

このシナリオでは、次のプロセスが発生します。

  1. 宛先ドメイン コントローラーが PAS を更新していない場合:

    1. DC1 は DC2 を選択してPAS_SYNC。 DC2 には古い PAS も含まれますので、Active Directory レプリケーションの状態 8464 がログに記録されます。

    2. TRDC1 は、PAS_SYNC選択されていないと、古い PAS、Active Directory レプリケーションの状態 0 (成功) がログに記録されます。

    3. ChildDC1 は、このパーティションのすべての属性を持つ子パーティションの書き込み可能なコピーを保持します。 ただし、エラー 8606 で Active Directory レプリケーションが失敗する、既存の問題があります。

      DC2 の状態 8464 が記録されます。

  2. 宛先ドメイン コントローラーは、タスクの新しいソース (TRDC1) をPAS_SYNCします。

    1. TRDC1 には古い PAS も含め、レプリケーションが遅延し、状態 8464 がログに記録されます。

    2. DC2 にも古い PAS があります。 ただし、この間隔でPAS_Sync選択されていないと、レプリケーションが正しく完了します。 したがって、状態 0 がログに記録されます。

    3. 関連のないオブジェクトの問題が存在する (放棄されたオブジェクト) ため、Active Directory レプリケーションは ChildDC1 で引き続き失敗します。

      TRDC1 の状態 8464 が記録されます。

  3. PAS_SYNC古いレプリカ (DC2) に戻ります。

    1. 一方、ChildDC1 のレプリケーションの問題を修正します。

    2. レプリケーションは DC2 から遅延し、状態 8464 がログに記録されます。

    3. レプリケーションは TRDC1 から正常に進みます。

    4. レプリケーションは ChildDC1 から正常に進みます (ただし、このサイクルでは、PAS_Sync選択されません)。

      ChildDC1 の問題を修正する

  4. 適切なドメイン コントローラーが最終的に選択され、PAS_SYNC (ChildDC1) が選択されます。

    1. レプリケーションは、DC2 および TRDC1 から通常どおり実行されます (これらの試行は、DC2 および TRDC1 の前にPAS_Sync)。

    2. レプリケーションは ChildDC1 から通常どおり進み、PAS_SYNC完了します。

      ユーザーに対して選択された childDC1 PAS_Sync

  5. 宛先ドメイン コントローラーは、最後に更新された PAS を (最後の間隔から) 持っています。

    1. DC2 と TRDC1 からのレプリケーションは、ソース ドメイン コントローラーが古くなったため、両方とも遅延しています。 この問題に対して同じ Active Directory レプリケーション状態がログに記録されます。

    2. ChildDC1 からレプリケーションが正常に完了しました。

      DC2 および TRDC1 の状態 8464

  6. 前のレプリケーション間隔と次のレプリケーション間隔の間で、CHILD ドメインの部分属性セットの DC2 のコピーも更新されます (図は示されません)。

    1. 宛先ドメイン コントローラー (DC1) とソース ドメイン コントローラー (DC2 と ChildDC1) の両方が更新された PAS を持つため、レプリケーション * は正しく完了します。

      *ChildDC1 には、パーティションの属性の完全なセットがあります (PAS だけではありません)。

    2. TRDC1 は古い PAS を引き続き持つため、レプリケーションは TRDC1 から遅延します。

      TRDC1 から遅延したレプリケーション

  7. 前のレプリケーション間隔と次のレプリケーション間隔の間で、子ドメインの部分属性セットの TRDC1 のコピーも更新されます (図は示されません)。

    1. レプリケーションは、宛先ドメイン コントローラーとソースすべてが PAS に対して同じ属性を持つため、すべてのパートナーから正しく完了します。

      すべてのパートナーからのレプリケーションの完了