sntp.8 revision 290001
1.Dd October 21 2015
2.Dt SNTP 8 User Commands
3.Os
4.\"  EDIT THIS FILE WITH CAUTION  (sntp-opts.mdoc)
5.\"
6.\" $FreeBSD: releng/9.3/usr.sbin/ntp/doc/sntp.8 290001 2015-10-26 11:42:25Z glebius $
7.\"
8.\"  It has been AutoGen-ed  October 21, 2015 at 12:30:59 PM by AutoGen 5.18.5
9.\"  From the definitions    sntp-opts.def
10.\"  and the template file   agmdoc-cmd.tpl
11.Sh NAME
12.Nm sntp
13.Nd standard Simple Network Time Protocol client program
14.Sh SYNOPSIS
15.Nm
16.\" Mixture of short (flag) options and long options
17.Op Fl flags
18.Op Fl flag Op Ar value
19.Op Fl \-option\-name Ns Oo Oo Ns "=| " Oc Ns Ar value Oc
20[ hostname\-or\-IP ...]
21.Pp
22.Sh DESCRIPTION
23.Nm
24can be used as an SNTP client to query a NTP or SNTP server and either display
25the time or set the local system's time (given suitable privilege).  It can be
26run as an interactive command or from a
27.Ic cron
28job.
29NTP (the Network Time Protocol) and SNTP (the Simple Network Time Protocol)
30are defined and described by RFC 5905.
31.Pp
32The default is to write the estimated correct local date and time (i.e. not
33UTC) to the standard output in a format like:
34.Ic "'1996\-10\-15 20:17:25.123 (+0800) +4.567 +/\- 0.089 [host] IP sN'"
35where the
36.Ic "'(+0800)'"
37means that to get to UTC from the reported local time one must
38add 8 hours and 0 minutes,
39the
40.Ic "'+4.567'"
41indicates the local clock is 4.567 seconds behind the correct time
42(so 4.567 seconds must be added to the local clock to get it to be correct).
43Note that the number of decimals printed for this value will change
44based on the reported precision of the server.
45.Ic "'+/\- 0.089'"
46is the reported
47.Em synchronization distance
48(in seconds), which represents the maximum error due to all causes.
49If the server does not report valid data needed to calculate the
50synchronization distance, this will be reported as
51.Ic "'+/\- ?'" .
52If the
53.Em host
54is different from the
55.Em IP ,
56both will be displayed.
57Otherwise, only the 
58.Em IP
59is displayed.
60Finally, the
61.Em stratum
62of the host is reported
63and the leap indicator is decoded and displayed.
64.Sh "OPTIONS"
65.Bl -tag
66.It  Fl 4 , Fl \-ipv4 
67Force IPv4 DNS name resolution.
68This option must not appear in combination with any of the following options:
69ipv6.
70.sp
71Force DNS resolution of the following host names on the command line
72to the IPv4 namespace.
73.It  Fl 6 , Fl \-ipv6 
74Force IPv6 DNS name resolution.
75This option must not appear in combination with any of the following options:
76ipv4.
77.sp
78Force DNS resolution of the following host names on the command line
79to the IPv6 namespace.
80.It  Fl a Ar auth\-keynumber , Fl \-authentication Ns = Ns Ar auth\-keynumber 
81Enable authentication with the key \fBauth\-keynumber\fP.
82This option takes an integer number as its argument.
83.sp
84Enable authentication using the key specified in this option's
85argument.  The argument of this option is the \fBkeyid\fP, a
86number specified in the \fBkeyfile\fP as this key's identifier.
87See the \fBkeyfile\fP option (\fB\-k\fP) for more details.
88.It  Fl b Ar broadcast\-address , Fl \-broadcast Ns = Ns Ar broadcast\-address 
89Listen to the address specified for broadcast time sync.
90This option may appear an unlimited number of times.
91.sp
92If specified \fBsntp\fP will listen to the specified address
93for NTP broadcasts.  The default maximum wait time
94can (and probably should) be modified with \fB\-t\fP.
95.It  Fl c Ar host\-name , Fl \-concurrent Ns = Ns Ar host\-name 
96Concurrently query all IPs returned for host\-name.
97This option may appear an unlimited number of times.
98.sp
99Requests from an NTP "client" to a "server" should never be sent
100more rapidly than one every 2 seconds.  By default, any IPs returned
101as part of a DNS lookup are assumed to be for a single instance of
102\fBntpd\fP, and therefore \fBsntp\fP will send queries to these IPs
103one after another, with a 2\-second gap in between each query.
104.sp
105The \fB\-c\fP or \fB\-\-concurrent\fP flag says that any IPs
106returned for the DNS lookup of the supplied host\-name are on
107different machines, so we can send concurrent queries.
108.It  Fl d , Fl \-debug\-level 
109Increase debug verbosity level.
110This option may appear an unlimited number of times.
111.sp
112.It  Fl D Ar number , Fl \-set\-debug\-level Ns = Ns Ar number 
113Set the debug verbosity level.
114This option may appear an unlimited number of times.
115This option takes an integer number as its argument.
116.sp
117.It  Fl g Ar milliseconds , Fl \-gap Ns = Ns Ar milliseconds 
118The gap (in milliseconds) between time requests.
119This option takes an integer number as its argument.
120The default
121.Ar milliseconds
122for this option is:
123.ti +4
124 50
125.sp
126Since we're only going to use the first valid response we get and
127there is benefit to specifying a good number of servers to query,
128separate the queries we send out by the specified number of
129milliseconds.
130.It  Fl K Ar file\-name , Fl \-kod Ns = Ns Ar file\-name 
131KoD history filename.
132The default
133.Ar file\-name
134for this option is:
135.ti +4
136 /var/db/ntp\-kod
137.sp
138Specifies the filename to be used for the persistent history of KoD
139responses received from servers.  If the file does not exist, a
140warning message will be displayed.  The file will not be created.
141.It  Fl k Ar file\-name , Fl \-keyfile Ns = Ns Ar file\-name 
142Look in this file for the key specified with \fB\-a\fP.
143.sp
144This option specifies the keyfile.
145\fBsntp\fP will search for the key specified with \fB\-a\fP
146\fIkeyno\fP in this file.  See \fBntp.keys(5)\fP for more
147information.
148.It  Fl l Ar file\-name , Fl \-logfile Ns = Ns Ar file\-name 
149Log to specified logfile.
150.sp
151This option causes the client to write log messages to the specified
152\fIlogfile\fP.
153.It  Fl M Ar number , Fl \-steplimit Ns = Ns Ar number 
154Adjustments less than \fBsteplimit\fP msec will be slewed.
155This option takes an integer number as its argument.
156The value of
157.Ar number
158is constrained to being:
159.in +4
160.nf
161.na
162greater than or equal to 0
163.fi
164.in -4
165.sp
166If the time adjustment is less than \fIsteplimit\fP milliseconds,
167slew the amount using \fBadjtime(2)\fP.  Otherwise, step the
168correction using \fBsettimeofday(2)\fP.  The default value is 0,
169which means all adjustments will be stepped.  This is a feature, as
170different situations demand different values.
171.It  Fl o Ar number , Fl \-ntpversion Ns = Ns Ar number 
172Send \fBint\fP as our NTP protocol version.
173This option takes an integer number as its argument.
174The value of
175.Ar number
176is constrained to being:
177.in +4
178.nf
179.na
180in the range  0 through 7
181.fi
182.in -4
183The default
184.Ar number
185for this option is:
186.ti +4
187 4
188.sp
189When sending requests to a remote server, tell them we are running
190NTP protocol version \fIntpversion\fP .
191.It  Fl r , Fl \-usereservedport 
192Use the NTP Reserved Port (port 123).
193.sp
194Use port 123, which is reserved for NTP, for our network
195communications.
196.It  Fl S , Fl \-step 
197OK to 'step' the time with \fBsettimeofday(2)\fP.
198.sp
199.It  Fl s , Fl \-slew 
200OK to 'slew' the time with \fBadjtime(2)\fP.
201.sp
202.It  Fl t Ar seconds , Fl \-timeout Ns = Ns Ar seconds 
203The number of seconds to wait for responses.
204This option takes an integer number as its argument.
205The default
206.Ar seconds
207for this option is:
208.ti +4
209 5
210.sp
211When waiting for a reply, \fBsntp\fP will wait the number
212of seconds specified before giving up.  The default should be
213more than enough for a unicast response.  If \fBsntp\fP is
214only waiting for a broadcast response a longer timeout is
215likely needed.
216.It  Fl \-wait , " Fl \-no\-wait"
217Wait for pending replies (if not setting the time).
218The \fIno\-wait\fP form will disable the option.
219This option is enabled by default.
220.sp
221If we are not setting the time, wait for all pending responses.
222.It Fl \&? , Fl \-help
223Display usage information and exit.
224.It Fl \&! , Fl \-more\-help
225Pass the extended usage information through a pager.
226.It Fl > Oo Ar cfgfile Oc , Fl \-save\-opts Oo Ns = Ns Ar cfgfile Oc
227Save the option state to \fIcfgfile\fP.  The default is the \fIlast\fP
228configuration file listed in the \fBOPTION PRESETS\fP section, below.
229The command will exit after updating the config file.
230.It Fl < Ar cfgfile , Fl \-load\-opts Ns = Ns Ar cfgfile , Fl \-no\-load\-opts
231Load options from \fIcfgfile\fP.
232The \fIno\-load\-opts\fP form will disable the loading
233of earlier config/rc/ini files.  \fI\-\-no\-load\-opts\fP is handled early,
234out of order.
235.It Fl \-version Op Brq Ar v|c|n
236Output version of program and exit.  The default mode is `v', a simple
237version.  The `c' mode will print copyright information and `n' will
238print the full copyright notice.
239.El
240.Sh "OPTION PRESETS"
241Any option that is not marked as \fInot presettable\fP may be preset
242by loading values from configuration ("RC" or ".INI") file(s) and values from
243environment variables named:
244.nf
245  \fBSNTP_<option\-name>\fP or \fBSNTP\fP
246.fi
247.ad
248The environmental presets take precedence (are processed later than)
249the configuration files.
250The \fIhomerc\fP files are "\fI$HOME\fP", and "\fI.\fP".
251If any of these are directories, then the file \fI.ntprc\fP
252is searched for within those directories.
253.Sh USAGE
254.Bl -tag -width indent
255.It Li "sntp ntpserver.somewhere"
256is the simplest use of this program
257and can be run as an unprivileged command
258to check the current time and error in the local clock.
259.It Li "sntp \-Ss \-M 128 ntpserver.somewhere"
260With suitable privilege,
261run as a command
262or from a
263.Xr cron 8
264job,
265.Ic "sntp \-Ss \-M 128 ntpserver.somewhere"
266will request the time from the server,
267and if that server reports that it is synchronized
268then if the offset adjustment is less than 128 milliseconds
269the correction will be slewed,
270and if the correction is more than 128 milliseconds
271the correction  will be stepped.
272.It Li "sntp \-S ntpserver.somewhere"
273With suitable privilege,
274run as a command
275or from a
276.Xr cron 8
277job,
278.Ic "sntp \-S ntpserver.somewhere"
279will set (step) the local clock from a synchronized specified server,
280like the (deprecated)
281.Xr ntpdate 8 ,
282or
283.Xr rdate 8
284commands.
285.El
286.Sh "ENVIRONMENT"
287See \fBOPTION PRESETS\fP for configuration environment variables.
288.Sh "FILES"
289See \fBOPTION PRESETS\fP for configuration files.
290.Sh "EXIT STATUS"
291One of the following exit values will be returned:
292.Bl -tag
293.It 0 " (EXIT_SUCCESS)"
294Successful program execution.
295.It 1 " (EXIT_FAILURE)"
296The operation failed or the command syntax was not valid.
297.It 66 " (EX_NOINPUT)"
298A specified configuration file could not be loaded.
299.It 70 " (EX_SOFTWARE)"
300libopts had an internal operational error.  Please report
301it to autogen\-users@lists.sourceforge.net.  Thank you.
302.El
303.Sh AUTHORS
304.An "Johannes Maximilian Kuehn"
305.An "Harlan Stenn"
306.An "Dave Hart"
307.Sh "COPYRIGHT"
308Copyright (C) 1992\-2015 The University of Delaware and Network Time Foundation all rights reserved.
309This program is released under the terms of the NTP license, <http://ntp.org/license>.
310.Sh "BUGS"
311Please send bug reports to: http://bugs.ntp.org, bugs@ntp.org
312.Sh "NOTES"
313This manual page was \fIAutoGen\fP\-erated from the \fBsntp\fP
314option definitions.
315