APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

Network Time Protocol

Tue Aug 10 21:59:53 2004

Referencing: Unix time, UTC, TAI and all that

Your computer's internal clock is unlikely to keep perfect time. If you need it to be more accurate, the network time protocol daemon (ntpd) is the tool for that.

Historically, we've had ntpd and ntpdate. The ntpdate was for just quickly finding out the current time and updating the system with that. Typically, you'd run it at boot or perhaps once or twice a day from cron. Many systems still have this; you just point it at an appropriate server:


ntpdate clock2.redhat.com
ntpdate time.apple.com
 

With modern ntpd, you could use -q for the same effect:

ntpd -q clock2.redhat.com
 

If you aren't always connected to the internet, or your desire for accuracy is fairly relaxed, running ntpdate once a day or so is probably enough to keep you happy and on time, but ntpd is the better choice.

The man page for ntpdate on my OS X says "After a suitable period of mourning, the ntpdate utility is to be retired from this distribution."

If your time keeping needs are more precise, you want to run ntpd all the time, and let it figure out how often it needs to adjust things. If you are being that concerned about accurate time, you'll want to carefully select your time server too, because arbitrarily picking a popular server as we did above could lead to inaccurate time just because of network delays. The "ntptrace" command tells you where things are:

# ntptrace time.apple.com
time0.apple.com: stratum 2, offset -0.100057, synch distance 0.03278
17.254.0.49: stratum 1, offset -0.100085, synch distance 0.00548, refid 'GPS'
# ntptrace clock2.redhat.com
clock2.redhat.com: stratum 1, offset -0.100989, synch distance 0.00041, refid 'CDMA'
 

Notice a difference there? The "time.apple.com" is a Stratum 2 server, that talks to a Stratum 1 server to get its own time. In general, Stratum 1 servers aren't publicly available, or at least require some prearrangement. That's not always true, but if you look around the web you'll see that you are asked not to use Stratum 1 servers unless you really need to.

For many of us, one time server is enough. But people really worried about time will select multiple servers, so that a glitch at one won't throw them off. You put these servers into /etc/ntp.conf - here's mine from my iBook:

server time.apple.com minpoll 12 maxpoll 17
 

That's my entire file, but there are many more possible configuration parameters. Checking http://www.time.gov, I found my system was close enough that I couldn't tell any difference. That time isn't necessarily critically accurate either, but if your time is far off from that, something is probably wrong

On this machine, ntpd is started pointing at a "drift" file:

ntpd -f /var/run/ntp.drift -p /var/run/ntpd.pid
 

so that it knows how much this clock tended to drift from reality.when it last ran. Ordinarily, ntpd will adjust your time very slowly toward "reality" - this is so your programs don't suddenly gain or lose many seconds. You can tell it to just set the correct time instantly, and that is often done at first boot before settling down to small adjustments.

If ntpd is running on one server, you can point other network machines at it instead of at a public time server. This is more apt to keep everyone very much on the same page and of course cuts down on internet traffic too.

Unless you add restrictions to your /etc/ntp.conf file, or block ntpd at your firewall, ntpd will happily provide time information to anyone who asks - probably want to restrict this unless you intended to set up a public time server. By the way, "man ntp.conf" will tell you more about ntpd than "man ntpd" does.



Got something to add? Send me email.





(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> -> Network Time Protocol




Increase ad revenue 50-250% with Ezoic


More Articles by

Find me on Google+

© Tony Lawrence



Kerio Samepage


Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us





Lawyer — One who protects us against robbers by taking away the temptation. (H.L. Mencken)

There is no programming language, no matter how structured, that will prevent programmers from making bad programs. (Larry Flon)












This post tagged: