【2023年最新版】時刻合わせを行うNTPサーバーの設定方法

この記事は 2 分で読めます。
概要

サーバー内の時刻合わせには、NTP(Network Time Protocol)サーバーの設定方法をご紹介します。

NTPサーバーの概要

サーバー内の時刻合わせには、NTP(Network Time Protocol)という通信プロトコルを利用します。国内であれば、以下に示す日本標準時に直結した時刻サーバーがあり、NTPサーバーを提供しています。

日本標準時 に直結した時刻サーバ

国立研究開発法人・情報通信研究機構であるNICT (National Institute of Information and Comuunications Technology)が 公開しているNTPサービスではインターネットを利用して、日本標準時を時刻配信しています。

時刻はこちらで確認出来ます。

■ NTPサーバ名: ntp.nict.jp

この時刻サーバはNICT内に設置され、 日本標準時に直結しています(stratum 1)。
その時刻精度は日本標準時と10ナノ秒以内、 処理能力は毎秒100万リクエスト以上の性能を有しているそうです。

本記事では、外部の時刻サーバ(以降、NTPサーバと呼びます)と時刻を同期する方法を紹介します。

NTPサーバーのインストール方法

現在時刻を確認するためには、「date」コマンドを利用します。

% date
2022年 11月  7日 月曜日 22:30:26 JST

ここで、日時が大幅に違っているようであれば、以下の時刻合わせ用のアプリケーションサーバーを用いて時刻合わせをおこないます。

時刻合わせ用アプリケーションサーバー「ntp」

$sudo apt-get install ntp

NTPサーバと時間を同期させるためには、/etc/inet/ntp.confファイルにNTPサーバのアドレスを設定します。

以下は、規定値の参照用NTPサーバーになります。

$emacs /etc/ntp.conf
pool 0.ubuntu.pool.ntp.org iburst
pool 1.ubuntu.pool.ntp.org iburst
pool 2.ubuntu.pool.ntp.org iburst
pool 3.ubuntu.pool.ntp.org iburst

こちらの代わりにNICTのサーバーで時刻合わせを行いたい場合には、以下のように記載ください。

server ntp.nict.jp

また、以下「pool」というサービスを使う方法もあります。このサービスは世界中にあるNTPサーバが登録されていて、上記URLにアクセスすると登録済みのNTPサーバの中から1つがランダムで選択されて接続してくれます。

$emacs /etc/ntp.conf
server 0.jp.pool.ntp.org
server 1.jp.pool.ntp.org
server 2.jp.pool.ntp.org
server 3.jp.pool.ntp.org

サーバー変更後に、ntpの再立ち上げをおこないます。

systemctl restart ntp

同期進捗や状態を確認するにはntpq -pコマンドを実行する。

以下のntpqコマンドを入力します。

$ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 1.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 2.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 3.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000    0.000   0.000
 hodor.bsdbg.net .GPS.            1 u    -   64    1  282.797  -11.365   0.000
 mirror.tillo.ch 192.33.96.102    2 u    -   64    1  254.153  -10.081   0.270
 any.time.nl     133.243.238.243  2 u    1   64    1   25.169   -7.768   9.015
 193.104.228.123 46.4.25.6        3 u    -   64    1  266.085  -17.192   7.483
 ntp1.wirehive.n 81.187.26.174    2 u    -   64    1  256.220  -12.886   5.937


$ntpq -p
 remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 1.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 2.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 3.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000    0.000   0.000
#hodor.bsdbg.net .GPS.            1 u   46   64  357  283.123  -17.293   4.042
*ntp-b2.nict.go. .NICT.           1 u   39   64  377    9.047   -7.585   4.242
#mirror.tillo.ch 194.242.34.149   2 u   41   64  157  254.646  -13.948   5.337
-any.time.nl     133.243.238.244  2 u   46   64  367    7.159   -8.917   5.440
-193.104.228.123 46.4.25.6        3 u   50   64  377  251.750  -19.836   4.696
-labs.netweaver. 85.199.214.98    2 u   49   64  367  248.256   -5.528   6.142
+ipv4.ntp3.rbaum 49.34.249.17     2 u   57   64  377    7.626   -2.283   4.302
-ap-northeast-1. 103.1.106.69     2 u   47   64  377    9.689   -6.446   4.051
#ntp1.wirehive.n 81.187.26.174    2 u   44   64  377  244.594  -17.182   3.944
#darwin.planet-r 161.143.24.141   2 u   39   64  377  251.485  -14.742   4.479
#evilhannie.eu   131.188.3.222    2 u   50   64  373  271.587   -4.953   4.644
-pugot.canonical 17.253.108.125   2 u    5   64  377  231.826   -9.644   3.949
+time.cloudflare 10.22.11.74      3 u   41   64  377    7.896   -3.167   7.526
-185.125.190.57  48.134.154.62    2 u    5   64  377  240.160   -5.090   3.813
-185.125.190.56  167.28.20.25     2 u    6   64  337  241.577   -4.009   5.385

2回目でようやく「*ntp-b2.nict.go. .NICT. 1 u 39 64 377 9.047 -7.585 4.242」にアスタリスクマークがついた。「*」がつけば同期が開始されたことになります。同期可能なサーバーに “+” がつきます。

タイトル内容
remoteNTPサーバのアドレス。
手前の記号についてはコードの一覧を参照。
refid参照ID サーバのIPアドレスあるいは外部クロックの名前
st階層
GPS時計など物理的な時計をst:0として、それを参照するNTPサーバはst:1、st:1を参照するNTPサーバst:2のように増えていく。
t種類
種類の一覧を参照
when最後にサーバからレスポンスがあったのが何秒前かを表す
pollポーリングの間隔(秒単位)
reach到達可能性
過去のポーリングの結果を成功:1、失敗:0とした8桁分のビット列を8進数で表現している。古い結果は上位桁に移動し、新しい結果は最下位桁に記録される。ntpdの再起動直後は 0 でポーリングが成功すると 1、3、7、10… という具合に増えていく。
delay往復にかかかる時間(ミリ秒単位)
サーバにクエリを送信したときに、応答パケットが戻ってくるまでにかかった時間で、小さいほど良い。
offset時差
サーバクロックとクライアントクロックがどれくらい離れているかを表す(ミリ秒単位)。小さいほうが良い。ntpデーモンはこの値の絶対値を小さく保とうとする。
jitterNTPサーバの正確性の度合い。おそらくAIXのdispと同じ。

まとめ

本記事のまとめ

本記事のまとめは、

NTPサーバーの設定方法をご紹介しました。

関連リンク

【サーバー】ネットワークセキュリティー上ルーターが必須な理由を解説

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です