Leap second day today
And so, correctly configured Stratum 1 ntp-servers send out corresponding announcements for several hours, accordingly, the situation has already "settled down", and now when diagnosing your ntp-server or client you will get a clear picture.
Announcement Check
First of all, check that your software correctly received and processed the announcement of the second coordination. The most universal way is to analyze ntp traffic using, for example, tcpdump . As a result, you will see something like this:
11: 56: 41.692324 IP (tos 0xb8, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 76)
192.168.134.4.123> 192.168.134.86.123: NTPv3, length 48
Server, Leap indicator: + 1s (64), Stratum 1 (primary reference), poll 4s, precision -21
Root Delay: 0.000000, Root dispersion: 0.000000, Reference-ID: GPS ^ @
Reference Timestamp: 3550020995.728319585 (2012/06/30 11:56:35)
Originator Timestamp: 3550021001.680305123 (2012/06/30 11:56:41)
Receive Timestamp: 3550021001.692303419 (2012/06/30 11:56:41)
Transmit Timestamp: 3550021001.692318439 (2012/06/30 11:56:41)
Originator - Receive Timestamp: +0.011998336
Originator - Transmit Timestamp: +0.012013342
Pay attention to the Leap indicator: - if everything is fine, then "+ 1s" will be written in this field.
If you use the classic ntpd , you can check its status by running ntpq -c rv - the presence of leap_add_sec or leap = 01 in the answer means that everything is OK.
Errors in this case may be caused by a not very good choice of ntp-servers for synchronization. Unfortunately, the choice is easy to make. Among the 13 most famous Russian Stratum 1 servers, at the moment only 8 correctly announce a second of coordination.
Short review of Russian Stratum 1 ntp-servers
| Server | The presence of the announcement at the time of writing the post |
|---|---|
| ntp.aas.ru | - |
| ntp.ab2b.ru | + |
| time.bakulev.ru | - |
| ntp.ix.ru | - |
| ntp.mobatime.ru | - |
| ntp0.ntp-servers.net | + |
| ntp1.ntp-servers.net | + |
| ntp2.ntp-servers.net | + |
| ntp.sonur.ru | + |
| ntp1.vniiftri.ru | + |
| ntp2.vniiftri.ru | + |
| ntp3.vniiftri.ru | + |
| ntp4.vniiftri.ru | - |
I ask you to use the above servers in accordance with the Rules of Engagement and the particular terms of service for these servers.
Kernel check
If you have a unix-like operating system, it is worth checking if ntpd was able to “convey” to its kernel information that there will be an extra second at the end of the day. The fact is that ntpd can convey this information to the kernel if kernel time discipline is used, that is, the set of ntp_ * calls.
If you started ntpd with the -x switch, set the tinker step step directive to 0 or greater than 0.5 s, explicitly prohibited the kernel time discipline with the disable kernel directive - kernel time discipline will not be used, and an extra second in days for the kernel will be a surprise.
You can verify this by running ntpdc -c kern or ntptime :
$ ntpdc -c kern pll offset: 2.7e-08 s pll frequency: 23.073 ppm maximum error: 0.001501 s estimated error: 0 s status: 2011 pll ins nano pll time constant: 3 precision: 1e-09 s frequency tolerance: 500 ppm $ / usr / sbin / ntptime ntp_gettime () returns code 1 (INS) time d3990b27.8eedaa5c Sat, Jun 30 2012 12: 20: 39.558, (.558314918), maximum error 2001 us, estimated error 0 us ntp_adjtime () returns code 1 (INS) modes 0x0 (), offset 0.026 us, frequency 23.073 ppm, interval 1 s, maximum error 2001 us, estimated error 0 us, status 0x2011 (PLL, INS, NANO), time constant 3, precision 0.001 us, tolerance 500 ppm,
The key here is the presence of the ins flag .
Updated: It is worth noting some progress in the behavior of the servers of the All-Russian Scientific Research Institute of Physical, Technical and Radio Engineering Measurements . If in 2008 they managed to flip leapsecond on three servers, and on one enter leapsecond in the opposite direction, then this year only ntp4.vniiftri.ru runs for a second.