NTP: Network Time Protocol

皆の時間をあわせるもの

以前は ntp、今は chrony で行っているのが多いかな.

ntp本家様 http://www.ntp.org/
chrony本家様 https://chrony-project.org/

windows11をntpサーバにしてみる

まずはwindows自体のntpクライアントを有効にして上位の時計サーバに繋げる.
[設定]->[時計と言語]->[日付と時刻]->[その他の時計]をクリックして「日付と時計」パネルを表示させる.
「インターネット時刻」タブをクリックして「設定の変更..」ボタンを押下して「インターネット時刻設定」パネルで有効な上位のntpサイトを指定して「OK」ボタンを押下します
2025y05m22d_204634230.png

これで上位のntpサーバから時計情報がlinkされました.
次に本題のwindows自体をntpサーバに仕立てます.
レジストリを弄ります.
検索欄、もしくはcmdから regedit と実行して「レジストリ エディター」を起動します。
修正場所は HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer でEnabledを0から1に変更します
2025y05m22d_205030660.png 2025y05m22d_205407509.png

次に HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config の AnnounceFlags を a から 5 に変更します
2025y05m22d_205649725.png 2025y05m22d_205724501.png

以上で「レジストリ エディター」の作業は完了.

次に、w32timeを再起動させます。面倒ならwindowsを再起動で行けますが、コマンドプロンプトで行けます。
まず、検索欄で[cmd]と記入して検索された「コマンドプロンプト」にて右クリック「管理者として実行」を選択します
2025y05m22d_210057812.png

そこで現れたコマンドプロンプトで

C:\Windows\System32>net stop w32time
Windows Time サービスを停止中です.
Windows Time サービスは正常に停止されました。
 
 
C:\Windows\System32>net start w32time
Windows Time サービスを開始します.
Windows Time サービスは正常に開始されました。
 
 
C:\Windows\System32>

と実行します. これでwindows11はntpサーバに成れました。次にサーバになったら要求を受け入れる必要があるのでファイアウォールに穴をあけます。
[検索欄]にてコントロールパネルを検索して開きます. 表示方法を「小さいアイコン」にして「Windows Defenderファイアウォール」を起動します
左縦メニューから「詳細設定」を選び「セキュリティが強化されたWinodws Defenderファイアウォール」を開きます。
そこで左のツリーから「受信の規則」を選び、右側の「新しい規則..」を押下します.

として「完了ボタン」を押下します。これでファイアウォールに穴が開き外部からntpサーバとして機能します。

既定で全てのインターフェースにこれが適用されます。なので二本のnicをもって片方にのみサービスを提供したい場合とか作ったサービス[NTPサービス]のプロパティで修正します

windowsをntpサーバにした場合の留意点

chronyで接続を試みても失敗します. 「/etc/chrony.conf」に「maxdistance」を淹れないと無理みたい

[root@rockylinux9 ~]#
server win11 iburst
maxdistance 16.0
 
[root@rockylinux9 ~]#

「chronyc tracking」とかで接続確認します

ntpの構築

最新の安定板を取得して、コンパイル、インストール

 # wget http://archive.ntp.org/ntp4/ntp-4.2/ntp-4.2.6p5.tar.gz
 # gzip -cd ntp-4.2.6p5.tar.gz | tar xf -
 # cd ntp-4.2.6p5
 # ./configure --prefix=/opt/ntp --enable-step-slew --enable-ntp-signd=/opt/samba/var/run/ntp_signd
 # make
 # make test; make install

起動スクリプトは既存の /etc/init.d/ntpd を

 prog=ntpd
    ↓
 prog=/opt/ntp/bin/ntpd

に変更すればOK

■設定ファイル
基本ntpdを稼働させれば、そのマシンはntpサーバとなる。ntpのサービスを提供するかしないかはrestrictの定義に依存。
何もrestrict(制限)しなければ、そのマシンは他から来る時刻問い合わせを受けて、返事をだす形になる。
また、時計の参照先はserverで指定したマシンになるが、127.127.1.0 のIPアドレスは自が持っている時計を参照することを意味する。

 server ntp1.jst.mfeed.ad.jp       <-- 外部の信頼ある時刻参照先
 server 127.127.1.0  stratum 10    <-- もし外部が繋がらなかった際、緊急として自分の体内時計を参照する
 
 restrict  default  ignore         <-- クライアントから来る全てのパケットを拒否します
 restrict  127.0.0.1               <-- (ただし)この''サーバ''からこの''サーバ''へのパケットは構わない
 restrict  192.168.0.0 mask 25.255.255.0 nomodify notrap  <-- (ただし)192.168.0.0/24から届く、
                                                               nomodify: サーバーの状態を変更するパケットは受け取らない
                                                               notrap  : trap サービスのためのパケットも受け取らない
 restrict  ntp1.jst.mfeed.ad.jp mask 255.255.255.255 nomodify notrap noquery
                                    <-- (ただし)ntp1.jst.mfeed.ad.jpからの届く
                                        nomodify: サーバーの状態を変更するパケットは受け取らない
                                        notrap  : trap サービスのためのパケットも受け取らない
                                        noquery : 質問・紹介らのパケット要求も受け取らない(192.168.0.0/24では頂くけど)
 driftfile /var/lib/ntp/drift
 logfile /var/log/ntpd.log
 broadcastdelay 0.008
 keys /etc/ntp/keys
 ntpsigndsocket /opt/samba/var/run/ntp_signd

これで、192.168.0.0/24から届く時間参照要求のパケットは許可するけど、それ以外は許可しなくなる。
(自分自身は構わないけど)

配布パッケージの場合

ごくごく簡単に配布パッケージを利用して時計合わせを行う場合。192.168.0.3がntpサーバ

[root@c131 ~]# yum -y install ntp
 
[root@c131 ~]# vi /etc/ntp.conf            
driftfile /var/lib/ntp/drift
server 192.168.0.3
*この2行で十分
 
[root@c131 ~]# echo 192.168.0.3 >> /etc/ntp/step-tickers
*起動時に/etc/init.d/ntpdateで採用されるntpサーバを指定
 
[root@c131 ~]# /etc/init.d/ntpd start
[root@c131 ~]# chkconfig ntpd on; chkconfig ntpdate on

最低限これでOK

最新の60件
2025-06-18 2025-06-17 2025-06-15 2025-06-14 2025-06-11 2025-06-09 2025-06-08 2025-06-07 2025-06-05 2025-06-02 2025-06-01 2025-05-31 2025-05-30 2025-05-25 2025-05-22 2025-05-21 2025-05-20 2025-05-18 2025-05-17 2025-05-14 2025-05-13 2025-05-12 2025-05-11 2025-05-08 2025-05-07 2025-05-06 2025-05-05 2025-05-04 2025-05-03 2025-04-27 2025-04-26 2025-04-25 2025-04-24

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-05-22 (木) 21:21:50