You would have to do this on the client side. If you have a problem with your NTP time server, then treat that as the client and get it to align to another trusted clock, be that a radio-clock or internet address.
You can also use
ntpdate -d refer-server to get a time difference from the reference server (which must be offering the NTP service, of course)
if the clock drift is too far, then you would need to step the clock on the local server to match something like this:-
- Check the offset with - ntpdate -d ref-server
- Stop the local NTP service in the normal way
- Step the clock into sync - ntpdate ref-server
- Start the local service in the normal way
- Check the offset with - ntpdate -d ref-server
You should see debug information when you use the
-d flag and the last line gives you the agreed offset from the reference server or servers (just a space separated list)
If you can't have the NTP client running all the time because your application doesn't like the clock going backwards even by tiny fractions of a second, you would probably need to schedule and idle minute to step the clock each day. You can run
ntpdate -d ref-server at any time and just use the last line to show you the current offset from the trusted clock.
I hope that this helps,
Robin