NTP çalışıyor, sistem saati hala zamanında değil - ne veriyor?


25

Bir Debian Stable (5.0.3) sunucusu çalışıyor ntpdve internete bağlı. Yine de, sistem saati yaklaşık 5 dakika yanlıştır.

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

İlgili kısımlar (bence) /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’nin hemen saati hemen getirmesi gerekmediğini biliyorum. Yine de, NTP'nin işini yapıp saati senkronize etmesini makul bir şekilde beklemek için kaç saat veya gün beklemeniz gerekiyor?

Başka bir yapılandırma dosyasını veya seçeneğini kaçırıyor muyum, yoksa sadece yanlış bir şey mi yapıyorum? Mı ntp (yerine örneğin ntpdate ) bunun için doğru bir araç? Yapılandırmanın doğru olup olmadığını ve seçilen NTP sunucularının doğru zamanı döndürüp döndürmediğini kontrol etmenin hızlı bir yolu var mı?

Düzenleme : çıktısı ntpq -p:

     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

Düzenleme 2 : ntpdate -u 0.europe.pool.ntp.orgKomutu kapatır ( brent tarafından önerilen ) döndürür

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

... diğer makinelerde bile bu komut iyi çalışıyor olsa da. Dolayısıyla, bu belirli sunucu için (farklı bir ağda, VPN üzerinden erişilen) ağ / güvenlik duvarı ayarlarına bakacağız.

Çözüm : Suçlu, sunucumuzdaki yerel güvenlik duvarı değildi, ancak çevredeki ağın bir yerindeki güvenlik duvarı ayarları. Bu yüzden sunucu barındırma sağlayıcısından makinelerimiz için NTP'ye izin vermesini istedik ve şimdi iyi çalışıyor. Örneğin, ntpq -pşimdi döner:

     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

(Biz de hosting şirketi tarafından tekrar başlatılır eunet.fi sunucularına anahtarlamalı, ama bunun konuyla budur.) Komutlar brent cevabı onlar beni sorun değil NTP yapılandırmasında, NTP sunucularına ağ erişimi olduğunu fark yaptı çünkü yararlı kendisi. Herkese teşekkürler!


1
'Ntpq-p' çıktısı nedir?
jscott

Yanıtlar:


24

Ntpd'yi durdurun, ntpdate -u 0.europe.pool.ntp.org3 kez çalıştırın , ntpd'yi başlatın, kontrol edin ntpq -p, geciktirin, ofset ve sıfırlayıcı olmamalıdır.


1
Ve 'when' alanı, son paketin alınmasından bu yana geçen zamanı belirtmelidir.
jscott

Ntpdate komutu "17 Aralık 17:37:29 ntpdate [14195]: senkronizasyon için uygun bir sunucu bulunamadı" gibi bir şey döndürür. Ancak, diğer makinelerde aynı komut anlamlı bir şey verir! Bu özel sunucu için bazı güvenlik duvarı ayarlarının soruna yol
açtığından

Bu ağ / güvenlik duvarı ayarlarını çözebilirsek yarın göreceğiz. Şimdilik bunu kabul edeceğim, çünkü problem büyük olasılıkla bunlarla ilgili. Beni doğru yöne yönlendirdiğiniz için teşekkürler
Jonik

3
ntpdateKomut çalışır ve senkronize olur benim saati, ancak tüm değerler hala 0ben yeniden başlattıktan sonra ntp. Elle yapıp kullanmasam neden işe yarar ntpd? Debian btw'deyim.
Mike

ntpdate ile ntp ile ilgili sorunu düzeltmek yerine bunu yapmak uzun vadede işe yaramaz. ve neden üç kere çalıştırıldığına dair hiçbir neden bilmiyordum.
Florian Heigl

1

Ağ bağlantınızın neden olduğunu ve varsayarak ve NTP Sunucunuzu sorunsuz bir şekilde görebildiğinizi tahmin etmek zorunda kalırsam, o zaman büyük bir değere sürüklenmiş olabilirsiniz. Eğer zaman farkı X’den büyükse (Üzgünüz, X’in resmi olmayan olduğunu hatırlamıyorum) bir uyarının basılmasından sonra zaman senkronize edilmeyecektir. Bunun için syslog mesajlarınızı kontrol edebilirsiniz.

Bu durum NTP'yi durdurduysa, ntpdate hostunu çalıştırın ve NTPD'yi yeniden başlatın, bu bir zaman senkronizasyonunu zorlar ve daha sonra donanımsal bir sorun yaşamaya devam ederseniz, senkronizasyonu devam ettirmeye başlar.


Teşekkürler. Bu durumda, sorun NTP sunucusunu sorunsuz göremiyoruz gibi görünüyor
brent'in

1

0 olan "reach" sütunları, sunucularla konuşamayacağına işaret eder - son 8 denemenin nasıl gittiğini göstermek için yavaş yavaş bitler alır (bu nedenle 377 iyidir, 0 kötüdür).


Evet, bu büyük olasılıkla sorun; bu cevaba yapılan yorumları görün: serverfault.com/questions/95342/…
Jonik
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.