systemd-timesyncd.service
시계를 사용하고 동기화해야 하는 소규모 시스템 네트워크가 있습니다 . 정확할 필요는 없으며 동기화만 하면 됩니다. 머신 중 하나를 NTP 서버로 지정하고 나머지 머신은 이 머신을 가리키지만 동기화하는 데 몇 시간이 걸리고 동기화할 때 매우 일관성이 없습니다.
Jun 22 18:09:16 host systemd-timesyncd[10515]: Initial synchronization to time server 10.10.1.30:123 (10.10.1.30).
Jun 22 18:25:50 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 18:34:22 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 18:51:26 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 19:25:34 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 19:59:43 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 20:33:51 host systemd-timesyncd[10515]: Initial synchronization to time server 10.10.1.30:123 (10.10.1.30).
Jun 22 21:07:59 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 21:42:07 host systemd-timesyncd[10515]: Server has too large root distance. Disconnecting.
Jun 22 22:16:16 host systemd-timesyncd[10515]: Initial synchronization to time server 10.10.1.30:123 (10.10.1.30).
어떻게 해결할 수 있나요?
답변1
범인은 "루트 거리"인 것 같습니다. 이는 각 클라이언트에서 로컬 NTP 서버(다른 NTP 서버를 통해)를 거쳐 GNSS 수신기 또는 원자 시계가 있는 "계층 1" 서버까지의 전체 경로에서 발생하는 지연입니다.
+---------------------+ +---------------------+
+---------+ | Stratum 1 server | 20ms delay | Stratum 2 server |
|GNSS rcvr|---| Root distance: 0ms +--------------+ Root distance: 20ms |
+---------+ | nasa.gov | | 0.pool.ntp.org |
+---------------------+ +----------+----------+
|
| 5040ms delay
|
==LAN=FIREWALL==+================
|
+-----------------------+ +-----------+-----------+
| Clients | 1ms delay | Stratum 3 server |
| Root distance: 5061ms +--------------+ Root distance: 5060ms |
| 10.10.1.0/24 | | 10.10.1.30 |
+-----------------------+ +-----------------------+
Tier 1 서버와의 정렬은 Tier 3 서버와의 정렬보다 덜 중요하므로 RootDistanceMaxSec=
각 클라이언트를 보다 편안한 값으로 늘릴 수 있습니다. 30초면 효과가 있을 수 있습니다. 기본값은 5초이므로 아마도 이 숫자에 매우 근접하게 될 것입니다. 편집하다 /etc/systemd/timesyncd.conf
:
# See timesyncd.conf(5) for details.
[Time]
NTP=10.10.1.30
#FallbackNTP=
RootDistanceMaxSec=30
#PollIntervalMinSec=32
#PollIntervalMaxSec=2048
10.10.1.30
이렇게 하면 클라이언트가 Tier 1 서버에서 멀리 떨어져 있더라도 NTP 서버로 승인됩니다 .