Windows Server 2008 R2 対応版
Ping 疎通確認
まずはネットワークがつながっているか確認する。
Windows Server 2003 R2 以前の既定では ICMP によってグループポリシーの適用が決定されるため、必ず疎通できる必要がある。
ping DCのホスト名
イベント ログの確認
原則、警告とエラーは存在しないようにすべき。
存在する場合は、一時的なものか、定期的に発生するが無視して良いものか判断し、問題があるものは今後表示されないよう原因を修正する。
ここの対応で業者の技量と経験値が分かる。
参考 Windows Server 2008 R2 ドメイン コントローラー構築時のイベントログ
ドメイン コントローラーのディスク空き容量の確認
ドライブの空き容量が10%未満になるとFRS(ファイル レプリケーション サービス)が機能停止するため。
足りない場合は不要なファイルを削除して空き容量を確保する。どうしてもできない場合は、システムをバックアップして、大きいパーティションを作成したあとリストアする。
かなり面倒な作業だ。他のハードウェアにリストアするという手段もあるにはあるが、もっと作業時間がかかる。
参考 異なるハードウェア構成のコンピュータで Active Directory の障害復旧を実行する方法
ドメイン メンバーの時刻同期の確認
Windows の kerberos 認証は既定で5分以上時刻のズレがあると認証に失敗する。
Windows 2000 Server は時刻のズレをコマンドで調査する方法が無いため目視確認する。
Windows XP, Server 2003 以降は以下のコマンドで調査可能。もし失敗するDCがある場合はコンピュータ アカウントが無効になっている可能性がある。DC同士で失敗する場合はどちらかが異常な状態にあり、複数のクライアントから確認して多数決で生き残らせるDCを決定する事になる。
参考 ドメイン コントローラの降格に失敗した後、Active Directory のデータを削除する方法
参考 Ntdsutil.exe を使用してドメイン コントローラーに FSMO の役割を強制または転送する
w32tm /stripchart /computer:ドメインコントローラ
FSMO (PDC エミュレータ) の時刻同期の確認
すべてのドメイン メンバーはPDCエミュレータを頂点として時刻同期を行う。
PDC エミュレータは自身の時刻問い合わせ先を指定する必要がある。
仮に指定されていないとしてもドメイン全体としては異常にならないが、設定するのが望ましい。
具体的には FSMOのローカル ポリシーで指定する。
gpedit.msc
Windows Server 2008 R2 の場合は、コンピューターの構成/管理用テンプレート/システム/Windows タイム サービス/タイム プロバイダー
- Windows NTP クライアントを構成する - 有効にして、中を設定
Windows Server 2003 までは、"ntpserer.domain.tld,0x1" でしたが、2008 以降は "ntpserer.domain.tld,0x9" にしないと期待通り動作しません。
- Windows NTP クライアントを有効にする - 有効
時刻同期状況を確認するには以下のコマンドで。
>w32tm /monitor
DC1.sample.tld *** PDC ***[[::1]:123]:
ICMP: 0ms 遅延
NTP: +0.0000000s DC1.sample.tld の時刻からのオフセット
RefID: ntp-b3.nict.go.jp [133.243.238.164]
階層: 2
DC2.sample.tld[10.0.1.12:123]:
ICMP: 0ms 遅延
NTP: -0.0024159s DC1.sample.tld の時刻からのオフセット
RefID: DC1.sample.tld [10.0.1.11]
階層: 3
警告:
逆名前解決が最適な方法です。タイム パケット内の
RefID フィールドは NTP 実装間で異なっており、IP
アドレスを使用していない場合があるため、名前が正しくない可能性があります。
FSMO の確認はサポートツールの netdom が簡単。ntdsutil でも確認できる。
>netdom query FSMO
スキーマ マスター dc1.sample.tld
ドメイン名前付けマスター dc1.sample.tld
PDC dc1.sample.tld
RID プール マネージャー dc1.sample.tld
インフラストラクチャ マスター dc1.sample.tld
コマンドは正しく完了しました。
IPv6 の確認
使用しない場合は、無効化することを推奨する。Windows Vista, Server 2008 以降は既定で近隣探索が有効なため、通信障害の原因となったり通信傍受を受けやすくなったりするリスクがある。
参考 Windows Vista で IPv6 を構成する
DNSレコードの確認
以下のコマンドでIPアドレスに異常が無いことを確認する。「異常が無い」とは、1.すべてDCのアドレスである。2.すべてクライアントからアクセス可能なIPアドレスであること。異常がある場合は、該当のアドレスが自動登録されないようTCP/IPのプロパティでDNSを登録しないように設定するか、無効化した上でDNSのレコードを修正する。ちなみに DNS に登録しないよう設定する手段が有効なのは Windows Server 2003 SP1 以降。
参考 Windows Server 2003 ベースの DNS サーバーであるドメイン コントローラにクライアントがログオンできず、DNS に登録されていないネットワーク インターフェイスが依然として動的更新を実行できる
nslookup DNSドメイン名
例
nslookup test.lan
Windows Server 2003 以降は以下も確認
nslookup DomainDnsZones.DNSドメイン名
nslookup ForestDnsZones.DNSドメイン名
DNSリゾルバの確認
すべてのドメイン コントローラーのDNS リゾルバ(TCP/IPのプロパティのDNSの設定)を、"FSMO,もう一つ" の構成にする。もしこの構成になっていないと、ドメイン コントローラ同士が孤立してレプリケーション不能に陥ることがある。
ちなみにクライアントPCは "最寄のDNS,もう一つ"。
確認するには ipconfig /all を使用する。GUIでも当然可能だが、未知のネットワークがあった場合に見落とす事があるため。また、メールで指示を出すときに間違いが無い。
なお、DC以外のDNSサーバーを指定していた場合は通信障害の原因になることがあるので極力避けるべき。
ipconfig /all
データベース レプリケーションの確認
Windows Server 2003 R2 以前は別途サポートツールをインストールする。
同一サイト内であれば最終レプリケーションが1時間以内、サイト間であれば既定で3時間以内にレプリケーションが成功していればOK。Windows 2000 Server の場合は
INBOUND NEIGHBORS が 3項目、Windows Server 2003 以降は状況によるが5項目成功している必要がある。
Windows Server 2003 でも Windows 2000 Server と同期していた場合は 3項目になる。
追加DC側で5項目、既存DC側で3項目表示される状態の場合、初回レプリケーションは完了していないのでもうしばらく待つ。待てない場合は[Active Directory サイトとサービス]の複製元一覧が出るところで[いますぐレプリケート]することができる。
Windows 2000 Server の場合
repadmin /showreps
Windows Server 2003 以降の場合
repadmin /showrepl /all
共有フォルダとファイル レプリケーションの確認
ドメイン コントローラーとして稼働する最終フェーズあたりで共有フォルダが作成される。
NETLOGON と SYSVOL 共有ができていれば初回レプリケーションまでは成功したと考えて良い。
それ以降のファイル レプリケーションを確認するには、既定では C:\Windows\sysvol\domain\scripts 内になにかファイルを保存する。正常であれば各DCへ伝播する。
ちなみに、初回レプリケーションが完了しないままシャットダウンすると、以降、FSMO以外正常動作しなくなることがある。2台目のDCは初回レプリケーション完了を確実に確認すること。
net share
DC全体の診断
dcdiag はドメインを診断するコマンドでWindows Server 2003 R2 以前はサポート ツールのインストールが必要。
24時間以内のイベントログからも取得してくるため解決済みのエラーも表示される可能性がある。
dcdiag /e