GNU/Linux >> Belajar Linux >  >> Linux

Apa itu dispersi NTP dan bagaimana cara mengontrolnya?

Solusi 1:

Saya melihat beberapa kebingungan terjadi dalam jawaban di sini. Sebagai permulaan, ntpclient , setidaknya di -s mode, tidak bertindak sebagai klien NTP penuh, hanya mengirim dan menerima satu paket , jadi tidak ada "8 paket terakhir yang diterima". Itu sebenarnya tidak memperkirakan dispersinya sendiri sama sekali.

Alih-alih, nilai yang dicetaknya adalah nilai yang disebut "penyebaran root" (rootdisp) dalam paket yang dikembalikan oleh server, yang merupakan perkiraan jumlah total kesalahan/varians antara server tersebut dan waktu yang tepat. Cara penghitungannya cukup sederhana:setiap server NTP mendapatkan waktunya dari jam eksternal (misalnya penerima radio atau GPS), atau dari server NTP lainnya. Jika server mendapatkan waktunya dari jam eksternal, dispersi akarnya adalah perkiraan kesalahan maksimum jam tersebut. Jika mendapatkan waktunya dari server NTP lain, dispersi rootnya adalah dispersi root server tersebut plus dispersi ditambahkan oleh tautan jaringan di antara mereka.

Satu titik kebingungan di sini adalah bahwa sementara ntpq dan chrony menampilkan dispersi dan dispersi root dalam hitungan detik, yang biasa dilihat orang, ntpclient menampilkannya dalam mikrodetik . Terlepas dari itu, nilai 1217163 masih cukup tinggi. Server NTP yang baik mengetahui waktu dalam beberapa milidetik; yang buruk dalam beberapa puluh atau ratusan milidetik. Milik Anda memberi tahu Anda bahwa waktunya hanya dapat dipercaya dalam +/- 1,2 detik.

Anda sebenarnya bisa mendapatkan ntpclient untuk menyinkronkan ke server ini dengan meneruskan -x 0 atau -t opsi (tergantung pada versi ntpclient), yang menonaktifkan pemeriksaan kewarasan NTP. Jika Anda hanya membutuhkan waktu yang kira-kira akurat (dalam beberapa detik), itu mungkin cukup baik. Namun, ntpclient cukup masuk akal untuk menolak menyinkronkan ke server yang buruk. ntpq Anda output pada mesin ubuntu menunjukkan kegugupan ratusan milidetik untuk semua servernya, meskipun penundaannya rendah, yang menunjukkan jaringan yang sangat tidak dapat diandalkan, konspirasi semua dari server untuk memberikan waktu yang tidak menentu, atau masalah ketepatan waktu dasar pada server itu sendiri.

Saya juga khawatir bahwa server 10.31.10.22 mengiklankan refid dari LOCL (jam lokal tidak disiplin) tetapi memiliki strata 1. Biasanya jam lokal dipalsukan ke strata 10 sehingga hanya digunakan sebagai sumber sinkronisasi pilihan terakhir untuk menjaga kawanan agar tidak terpisah. Entah 10.31.10.22 salah konfigurasi dan memberikan waktu yang buruk ke seluruh jaringan, atau sedang didisiplinkan untuk waktu yang baik oleh beberapa program di luar kendali NTP, dalam hal ini kesalahan konfigurasi hanyalah mengiklankan LOCL refid; itu harus diganti menjadi mis. GPS atau apa pun yang menyediakan waktunya.

Solusi 2:

Hanya sebagian jawaban untuk "Apa itu dispersi?":

Tipikal perjalanan pulang pergi NTP:

client |        | server
    t1 |------->| t2
    t3 |<-------| t4

Ini menghasilkan dua nilai, offset (perbedaan waktu antara klien dan server), dan penundaan (penting waktu perjalanan jaringan) dengan rumus berikut:

offset= ((t4 - t3) + (t1 - t2)) / 2
delay = (t4 - t1) - (t3 - t2)

Klien memilih offset saat ini dari 8 paket terakhir yang diterima, memilih salah satu dengan penundaan terkecil.

8 paket yang sama digunakan untuk menghitung dispersi dengan melakukan pembobotan rata-rata selisih dari 8 offset ini ke salah satu yang dipilih pada langkah terakhir, di mana penundaan digunakan sebagai faktor pembobot, memberikan bobot yang lebih besar pada penundaan yang lebih kecil. Ini adalah ukuran untuk "penyebaran" nilai dan digunakan untuk menghitung kualitas server waktu, terutama jika Anda memiliki banyak pilihan.

Solusi 3:

Dispersi dan kemiringan Anda sangat besar, ada offset yang sangat besar dari jam lokal ke rekan itu. Anda harus membandingkan offset dengan date lokal dan atur jam secara manual.

Jalankan ntpd dan tampilkan ntpq -p dari host menggunakan semua peer. Ini akan memilih yang lebih baik.

Solusi 4:

Menurut dokumentasi cisco ini, "dispersi , dilaporkan dalam detik, adalah perbedaan waktu jam maksimum yang pernah diamati antara jam lokal dan jam server". Dengan server ntp yang tidak sepenuhnya rusak, dispersi tinggi tidak boleh terjadi. Satu-satunya skenario yang layak adalah saat klien Anda memulai ntp dan sejauh ini hanya tersedia jam lokalnya. Dan meskipun demikian, dispersi setinggi yang Anda laporkan sesuai dengan jam yang mati lebih dari dua minggu .

Itu harus cukup untuk memastikan bahwa jam lokal tidak terlalu jauh di awal (bahkan beberapa jam masih dapat diterima), baik dengan menyesuaikan jam (dan bahkan tanggal!) Di BIOS atau dengan mengeluarkan ntpdate satu kali sebelum memulai ntpd pada klien.


Linux
  1. Apa itu Server Web, dan Bagaimana Cara Kerja Server Web?

  2. Bagaimana Cara Menginstal dan Mengkonfigurasi NTP untuk Sinkronisasi Waktu di CentOS?

  3. Bagaimana cara Setup Server NTP di CentOS?

  1. Bagaimana cara menyinkronkan waktu menggunakan NTP di server Ubuntu?

  2. Cara Menginstal dan Mengonfigurasi Server dan Klien NTP Linux

  3. Bagaimana cara mengatur Debian untuk memperbarui waktu dan tanggal secara otomatis?

  1. Apa itu Virtualisasi Server? Definisi dan Cara Kerjanya

  2. Cara mengkonfigurasi server dan klien NTP di AlmaLinux

  3. Cara Mengatur Zona Waktu dan Menyinkronkan Waktu Server dengan NTP di Linux