【Windows】Active Directoryドメインコントローラー診断「dcdiag」のテスト内容と確認方法

ドメインコントローラーの正常性を確認する際に使用される「dcdiag」コマンドの内容について記します。
スポンサーリンク

ドメインコントローラー診断の内容と実行コマンド

 

ドメインコントローラー診断のテスト項目と内容

dcdiagによる診断テスト項目と各テストの説明になります。
 

必須の初期テスト

Connectivity DSA が DNS に登録されているかどうか、ping 可能かどうか、 および LDAP/RPC 接続が可能かどうかをテストします。* テストはスキップできません。 * テストは AD/LDS に適用可能です。

プライマリ テスト

Advertising 各 DSA が自身をアドバタイズしていること、および それらが DSA の機能を持って自身をアドバタイズしているかどうかを確認します。
FrsEvent このテストは、ファイル レプリケーション システム (FRS) に 操作エラーがないかどうかを確認します。SYSVOL 共有のレプリケーション に失敗すると、ポリシーの問題につながる可能性があります。
DFSREvent このテストは、DFS に操作エラーがないかどうかを 確認します。
SysVolCheck このテストは、SYSVOL の準備が整っていることを確認します。
KccEvent このテストは、知識整合性チェッカーが エラーなく完了することを確認します。* テストは AD/LDS に適用可能です。
KnowsOfRoleHoldersDSA 役割の所有者を認識しているかどうか、およびこれらの 役割を詳細モードで出力するかどうかを確認します。
MachineAccount コンピューター アカウントに正しい情報が設定されているかどうかを 確認します。ローカル コンピューター アカウントがない場合 は、/RecreateMachineAccount を使用して修正を試みてください。コンピューター アカウントのフラグが正しくない場合は、 /FixMachineAccount を使用してください。
NCSecDesc 名前付けコンテキスト ヘッドのセキュリティ記述子に レプリケーション用の適切なアクセス許可があることを確認します。
NetLogons 適切なログオン特権により、レプリケーションの続行が 許可されていることを確認します。
ObjectsReplicated コンピューター アカウント (AD のみ) および DSA オブジェクトが レプリケートされたことを確認します。確認対象の追加オブジェクトを 指定するには、/n:<NC> と共に /objectdn:<DN>を使用してください。* テストは AD/LDS に適用可能です。
Replications ディレクトリ サーバー間でタイミングよくレプリケーションが行われていることを確認します。* テストは AD/LDS に適用可能です。
RidManagerRID マスターがアクセス可能であるかどうか、および 正しい情報を格納しているかどうかを確認します。
Services 適切なサポート サービスが実行されているかどうかを確認します。* テストは AD/LDS に適用可能です。
SystemLog このテストは、システムがエラーなく実行中であることを確認します。* テストは AD/LDS に適用可能です。
VerifyReferences このテストは、FRS およびレプリケーション インフラストラクチャに対して 特定のシステム参照が変わらないことを検証します。

パーティション テスト

CheckSDRefDom このテストは、すべてのアプリケーション ディレクトリ パーティションに適切なセキュリティ記述子の参照ドメインがあることを 確認します。
CrossRefValidation このテストは、なんらかの形で無効な 相互参照を検索します。* テストは AD/LDS に適用可能です。

エンタープライズ テスト

LocatorCheck グローバルな役割所有者が既知であること、検索可能であること、および応答していることを確認します。
Intersite サイト間レプリケーションを阻止したり、一時的に妨げる エラーがないかどうかを確認します。

以上の項目を元にドメインコントローラー診断が行われます。

 

ドメインコントローラー診断「dcdiag」コマンド

「dcdiag」コマンドの説明となります。
ドメイン全体のドメインコントローラー診断とエラーのみを確認する事が多いので自身は「dcdiag /e /v /q」を利用することが多いです。
通常はこれでエラーがなければ特に問題がないと判断できるので、別途イベントログなどの確認を行い正常性を判断します。
 
ドメインコントローラー診断コマンドとオプション
 
コマンド オプション 説明
dcdiag /
  /h このヘルプ画面を表示します。
  /s <ディレクトリ サーバー> をホーム サーバーとして使用します。ローカルでのみ実行可能な DcPromo および RegisterInDns テストは無視されます。
  /n テストする名前付けコンテキストとして <名前付けコンテキスト> を使用します。ドメインは Netbios、DNS、または DN の形式で指定できます。
  /u バインドにドメイン\ユーザー名の資格情報を使用します。/p オプションも使用する必要があります。
  /p パスワードとして <パスワード> を使用します。/u オプションも使用する必要があります。
  /a このサイト内のすべてのサーバーをテストします。
  /e エンタープライズ全体のすべてのサーバーをテストします。/a より優先されます。
  /q Quiet: エラー メッセージのみを出力します。
  /v 詳細: 追加情報を出力します。
  /i 無視: 余分なエラー メッセージを無視します。
  /c 完全: 既定以外のテストを含むすべてのテストを実行します。ただしDcPromo および RegisterInDNS は実行しません。/skip と併用できます。
  /fix 修正: 安全に修正を行います。
  /f すべての出力をファイル <ログ> に個別にリダイレクトします。
  /x <XMLLog.xml> xml 出力を <XMLLog.xml> にリダイレクトします。現在は /test:dns オプションのみと併用できます。
  /xsl <xslfile.xsl または xsltfile.xslt> 指定したスタイルシートを参照する処理命令を追加します。/test:dns /x:<XMLLog.xml> オプションのみと併用できます。

以上がdcdiagコマンドとオプションとなります。

 

「dcdiag」実行結果の内容

下記は「dcdiag」の実行結果の参考画面になります。
 

これですべてのテスト項目に合格しているかを確認します。
必要に応じてオプションを追加することで失敗したテスト項目のみ出力することや詳細な診断結果を確認することができます。