Is there a list of public NTP servers on the internet I can use.



If you are in the US: United States — us.pool.ntp.org To use this pool zone, add the following to your ntp.conf file:

   server 0.us.pool.ntp.org
   server 1.us.pool.ntp.org
   server 2.us.pool.ntp.org
   server 3.us.pool.ntp.org

Other pools around the world are available and can be found at the http://www.pool.ntp.org/ site.

  • Actually this one is the mother of all the other. You should always use this one. May 11 '09 at 16:06
  • 5
    I don't know if you're talking to use the us pool always, or the ntp.org pool but, the correct way is using the nearest pool you can get... that is, fr.pool.ntp.org if you are in France, or jp.pool.ntp.org if you are in Japan. Why? Because the nearest pool is the one with less latency, and less latency will allow you to get better accuracy in your sync...
    – Andor
    May 11 '09 at 16:14
  • 2
    Andor: partially right. pool.ntp.org actually does some geographic checks on DNS, so that you don't have to specify that far. However, YMMV as always. May 11 '09 at 17:00
  • 1
    Andor: You are correct and that is why I indicated that "Other pools around the world are available and can be found at the pool.ntp.org site" :-) I guess I could have clairifed that the user should try to select the closest and smallest geographic area to his/her location. May 11 '09 at 18:03

The U.S. Commerce Department’s National Institute of Standards and Technology maintains the official time for the US. It also has a list of public time servers.



The answer depends on where you are and how sophisticated your infrastructure can be.

The offical US NIST time servers are available here.

These are authoritative, and are the best NTP sources of time you will find in the US. To use them, configure a single ntp server on your network to synchronize to at least three, but no more than five, geographically diverse servers from the list. (Note that the servers change from time to time: check every few months and update accordingly).

Then, configure every host on your network to synchronize to your server, which itself is synchronizing to the NIST cloud. Do not configure multiple hosts to synchronize directly to these servers, and do not query them relentlessly.

If you are unable or unwilling to run a local personal NTP server, then consider instead using the NTP Pool Project pool.ntp.org servers instead. Configure your hosts to synchronize with these directly, choosing the pool that is closest to you geographically. The only difference between this method and the previous one is that these servers are stratum 2, and themselves synchronize with stratum 1 servers like NIST. You will very likely not notice any difference.

The purpose of using the pool if you are not running a local ntp server is to minimize the load on the stratum 1 servers. If you require a very high degree of accuracy (beyond what most desktop or simple server users need), then you should run a local ntp server. Without one, most of the benefits of using stratum 1 time sources are lost, so you had might as well use the ntp pool instead.

Not the answer you're looking for? Browse other questions tagged or ask your own question.