Mam dziwny problem z jednym z moich serwerów. ntpd
i ntpdate
nie działa, ale debugowanie nie pokazuje żadnych błędów. Na początku myślałem, że może lokalna lub sieciowa zapora blokuje port UDP 123, ale tak nie jest - ten serwer może komunikować port UDP 123 (protokół NTTP) z Internetem i uzyskiwać odpowiedzi.
Pokażę problem.
date -s "30 DEC 2012 02:30:00"
- działa, więc mogę z powodzeniem ustawić zegar bez błędów.
ntpq -pn pool.ntp.org
- działa, otrzymuję szczegółowe dane czasowe z serwera czasu i udowadnia, że pakiety UDP działają.
ntpdate -d pool.ntp.org
- tryb debugowania działa, pokazuje masę danych debugowania i pokazuje bieżące przesunięcie czasowe:
30 Dec 02:38:56 ntpdate[19267]: step time server 208.97.140.69 offset 228.234554 sec
Wszystko wygląda normalnie, dopóki:
ntpdate pool.ntp.org
- po 4,7 sekundy nie zwróci:
30 Dec 02:41:29 ntpdate[19274]: no server suitable for synchronization found
Podobny problem z działaniem ntpd
, nie aktualizuje zegara.
Po uruchomieniu ntpd powoduje, ntpq -pn
że wszystkie refid utkną na zawsze, .INIT.
co oznacza, że nie mogą się zsynchronizować.
/ var / lib / ntp / drift jest ustawieniem pliku drift w pliku ntp.conf, który jest chmod 644 i jest własnością ntp: ntp, tak samo jak wszystkie inne systemy.
Wypróbowałem kilkanaście innych serwerów czasu NTTP, wyłączyłem zaporę iptables i potwierdziłem, że centrum danych nie filtruje ruchu udp. Jakieś pomysły, co powstrzymuje ntpd i ntpdate od synchronizacji mojego zegara?
Jest to CentOS 6.3 x64 na dedykowanym serwerze z procesorem Intel.
Odpowiedzi:
ntpdate
(intpd
) odmówi (łatwego) ustawienia czasu, jeśli przesunięcie jest zbyt wysokie. Obie aplikacje będą starały się powoli dostosowywać czas, aby nie mylić systemu lub aplikacji, które mogą nie radzić sobie z dużymi skokami czasu.Spróbuj
ntpdate -b
zamiast tego. Ustali czas, bez względu na to, jak nieuzasadniony może się wydawać.Konieczne może być również dodanie
-u
flagi, co uniemożliwintpdate
korzystanie z uprzywilejowanych portów (<1024). Zauważ, że-u
sugeruje to-d
! I wygląda na-d
to, że działa dobrze.Jeśli dodanie
-u
powoduje różnicę między działaniem a niedziałaniem, oznacza to, że masz zaporę ogniową, która powoduje te problemy.I niestety korzystanie z nieograniczonego portu nie wydaje się możliwe
ntpd
.źródło
ntpdate -b pool.ntp.org
wyniki:30 Dec 03:00:10 ntpdate[1341]: no server suitable for synchronization found
Flaga debugowania ntpdate, która-d
wyświetla dane debugowania, ale nie synchronizuje, i działa:ntpdate -d pool.ntp.org
wyniki:30 Dec 03:00:55 ntpdate[1343]: step time server 128.10.254.6 offset 228.030338 sec
-d
może działać, podczas gdy inaczej nie.ntpdate -b -u
Pracuje!!! Niesamowite. Dwa pytania. Demon ntpd nadal nie działa, jak mogę to zrobić, aby nie używać uprzywilejowanych portów? Drugie pytanie: DLACZEGO ten komputer nie działa z NTTP na uprzywilejowanych portach, podczas gdy wszystkie inne serwery nie działają?Czy możesz podać następujące dane wyjściowe w pliku pastebin.
Synchronizujesz z serwerów warstwy 1 lub czegokolwiek innego.
Brak serwera odpowiedniego do synchronizacji oznacza to, co mówi, że nie można nawiązać komunikacji między klientem a serwerem.
Jeśli nie możemy znaleźć wskazówek z tego zestawu danych, może być konieczne tcpdump, aby zobaczyć, gdzie pakiet jest tracony.
Zatrzymaj i uruchom demona ntpd i poczekaj, aż zasięg osiągnie 377, a następnie zatrzymaj tcpdump. To powinno dać dalsze wskazówki.
źródło