ntp
NTP uses hierarchies of servers with top-level servers synchronizing time with atomic clocks. This hierarchy levels are known as stratum, and the level can range between 1 and 15, both inclusive. The highest stratum level is 1 and is determined by the accuracy of the clock the server synchronizes with. If a server synchronizes with other NTP server with stratum level 3, then the stratum level for this server is automatically set to 4.
Another time synchronization tool provided by Ubuntu is
Following are the steps to install and configure NTP daemon:ntpdate
, which comes preinstalled with Ubuntu. It executes once at boot time and synchronizes the local time with Ubuntu's NTP servers. The problem with ntpdate
is that it matches server time with central time without considering the big drifts in local time, whereas the NTP daemon ntpd
continuously adjusts the server time to match it with the reference clock. As mentioned in the ntpdate
manual pages (man ntpdate
), you can use ntpdate
multiple times throughout a day to keep time drifts low and get more accurate results, but it does not match the accuracy and reliability provided by ntpd.- First, synchronize the server's time with any Internet time server using the
ntpdate
command:$ ntpdate -s ntp.ubuntu.com
- To install ntpd, enter the following command in the terminal:
$ sudo apt-get install ntp
- Edit the
/etc/ntp.conf
NTP configuration file to add/remove external NTP servers:$ sudo nano /etc/ntp.conf
- Set a fallback NTP server:
server ntp.ubuntu.com
- Block any external access to the server, comment the first
restrict
line, and add the following command:restrict default noquery notrust nomodify
- Allow the clients on local network to use the NTP service:
restrict 192.168.1.0 mask 255.255.255.0
- Save changes with Ctrl + O and exit nano with Ctrl + X.
- Reload the NTP daemon with the following command:
$ sudo service ntp restart
Sometimes, the NTP daemon refuses to work if the time difference between local time and central time is too big. To avoid this problem, we have synchronized the local time and central time before installing ntpd. As ntpd and ntpdate both use the same UDP port, 123, the
ntpdate
command will not work when the ntpd service is in use.
A central DHCP server can be configured to provide NTP settings to all DHCP clients. For this to work, your clients should also be configured to query NTP details from DHCP. A DHCP client configuration on Ubuntu already contains the query for network time servers.
Add the following line to your DHCP configuration to provide NTP details to the clients:
subnet 192.168.1.0 netmask 255.255.255.0 { ... option ntp-servers your_ntp_host; }
On the clientside, make sure that your
dhclient.conf
contains ntp-servers
in its default request
:request subnet-mask, broadcast-address, time-offset, routers, ... rfc3442-classless-static-routes, ntp-servers,
- Check the default
/etc/ntp.conf
configuration file. It contains a short explanation for each setting.
Comments
Post a Comment