# Configuring Clients

## Apple macOS (OS X)

1. Open System Preferences.
2. Choose the "Date \& Time" panel.
3. Click the lock to make changes.
4. Enter your password.
5. Select "Date \& Time".
6. In the box next to "Set date and time automatically", enter `time.google.com`.

## Cisco IOS and NX-OS

    router# config t
    Enter configuration commands, one per line.  End with CNTL/Z.
    router(config)# no ntp server
    router(config)# ntp server time1.google.com
    router(config)# ntp server time2.google.com
    router(config)# ntp server time3.google.com
    router(config)# ntp server time4.google.com
    router(config)# copy running-config startup-config

## Google Compute Engine

Although you can use Google Public NTP from Compute Engine, you will get better
performance from the private cloud servers, which serve the same time using the
same smear. Follow
[these instructions](https://cloud.google.com/compute/docs/instances/configure-ntp).

## Juniper Junos

NTP is configured at the `[edit system ntp]` hierarchy level:

    system {
        ntp {
            server time1.google.com;
            server time2.google.com;
            server time3.google.com;
            server time4.google.com;
        }
    }

## Linux

### `ntpd` or `chrony`

1. Edit `/etc/ntp.conf` or `/etc/chrony/chrony.conf` (depending on the service you're using) using your favorite text editor.
2. Remove or comment out any lines starting with `server`, to prevent your machine from trying to mix smeared and non-smeared servers.
3. Add the lines:

       server time1.google.com iburst
       server time2.google.com iburst
       server time3.google.com iburst
       server time4.google.com iburst

4. Restart the NTP/chrony daemon using `sudo service ntp reload` or `sudo
   service chrony force-reload`.

### `systemd-timesyncd`

1. Edit `/etc/systemd/timesyncd.conf`
2. Set the content of the `[Time]` block to:

       [Time]
       NTP=
       FallbackNTP=time.google.com

   Leaving `NTP=` uncommented and assigned to an empty string resets the list
   of NTP servers, including any per-interface assignments. This prevents
   inadvertently moving between smeared and un-smeared time servers.
   Configuring Google Public NTP as the fallback server will cause it to be
   selected as the only NTP server.
3. Restart `systemd-timesyncd` using `systemctl restart
   systemd-timesyncd.service` as a user with appropriate permissions

4. Verify that your system is using Google Public NTP with `timedatectl
   show-timesync | grep ServerName`. If successfully configured, the output
   will show: `ServerName=time.google.com`

## Microsoft Windows

1. Open the Control Panel.
2. Click the "Date and Time" icon.
3. Choose the "Internet Time" tab. (This will not be available if your PC is part of a domain. In that case, it will synchronize time with the domain controller. You can configure the controller to use Google Public NTP.)
4. Click the "Change settings..." button.
5. Check the box "Synchronize with an Internet time server".
6. Next to "Server:", enter `time.google.com`.

## Microsoft Windows Server

Follow [Microsoft's instructions](https://support.microsoft.com/en-us/kb/816042)
to update your registry.