Bagaimana cara mengkonfigurasi ntpd untuk menyinkronkan waktu lebih sering?

10

Saya perlu mengatur ntpd untuk menyinkronkan waktu sesering mungkin, bagaimana cara melakukannya?

UPD Saya perlu membuat ntpd menyesuaikan jam sistem lebih sering, bukan polling server. Ini perlu karena jam sistem PC virtual saya melayang terlalu banyak
maxpoll sepertinya tidak mengubah apa-apa, karena saya mengatur minpoll / maxpoll ke 4 dan 5, dan penyesuaian waktu tampaknya dilakukan hanya sekali dalam beberapa menit.

pengguna626528
sumber
Mengapa Anda ingin melakukan ini?
Kyle Smith
Karena saya perlu waktu yang tepat untuk tugas saya. Adakah alasan untuk tidak melakukan ini?
user626528
8
@ user626528 mendefinisikan "waktu yang tepat". Mengatakan Anda membutuhkan presisi tanpa mengukur tingkat presisi yang Anda butuhkan tidak ada artinya: Baik senapan sniper dan mortir 51 inci adalah amunisi "tepat".
voretaq7

Jawaban:

12

The iburstopsi ini beberapa pemeriksaan cepat secepat daemon dimulai dan setiap kali server tidak bisa diakses jika Anda memiliki bahwa dalam konfigurasi Anda. The burstopsi ini beberapa pemeriksaan cepat setiap kali server dapat dicapai.

Secara default ntpdkemudian mengikuti backoff eksponensial di mana waktu antara pemeriksaan meningkat secara progresif, mulai dari 64 detik dan dua kali lipat setiap kali, hingga maksimum 1024 detik.

The maxpollpilihan memungkinkan Anda untuk mengatur nilai maksimum yang lebih tinggi atau lebih rendah. Nilai ini adalah kekuatan 2 dalam detik antara pemeriksaan, jadi selama 1024 detik, maxpolladalah 10. Ada juga minpollyang 6 secara default dan dapat diturunkan menjadi 4.

Jika Anda menginginkan sesuatu yang lebih sering daripada setiap 16 detik, Anda mungkin perlu menggunakan ntpdatedaripada ntpdmenjalankan loop Anda sendiri.

Tolong jangan mengarahkan ini di server waktu publik tanpa menghubungi pengelola terlebih dahulu.

Ladadadada
sumber
3
Mungkin yang terbaik adalah dia tidak pernah menggunakan NTPdate, karena tidak mematuhi pesan KOD atau ICMP.
Chris S
Bacaan lebih lanjut tentang KoD dan cara menjalankan klien NTP yang baik secara umum: en.wikipedia.org/wiki/NTP_server_misuse_and_abuse
Ladadadada
Apa yang dikatakan @ChrisS - ntpdatesangat bagus untuk menyinkronkan jam sekali, atau untuk menyinkronkan paksa ke server NTP Anda sendiri setiap detik pada mesin di mana penyimpangan jam lokal sangat mengerikan. Jika Anda berada dalam situasi yang terakhir, ganti mesin (jam yang buruk akan terbawa beberapa detik setiap menit - Anda tidak akan pernah punya waktu yang akurat).
voretaq7
10
Tolong, tolong, tolong jangan orang yang mengubah default pada NTP. Saya harus melihat server NTP saya yang menghadap publik setiap minggu dan nuke orang-orang mengirim 1 paket setiap detik. Jika server Anda tidak mendengarkan pesan ICMP yang mengatakan "dilarang secara administratif," Saya akan menghubungi NOC ISP Anda dan Anda akan mengalami hari yang buruk. NTP akan membuat akurat dalam milidetik sendiri dan akan menyesuaikan kecepatan permintaan naik dan turun sesuai kebutuhan. Mengotak-atik tidak membantu.
Jeff Ferland
20

ntpdtidak menyinkronkan waktu secara berkala dengan cara yang Anda pikirkan, lihat di sini untuk informasi lebih lanjut (baca semuanya, itu semua penting. Versi singkat: ntpdmenyinkronkan waktu dan memberi tahu sistem seberapa cepat waktu itu menjauh dari waktu "benar", sistem kemudian menyesuaikan frekuensi jamnya untuk melacak dengan benar waktu "benar". Dalam sehari sebagian besar sistem melacak ke dalam 5ms dari referensi).

Jika tidak ada alasan yang SANGAT BAIK, Anda tidak boleh bergurau dengan cara ntpdmenyesuaikan dan mendisiplinkan jam Anda - algoritme ini telah diuji secara menyeluruh dan di-debug, dan diberi referensi waktu yang memadai akan menghasilkan tingkat kesalahan yang sangat kecil.
Terus terang jika Anda memiliki alasan yang SANGAT BAIK Anda sudah tahu apa itu, dan Anda memiliki anggaran besar untuk menyewa seorang ahli untuk membuat modifikasi ini untuk Anda ("Anda tidak akan menanyakan pertanyaan ini jika Anda benar-benar membutuhkan ini").

Jika Anda membutuhkan ketepatan waktu yang lebih baik daripada apa yang ntpddapat Anda lakukan sendiri untuk sinkronisasi dengan mesin melalui jaringan, Anda memerlukan jam referensi perangkat keras presisi khusus yang terpasang secara lokal ke mesin. Perdagangan frekuensi tinggi dan eksperimen ilmiah picosecond-critical adalah satu-satunya hal yang dapat saya pikirkan yang membutuhkan ketelitian semacam ini.

voretaq7
sumber
@ Chris itu band yang cukup lebar - Anda mungkin memiliki masalah kontrol suhu di pusat data Anda
voretaq7
3
Kami menggunakan Precision Time Protocol ketika itu benar-benar kritis ... en.wikipedia.org/wiki/Precision_Time_Protocol
ewwhite
6
-1 algorithm or program that requires high precision and accuracy! = mega corp with super massive budget.
TheLQ
@TheLQ Penerima GPS (seperti yang disebutkan Chris S dalam jawabannya) juga merupakan referensi yang presisi, dan tidak memerlukan apa pun yang menyerupai "anggaran super besar" (Anda dapat mengharapkan untuk menghabiskan dari seratus hingga seribu dolar untuk satu). Ketelitian meningkat dari sana, dan biaya meningkat seiring dengan itu, biasanya pada kurva eksponensial. Ketepatan waktu yang tepat tidak pernah gratis /
voretaq7
1
Satu lagi penggunaan untuk memiliki jam referensi lokal: pengukuran kinerja jaringan satu arah presisi tinggi. internet2.edu/performance/owamp
Dan Pritts
7

Dapatkan penerima waktu GPS jika Anda membutuhkan waktu yang sangat akurat. Ini akan memeriksa jam Anda setiap detik. Jika Anda tidak ingin menghabiskan banyak uang, Anda bisa mendapatkan Garmin 18x LVC di eBay atau Amazon dengan harga <$ 100 dan mengirimkannya ke port COM. Petunjuk di Internet, tetapi memang membutuhkan tingkat keterampilan kabel minimum. Solusi lengkap tersedia dengan biaya lebih tinggi, jika Anda tidak menyukai proyek DIY.

Chris S
sumber