NTP กำลังทำงานนาฬิการะบบยังไม่ตรงเวลา - จะให้อะไร


24

เซิร์ฟเวอร์ Debian Stable (5.0.3) กำลังทำงานntpdและเชื่อมต่อกับอินเทอร์เน็ต แต่ถึงกระนั้นนาฬิกาของระบบก็ผิดปกติประมาณ 5 นาที

$ /etc/init.d/ntp status
NTP server is running..

ส่วนที่เกี่ยวข้อง (ฉันคิดว่า) ของ/etc/ntp.conf:

driftfile /var/lib/ntp/ntp.drift

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

server 0.europe.pool.ntp.org
server 1.europe.pool.ntp.org
server 2.europe.pool.ntp.org
server 3.europe.pool.ntp.org

ฉันรู้ว่า NTP ไม่จำเป็นต้องนำนาฬิกามาให้ทันเวลา ยังมีกี่ชั่วโมงหรือหลายวันที่คุณต้องรอเพื่อคาดหวังว่า NTP จะทำงานและซิงค์นาฬิกาได้อย่างสมเหตุสมผล?

ฉันไม่มีไฟล์หรือตัวเลือกการกำหนดค่าอื่น ๆ หรือทำบางอย่างผิดปกติหรือไม่? คือNTP (แทนเช่นntpdate ) เครื่องมือที่เหมาะสมสำหรับนี้หรือไม่? มีวิธีใดที่รวดเร็วในการตรวจสอบว่าการกำหนดค่าถูกต้องหรือไม่และเซิร์ฟเวอร์ NTP ที่เลือกส่งคืนเวลาที่ถูกต้องหรือไม่

แก้ไข : ผลลัพธ์ของntpq -pis:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 ns1.nexellent.n .INIT.          16 u    - 1024    0    0.000    0.000   0.000
 dnscache-madrid .INIT.          16 u    - 1024    0    0.000    0.000   0.000
 sinister.wzw.tu .INIT.          16 u    - 1024    0    0.000    0.000   0.000
 dnscache-frankf .INIT.          16 u    - 1024    0    0.000    0.000   0.000

แก้ไข 2 : เปลี่ยนntpdate -u 0.europe.pool.ntp.orgคำสั่ง ( แนะนำโดย brent ) ส่งคืน

17 Dec 17:37:29 ntpdate[14195]: no server suitable for synchronization found

... แม้ว่าในเครื่องอื่น ๆ ที่คำสั่งทำงานได้ดี ดังนั้นเราจะดูการตั้งค่าเครือข่าย / ไฟร์วอลล์สำหรับเซิร์ฟเวอร์นี้โดยเฉพาะ (ซึ่งอยู่ในเครือข่ายอื่นเข้าถึงผ่าน VPN)

การแก้ไข : ผู้ร้ายไม่ได้เป็นไฟร์วอลล์ภายในเครื่องบนเซิร์ฟเวอร์ของเรา แต่การตั้งค่าไฟร์วอลล์บางแห่งในเครือข่ายโดยรอบ ดังนั้นเราจึงขอให้ผู้ให้บริการโฮสต์เซิร์ฟเวอร์อนุญาตให้ NTP สำหรับเครื่องของเราและตอนนี้ก็ใช้งานได้ดี ตัวอย่างเช่นntpq -pตอนนี้ส่งคืน:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 ns1.eunet.fi    192.36.144.23    2 u   10   64    1    1.043    0.258   0.001
 ns2.eunet.fi    62.142.10.44     2 u    9   64    1    0.671    0.135   0.001
 ns3.eunet.fi    62.142.10.44     2 u    8   64    1    0.750    0.277   0.001

(เราเปลี่ยนไปใช้เซิร์ฟเวอร์ eunet.fi ที่ บริษัท โฮสติ้งแนะนำ แต่นั่นอยู่ตรงจุด) คำสั่งในคำตอบของเบรนต์มีประโยชน์เพราะพวกเขาทำให้ฉันรู้ว่าปัญหาคือการเข้าถึงเครือข่ายไปยังเซิร์ฟเวอร์ NTP ไม่ใช่ในการกำหนดค่า NTP ตัวเอง ขอบคุณทุกคน!


1
เอาต์พุตของ 'ntpq -p' คืออะไร
jscott

คำตอบ:


23

หยุด ntpd, รันntpdate -u 0.europe.pool.ntp.org3 ครั้ง, เริ่ม ntpd, ตรวจสุขภาพntpq -p, ดีเลย์, ออฟเซ็ทและ jitter ไม่เป็นศูนย์


1
และฟิลด์ 'เมื่อ' ควรระบุเวลาตั้งแต่ได้รับแพ็คเก็ตล่าสุด
jscott

คำสั่ง ntpdate ส่งคืนบางสิ่งเช่น "17 Dec 17:37:29 ntpdate [14195]: ไม่พบเซิร์ฟเวอร์ที่เหมาะสมสำหรับการซิงโครไนซ์" อย่างไรก็ตามในเครื่องอื่น ๆ คำสั่งเดียวกันก็ให้บางสิ่งที่มีความหมาย! ฉันเริ่มที่จะสงสัยว่าบางส่วนตั้งค่าไฟร์วอลล์สำหรับเซิร์ฟเวอร์นี้โดยเฉพาะสาเหตุปัญหา ...
Jonik

เราจะเห็นพรุ่งนี้ถ้าเราสามารถแยกแยะการตั้งค่าเครือข่าย / ไฟร์วอลล์เหล่านั้นได้ ฉันจะยอมรับสิ่งนี้ในตอนนี้เพราะส่วนใหญ่ปัญหาเกี่ยวข้องกับสิ่งเหล่านั้น ขอบคุณที่ชี้นำฉันไปในทิศทางที่ถูกต้อง!
Jonik

3
ntpdateคำสั่งการทำงานและซิงค์นาฬิกาของฉัน แต่ค่าทั้งหมดยังคงอยู่หลังจากที่ผมเริ่มต้นใหม่0 ntpทำไมมันจะทำงานถ้าฉันทำด้วยตนเอง แต่ไม่ได้ใช้ntpd? ฉันอยู่ใน Debian btw
Mike

การทำเช่นนั้นจาก ntpdate แทนที่จะแก้ไขปัญหาด้วย ntp นั้นค่อนข้างไร้ประโยชน์ในระยะยาว และฉันก็ไม่รู้เหตุผลว่าทำไมถึงเรียกใช้สามครั้ง
Florian Heigl

1

ถ้าฉันต้องเดาว่าทำไมและสมมติว่าคุณมีการเชื่อมต่อเครือข่ายและสามารถเห็น NTP Host ของคุณได้โดยไม่มีปัญหาก็อาจเป็นไปได้ว่าคุณมีค่ามาก หากความแตกต่างของเวลามากกว่า X (ขออภัยฉันจำไม่ได้ว่า X คืออะไรในทันที) กว่าคำเตือนจะถูกพิมพ์และเวลาจะไม่ถูกซิงค์ คุณสามารถตรวจสอบข้อความ syslog ของคุณสำหรับกรณีนี้

หากนี่คือกรณีที่หยุด NTP ให้เรียกใช้โฮสต์ ntpdate และเริ่มต้น NTPD ใหม่ซึ่งจะบังคับให้มีการซิงค์เวลาจากนั้นเริ่มการซิงค์ในเวลาต่อไปหากคุณยังคงล่องลอยมากคุณอาจมีปัญหาด้านฮาร์ดแวร์


ขอบคุณ ในกรณีนี้ปัญหาที่เกิดขึ้นน่าจะเป็นที่เราไม่สามารถมองเห็นเซิร์ฟเวอร์ NTP ไม่มีปัญหา - ดูการแสดงความคิดเห็นที่จะตอบเบรนท์: serverfault.com/questions/95342/...
Jonik

1

คอลัมน์ "ถึง" เป็น 0 แสดงว่าไม่สามารถพูดคุยกับเซิร์ฟเวอร์ได้ แต่จะค่อยๆเปลี่ยนบิตเพื่อแสดงว่า 8 ครั้งล่าสุดไปได้อย่างไร (เช่น 377 ดี 0 ไม่ดี)


ใช่ว่ามีโอกาสมากที่สุดคือปัญหา ดูความเห็นต่อคำตอบนี้: serverfault.com/questions/95342/…
Jonik
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.