WindowsServer2016のw32tmのモードが「0x9」から「0x8」へ仕様変更

WindowsServer2016を導入する企業が増えていると思いますが、GUIでサーバを指定した場合に設定される、w32timeのモードが「0x9」から「0x8」へ仕様変更されました。

f:id:merrywhite:20200519120609j:plain

 

レジストリの値を見てもらうと分かりますが、「time.windows.com,0x8」になっています。Windows Server 2012 R2の場合は、「time.windows.com,0x9」でした。

 

意外と気にしない人がいるかもしれませんが、色々と検証をしていて、w32timeのモードが「0x9」だと時刻同期に失敗するとか、成功してもローカルクロックを参照していたりと、思うように動作しないことがありました。

 

 

また、各モードの動作をしっておく必要があるのですが、このモードについては、@ITに詳しく書かれており、とても参考になります。
http://www.atmarkit.co.jp/ait/articles/1205/17/news135_2.html

 

このレジストリ値の第2パラメータでは、同期モードと同期間隔を同時に設定できる。以下のような意味を持っており、組み合わせて使うことができる。例えば0x9の場合、「Clientモードで、かつ一定の間隔で同期する」ことを意味する。ちなみに0x0または値なしの場合は0x4と同様の動作をする。
値 意味0x1 Symmetric Activeモードで同期/Windowsで実装した一定間隔での同期0x2 Symmetric Activeモードで同期/フォールバック時に利用するNTPサーバを指定0x4 Symmetric Activeモードで同期/RFC1305に準拠した間隔での同期0x8 Clientモードで同期/RFC1305に準拠した間隔での同期

 

つまり、0x9の場合、「Clientモードで、かつ一定の間隔で同期する」ことを意味することを指しますが、これがまたややこしい。結局どちらで動作するのということになりますし、現場でも問題になることが多かったので「0x9」は採用していません。

 

そういった経緯があってから、「0x8」になったのかもしれないですね。