図1●ワークグループ構成のWindows XP Professionalでの時刻同期
[日付と時刻のプロパティ]の[インターネット時刻]タブに,NTPサーバーと時刻を同期させる設定がある。

図2●ドメイン構成のWindows XP Professionalでの時刻同期
Active Directoryドメインに参加すると[インターネット時刻]タブがなくなる。
Q

Windows XP Professionalを利用しています。当初ワークグループ構成で利用していたときには,[日付と時刻のプロパティ]の[インターネット時刻]タブで,図1のようにNTP(Network Time Protocol)サーバーと時刻を同期させる設定を行っていました。しかし,社内のActive Directoryドメインに参加したところ,図2のようにこのタブがなくなってしまいました。これはどうしてでしょうか?またどのようにすれば,時刻の同期ができるのでしょうか?

A

Active Directoryドメインに参加すると[インターネット時刻]タブがなくなるのは,Windows XP Professionalの仕様です。Active Directoryで利用されるKerberos認証を機能させる上では,クライアントとドメイン・コントーラの時刻が同期していることが必須条件になっています。そのため,ドメインに参加した時点で,自動的にドメイン・コントローラ上のSNTPサーバーと時刻同期を行うように設定が変更されてしまうのです。

 しかし,Active Directoryを構成していてもどうしても外部の時刻サーバーと時刻同期を行いたいという場合もあると思います。この場合は,w32tmコマンドを利用してレジストリを修正してください。

 外部のNTPサーバーと時刻を同期させるためには,図3(a)のコマンドを実行する必要があります。

 ただし,実際に試した限り,上記のように設定を行うと時刻同期の間隔が1024秒になるよう,自動的に調整されてしまいます。

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
W32Time\Time Providers\NtpClient以下のSpecialPollIntervalレジストリによる時刻同期間隔の設定を有効にしたい場合は,/manualpeerlistオプションの引数として,図3(b)のように記述を行ってください。これでワークグループ構成のときと同様,上記レジストリによる秒単位での時刻同期間隔の調整が有効になります。

 また,ドメイン・コントローラと同期させる設定に戻すには,図3(c)のようにします。

 これらのコマンドにより,HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Services\W32Time\Parameters以下にある各種レジストリが修正されます。その他関連する情報として「文書番号JP307897,Windowsタイムサービスによる時刻の同期」を参照してください。

 ここで紹介した以外にもw32tmコマンドには様々な機能があります。オプションなしでコマンドを実行することで,ヘルプが表示されるので,興味がある方は一度機能を確認してみてください。

 なお,実際に確認すると,図3(d)のように,両方のオプションを指定することで,外部のNTPサーバーとドメイン・コントローラの両方と時刻同期を行うことも可能でした。ただし,両方のタイム・ソースの値が大きく異なる場合などの動作が不明なため,安易に利用しないことを強く推奨します。

(a)外部のNTPサーバーと時刻を同期させる
w32tm /config /syncfromflags:MANUAL /manualpeerlist:
(b)時刻同期間隔のレジストリ設定を有効にする
w32tm (その他のオプション) /manualpeerlist:,0x1
(c)ドメイン・コントローラと同期させる設定に戻す
w32tm /config /syncfromflags:DOMHIER
(d)外部のNTPサーバーとドメイン・コントローラの両方と時刻を同期する
w32tm /config /syncfromflags:DOMHIER,MANUAL
図3●w32tmコマンドと各種オプション
コマンドで,ドメイン構成のWindows XPでも外部の時刻サーバーとの同期が可能になる。(b)ではntpサーバーのホスト名として,「ホスト名,0x1」を指定するところがポイント。
高橋基信