Score:0

ntpd -g ไม่ซิงค์นาฬิกา

ธง cn

จาก เอ็นทีพีดี หน้าคน

หากเวลามากกว่า 1,000 วินาทีจากเวลาเซิร์ฟเวอร์ ntpd จะถือว่ามีบางอย่างผิดปกติอย่างมาก และการดำเนินการที่เชื่อถือได้เพียงอย่างเดียวคือให้ผู้ปฏิบัติงานเข้าแทรกแซงและตั้งนาฬิกาด้วยมือ สิ่งนี้ทำให้ ntpd ออกพร้อมกับข้อความตื่นตระหนกในบันทึกของระบบ ตัวเลือก -g จะแทนที่การตรวจสอบนี้และนาฬิกาจะถูกตั้งเป็นเวลาเซิร์ฟเวอร์โดยไม่คำนึงถึงเวลาของชิป.

ฉันได้ทำการทดลองเล็ก ๆ เพื่อทดสอบ -ก ตัวเลือกด้วย ntpd ก่อนอื่นฉันเปลี่ยนเวลานาฬิการะบบเป็นเวลาเก่าด้วยคำสั่งวันที่

วันที่ - 2021.06.15-19:10:21 น

หลังจากนั้นฉันสร้างขนาดเล็ก /etc/ntp.conf ไฟล์ที่มีข้อมูลด้านล่าง

ดริฟท์ไฟล์ /etc/ntp.drift
logconfig = สถานะการซิงค์
เซิร์ฟเวอร์ time.google.com minpoll 3 maxpoll 4

หลังจากนั้นฉันก็วิ่ง เอ็นทีพีดี ด้วยคำสั่งด้านล่าง

ntpd -g -n -4 -c /etc/ntp.conf &

โปรดทราบว่าของฉัน ntp.ดริฟท์ ไฟล์ว่างเปล่า

ฉันไม่เห็นการเปลี่ยนแปลงใน system time สถานะ infact ntp แสดงว่านาฬิกาไม่ซิงโครไนซ์

GW:/# ntpq -p
     การรีเฟรชระยะไกล st t เมื่อแบบสำรวจถึงการหน่วงเวลาชดเชยความกระวนกระวายใจ
  ================================================== ============================
    time2.google.co .GOOG 1 คุณ - 64 1 0.000 +0.000 0.000


นาฬิกาไม่ซิงโครไนซ์ ชั้น 16 อ้างอิงเป็น INIT
ความถี่คือ +0.000 Hz ความแม่นยำคือ -19
เวลาอ้างอิงคือ (ไม่มีเวลา)
การชดเชยสัญญาณนาฬิกาคือ +0.000000 มิลลิวินาที การหน่วงเวลาของรูทคือ 0.000 มิลลิวินาที
การกระจายตัวของรากคือ N/A

ใครก็ได้โปรดช่วยฉันที ฉันพลาดการกำหนดค่าหรือข้อมูลอื่น ๆ หรือไม่

นอกจากนี้ฉันมีคำถามเล็ก ๆ หนึ่งข้อ

จำเป็นต้องซิงโครไนซ์นาฬิกา ntp สำหรับการตรวจสอบสิทธิ์ ntp หรือไม่ หากนาฬิกา ntp ไม่ซิงโครไนซ์ ในกรณีนั้น การตรวจสอบเซิร์ฟเวอร์ ntp จะผ่าน

แก้ไข:

ด้านล่างนี้คือบันทึกที่มาเมื่อฉันเริ่ม ntpd

GW:~/var/log# cat ntpd.log
15 มิ.ย. 19:21:03 น. ntpd[14560]: ฟังและวางบน 0 v4wildcard 0.0.0.0:123
15 มิ.ย. 19:21:03 น. ntpd[14560] : ฟังปกติวันที่ 1 โล 127.0.0.1:123
15 มิ.ย. 19:21:03 น. ntpd[14560]: ฟังปกติวันที่ 2 srcr2 192.168.0.2:123
15 มิ.ย. 19:21:03 น. ntpd[14560]: ฟังปกติที่ 3 log0 1.0.0.1:123
15 มิ.ย. 19:21:03 น. ntpd[14560]: กำลังฟังซ็อกเก็ตการกำหนดเส้นทางบน fd #20 สำหรับการอัปเดตอินเทอร์เฟซ
15 มิ.ย. 19:21:03 น. ntpd[14560]: เคอร์เนลรายงาน TIME_ERROR: 0x2041: นาฬิกาไม่ตรงกัน
15 มิ.ย. 19:21:03 น. ntpd[14560]: เคอร์เนลรายงาน TIME_ERROR: 0x2041: นาฬิกาไม่ตรงกัน

อัปเดต:

@John ฉันได้ทำสิ่งที่คุณเคยแนะนำ แต่ฉันก็ยังเห็นปัญหาเดิม

GW:~/var/log# systemctl สถานะ ntpd
ntpd.service - ดีมอน NTPD


โหลดแล้ว: โหลดแล้ว (/etc/systemd/system/ntpd.service; ปิดใช้งาน; ค่าที่ตั้งไว้ล่วงหน้าของผู้ขาย: เปิดใช้งาน)
ใช้งานอยู่: ใช้งาน (ทำงาน) ตั้งแต่ ศ. 2021-07-09 08:17:46 UTC; 6 นาทีที่แล้ว
กระบวนการ: 21151 ExecStart=/bin/sh -c /sbin/ntpd -g >> /var/log /ntpd.log 2>&1 (code=exited, status=0/SUCCESS)
PID หลัก: 21153 (ntpd)
CGroup: /system.slice/ntpd.service
       ââ21153 /sbin/ntpd -g
       

แมว /etc/ntp.conf 
 # ใช้การสุ่มเลือก 4 เซิร์ฟเวอร์สาธารณะ stratum 2
 # ดู http://twiki.ntp.org/bin/view/Servers/NTPPoolServers
 #restrict ค่าเริ่มต้น nomodify notrap noquery
 #restrict noquery เริ่มต้น

ไฟล์บันทึก /var/log/ntpd.log
ดริฟท์ไฟล์ /etc/ntp.drift
logconfig = สถานะการซิงค์

เซิร์ฟเวอร์ time1.google.com ระเบิด
เซิร์ฟเวอร์ time2.google.com ระเบิด
เซิร์ฟเวอร์ time3.google.com ระเบิด
เซิร์ฟเวอร์ time4.google.com ระเบิด
#ลองพูลtime.google.com ด้วย


GW:~/var/log# ntpq -c เป็น
ind assid สถานะ conf ถึงเงื่อนไขการรับรองความถูกต้อง last_event cnt
================================================== =========
1 8426 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
2 8427 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
3 8428 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
4 8429 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1

GW:~/var/log# ntpq -c lpeer
     การรีเฟรชระยะไกล st t เมื่อแบบสำรวจถึงการหน่วงเวลาชดเชยความกระวนกระวายใจ
================================================== ============================
 time1.google.co.GOOG 1 คุณ - 64 377 0.000 +0.000 0.000
 time2.google.co .GOOG 1 คุณ - 64 377 0.000 +0.000 0.000
 time3.google.co .GOOG 1 คุณ - 64 377 0.000 +0.000 0.000
 time4.google.co .GOOG 1 คุณ - 64 377 0.000 +0.000 0.000


GW:~/var/log# cat ntpd.log
9 ก.ค. 08:17:46 น. ntpd[21153]: ฟังและวางบน 0 v6 wildcard [::]:123
9 ก.ค. 08:17:46 น. ntpd[21153]: ฟังและวางบน 1 v4 wildcard 0.0.0.0:123
9 ก.ค. 08:17:46 น. ntpd[21153] : ฟังปกติวันที่ 2 โล 127.0.0.1:123
9 ก.ค. 08:17:46 น. ntpd[21153]: ฟังปกติวันที่ 3 srcr2 192.168.0.2:123
9 ก.ค. 08:17:46 น. ntpd[21153]: ฟังได้ปกติที่ 4 log0 1.0.0.1:123
9 ก.ค. 08:17:46 น. ntpd[21153]: กำลังฟังซ็อกเก็ตการกำหนดเส้นทางบน fd #21 สำหรับการอัปเดตอินเทอร์เฟซ
9 ก.ค. 08:17:46 น. ntpd[21153]: เคอร์เนลรายงาน TIME_ERROR: 0x41: นาฬิกาไม่ซิงโครไนซ์
9 ก.ค. 08:17:46 น. ntpd[21153]: เคอร์เนลรายงาน TIME_ERROR: 0x41: นาฬิกาไม่ซิงโครไนซ์

GW:~/var/log#

คุณช่วยตรวจสอบอีกครั้งได้ไหม ฉันพลาดอะไรไปหรือเปล่า?

อัปเดต

วางผลลัพธ์การเชื่อมโยง ntpd

GW:/# ntpq -c เป็น
ind assid สถานะ conf ถึงเงื่อนไขการรับรองความถูกต้อง last_event cnt
================================================== =========
  1 47211 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
  2 47212 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
  3 47213 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1
  4 47214 9014 ใช่ ใช่ ไม่มี ปฏิเสธ ติดต่อได้ 1

หน่วยกิต:/# หน่วยกิต:/#

 GW:/# ntpq -c "rv 47211"
 associd=47211 status=9014 conf, เข้าถึง, sel_reject, 1 เหตุการณ์, เข้าถึงได้, 
srcadr=time1.google.com, srcport=123, dstadr=192.168.0.2, dstport=123,
กระโดด=00, ชั้น=1, ความแม่นยำ=-20, รูตดีเลย์=0.000, รูตดิสพี=0.107,
refid=GOOG, reftime=e4a0073d.cba4777a จันทร์ที่ 19 กรกฎาคม 2021 14:14:21.795,
rec=e4a0073d.cba4777b จันทร์ที่ 19 กรกฎาคม 2021 14:14:21.795, access=017,
unreach=0, hmode=3, pmode=4, hpoll=6, ppoll=6, headway=347,
flash=400 peer_dist, keyid=0, offset=+0.000, ดีเลย์=0.000,
การกระจาย=15937.500, กระวนกระวายใจ=0.000, xleave=0.033,
filtdelay= 2833222 2833222 2833222 2833222 2833222 2833222 2833222 2833222,
filtoffset= +141661 +141661 +141661 +141661 +141661 +141661 +141661 +141661,
ตัวกรอง= 16,000.0 16,000.0 16,000.0 16,000.0 16,000.0 16,000.0 16,000.0 16,000.0
jp flag
Dom
คุณแน่ใจหรือว่าไม่มีไฟร์วอลล์ระหว่าง ntp และ google ของคุณ หากตั้งเวลาในฮาร์ดแวร์ถูกต้อง ntpd จะติดต่อ google และรักษาเวลาได้อย่างถูกต้องหรือไม่
vivek avatar
cn flag
@Dom เมื่อฉันทำ ntpdate -u time.google.com มันจะอัปเดตเวลาดังนั้นฉันคิดว่าไม่มีไฟร์วอลล์ มีคำสั่งด่วนใดที่ฉันสามารถตรวจสอบไฟร์วอลล์ได้หรือไม่
Gerard H. Pille avatar
in flag
ฉันจะลบบรรทัด logconfig ออกจาก ntp.conf บางทีคุณอาจซ่อนข้อความที่อาจมีประโยชน์
vivek avatar
cn flag
@Dom ฉันมีคำถามอื่น คุณช่วยแบ่งปันความคิดของคุณเกี่ยวกับคำถามของฉันได้ไหม จำเป็นต้องซิงโครไนซ์นาฬิกา ntp สำหรับการตรวจสอบสิทธิ์ ntp หรือไม่ หากนาฬิกา ntp ไม่ซิงโครไนซ์ ในกรณีนั้น การตรวจสอบเซิร์ฟเวอร์ ntp จะผ่าน
Gerard H. Pille avatar
in flag
การกล่าวถึงการรับรองความถูกต้องเพียงอย่างเดียวในคู่มือ ntpd เกี่ยวข้องกับไคลเอนต์ที่รับรองความถูกต้องกับเซิร์ฟเวอร์ time.google.com ต้องมีการตรวจสอบสิทธิ์หรือไม่
jp flag
Dom
@vivek ขออภัยฉันไม่ทราบเกี่ยวกับนาฬิกาที่ถูกต้องซึ่งจำเป็นสำหรับการตรวจสอบสิทธิ์ ฉันคิดว่ามันไม่จำเป็น แต่ฉันไม่เคยใช้การรับรองความถูกต้อง คุณอาจเพิ่มเซิร์ฟเวอร์ใหม่ เช่น "pool.ntp.org" เพื่อดูว่ามีอะไรเปลี่ยนแปลงหรือไม่
John Mahowald avatar
cn flag
โปรดเพิ่มตัวแปรจากการเชื่อมโยง: `ntpq -c "rv 8426"` ซึ่งเราสามารถตีความสถานะแฟลช https://www.eecis.udel.edu/~mills/ntp/html/decode.html
vivek avatar
cn flag
@JohnMahowald ฉันได้เพิ่มตัวแปรจากการเชื่อมโยง
Score:3
ธง cn

โดยปกติหลังจากอนุญาต NTP ผ่านไฟร์วอลล์แล้ว แพ็กเก็ตสองสามชุดแรกจะได้รับการประมวลผล (เพิ่มการเข้าถึง) ระบบจะเลือกเพียร์ระบบ และขั้นตอนเริ่มต้นจะแก้ไขเวลา ระบบนี้มีเพื่อนร่วมงานที่เข้าถึงได้ แต่ปฏิเสธพวกเขาทั้งหมด ซึ่งเป็นเรื่องที่แปลก

หลังจากตรวจสอบเอาต์พุต readvar แล้ว รูตดีเลย์=0.000 ไม่สมเหตุสมผล ระยะไกลผ่านอินเทอร์เน็ต ไม่สามารถเป็นศูนย์ อาจเป็นไปได้ว่าเหตุใดคุณจึงมีคำว่าระยะทางเกินเกณฑ์อย่างรวดเร็ว

ทฤษฎี จากไออาร์ซี คือแพ็กเก็ต NTP นั้นถูกจัดการโดยมิดเดิลบ็อกซ์ ซึ่งถ้าเป็นจริงก็ไม่ดีเพราะเห็นได้ชัดว่า NTP พัง ntpd ใช้ dscp ไปยังแพ็กเก็ต แต่ ntpdate ไม่ใช่ พยายาม ดีเอสพี 0 ใน ntp.conf ถามไปทั่วว่ากล่องระบุบริการที่แตกต่างอยู่ในเส้นทางหรือไม่ จับแพ็กเก็ต (tcpdump) ของแพ็กเก็ต NTP และดูใน Wireshark ดูว่าสามารถผ่าทั้งฟิลด์ DSCP ใดๆ ห่อแพ็กเก็ต NTP ด้วยการประทับเวลา NTP ได้หรือไม่

ศึกษา ntpd ในเครือข่ายที่แตกต่างไปจากเดิมอย่างสิ้นเชิงเพื่อเปรียบเทียบสิ่งที่ดูเหมือนเมื่อทำงาน ntpd สามารถทำงานบนอะไรก็ได้ ดังนั้นอาจเป็น VM บนเวิร์กสเตชันของคุณ

คำตอบดั้งเดิมของฉันพร้อมคำติชมของการกำหนดค่าดังต่อไปนี้


การเข้าถึงของคุณบันทึกไว้มีเพียง 1 รอ 3 นาทีหลังจากเริ่ม ntpd ใช้เวลาพอสมควรในการรับแพ็กเก็ตคู่แรกคืน

เกี่ยวกับการกำหนดค่าของคุณ:

เซิร์ฟเวอร์ time.google.com minpoll 3 maxpoll 4

พิจารณาเพิ่ม ระเบิด ไปยังเซิร์ฟเวอร์และไลน์พูลของคุณ การระเบิดครั้งแรกเมื่อเริ่มต้นของหลายแพ็กเก็ตโดยมีความล่าช้าเล็กน้อย

ฉันไม่มั่นใจในการกำหนดค่า มินพูล และ แม็กซ์พูล เป็นความคิดที่ดี หมวกแดงก็เช่นกัน. บ่อยเกินไปเป็นระยะเวลานานและบริการ NTP สาธารณะอาจปิดกั้นคุณ ntpd นั้นดีอยู่แล้วในการเลือกช่วงเวลาของพูลแบบไดนามิก

ต้องการเซิร์ฟเวอร์ NTP เพิ่ม 4 เครื่องสำหรับการตรวจจับ Falsetickers ที่มีความซ้ำซ้อน n+1 Google NTP สาธารณะ มี 4 ส่วนหน้าซึ่งคุณสามารถใช้กับ สระน้ำ คำสั่งหรือบรรทัดเซิร์ฟเวอร์หลายรายการ อย่าลังเลที่จะเพิ่มบริการ NTP อื่น ๆ เป็นความคิดเห็นที่สอง เช่น 2.pool.ntp.org. (อย่างไรก็ตามคุณจะมีระเบียบ อธิปวินาทีสเมียร์ หากเซิร์ฟเวอร์ NTP ของคุณไม่เห็นด้วย)

ไม่ บริการ NTP สาธารณะไม่จำเป็นต้องมีการรับรองความถูกต้องของ NTP การรับรองความถูกต้องไม่ใช่ปัญหาของคุณ อนุญาตให้มีขั้นตอนขนาดใหญ่และปรับแต่งอัตราการสำรวจความคิดเห็นได้

การเปลี่ยนแปลงที่แนะนำของฉันสำหรับสายเซิร์ฟเวอร์เป็นดังนี้:

pool time.google.com ระเบิด

เกี่ยวกับวิธีที่คุณเริ่มต้น ntpd:

ntpd -g -n -4 -c /etc/ntp.conf &

-ก ตัวเลือกจำเป็นต้องแก้ไขการชดเชยขนาดใหญ่ดังกล่าวเป็นเวลาหลายชั่วโมง เก็บไว้ อนุญาตขั้นตอนที่ไม่มีที่สิ้นสุดเมื่อเริ่มต้น โดยปกติแล้ว offset ขนาดใหญ่จะทำให้ ntpd ตื่นตระหนก ใช้ -ก ในสคริปต์ใด ๆ ที่เริ่มต้น ntpd ดังนั้นเวลาจะถูกแก้ไขเมื่อบูต

ฉันไม่เห็นจุดประสงค์ของการไม่มีส้อมบวกกับพื้นหลังของเชลล์ สำหรับการเริ่มต้นในพื้นหลัง ฉันใช้ตัวจัดการบริการของระบบหรือสคริปต์เริ่มต้น ตัวอย่างเช่น ntpd.service unit สำหรับ Linux ที่มี systemd

ลบ -4. Google มีความสามารถ IPv6

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

ntpd -g -q
vivek avatar
cn flag
ฉันยอมรับว่าเซิร์ฟเวอร์สาธารณะไม่จำเป็นต้องมีการรับรองความถูกต้อง สิ่งที่ฉันหมายถึงคือ ถ้าสมมติว่านาฬิกาของฉันช้ากว่าเวลาจริง 1 วันและ ntpd ไม่ซิงค์นาฬิกาด้วยหากช่องว่างของเวลาสูงมาก (ถ้าเราไม่ได้ใช้ -g และ ntpdate) ดังนั้นในกรณีนั้นจะ ผ่านการรับรองความถูกต้องแล้วหรือจะล้มเหลวเนื่องจากช่องว่างเวลามีขนาดใหญ่ ฉันหมายถึงการรับรองความถูกต้องจะผ่านหรือไม่หากช่องว่างของเวลามีมาก ?
John Mahowald avatar
cn flag
-g ตัวเลือกคือสิ่งที่อนุญาตให้มีการกระโดดขนาดใหญ่และเฉพาะเมื่อเริ่มต้น ntpd คุณมีตัวเลือกนี้ ดังนั้นคำตอบแรกของฉันไม่ได้พูดถึงเรื่องนี้ ดูแก้ไข
John Mahowald avatar
cn flag
แก้ไขเพื่อเพิ่มทฤษฎีแพ็กเก็ตที่กระจัดกระจาย พิเศษเล็กน้อย แต่ฉันได้กล่าวถึงสิ่งธรรมดาทั้งหมดที่ฉันคิดได้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา