Ntp
ntpd 同步但 chronyd 失敗
我正在使用 chronyd 設置時間伺服器,但它無法同步。
# chronyc sources 210 Number of sources = 5 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^? smtp.visionnet.us 0 10 0 10y +0ns[ +0ns] +/- 0ns ^? nist1-lnk.binary.net 0 10 0 10y +0ns[ +0ns] +/- 0ns ^? c-73-98-218-154.hsd1.ut.c 0 10 0 10y +0ns[ +0ns] +/- 0ns ^? clock.xmission.com 0 10 0 10y +0ns[ +0ns] +/- 0ns ^? time-c.timefreq.bldrdoc.g 0 10 0 10y +0ns[ +0ns] +/- 0ns
幾個小時後,它仍然無法同步。
但是,如果我在具有相同 ntp 伺服器的同一主機上配置 ntpd,它會立即同步:
# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== -lithium.constan 18.26.4.105 2 u 50 64 7 74.746 13.677 1.487 *nist1-lnk.binar .ACTS. 1 u 49 64 7 48.827 6.845 4.008 +c-73-98-218-154 .GPS. 1 u 47 64 7 12.792 2.418 1.338 +clock.xmission. .XMIS. 1 u 49 64 7 22.799 12.845 1.272 -time-c.timefreq .NIST. 1 u 49 64 7 59.498 -2.968 1.434
如果我在兩次嘗試期間都觀看 tcpdump,我可以看到,當 chrony 嘗試時,它會發送一個 NTPv4 客戶端數據包並且我從未看到響應,但是當 ntpd 執行此操作時,我會立即看到 NTPv4 客戶端數據包和 NTPv4 伺服器數據包。
有什麼我想念的嗎?chrony 是否在 udp 123 以外的任何其他埠上通話?(我們確實有一個數據中心防火牆,需要打開一個洞才能出去,但我無法擺脫 chronyd 可能還需要其他東西的感覺)
環境:
系統是一周前的 RHEL 7.3 更新檔
這是我的chrony.conf
server us.pool.ntp.org iburst server time.nist.gov iburst server time.nc7j.com iburst server time.xmission.com iburst server time-c.timefreq.bldrdoc.gov iburst stratumweight 0 driftfile /var/lib/chrony/drift rtcsync makestep 10 3 bindcmdaddress 127.0.0.1 bindcmdaddress ::1 keyfile /etc/chrony.keys commandkey 1 generatecommandkey noclientlog logchange 0.5 logdir /var/log/chrony allow 0.0.0.0/0
為了比較,我的 ntp.conf
driftfile /var/lib/ntp/drift restrict default nomodify notrap nopeer noquery restrict -6 default kod nomodify notrap nopeer noquery restrict 127.0.0.1 restrict ::1 server us.pool.ntp.org iburst server time.nist.gov iburst server time.nc7j.com iburst server time.xmission.com iburst server time-c.timefreq.bldrdoc.gov iburst includefile /etc/ntp/crypto/pw keys /etc/ntp/keys disable monitor logfile /var/log/ntp.log
不同之處在於 chronyd 預設為每個客戶端請求使用隨機源埠。如果防火牆不允許來自 123 以外的其他埠的客戶端請求,則需要通過添加
acquisitionport 123
到 chrony.conf 來指定埠。該指令在此處記錄。