普段何気なくパソコンやスマートフォンを使っている時に「インターネットに接続したら日付と時刻が勝手に現在の時間に同期された」という経験がある方もいらっしゃるのではないかと思います。
この時刻同期の仕組みには、実は「NTPサーバ」と呼ばれる特殊な機器が関わっています。
この記事ではNTPサーバの概要と機能、代表的なNTPサーバの紹介などを行っていきます。NTPサーバがどのようなものか気になっている方は、ぜひ参考にしてください。
見出し
NTPサーバとは?
NTPは「Network Time Protocol」のことで、その名前の通り「ネットワークを使ってコンピューターの時刻を同期するためのプロトコル」を指します。
そのうちNTPサーバは「正しい時間を配信しているサーバ」を指し、構造的には非常に信頼性が高いNTPサーバを原点として複数のNTPサーバに枝分かれしていく階層構造となっています。
このNTPサーバの役目は「設定している機器に正しい時刻を与えること」です。
例えばローカル(その機器の中)の時計で時刻を管理している場合、一度でも機器の電源を落としてしまうと時間がずれてしまうことになりますが、NTPを使用していればネットワークを通じてNTPサーバと時刻の同期を行うことでズレた時間を修正することが可能になります。
サーバやルーターなど、ネットワークで重要な役割を持つ機器ではNTPを設定しておくのが一般的です。ちなみにNTPはパソコン、サーバ、ルーター、NASなどネットワークに繋がる機器であれば概ね設定することが可能です。
NTPサーバの構成について
NPTサーバは家庭でよく使われるPC以外にも、企業用のサーバ、ネットワーク機器、プリンターなど様々な機器から通信を受信して時刻同期を行っています。
そのためNTPが通信を行う相手は非常に膨大となり、1台のNTPサーバですべてをまかなうことは不可能です。
なので、NTPには「Stratum(ストレイタム)」と呼ばれる階層構造を使用して負荷分散を行う機能があります。
Stratumは上記図の通り「Stratum0~Stratum15」までの16階層が存在します。そのうち「Stratum0」はサーバ機器ではなく、原子時計や電波時計、GPSなどの時刻情報を極めて正確に取得できるハードウェアが使用されています。
そのため実際にNTPサーバを使用しているのは「Stratum1」からで、Stratum1の機器はStratum0のハードウェアクロックと通信を行って時刻情報を取得しています。
なお、上述した通りNTPのStratumは16階層存在しますが、実際に私たちが時刻同期に使用するNTPサーバは「Stratum1~Stratum3」にあることが殆どです。
実際に日本で(おそらく)一番よく使われているNTPサーバである「ntp.nict.jp」は「Stratum1」に位置します。
ちなみにStratum4以降のNTPサーバについては、企業や研究機関が自身の組織のネットワーク内に設置しているNTPサーバであることが殆どなので、一般的に使用されることは殆どありません。
NTPの重要性について
NTPでコンピュータの時刻を正確に管理する重要性は、IT技術者であれば誰しもが理解していると思います。
ただ、そうした経験のない人にとっては「別にパソコンの時間が多少ずれたくらいで大した問題はないんじゃない?」と感じてしまうかもしれません。
NTPが特に重要になるのは、サーバやネットワークの運用を行う場合です。
例えばサーバで「定期的にデータベースのバックアップを取得する」や「毎日決まった時間にバッチ処理を行う」など時間を指定して自動的にコンピューターに作業を行わせる際、コンピューターの時間がずれていると正常に処理が終わらなかったり、処理の終了時間が遅れてしまう可能性があります。
また、最近はセキュリティのため「複数のサーバやネットワーク機器のログを一元管理して、不審な動きが行われていないか監視する」などのログ管理を行うことも多く、そうした場合にも機器同士の時刻がズレていると正しいログの時間が分からなくなってしまいます。
個人利用のパソコンであれば多少の時間のズレは問題ないことも多いですが、会社のネットワーク等でこうした問題が発生すると思わぬトラブルが起こってしまうこともあるため、NTPサーバで正確な時刻に合わせるのは非常に大切なことです。
代表的なNTPサーバ
ここまででNTPサーバの概要や重要性について理解していただいたと思いますが、ここからは「実際にどのようなNTPサーバが良く使われているのか?」について紹介を行っていきます。
① ntp.nict.jp(NICT: 情報通信研究機構)
概要: 情報通信技術分野で日本で唯一の公的研究機関である「NICT(エヌアイシーティー)」が提供するNTPサーバです。公的機関が運営しているNTPサーバということもあり、日本国内での信頼度や利用頻度は非常に高いです。
Stratum: 1
特徴: 後述するPCやスマートフォンのOSに初期設定されているNTPサーバを除けば、おそらく国内で最も使用率が高いNTPサーバです。あらゆる企業のPC、サーバ、ネットワーク機器などで幅広く使用されています。
参考リンク:https://jjy.nict.go.jp/tsp/PubNtp/index.html
② time.windows.com(Microsoft)
概要: Microsoftが提供しており、Windows 10や11で標準設定されているNTPサーバです。アメリカに拠点があり、Windows OSを使用している多くのデバイスがデフォルトでこのサーバと同期を行っています。
Stratum: 3
特徴: 日本国内を含め、世界中の多くのWindowsユーザーがこのNTPサーバを使用しています。
③ time.apple.com(Apple)
概要: Apple社が提供するNTPサーバで、iPhoneやMacなどのApple製品ではデフォルトでこちらのNTPサーバが使用されています。
Stratum: 1
特徴: iPhoneやMacなどのApple製品に標準で設定されており、Apple製品ならユーザー側で特に設定をすることなく自動でこのNTPサーバと時刻同期が行われます。Appleユーザーにとっては最も馴染みのあるNTPサーバでしょう。
Windows 11でのNTPの設定方法
それでは、実際にNTPをWindows 11に設定してみましょう。Windows 10と11では設定画面が似ていますが、最新のOSであるWindows 11では以下の手順を参考にしてください:
手順① キーボードの「Windowsキー」+「Rキー」を押して、「timedate.cpl」と入力してOKボタンを押す
手順② タブを「インターネット時刻」に切り替えて「設定の変更」をクリックする
手順③ 設定の保存と同期:サーバ名に「ntp.nict.jp」と入れて「今すぐ更新」を押す
こちらの画面で「今すぐ更新」ボタンを押した後に「時計は正常に○○にntp.nict.jpと同期しました」という表示が出れば設定は完了です。
まとめ:NTPサーバを使用することで時刻同期が可能
今回はPC等の電子機器で使用される「NTPサーバ」についての解説を行いました。
NTPサーバを使用することで正しい時刻情報を取得することが可能で、例えばパソコンやスマートフォンの電源を切っても再度起動したときに時間が正常に表示されるもNTPサーバのおかげだったりします。
また、NTPは定期処理の実行やログ管理にも非常に重要な役目を果たすので、PCの他にも企業で使用されるサーバやネットワーク機器など様々なコンピュータで使用されています。
記事内では「Windows11のPCでNTPサーバを設定する方法」についても解説を行っているので、気になる方はぜひ試してみてください!