# Sntp User's Manual

Next: sntp Description, Previous: (dir), Up: (dir)

## Simple Network Time Protocol User Manual

This document describes the use of the NTP Project's `sntp` program, that can be used to query a Network Time Protocol (NTP) server and display the time offset of the system clock relative to the server clock. Run as root, it can correct the system clock to this offset as well. It can be run as an interactive command or from a cron job.

This document applies to version 4.2.6p5 of `sntp`.

The program implements the SNTP protocol as defined by RFC 5905, the NTPv4 IETF specification.

## Short Contents

Simple Network Time Protocol User Manual

### Description

By default, `sntp` writes the local data and time (i.e., not UTC) to the standard output in the format:

         1996 Oct 15 20:17:25.123 +4.567 +/- 0.089 secs

where the +4.567 +/- 0.089 secs indicates the time offset and error bound of the system clock relative to the server clock.

### Invoking sntp

`sntp` can be used as a SNTP client to query a NTP or SNTP server and either display the time or set the local system's time (given suitable privilege). It can be run as an interactive command or in a `cron` job.

NTP (the Network Time Protocol) and SNTP (the Simple Network Time Protocol) are defined and described by RFC 5905.

The default is to write the estimated correct local date and time (i.e. not UTC) to the standard output in a format like

         1996-10-15 20:17:25.123 (+0800) +4.567 +/- 0.089 secs

where the

         +4.567 +/- 0.089 secs

indicates the local clock is 4.567 seconds behind the correct time (so 4.567 seconds must be added to the local clock to get it to be correct), and the (local) time of `1996-10-15 20:17:25.123` can be converted to UTC time by adding 8 hours and 0 minutes, and is believed to be correct to within `+/- 0.089` seconds.

This section was generated by AutoGen, the aginfo template and the option descriptions for the sntp program. It documents the sntp usage text and option meanings.

This software is released under a specialized copyright license.

Next: sntp adjtime, Up: sntp Invocation

#### sntp usage help (-?)

This is the automatically generated usage text for sntp:

    sntp - standard Simple Network Time Protocol program - Ver. 4.2.6p5
    USAGE:  sntp [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \
                    [ hostname-or-IP ...]
      Flg Arg Option-Name    Description
       -4 no  ipv4           Force IPv4 DNS name resolution
                                    - prohibits these options:
                                    ipv6
       -6 no  ipv6           Force IPv6 DNS name resolution
                                    - prohibits these options:
                                    ipv4
       -d no  normalverbose  Normal verbose
       -K Str kod            KoD history filename
       -p no  syslog         Logging with syslog
                                    - prohibits these options:
                                    logfile
       -l Str logfile        Log to specified logfile
                                    - prohibits these options:
                                    syslog
       -s no  settod         Set (step) the time with settimeofday()
                                    - prohibits these options:
                                    adjtime
       -j no  adjtime        Set (slew) the time with adjtime()
                                    - prohibits these options:
                                    settod
       -b Str broadcast      Use broadcasts to the address specified for synchronisation
       -t Num timeout        Specify the number of seconds to wait for broadcasts
       -a Num authentication Enable authentication with the key auth-keynumber
       -k Str keyfile        Specify a keyfile. SNTP will look in this file for the key specified with -a
          opt version        Output version information and exit
       -? no  help           Display extended usage information and exit
       -! no  more-help      Extended usage information passed thru pager
       -> opt save-opts      Save the option state to a config file
       -< Str load-opts      Load options from a config file
                                    - disabled as --no-load-opts
                                    - may appear multiple times

    Options are specified by doubled hyphens and their name or by a single
    hyphen and the flag character.

    The following option preset mechanisms are supported:
     - reading file $HOME/.ntprc
     - reading file ./.ntprc
     - examining environment variables named SNTP_*

    sntp implements the Simple Network Time Protocol, and is used to query an
    NTP or SNTP server and either display the time or set the local system's
    time (given suitable privilege).

    It can be run interactively from the command line or as a cron job.

    NTP and SNTP are defined by RFC 5905, which obsoletes RFC 4330 and RFC
    1305.

    please send bug reports to:  http://bugs.ntp.org, bugs@ntp.org

Next: sntp authentication, Previous: sntp usage, Up: sntp Invocation

#### adjtime option (-j)

This is the “set (slew) the time with adjtime()” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: settod.

Next: sntp broadcast, Previous: sntp adjtime, Up: sntp Invocation

#### authentication option (-a)

This is the “enable authentication with the key auth-keynumber” option. This option enables authentication using the key specified in this option's argument. The argument of this option is the keyid, a number specified in the keyfile as this key's identifier. See the keyfile option (-k) for more details.

Next: sntp ipv4, Previous: sntp authentication, Up: sntp Invocation

#### broadcast option (-b)

This is the “use broadcasts to the address specified for synchronisation” option. If specified SNTP will listen to the specified broadcast address for NTP broadcasts. The default maximum wait time, 68 seconds, can be modified with -t.

Next: sntp ipv6, Previous: sntp broadcast, Up: sntp Invocation

#### ipv4 option (-4)

This is the “force ipv4 dns name resolution” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: ipv6.

Force DNS resolution of the following host names on the command line to the IPv4 namespace.

Next: sntp keyfile, Previous: sntp ipv4, Up: sntp Invocation

#### ipv6 option (-6)

This is the “force ipv6 dns name resolution” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: ipv4.

Force DNS resolution of the following host names on the command line to the IPv6 namespace.

Next: sntp kod, Previous: sntp ipv6, Up: sntp Invocation

#### keyfile option (-k)

This is the “specify a keyfile. sntp will look in this file for the key specified with -a” option. This option specifies the keyfile. SNTP will search for the key specified with -a keyno in this file. Key files follow the following format:

keyid keytype key

Where keyid is a number identifying this key keytype is one of the follow: S Key in 64 Bit hexadecimal number as specified in in the DES specification. N Key in 64 Bit hexadecimal number as specified in the NTP standard. A Key in a 1-to-8 character ASCII string. M Key in a 1-to-8 character ASCII string using the MD5 authentication scheme.

For more information see ntp.keys(5).

Next: sntp logfile, Previous: sntp keyfile, Up: sntp Invocation

#### kod option (-K)

This is the “kod history filename” option. Specifies the filename to be used to persist the history of KoD responses received from servers. The default is /var/db/ntp-kod.

Next: sntp normalverbose, Previous: sntp kod, Up: sntp Invocation

#### logfile option (-l)

This is the “log to specified logfile” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: syslog.

This option causes the client to write log messages to the specified logfile.

Next: sntp settod, Previous: sntp logfile, Up: sntp Invocation

#### normalverbose option (-d)

This is the “normal verbose” option. Diagnostic messages for non-fatal errors and a limited amount of tracing should be written to standard error. Fatal ones always produce a diagnostic. This option should be set when there is a suspected problem with the server, network or the source.

Next: sntp syslog, Previous: sntp normalverbose, Up: sntp Invocation

#### settod option (-s)

This is the “set (step) the time with settimeofday()” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: adjtime.

Next: sntp timeout, Previous: sntp settod, Up: sntp Invocation

#### syslog option (-p)

This is the “logging with syslog” option.

This option has some usage constraints. It:

- must not appear in combination with any of the following options: logfile.

When this option is set all logging will be done using syslog.

Previous: sntp syslog, Up: sntp Invocation

#### timeout option (-t)

This is the “specify the number of seconds to wait for broadcasts” option. When waiting for a broadcast packet SNTP will wait the number of seconds specified before giving up. Default 68 seconds.

### Usage

The simplest use of this program is as an unprivileged command to check the current time, offset, and error in the local clock. For example:

        sntp ntpserver.somewhere

With suitable privilege, it can be run as a command or in a `crom` job to reset the local clock from a reliable server, like the `ntpdate` and `rdate` commands. For example:

        sntp -a ntpserver.somewhere