[ntp:questions] what happens if ntp server jumps time BIG TIME

Dave Hart davehart at gmail.com
Mon Feb 13 12:57:03 UTC 2012


On Sat, Feb 11, 2012 at 19:02, unruh <unruh at invalid.ca> wrote:
> On 2012-02-11, Dave Hart <hart at ntp.org> wrote:
>> On Sat, Feb 11, 2012 at 01:03, unruh <unruh at invalid.ca> wrote:
>>> On 2012-02-09, bombjack <bombjack99 at gmail.com> wrote:
>>>> What happens if I change the time on the server, lets say 5 years
>>>> forward? Will the client sync to the server? and If so, how? big leap?
>>>> small steps? Will the flag "-g" affect how the client reacts to this
>>>> changes?
>>>
>>> No. If ntp finds the time out by >128ms, it steps the clock. If it finds
>>> it out by 1000(?) sec it says "Something is horribly wrong here" and
>>> abandons ship. (ntpd exits).
>>
>> Don't let facts get in the way of your recollections, I suppose.
>> Quoting myself from this very thread: "-g allows a single step
>> exceeding the panic threshold, not necessarily at startup."  The panic
>> threshold defaults to 1000 s.  But don't take my word for it -- see
>> the docs.
>
> ???
> a) that -g is typically used at startup and was introduced in order
> to handle wildly out of sync clocks at starup. I suspect that the fact
> that -g will also works if startup has been OK, but 17 days into running
> it suddenly finds the clock out by 5 days is a bug in the implimentation
> of -g.

I discovered today while looking at another issue that the ntpd -g
explanation in ntpd.html and ntpd --help are both subtly wrong, and
have been since -g was introduced in the earliest ntpd 4.x releases.
As one might hope from a practical point of view, -g will not allow a
panic-exceeding step except the first sync.  The docs make no mention
of first sync or startup or anything similar.

> And my recollection seems to have been dead on.

Yes, indeed.  When I wrote the above, I assumed the docs correctly
described the code's behavior and didn't verify by testing or code
inspection.

Cheers,
Dave Hart


More information about the questions mailing list