|
運用 2.ワークグループ環境における時刻同期 マイクロソフトMVP 小鮒 通成2005/08/12 |
|
|
|
|
Windows上で利用する時刻同期の実装
時刻同期が必須となったActive Directory環境に対応するため、Windows 2000以降のOSでは標準的に実装されたWindows Timeサービスが時刻同期を行う実装となっている。ちなみに各OSの時刻同期実装は以下のとおりである。
| OS | 時刻同期機能 |
| Windows 9x/Me | 標準はなし。サードパーティ製アプリケーションを導入する |
| Windows NT 4.0 | 標準はなし。NT 4.0リソースキットから追加導入可能 |
| Windows 2000 | Windows Timeサービス(SNTPプロトコル) |
| Windows XP | Windows Timeサービス(NTPプロトコル) |
| Windows Server 2003 | Windows Timeサービス(NTPプロトコル) |
| Windows OSごとのNTPベースでの時刻同期機能 | |
同じWindows Timeサービスでも、Windows 2000とWindows XP以降ではそのサポートしているプロトコルや機能が異なる(よって設定内容も異なる)ことに注意してほしい。なお、Windows NT 4.0およびWindows 9x系ではダウンレベル(過去のバージョン)となるNTLM認証が行われるため、時刻同期は必須ではない(認証に時刻情報は不要)。また、従来Windows ネットワーク・ベースでの時刻同期の仕組みとしてnet timeコマンドを使った方法が存在するが、本題ではないため割愛する。Windows 2000環境での時刻同期の方法については、関連記事のTIPSを参考にしていただきたい。
|
なお、本記事ではWindow 2000の挙動の詳細については割愛するが、Windows 2000ではSNTPサーバおよびSNTPクライアントとして動作させることが可能だ。SNTPはNTPのサブセットとなっているので、参照先サーバがNTPあるいはSNTPサーバとして正常稼働していれば同期に関して問題は起こりにくい。ただし、NTP階層に組み込むような利用方法では注意が必要である(完全な機能を持つNTPサーバとしては利用できない)。
ワークグループ端末からNTPサーバに時刻を同期させる方法
Windows XP以降では、コントロール・パネルの[日付と時刻]管理ツールを起動すると[インターネット時刻]タブが存在する(ドメインに参加したマシンには存在しない)。
![]() |
||||||||||||||||||
| 日付と時刻のプロパティ | ||||||||||||||||||
| [コントロール パネル]の[日付と時刻]管理ツールを起動するか、タスク・バー上の時刻表示部分をダブルクリックすると表示されるダイアログ。時刻を同期させる先を設定することができる。 | ||||||||||||||||||
|
時刻同期ができない場合のエラー・メッセージ
参照先のデフォルトは「time.windows.com」というサーバになっており、インターネットに接続された環境であれば、すでに時刻同期が行われた旨のメッセージが表示されているはずである。もし、同期ができなかったという場合はメッセージの内容に応じて対応する必要がある。
■時刻同期エラー:応答がない場合
![]() |
|||
| 時刻同期が失敗した場合のダイアログ(1) | |||
| 相手のNTPサーバから必要な応答がなかった場合には、このようにエラーとなる。 | |||
|
この場合は、相手先NTPサーバから必要な応答がなかったことを意味する。サーバに対してpingなどで生存確認ができてもNTPサーバとして機能していない、あるいは混雑しすぎている可能性が考えられる。対策としては、時間をおいてアクセスするか、ほかのNTPサーバを設定するしか方法はない。NTPサーバを自組織で管理している場合は、サーバがして正しく動作しているかを確かめる必要がある。
■時刻同期エラー:時刻がずれすぎている場合
![]() |
|||
| 時刻同期が失敗した場合のダイアログ(2) | |||
| ローカル・コンピュータの時刻と、NTPサーバの時刻がずれすぎていても同期することはできない。 | |||
|
これは、NTP サーバとクライアント間で時刻がずれすぎているため、同期が行えなかったことを意味する。対策としては、クライアント・コンピュータの時間を現在の時刻に大まかに合わせておけばよい。場合によっては、コンピュータのバックアップ用電池の状態を確認し、必要ならば交換するなどの対策が必要である(バックアップ電池が消耗していると、電源オフ時に内蔵時計が停止してしまうことがある)。なおデフォルトでは、NTPサーバとクライアント・コンピュータの時刻が15時間以上ずれている場合にこのエラーが発生する。しかしレジストリ値の設定により、同期間隔を変更したり、ずれの量を無視して強制的に同期させたりすることも可能である。
■時刻同期エラー:時刻情報が不正もしくは信頼できない場合
![]() |
|||
| 時刻同期が失敗した場合のダイアログ(3) | |||
| NTPネットワーク階層の状態が不正(不安定)になるなどして、信頼できる時刻情報が得られなかった場合のエラー・メッセージの例。 | |||
|
この場合は、相手先NTPサーバが保持する時刻情報がNTPプロトコルとして「信頼に足る時刻」と認められなかったため、クライアントが時刻を同期しなかったことを意味する。NTPプロトコルでは、各NTPサーバが信頼に足る時刻を保持している必要があるため、必要に応じてNTPサーバ自身がより上位NTPサーバに時刻同期を行うことで、自身のNTP階層上の位置を確認する。この確認が成功しなかった場合、NTP階層の構造が正しくないという意味で上記のメッセージが表示される。またそのほかの原因で、信頼できる時刻情報が得られない場合にもこのようなメッセージが表示される。
エラー時の対処方法
対策としては、基本的には、ほかのNTPサーバ(NTP階層的に正しく設定されたもの)に設定を変更することがあるが、何らかの事情で不可能な場合、[インターネット時刻]タブを利用せずに同期を設定することができる。これは次の方法で行う。
■方法1:w32tmコマンドで設定する
コマンド・プロンプトから、以下のようにコマンドを設定する。
w32tm /config /manualpeerlist:<NTPサーバのIPアドレス>,0x8 /syncfromflags:manual |
■方法2:net timeコマンドでSNTPサーバを指定する
コマンド・プロンプトから、以下のようにコマンドを設定する。
net time /setsntp:<NTPサーバのIPアドレス>,0x8 |
■設定の確認方法
コマンド・プロンプトから、以下のようにコマンドを実行する。
w32tm /resync |
どちらも設定内容としては同一だが、w32tmコマンドを使うと、関連するレジストリ設定なども自動的に行われる。この設定を行った後で[インターネット時刻]タブを開き、そこで[OK]や[今すぐ更新]ボタンをクリックすると、NTPサーバの設定などが変わってしまう。よって、上記のコマンドを実行した後は、[インターネット時刻]タブで設定を変更しないことが望ましい。
これらは、NTPプロトコルでの同期に関するモード(Association Mode)を変更する設定である。通常はSymmetric Active/Passive ModeというNTP階層をチェックする方法で時刻を同期するところを、Client/Server ModeというNTP階層をチェックしない方法で同期を行うことができる。この方法については以下のサポート技術情報を参照されたい。
Association Modeの詳細については、以下の情報を参照していただきたい。
- RFC 1305:Network Time Protocol (Version 3) Specification, Implementation and Analysis(IETF)
- NTP:Association Management
時刻同期の実行状況を確認する方法
Windows Server 2003やWindows XPでは、以下の3つの方法で時刻同期の状況を確認できる。
- [インターネット時刻]タブのフォームに表示されるメッセージから確認する(詳細は上述したとおり)
- イベント・ビューアのシステム・ログから確認する
- w32timeデバッグ・ログから確認する
イベント・ビューアのシステム・ログには、時刻同期が行われると以下のログが記録され、同期の状況が確認できる。
![]() |
||||||
| 時刻の同期中のイベント(1) | ||||||
| NTP/SNTPサーバからデータを受信した場合のイベント。 | ||||||
|
![]() |
|||
| 時刻の同期中のイベント(2) | |||
| NTP/SNTPサーバから得た時刻とシステム時刻を同期しているイベント。 | |||
|
上記のログは通常は、システム起動後に、最初に時刻同期されたときに記録されるが、時刻同期のたびごとに必ず記録されるわけではない。よって、上のログだけを見て時刻同期がいつでも正常に行われていると判断することは適切でない場合があるので注意してほしい。もちろん、時刻が同期されていない状況では警告またはエラーのログが記録されるので、そういった情報から状況は確認できる。
w32timeデバッグ・ログとは、Windows Timeサービス上での時刻同期の状況が詳細に記録されたログのことである(サービス名はWindwos Timeサービスであるが、ログにはW32Timeという名称で記録される)。本来はトラブル時に利用されるもので、解析にはNTPプロトコルに関する知識が必要である。初期設定ではw32timeデバッグ・ログは記録されないため、設定にはレジストリ値を追加する必要がある。設定方法については、まずは以下を参照願いたい。
これについては、第2回で解説する。
| INDEX | ||
| [運用]Windowsネットワーク時刻同期の基礎とノウハウ | ||
| 第1回 Windows OSにおける時刻同期サービスとNTP | ||
| 1.時刻同期プロトコルNTPの概要とWindows Timeサービス | ||
| 2.ワークグループ環境における時刻同期 | ||
| 3.Active Directory 環境における時刻同期 | ||
| 4.ドメイン内と外部NTPサーバの両方に対する時刻同期 | ||
| 運用 |
TechTargetジャパン
- クライアントでも利用可能になるHyper-V 3.0とは? (2012/2/9)
Windows 8では、従来のWindows Virtual PCに代わって新しくHyper-V 3.0がクライアント向けにも導入される。その概要を解説 - 第303話 ペアプロ2 (2012/2/7)
あっ、またまたいつぞやの幽霊が! …っと思ったら、何だ倉井さんかぁ…。はぁー、驚いた… - Excelで郵便番号変換ウィザードを活用する (2012/2/3)
Excelで管理している顧客名簿などで、不足している郵便番号や住所を入力するのは意外と面倒。郵便番号変換ウィザードを使えば、これらの入力が簡単になる - PCをシンクライアント化するWindows Thin PCとは? (2012/2/2)
VDI向けにシンクライアントがほしいけど専用機を買う余裕はない… Windows Thin PCなら既存PCを低コストでシンクライアント化できる。まずは概要を解説
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -






