ntpq.html revision 1.1.1.6 1 <html lang="en">
2 <head>
3 <title>ntpq: Network Time Protocol Query User's Manual</title>
4 <meta http-equiv="Content-Type" content="text/html">
5 <meta name="description" content="ntpq: Network Time Protocol Query User's Manual">
6 <meta name="generator" content="makeinfo 4.8">
7 <link title="Top" rel="top" href="#Top">
8 <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
9 <meta http-equiv="Content-Style-Type" content="text/css">
10 <style type="text/css"><!--
11 pre.display { font-family:inherit }
12 pre.format { font-family:inherit }
13 pre.smalldisplay { font-family:inherit; font-size:smaller }
14 pre.smallformat { font-family:inherit; font-size:smaller }
15 pre.smallexample { font-size:smaller }
16 pre.smalllisp { font-size:smaller }
17 span.sc { font-variant:small-caps }
18 span.roman { font-family:serif; font-weight:normal; }
19 span.sansserif { font-family:sans-serif; font-weight:normal; }
20 --></style>
21 </head>
22 <body>
23 <h1 class="settitle">ntpq: Network Time Protocol Query User's Manual</h1>
24 <div class="shortcontents">
25 <h2>Short Contents</h2>
26 <ul>
27 <a href="#Top">ntpq: Network Time Protocol Query User Manual</a>
28 </ul>
29 </div>
30
31
32
33 <div class="node">
34 <p><hr>
35 <a name="Top"></a>
36 Next: <a rel="next" accesskey="n" href="#ntpq-Description">ntpq Description</a>,
37 Previous: <a rel="previous" accesskey="p" href="#dir">(dir)</a>,
38 Up: <a rel="up" accesskey="u" href="#dir">(dir)</a>
39
40 </div>
41
42 <h2 class="unnumbered">ntpq: Network Time Protocol Query User Manual</h2>
43
44 <p>The <code>ntpq</code> utility program is used to
45 monitor the operational status
46 and determine the performance of
47 <code>ntpd</code>, the NTP daemon.
48
49 <p>This document applies to version 4.2.8p5 of <code>ntpq</code>.
50
51 <ul class="menu">
52 <li><a accesskey="1" href="#ntpq-Description">ntpq Description</a>
53 <li><a accesskey="2" href="#ntpq-Invocation">ntpq Invocation</a>: Invoking ntpq
54 <li><a accesskey="3" href="#Usage">Usage</a>
55 <li><a accesskey="4" href="#Internal-Commands">Internal Commands</a>
56 <li><a accesskey="5" href="#Control-Message-Commands">Control Message Commands</a>
57 <li><a accesskey="6" href="#Status-Words-and-Kiss-Codes">Status Words and Kiss Codes</a>
58 <li><a accesskey="7" href="#System-Variables">System Variables</a>
59 <li><a accesskey="8" href="#Peer-Variables">Peer Variables</a>
60 <li><a accesskey="9" href="#Clock-Variables">Clock Variables</a>
61 </ul>
62
63 <div class="node">
64 <p><hr>
65 <a name="ntpq-Description"></a>
66 Next: <a rel="next" accesskey="n" href="#Usage">Usage</a>,
67 Previous: <a rel="previous" accesskey="p" href="#Top">Top</a>,
68 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
69
70 </div>
71
72 <!-- node-name, next, previous, up -->
73 <h3 class="section">Description</h3>
74
75 <p>The <code>ntpq</code> utility program is used to monitor NTP daemon <code>ntpd</code> operations and determine performance.
76 It uses the standard NTP mode 6 control message formats defined in
77 Appendix B of the NTPv3 specification RFC1305.
78 The same formats are used in NTPv4, although some of the variable names have changed and new ones added.
79 The description on this page is for the NTPv4 variables.
80
81 <p>The program can be run either in interactive mode or controlled using command line arguments. Requests to read and write arbitrary variables can be assembled, with raw and pretty-printed output options being available. The <code>ntpq</code> can also obtain and print a list of peers in a common format by sending multiple queries to the server.
82
83 <p>If one or more request options is included on the command line when <code>ntpq</code> is executed, each of the requests will be sent to the NTP servers running on each of the hosts given as command line arguments, or on localhost by default. If no request options are given, <code>ntpq</code> will attempt to read commands from the standard input and execute these on the NTP server running on the first host given on the command line, again defaulting to localhost when no other host is specified. <code>ntpq</code> will prompt for commands if the standard input is a terminal device.
84
85 <p><code>ntpq</code> uses NTP mode 6 packets to communicate with the NTP server, and hence can be used to query any compatible server on the network which permits it. Note that since NTP is a UDP protocol this communication will be somewhat unreliable, especially over large distances in terms of network topology. <code>ntpq</code> makes one attempt to retransmit requests, and will time requests out if the remote host is not heard from within a suitable timeout time.
86
87 <p>Note that in contexts where a host name is expected, a <code>-4</code> qualifier preceding the host name forces DNS resolution to the IPv4 namespace, while a <code>-6</code> qualifier forces DNS resolution to the IPv6 namespace.
88
89 <p>For examples and usage, see the <a href="debug.html">NTP Debugging Techniques</a> page.
90
91 <div class="node">
92 <p><hr>
93 <a name="ntpq-Invocation"></a>
94
95
96 </div>
97
98 <h3 class="section">Invoking ntpq</h3>
99
100 <p><a name="index-ntpq-1"></a><a name="index-standard-NTP-query-program-2"></a>
101
102 <p>The
103 <code>ntpq</code>
104 utility program is used to query NTP servers which
105 implement the standard NTP mode 6 control message formats defined
106 in Appendix B of the NTPv3 specification RFC1305, requesting
107 information about current state and/or changes in that state.
108 The same formats are used in NTPv4, although some of the
109 variables have changed and new ones added. The description on this
110 page is for the NTPv4 variables.
111 The program may be run either in interactive mode or controlled using
112 command line arguments.
113 Requests to read and write arbitrary
114 variables can be assembled, with raw and pretty-printed output
115 options being available.
116 The
117 <code>ntpq</code>
118 utility can also obtain and print a
119 list of peers in a common format by sending multiple queries to the
120 server.
121
122 <p>If one or more request options is included on the command line
123 when
124 <code>ntpq</code>
125 is executed, each of the requests will be sent
126 to the NTP servers running on each of the hosts given as command
127 line arguments, or on localhost by default.
128 If no request options
129 are given,
130 <code>ntpq</code>
131 will attempt to read commands from the
132 standard input and execute these on the NTP server running on the
133 first host given on the command line, again defaulting to localhost
134 when no other host is specified.
135 The
136 <code>ntpq</code>
137 utility will prompt for
138 commands if the standard input is a terminal device.
139
140 <p><code>ntpq</code>
141 uses NTP mode 6 packets to communicate with the
142 NTP server, and hence can be used to query any compatible server on
143 the network which permits it.
144 Note that since NTP is a UDP protocol
145 this communication will be somewhat unreliable, especially over
146 large distances in terms of network topology.
147 The
148 <code>ntpq</code>
149 utility makes
150 one attempt to retransmit requests, and will time requests out if
151 the remote host is not heard from within a suitable timeout
152 time.
153
154 <p>Specifying a
155 command line option other than
156 <code>-i</code>
157 or
158 <code>-n</code>
159 will
160 cause the specified query (queries) to be sent to the indicated
161 host(s) immediately.
162 Otherwise,
163 <code>ntpq</code>
164 will attempt to read
165 interactive format commands from the standard input.
166
167 <h5 class="subsubsection">Internal Commands</h5>
168
169 <p>Interactive format commands consist of a keyword followed by zero
170 to four arguments.
171 Only enough characters of the full keyword to
172 uniquely identify the command need be typed.
173
174 <p>A
175 number of interactive format commands are executed entirely within
176 the
177 <code>ntpq</code>
178 utility itself and do not result in NTP mode 6
179 requests being sent to a server.
180 These are described following.
181 <dl>
182 <dt><code>?</code> <code>[</code><kbd>command_keyword</kbd><code>]</code><br><dt><code>help</code> <code>[</code><kbd>command_keyword</kbd><code>]</code><dd>A
183 ?
184 by itself will print a list of all the command
185 keywords known to this incarnation of
186 <code>ntpq</code>
187 A
188 ?
189 followed by a command keyword will print function and usage
190 information about the command.
191 This command is probably a better
192 source of information about
193 <code>ntpq</code>
194 than this manual
195 page.
196 <br><dt><code>addvars</code> <kbd>variable_name</kbd><code>[=value]</code> <code>...</code><br><dt><code>rmvars</code> <kbd>variable_name</kbd> <code>...</code><br><dt><code>clearvars</code><br><dt><code>showvars</code><dd>The data carried by NTP mode 6 messages consists of a list of
197 items of the form
198 variable_name=value,
199 where the
200 =value
201 is ignored, and can be omitted,
202 in requests to the server to read variables.
203 The
204 <code>ntpq</code>
205 utility maintains an internal list in which data to be included in control
206 messages can be assembled, and sent using the
207 <code>readlist</code>
208 and
209 <code>writelist</code>
210 commands described below.
211 The
212 <code>addvars</code>
213 command allows variables and their optional values to be added to
214 the list.
215 If more than one variable is to be added, the list should
216 be comma-separated and not contain white space.
217 The
218 <code>rmvars</code>
219 command can be used to remove individual variables from the list,
220 while the
221 <code>clearlist</code>
222 command removes all variables from the
223 list.
224 The
225 <code>showvars</code>
226 command displays the current list of optional variables.
227 <br><dt><code>authenticate</code> <code>[yes | no]</code><dd>Normally
228 <code>ntpq</code>
229 does not authenticate requests unless
230 they are write requests.
231 The command
232 authenticate yes
233 causes
234 <code>ntpq</code>
235 to send authentication with all requests it
236 makes.
237 Authenticated requests causes some servers to handle
238 requests slightly differently, and can occasionally melt the CPU in
239 fuzzballs if you turn authentication on before doing a
240 <code>peer</code>
241 display.
242 The command
243 authenticate
244 causes
245 <code>ntpq</code>
246 to display whether or not
247 <code>ntpq</code>
248 is currently autheinticating requests.
249 <br><dt><code>cooked</code><dd>Causes output from query commands to be "cooked", so that
250 variables which are recognized by
251 <code>ntpq</code>
252 will have their
253 values reformatted for human consumption.
254 Variables which
255 <code>ntpq</code>
256 thinks should have a decodable value but didn't are
257 marked with a trailing
258 ?.
259 <br><dt><code>debug</code> <code>[more | less | off]</code><dd>With no argument, displays the current debug level.
260 Otherwise, the debug level is changed to the indicated level.
261 <br><dt><code>delay</code> <kbd>milliseconds</kbd><dd>Specify a time interval to be added to timestamps included in
262 requests which require authentication.
263 This is used to enable
264 (unreliable) server reconfiguration over long delay network paths
265 or between machines whose clocks are unsynchronized.
266 Actually the
267 server does not now require timestamps in authenticated requests,
268 so this command may be obsolete.
269 <br><dt><code>exit</code><dd>Exit
270 <code>ntpq</code>
271 <br><dt><code>host</code> <kbd>hostname</kbd><dd>Set the host to which future queries will be sent.
272 <kbd>hostname</kbd>
273 may be either a host name or a numeric address.
274 <br><dt><code>hostnames</code> <code>[yes | no]</code><dd>If
275 <code>yes</code>
276 is specified, host names are printed in
277 information displays.
278 If
279 <code>no</code>
280 is specified, numeric
281 addresses are printed instead.
282 The default is
283 <code>yes</code>,
284 unless
285 modified using the command line
286 <code>-n</code>
287 switch.
288 <br><dt><code>keyid</code> <kbd>keyid</kbd><dd>This command allows the specification of a key number to be
289 used to authenticate configuration requests.
290 This must correspond
291 to the
292 <code>controlkey</code>
293 key number the server has been configured to use for this
294 purpose.
295 <br><dt><code>keytype</code> <code>[md5 | OpenSSLDigestType]</code><dd>Specify the type of key to use for authenticating requests.
296 <code>md5</code>
297 is alway supported.
298 If
299 <code>ntpq</code>
300 was built with OpenSSL support,
301 any digest type supported by OpenSSL can also be provided.
302 If no argument is given, the current
303 <code>keytype</code>
304 is displayed.
305 <br><dt><code>ntpversion</code> <code>[1 | 2 | 3 | 4]</code><dd>Sets the NTP version number which
306 <code>ntpq</code>
307 claims in
308 packets.
309 Defaults to 3, and note that mode 6 control messages (and
310 modes, for that matter) didn't exist in NTP version 1.
311 There appear
312 to be no servers left which demand version 1.
313 With no argument, displays the current NTP version that will be used
314 when communicating with servers.
315 <br><dt><code>passwd</code><dd>This command prompts you to type in a password (which will not
316 be echoed) which will be used to authenticate configuration
317 requests.
318 The password must correspond to the key configured for
319 use by the NTP server for this purpose if such requests are to be
320 successful.
321 <code>poll</code>
322 <kbd>n</kbd>
323 <code>verbose</code>
324 <br><dt><code>quit</code><dd>Exit
325 <code>ntpq</code>
326 <br><dt><code>raw</code><dd>Causes all output from query commands is printed as received
327 from the remote server.
328 The only formating/interpretation done on
329 the data is to transform nonascii data into a printable (but barely
330 understandable) form.
331 <br><dt><code>timeout</code> <kbd>milliseconds</kbd><dd>Specify a timeout period for responses to server queries.
332 The
333 default is about 5000 milliseconds.
334 Note that since
335 <code>ntpq</code>
336 retries each query once after a timeout, the total waiting time for
337 a timeout will be twice the timeout value set.
338 <br><dt><code>version</code><dd>Print the version of the
339 <code>ntpq</code>
340 program.
341 </dl>
342
343 <h5 class="subsubsection">Control Message Commands</h5>
344
345 <p>Association IDs are used to identify system, peer and clock variables.
346 System variables are assigned an association ID of zero and system name space, while each association is assigned a nonzero association ID and peer namespace.
347 Most control commands send a single mode-6 message to the server and expect a single response message.
348 The exceptions are the
349 <code>peers</code>
350 command, which sends a series of messages,
351 and the
352 <code>mreadlist</code>
353 and
354 <code>mreadvar</code>
355 commands, which iterate over a range of associations.
356 <dl>
357 <dt><code>associations</code><dd>Display a list of mobilized associations in the form:
358 <pre class="example"> ind assid status conf reach auth condition last_event cnt
359 </pre>
360 <dl>
361 <dt>Sy String Ta Sy Description<br><dt><code>ind</code> <code>Ta</code> <code>index</code> <code>on</code> <code>this</code> <code>list</code><br><dt><code>assid</code> <code>Ta</code> <code>association</code> <code>ID</code><br><dt><code>status</code> <code>Ta</code> <code>peer</code> <code>status</code> <code>word</code><br><dt><code>conf</code> <code>Ta</code> <code>yes</code>: <code>persistent,</code> <code>no</code>: <code>ephemeral</code><br><dt><code>reach</code> <code>Ta</code> <code>yes</code>: <code>reachable,</code> <code>no</code>: <code>unreachable</code><br><dt><code>auth</code> <code>Ta</code> <code>ok</code>, <code>yes</code>, <code>bad</code> <code>and</code> <code>none</code><br><dt><code>condition</code> <code>Ta</code> <code>selection</code> <code>status</code> <code>(see</code> <code>the</code> <code>select</code> <code>field</code> <code>of</code> <code>the</code> <code>peer</code> <code>status</code> <code>word)</code><br><dt><code>last_event</code> <code>Ta</code> <code>event</code> <code>report</code> <code>(see</code> <code>the</code> <code>event</code> <code>field</code> <code>of</code> <code>the</code> <code>peer</code> <code>status</code> <code>word)</code><br><dt><code>cnt</code> <code>Ta</code> <code>event</code> <code>count</code> <code>(see</code> <code>the</code> <code>count</code> <code>field</code> <code>of</code> <code>the</code> <code>peer</code> <code>status</code> <code>word)</code><dd></dl>
362 <br><dt><code>authinfo</code><dd>Display the authentication statistics.
363 <br><dt><code>clockvar</code> <kbd>assocID</kbd> <code>[</code><kbd>name</kbd><code>[=</code><kbd>value</kbd><code>]]</code> <code>[...]</code><br><dt><code>cv</code> <kbd>assocID</kbd> <code>[</code><kbd>name</kbd><code>[=</code><kbd>value</kbd><code>]]</code> <code>[...]</code><dd>Display a list of clock variables for those associations supporting a reference clock.
364 <br><dt><code>:config</code> <code>[...]</code><dd>Send the remainder of the command line, including whitespace, to the server as a run-time configuration command in the same format as a line in the configuration file. This command is experimental until further notice and clarification. Authentication is of course required.
365 <br><dt><code>config-from-file</code> <kbd>filename</kbd><dd>Send the each line of
366 <kbd>filename</kbd>
367 to the server as run-time configuration commands in the same format as a line in the configuration file. This command is experimental until further notice and clarification. Authentication is required.
368 <br><dt><code>ifstats</code><dd>Display statistics for each local network address. Authentication is required.
369 <br><dt><code>iostats</code><dd>Display network and reference clock I/O statistics.
370 <br><dt><code>kerninfo</code><dd>Display kernel loop and PPS statistics. As with other ntpq output, times are in milliseconds. The precision value displayed is in milliseconds as well, unlike the precision system variable.
371 <br><dt><code>lassociations</code><dd>Perform the same function as the associations command, except display mobilized and unmobilized associations.
372 <br><dt><code>lopeers</code> <code>[-4 | -6]</code><dd>Obtain and print a list of all peers and clients showing
373 <kbd>dstadr</kbd>
374 (associated with any given IP version).
375 <br><dt><code>lpeers</code> <code>[-4 | -6]</code><dd>Print a peer spreadsheet for the appropriate IP version(s).
376 <kbd>dstadr</kbd>
377 (associated with any given IP version).
378 <br><dt><code>monstats</code><dd>Display monitor facility statistics.
379 <br><dt><code>mrulist</code> <code>[limited | kod | mincount=</code><kbd>count</kbd><code> | laddr=</code><kbd>localaddr</kbd><code> | sort=</code><kbd>sortorder</kbd><code> | resany=</code><kbd>hexmask</kbd><code> | resall=</code><kbd>hexmask</kbd><code>]</code><dd>Obtain and print traffic counts collected and maintained by the monitor facility.
380 With the exception of
381 <code>sort</code>=<kbd>sortorder</kbd>,
382 the options filter the list returned by
383 <code>ntpd.</code>
384 The
385 <code>limited</code>
386 and
387 <code>kod</code>
388 options return only entries representing client addresses from which the last packet received triggered either discarding or a KoD response.
389 The
390 <code>mincount</code>=<kbd>count</kbd>
391 option filters entries representing less than
392 <kbd>count</kbd>
393 packets.
394 The
395 <code>laddr</code>=<kbd>localaddr</kbd>
396 option filters entries for packets received on any local address other than
397 <kbd>localaddr</kbd>.
398 <code>resany</code>=<kbd>hexmask</kbd>
399 and
400 <code>resall</code>=<kbd>hexmask</kbd>
401 filter entries containing none or less than all, respectively, of the bits in
402 <kbd>hexmask</kbd>,
403 which must begin with
404 <code>0x</code>.
405 The
406 <kbd>sortorder</kbd>
407 defaults to
408 <code>lstint</code>
409 and may be any of
410 <code>addr</code>,
411 <code>count</code>,
412 <code>avgint</code>,
413 <code>lstint</code>,
414 or any of those preceded by a minus sign (hyphen) to reverse the sort order.
415 The output columns are:
416 <dl>
417 <dt>Column<dd>Description
418 <br><dt><code>lstint</code><dd>Interval in s between the receipt of the most recent packet from this address and the completion of the retrieval of the MRU list by
419 <code>ntpq</code>
420 <br><dt><code>avgint</code><dd>Average interval in s between packets from this address.
421 <br><dt><code>rstr</code><dd>Restriction flags associated with this address.
422 Most are copied unchanged from the matching
423 <code>restrict</code>
424 command, however 0x400 (kod) and 0x20 (limited) flags are cleared unless the last packet from this address triggered a rate control response.
425 <br><dt><code>r</code><dd>Rate control indicator, either
426 a period,
427 <code>L</code>
428 or
429 <code>K</code>
430 for no rate control response,
431 rate limiting by discarding, or rate limiting with a KoD response, respectively.
432 <br><dt><code>m</code><dd>Packet mode.
433 <br><dt><code>v</code><dd>Packet version number.
434 <br><dt><code>count</code><dd>Packets received from this address.
435 <br><dt><code>rport</code><dd>Source port of last packet from this address.
436 <br><dt><code>remote</code> <code>address</code><dd>DNS name, numeric address, or address followed by
437 claimed DNS name which could not be verified in parentheses.
438 </dl>
439 <br><dt><code>mreadvar</code> <code>assocID</code> <code>assocID</code> <code>[</code><kbd>variable_name</kbd><code>[=</code><kbd>value</kbd><code>] ...]</code><br><dt><code>mrv</code> <code>assocID</code> <code>assocID</code> <code>[</code><kbd>variable_name</kbd><code>[=</code><kbd>value</kbd><code>] ...]</code><dd>Perform the same function as the
440 <code>readvar</code>
441 command, except for a range of association IDs.
442 This range is determined from the association list cached by the most recent
443 <code>associations</code>
444 command.
445 <br><dt><code>opeers</code> <code>[-4 | -6]</code><dd>Obtain and print the old-style list of all peers and clients showing
446 <kbd>dstadr</kbd>
447 (associated with any given IP version),
448 rather than the
449 <kbd>refid</kbd>.
450 <br><dt><code>passociations</code><dd>Perform the same function as the
451 <code>associations</code>
452 command,
453 except that it uses previously stored data rather than making a new query.
454 <br><dt><code>peers</code><dd>Display a list of peers in the form:
455 <pre class="example"> [tally]remote refid st t when pool reach delay offset jitter
456 </pre>
457 <dl>
458 <dt>Variable<dd>Description
459 <br><dt><code>[tally]</code><dd>single-character code indicating current value of the
460 <code>select</code>
461 field of the
462 .Lk decode.html#peer "peer status word"
463 <br><dt><code>remote</code><dd>host name (or IP number) of peer.
464 The value displayed will be truncated to 15 characters unless the
465 <code>-w</code>
466 flag is given, in which case the full value will be displayed
467 on the first line,
468 and the remaining data is displayed on the next line.
469 <br><dt><code>refid</code><dd>association ID or
470 .Lk decode.html#kiss "'kiss code"
471 <br><dt><code>st</code><dd>stratum
472 <br><dt><code>t</code><dd><code>u</code>:
473 unicast or manycast client,
474 <code>b</code>:
475 broadcast or multicast client,
476 <code>l</code>:
477 local (reference clock),
478 <code>s</code>:
479 symmetric (peer),
480 <code>A</code>:
481 manycast server,
482 <code>B</code>:
483 broadcast server,
484 <code>M</code>:
485 multicast server
486 <br><dt><code>when</code><dd>sec/min/hr since last received packet
487 <br><dt><code>poll</code><dd>poll interval (log2 s)
488 <br><dt><code>reach</code><dd>reach shift register (octal)
489 <br><dt><code>delay</code><dd>roundtrip delay
490 <br><dt><code>offset</code><dd>offset of server relative to this host
491 <br><dt><code>jitter</code><dd>jitter
492 </dl>
493 <br><dt><code>apeers</code><dd>Display a list of peers in the form:
494 <pre class="example"> [tally]remote refid assid st t when pool reach delay offset jitter
495 </pre>
496 <p>where the output is just like the
497 <code>peers</code>
498 command except that the
499 <code>refid</code>
500 is displayed in hex format and the association number is also displayed.
501 <br><dt><code>pstats</code> <kbd>assocID</kbd><dd>Show the statistics for the peer with the given
502 <kbd>assocID</kbd>.
503 <br><dt><code>readlist</code> <kbd>assocID</kbd><br><dt><code>rl</code> <kbd>assocID</kbd><dd>Read the system or peer variables included in the variable list.
504 <br><dt><code>readvar</code> <kbd>assocID</kbd> <kbd>name</kbd><code>[=</code><kbd>value</kbd><code>]</code> <code>[, ...]</code><br><dt><code>rv</code> <kbd>assocID</kbd> <kbd>name</kbd><code>[=</code><kbd>value</kbd><code>]</code> <code>[, ...]</code><dd>Display the specified variables.
505 If
506 <kbd>assocID</kbd>
507 is zero, the variables are from the
508 <a href="#System-Variables">System Variables</a>
509 name space, otherwise they are from the
510 <a href="#Peer-Variables">Peer Variables</a>
511 name space.
512 The
513 <kbd>assocID</kbd>
514 is required, as the same name can occur in both spaces.
515 If no
516 <kbd>name</kbd>
517 is included, all operative variables in the name space are displayed.
518
519 <p>In this case only, if the
520 <kbd>assocID</kbd>
521 is omitted, it is assumed zero.
522 Multiple names are specified with comma separators and without whitespace.
523 Note that time values are represented in milliseconds
524 and frequency values in parts-per-million (PPM).
525 Some NTP timestamps are represented in the format
526 YYYYMMDDTTTT ,
527 where YYYY is the year,
528 MM the month of year,
529 DD the day of month and
530 TTTT the time of day.
531 <br><dt><code>reslist</code><dd>Show the access control (restrict) list for
532 <code>ntpq</code>
533
534 <br><dt><code>saveconfig</code> <kbd>filename</kbd><dd>Write the current configuration,
535 including any runtime modifications given with
536 <code>:config</code>
537 or
538 <code>config-from-file</code>,
539 to the ntpd host's file
540 <kbd>filename</kbd>.
541 This command will be rejected by the server unless
542 .Lk miscopt.html#saveconfigdir "saveconfigdir"
543 appears in the
544 <code>ntpd</code>
545 configuration file.
546 <kbd>filename</kbd>
547 can use
548 <code>strftime()</code>
549 format specifies to substitute the current date and time, for example,
550 <code>q]saveconfig</code> <code>ntp-%Y%m%d-%H%M%S.confq]</code>.
551 The filename used is stored in system variable
552 <code>savedconfig</code>.
553 Authentication is required.
554 <br><dt><code>timerstats</code><dd>Display interval timer counters.
555 <br><dt><code>writelist</code> <kbd>assocID</kbd><dd>Write the system or peer variables included in the variable list.
556 <br><dt><code>writevar</code> <kbd>assocID</kbd> <kbd>name</kbd>=<kbd>value</kbd> <code>[, ...]</code><dd>Write the specified variables.
557 If the
558 <kbd>assocID</kbd>
559 is zero, the variables are from the
560 <a href="#System-Variables">System Variables</a>
561 name space, otherwise they are from the
562 <a href="#Peer-Variables">Peer Variables</a>
563 name space.
564 The
565 <kbd>assocID</kbd>
566 is required, as the same name can occur in both spaces.
567 <br><dt><code>sysinfo</code><dd>Display operational summary.
568 <br><dt><code>sysstats</code><dd>Print statistics counters maintained in the protocol module.
569 </dl>
570
571 <h5 class="subsubsection">Status Words and Kiss Codes</h5>
572
573 <p>The current state of the operating program is shown
574 in a set of status words
575 maintained by the system.
576 Status information is also available on a per-association basis.
577 These words are displayed in the
578 <code>rv</code>
579 and
580 <code>as</code>
581 commands both in hexadecimal and in decoded short tip strings.
582 The codes, tips and short explanations are documented on the
583 .Lk decode.html "Event Messages and Status Words"
584 page.
585 The page also includes a list of system and peer messages,
586 the code for the latest of which is included in the status word.
587
588 <p>Information resulting from protocol machine state transitions
589 is displayed using an informal set of ASCII strings called
590 .Lk decode.html#kiss "kiss codes" .
591 The original purpose was for kiss-o'-death (KoD) packets
592 sent by the server to advise the client of an unusual condition.
593 They are now displayed, when appropriate,
594 in the reference identifier field in various billboards.
595
596 <h5 class="subsubsection">System Variables</h5>
597
598 <p>The following system variables appear in the
599 <code>rv</code>
600 billboard.
601 Not all variables are displayed in some configurations.
602 <dl>
603 <dt>Variable<dd>Description
604 <br><dt><code>status</code><dd>.Lk decode.html#sys "system status word"
605 <br><dt><code>version</code><dd>NTP software version and build time
606 <br><dt><code>processor</code><dd>hardware platform and version
607 <br><dt><code>system</code><dd>operating system and version
608 <br><dt><code>leap</code><dd>leap warning indicator (0-3)
609 <br><dt><code>stratum</code><dd>stratum (1-15)
610 <br><dt><code>precision</code><dd>precision (log2 s)
611 <br><dt><code>rootdelay</code><dd>total roundtrip delay to the primary reference clock
612 <br><dt><code>rootdisp</code><dd>total dispersion to the primary reference clock
613 <br><dt><code>peer</code><dd>system peer association ID
614 <br><dt><code>tc</code><dd>time constant and poll exponent (log2 s) (3-17)
615 <br><dt><code>mintc</code><dd>minimum time constant (log2 s) (3-10)
616 <br><dt><code>clock</code><dd>date and time of day
617 <br><dt><code>refid</code><dd>reference ID or
618 .Lk decode.html#kiss "kiss code"
619 <br><dt><code>reftime</code><dd>reference time
620 <br><dt><code>offset</code><dd>combined offset of server relative to this host
621 <br><dt><code>sys_jitter</code><dd>combined system jitter
622 <br><dt><code>frequency</code><dd>frequency offset (PPM) relative to hardware clock
623 <br><dt><code>clk_wander</code><dd>clock frequency wander (PPM)
624 <br><dt><code>clk_jitter</code><dd>clock jitter
625 <br><dt><code>tai</code><dd>TAI-UTC offset (s)
626 <br><dt><code>leapsec</code><dd>NTP seconds when the next leap second is/was inserted
627 <br><dt><code>expire</code><dd>NTP seconds when the NIST leapseconds file expires
628 </dl>
629 The jitter and wander statistics are exponentially-weighted RMS averages.
630 The system jitter is defined in the NTPv4 specification;
631 the clock jitter statistic is computed by the clock discipline module.
632
633 <p>When the NTPv4 daemon is compiled with the OpenSSL software library,
634 additional system variables are displayed,
635 including some or all of the following,
636 depending on the particular Autokey dance:
637
638 <dl>
639 <dt>Variable<dd>Description
640 <br><dt><code>host</code><dd>Autokey host name for this host
641 <br><dt><code>ident</code><dd>Autokey group name for this host
642 <br><dt><code>flags</code><dd>host flags (see Autokey specification)
643 <br><dt><code>digest</code><dd>OpenSSL message digest algorithm
644 <br><dt><code>signature</code><dd>OpenSSL digest/signature scheme
645 <br><dt><code>update</code><dd>NTP seconds at last signature update
646 <br><dt><code>cert</code><dd>certificate subject, issuer and certificate flags
647 <br><dt><code>until</code><dd>NTP seconds when the certificate expires
648 </dl>
649
650 <h5 class="subsubsection">Peer Variables</h5>
651
652 <p>The following peer variables appear in the
653 <code>rv</code>
654 billboard for each association.
655 Not all variables are displayed in some configurations.
656
657 <dl>
658 <dt>Variable<dd>Description
659 <br><dt><code>associd</code><dd>association ID
660 <br><dt><code>status</code><dd>.Lk decode.html#peer "peer status word"
661 <br><dt><code>srcadr</code><dd>source (remote) IP address
662 <br><dt><code>srcport</code><dd>source (remote) port
663 <br><dt><code>dstadr</code><dd>destination (local) IP address
664 <br><dt><code>dstport</code><dd>destination (local) port
665 <br><dt><code>leap</code><dd>leap indicator (0-3)
666 <br><dt><code>stratum</code><dd>stratum (0-15)
667 <br><dt><code>precision</code><dd>precision (log2 s)
668 <br><dt><code>rootdelay</code><dd>total roundtrip delay to the primary reference clock
669 <br><dt><code>rootdisp</code><dd>total root dispersion to the primary reference clock
670 <br><dt><code>refid</code><dd>reference ID or
671 .Lk decode.html#kiss "kiss code"
672 <br><dt><code>reftime</code><dd>reference time
673 <br><dt><code>reach</code><dd>reach register (octal)
674 <br><dt><code>unreach</code><dd>unreach counter
675 <br><dt><code>hmode</code><dd>host mode (1-6)
676 <br><dt><code>pmode</code><dd>peer mode (1-5)
677 <br><dt><code>hpoll</code><dd>host poll exponent (log2 s) (3-17)
678 <br><dt><code>ppoll</code><dd>peer poll exponent (log2 s) (3-17)
679 <br><dt><code>headway</code><dd>headway (see
680 .Lk rate.html "Rate Management and the Kiss-o'-Death Packet" )
681 <br><dt><code>flash</code><dd>.Lk decode.html#flash "flash status word"
682 <br><dt><code>offset</code><dd>filter offset
683 <br><dt><code>delay</code><dd>filter delay
684 <br><dt><code>dispersion</code><dd>filter dispersion
685 <br><dt><code>jitter</code><dd>filter jitter
686 <br><dt><code>ident</code><dd>Autokey group name for this association
687 <br><dt><code>bias</code><dd>unicast/broadcast bias
688 <br><dt><code>xleave</code><dd>interleave delay (see
689 .Lk xleave.html "NTP Interleaved Modes" )
690 </dl>
691 The
692 <code>bias</code>
693 variable is calculated when the first broadcast packet is received
694 after the calibration volley.
695 It represents the offset of the broadcast subgraph relative to the unicast subgraph.
696 The
697 <code>xleave</code>
698 variable appears only for the interleaved symmetric and interleaved modes.
699 It represents the internal queuing, buffering and transmission delays
700 for the preceding packet.
701
702 <p>When the NTPv4 daemon is compiled with the OpenSSL software library,
703 additional peer variables are displayed, including the following:
704 <dl>
705 <dt>Variable<dd>Description
706 <br><dt><code>flags</code><dd>peer flags (see Autokey specification)
707 <br><dt><code>host</code><dd>Autokey server name
708 <br><dt><code>flags</code><dd>peer flags (see Autokey specification)
709 <br><dt><code>signature</code><dd>OpenSSL digest/signature scheme
710 <br><dt><code>initsequence</code><dd>initial key ID
711 <br><dt><code>initkey</code><dd>initial key index
712 <br><dt><code>timestamp</code><dd>Autokey signature timestamp
713 </dl>
714
715 <h5 class="subsubsection">Clock Variables</h5>
716
717 <p>The following clock variables appear in the
718 <code>cv</code>
719 billboard for each association with a reference clock.
720 Not all variables are displayed in some configurations.
721 <dl>
722 <dt>Variable<dd>Description
723 <br><dt><code>associd</code><dd>association ID
724 <br><dt><code>status</code><dd>.Lk decode.html#clock "clock status word"
725 <br><dt><code>device</code><dd>device description
726 <br><dt><code>timecode</code><dd>ASCII time code string (specific to device)
727 <br><dt><code>poll</code><dd>poll messages sent
728 <br><dt><code>noreply</code><dd>no reply
729 <br><dt><code>badformat</code><dd>bad format
730 <br><dt><code>baddata</code><dd>bad date or time
731 <br><dt><code>fudgetime1</code><dd>fudge time 1
732 <br><dt><code>fudgetime2</code><dd>fudge time 2
733 <br><dt><code>stratum</code><dd>driver stratum
734 <br><dt><code>refid</code><dd>driver reference ID
735 <br><dt><code>flags</code><dd>driver flags
736 </dl>
737
738 <p>This section was generated by <strong>AutoGen</strong>,
739 using the <code>agtexi-cmd</code> template and the option descriptions for the <code>ntpq</code> program.
740 This software is released under the NTP license, <http://ntp.org/license>.
741
742 <ul class="menu">
743 <li><a accesskey="1" href="#ntpq-usage">ntpq usage</a>: ntpq help/usage (<samp><span class="option">--help</span></samp>)
744 <li><a accesskey="2" href="#ntpq-ipv4">ntpq ipv4</a>: ipv4 option (-4)
745 <li><a accesskey="3" href="#ntpq-ipv6">ntpq ipv6</a>: ipv6 option (-6)
746 <li><a accesskey="4" href="#ntpq-command">ntpq command</a>: command option (-c)
747 <li><a accesskey="5" href="#ntpq-interactive">ntpq interactive</a>: interactive option (-i)
748 <li><a accesskey="6" href="#ntpq-numeric">ntpq numeric</a>: numeric option (-n)
749 <li><a accesskey="7" href="#ntpq-old_002drv">ntpq old-rv</a>: old-rv option
750 <li><a accesskey="8" href="#ntpq-peers">ntpq peers</a>: peers option (-p)
751 <li><a accesskey="9" href="#ntpq-wide">ntpq wide</a>: wide option (-w)
752 <li><a href="#ntpq-config">ntpq config</a>: presetting/configuring ntpq
753 <li><a href="#ntpq-exit-status">ntpq exit status</a>: exit status
754 </ul>
755
756 <div class="node">
757 <p><hr>
758 <a name="ntpq-usage"></a>
759 Next: <a rel="next" accesskey="n" href="#ntpq-ipv4">ntpq ipv4</a>,
760 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
761
762 </div>
763
764 <h4 class="subsection">ntpq help/usage (<samp><span class="option">--help</span></samp>)</h4>
765
766 <p><a name="index-ntpq-help-3"></a>
767 This is the automatically generated usage text for ntpq.
768
769 <p>The text printed is the same whether selected with the <code>help</code> option
770 (<samp><span class="option">--help</span></samp>) or the <code>more-help</code> option (<samp><span class="option">--more-help</span></samp>). <code>more-help</code> will print
771 the usage text by passing it through a pager program.
772 <code>more-help</code> is disabled on platforms without a working
773 <code>fork(2)</code> function. The <code>PAGER</code> environment variable is
774 used to select the program, defaulting to <samp><span class="file">more</span></samp>. Both will exit
775 with a status code of 0.
776
777 <pre class="example">ntpq - standard NTP query program - Ver. 4.2.8p4
778 Usage: ntpq [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [ host ...]
779 Flg Arg Option-Name Description
780 -4 no ipv4 Force IPv4 DNS name resolution
781 - prohibits the option 'ipv6'
782 -6 no ipv6 Force IPv6 DNS name resolution
783 - prohibits the option 'ipv4'
784 -c Str command run a command and exit
785 - may appear multiple times
786 -d no debug-level Increase debug verbosity level
787 - may appear multiple times
788 -D Num set-debug-level Set the debug verbosity level
789 - may appear multiple times
790 -i no interactive Force ntpq to operate in interactive mode
791 - prohibits these options:
792 command
793 peers
794 -n no numeric numeric host addresses
795 no old-rv Always output status line with readvar
796 -p no peers Print a list of the peers
797 - prohibits the option 'interactive'
798 -w no wide Display the full 'remote' value
799 opt version output version information and exit
800 -? no help display extended usage information and exit
801 -! no more-help extended usage information passed thru pager
802 -> opt save-opts save the option state to a config file
803 -< Str load-opts load options from a config file
804 - disabled as '--no-load-opts'
805 - may appear multiple times
806
807 Options are specified by doubled hyphens and their name or by a single
808 hyphen and the flag character.
809
810 The following option preset mechanisms are supported:
811 - reading file $HOME/.ntprc
812 - reading file ./.ntprc
813 - examining environment variables named NTPQ_*
814
815 Please send bug reports to: <http://bugs.ntp.org, bugs (a] ntp.org>
816 </pre>
817 <div class="node">
818 <p><hr>
819 <a name="ntpq-ipv4"></a>
820 Next: <a rel="next" accesskey="n" href="#ntpq-ipv6">ntpq ipv6</a>,
821 Previous: <a rel="previous" accesskey="p" href="#ntpq-usage">ntpq usage</a>,
822 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
823
824 </div>
825
826 <h4 class="subsection">ipv4 option (-4)</h4>
827
828 <p><a name="index-ntpq_002dipv4-4"></a>
829 This is the “force ipv4 dns name resolution” option.
830
831 <p class="noindent">This option has some usage constraints. It:
832 <ul>
833 <li>must not appear in combination with any of the following options:
834 ipv6.
835 </ul>
836
837 <p>Force DNS resolution of following host names on the command line
838 to the IPv4 namespace.
839 <div class="node">
840 <p><hr>
841 <a name="ntpq-ipv6"></a>
842 Next: <a rel="next" accesskey="n" href="#ntpq-command">ntpq command</a>,
843 Previous: <a rel="previous" accesskey="p" href="#ntpq-ipv4">ntpq ipv4</a>,
844 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
845
846 </div>
847
848 <h4 class="subsection">ipv6 option (-6)</h4>
849
850 <p><a name="index-ntpq_002dipv6-5"></a>
851 This is the “force ipv6 dns name resolution” option.
852
853 <p class="noindent">This option has some usage constraints. It:
854 <ul>
855 <li>must not appear in combination with any of the following options:
856 ipv4.
857 </ul>
858
859 <p>Force DNS resolution of following host names on the command line
860 to the IPv6 namespace.
861 <div class="node">
862 <p><hr>
863 <a name="ntpq-command"></a>
864 Next: <a rel="next" accesskey="n" href="#ntpq-interactive">ntpq interactive</a>,
865 Previous: <a rel="previous" accesskey="p" href="#ntpq-ipv6">ntpq ipv6</a>,
866 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
867
868 </div>
869
870 <h4 class="subsection">command option (-c)</h4>
871
872 <p><a name="index-ntpq_002dcommand-6"></a>
873 This is the “run a command and exit” option.
874 This option takes a string argument <samp><span class="file">cmd</span></samp>.
875
876 <p class="noindent">This option has some usage constraints. It:
877 <ul>
878 <li>may appear an unlimited number of times.
879 </ul>
880
881 <p>The following argument is interpreted as an interactive format command
882 and is added to the list of commands to be executed on the specified
883 host(s).
884 <div class="node">
885 <p><hr>
886 <a name="ntpq-interactive"></a>
887 Next: <a rel="next" accesskey="n" href="#ntpq-numeric">ntpq numeric</a>,
888 Previous: <a rel="previous" accesskey="p" href="#ntpq-command">ntpq command</a>,
889 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
890
891 </div>
892
893 <h4 class="subsection">interactive option (-i)</h4>
894
895 <p><a name="index-ntpq_002dinteractive-7"></a>
896 This is the “force ntpq to operate in interactive mode” option.
897
898 <p class="noindent">This option has some usage constraints. It:
899 <ul>
900 <li>must not appear in combination with any of the following options:
901 command, peers.
902 </ul>
903
904 <p>Force <code>ntpq</code> to operate in interactive mode.
905 Prompts will be written to the standard output and
906 commands read from the standard input.
907 <div class="node">
908 <p><hr>
909 <a name="ntpq-numeric"></a>
910 Next: <a rel="next" accesskey="n" href="#ntpq-old_002drv">ntpq old-rv</a>,
911 Previous: <a rel="previous" accesskey="p" href="#ntpq-interactive">ntpq interactive</a>,
912 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
913
914 </div>
915
916 <h4 class="subsection">numeric option (-n)</h4>
917
918 <p><a name="index-ntpq_002dnumeric-8"></a>
919 This is the “numeric host addresses” option.
920 Output all host addresses in dotted-quad numeric format rather than
921 converting to the canonical host names.
922 <div class="node">
923 <p><hr>
924 <a name="ntpq-old-rv"></a>
925 <a name="ntpq-old_002drv"></a>
926 Next: <a rel="next" accesskey="n" href="#ntpq-peers">ntpq peers</a>,
927 Previous: <a rel="previous" accesskey="p" href="#ntpq-numeric">ntpq numeric</a>,
928 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
929
930 </div>
931
932 <h4 class="subsection">old-rv option</h4>
933
934 <p><a name="index-ntpq_002dold_002drv-9"></a>
935 This is the “always output status line with readvar” option.
936 By default, <code>ntpq</code> now suppresses the <code>associd=...</code>
937 line that precedes the output of <code>readvar</code>
938 (alias <code>rv</code>) when a single variable is requested, such as
939 <code>ntpq -c "rv 0 offset"</code>.
940 This option causes <code>ntpq</code> to include both lines of output
941 for a single-variable <code>readvar</code>.
942 Using an environment variable to
943 preset this option in a script will enable both older and
944 newer <code>ntpq</code> to behave identically in this regard.
945 <div class="node">
946 <p><hr>
947 <a name="ntpq-peers"></a>
948 Next: <a rel="next" accesskey="n" href="#ntpq-wide">ntpq wide</a>,
949 Previous: <a rel="previous" accesskey="p" href="#ntpq-old_002drv">ntpq old-rv</a>,
950 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
951
952 </div>
953
954 <h4 class="subsection">peers option (-p)</h4>
955
956 <p><a name="index-ntpq_002dpeers-10"></a>
957 This is the “print a list of the peers” option.
958
959 <p class="noindent">This option has some usage constraints. It:
960 <ul>
961 <li>must not appear in combination with any of the following options:
962 interactive.
963 </ul>
964
965 <p>Print a list of the peers known to the server as well as a summary
966 of their state. This is equivalent to the 'peers' interactive command.
967 <div class="node">
968 <p><hr>
969 <a name="ntpq-wide"></a>
970 Next: <a rel="next" accesskey="n" href="#ntpq-config">ntpq config</a>,
971 Previous: <a rel="previous" accesskey="p" href="#ntpq-peers">ntpq peers</a>,
972 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
973
974 </div>
975
976 <h4 class="subsection">wide option (-w)</h4>
977
978 <p><a name="index-ntpq_002dwide-11"></a>
979 This is the “display the full 'remote' value” option.
980 Display the full value of the 'remote' value. If this requires
981 more than 15 characters, display the full value, emit a newline,
982 and continue the data display properly indented on the next line.
983
984 <div class="node">
985 <p><hr>
986 <a name="ntpq-config"></a>
987 Next: <a rel="next" accesskey="n" href="#ntpq-exit-status">ntpq exit status</a>,
988 Previous: <a rel="previous" accesskey="p" href="#ntpq-wide">ntpq wide</a>,
989 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
990
991 </div>
992
993 <h4 class="subsection">presetting/configuring ntpq</h4>
994
995 <p>Any option that is not marked as <i>not presettable</i> may be preset by
996 loading values from configuration ("rc" or "ini") files, and values from environment variables named <code>NTPQ</code> and <code>NTPQ_<OPTION_NAME></code>. <code><OPTION_NAME></code> must be one of
997 the options listed above in upper case and segmented with underscores.
998 The <code>NTPQ</code> variable will be tokenized and parsed like
999 the command line. The remaining variables are tested for existence and their
1000 values are treated like option arguments.
1001
1002 <p class="noindent"><code>libopts</code> will search in 2 places for configuration files:
1003 <ul>
1004 <li>$HOME
1005 <li>$PWD
1006 </ul>
1007 The environment variables <code>HOME</code>, and <code>PWD</code>
1008 are expanded and replaced when <samp><span class="file">ntpq</span></samp> runs.
1009 For any of these that are plain files, they are simply processed.
1010 For any that are directories, then a file named <samp><span class="file">.ntprc</span></samp> is searched for
1011 within that directory and processed.
1012
1013 <p>Configuration files may be in a wide variety of formats.
1014 The basic format is an option name followed by a value (argument) on the
1015 same line. Values may be separated from the option name with a colon,
1016 equal sign or simply white space. Values may be continued across multiple
1017 lines by escaping the newline with a backslash.
1018
1019 <p>Multiple programs may also share the same initialization file.
1020 Common options are collected at the top, followed by program specific
1021 segments. The segments are separated by lines like:
1022 <pre class="example"> [NTPQ]
1023 </pre>
1024 <p class="noindent">or by
1025 <pre class="example"> <?program ntpq>
1026 </pre>
1027 <p class="noindent">Do not mix these styles within one configuration file.
1028
1029 <p>Compound values and carefully constructed string values may also be
1030 specified using XML syntax:
1031 <pre class="example"> <option-name>
1032 <sub-opt>...&lt;...&gt;...</sub-opt>
1033 </option-name>
1034 </pre>
1035 <p class="noindent">yielding an <code>option-name.sub-opt</code> string value of
1036 <pre class="example"> "...<...>..."
1037 </pre>
1038 <p><code>AutoOpts</code> does not track suboptions. You simply note that it is a
1039 hierarchicly valued option. <code>AutoOpts</code> does provide a means for searching
1040 the associated name/value pair list (see: optionFindValue).
1041
1042 <p>The command line options relating to configuration and/or usage help are:
1043
1044 <h5 class="subsubheading">version (-)</h5>
1045
1046 <p>Print the program version to standard out, optionally with licensing
1047 information, then exit 0. The optional argument specifies how much licensing
1048 detail to provide. The default is to print just the version. The licensing infomation may be selected with an option argument.
1049 Only the first letter of the argument is examined:
1050
1051 <dl>
1052 <dt>`<samp><span class="samp">version</span></samp>'<dd>Only print the version. This is the default.
1053 <br><dt>`<samp><span class="samp">copyright</span></samp>'<dd>Name the copyright usage licensing terms.
1054 <br><dt>`<samp><span class="samp">verbose</span></samp>'<dd>Print the full copyright usage licensing terms.
1055 </dl>
1056
1057 <div class="node">
1058 <p><hr>
1059 <a name="ntpq-exit-status"></a>
1060 Previous: <a rel="previous" accesskey="p" href="#ntpq-config">ntpq config</a>,
1061 Up: <a rel="up" accesskey="u" href="#ntpq-Invocation">ntpq Invocation</a>
1062
1063 </div>
1064
1065 <h4 class="subsection">ntpq exit status</h4>
1066
1067 <p>One of the following exit values will be returned:
1068 <dl>
1069 <dt>`<samp><span class="samp">0 (EXIT_SUCCESS)</span></samp>'<dd>Successful program execution.
1070 <br><dt>`<samp><span class="samp">1 (EXIT_FAILURE)</span></samp>'<dd>The operation failed or the command syntax was not valid.
1071 <br><dt>`<samp><span class="samp">66 (EX_NOINPUT)</span></samp>'<dd>A specified configuration file could not be loaded.
1072 <br><dt>`<samp><span class="samp">70 (EX_SOFTWARE)</span></samp>'<dd>libopts had an internal operational error. Please report
1073 it to autogen-users (a] lists.sourceforge.net. Thank you.
1074 </dl>
1075
1076 <div class="node">
1077 <p><hr>
1078 <a name="Usage"></a>
1079 Next: <a rel="next" accesskey="n" href="#Internal-Commands">Internal Commands</a>,
1080 Previous: <a rel="previous" accesskey="p" href="#ntpq-Description">ntpq Description</a>,
1081 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1082
1083 </div>
1084
1085 <!-- node-name, next, previous, up -->
1086 <h3 class="section">Usage</h3>
1087
1088 <p><table summary=""><tr align="left"><th valign="top" width="23%">What </th><th valign="top" width="23%">Default </th><th valign="top" width="5%">Flag </th><th valign="top" width="15%">Option
1089 <br></th></tr><tr align="left"><td valign="top" width="23%">configuration file
1090 </td><td valign="top" width="23%"><code>/etc/ntp.conf</code>
1091 </td><td valign="top" width="5%"><code>-c</code>
1092 </td><td valign="top" width="15%"><code>conffile</code>
1093 <br></td></tr><tr align="left"><td valign="top" width="23%">frequency file
1094 </td><td valign="top" width="23%">none
1095 </td><td valign="top" width="5%"><code>-f</code>
1096 </td><td valign="top" width="15%"><code>driftfile</code>
1097 <br></td></tr><tr align="left"><td valign="top" width="23%">leapseconds file
1098 </td><td valign="top" width="23%">none
1099 </td><td valign="top" width="5%">
1100 </td><td valign="top" width="15%"><code>leapfile</code>
1101 <br></td></tr><tr align="left"><td valign="top" width="23%">process ID file
1102 </td><td valign="top" width="23%">none
1103 </td><td valign="top" width="5%"><code>-p</code>
1104 </td><td valign="top" width="15%"><code>pidfile</code>
1105 <br></td></tr><tr align="left"><td valign="top" width="23%">log file
1106 </td><td valign="top" width="23%">system log
1107 </td><td valign="top" width="5%"><code>-l</code>
1108 </td><td valign="top" width="15%"><code>logfile</code>
1109 <br></td></tr><tr align="left"><td valign="top" width="23%">include file
1110 </td><td valign="top" width="23%">none
1111 </td><td valign="top" width="5%">none
1112 </td><td valign="top" width="15%"><code>includefile</code>
1113 <br></td></tr><tr align="left"><td valign="top" width="23%">statistics path
1114 </td><td valign="top" width="23%"><code>/var/NTP</code>
1115 </td><td valign="top" width="5%"><code>-s</code>
1116 </td><td valign="top" width="15%"><code>statsdir</code>
1117 <br></td></tr><tr align="left"><td valign="top" width="23%">keys path
1118 </td><td valign="top" width="23%"><code>/usr/local/etc</code>
1119 </td><td valign="top" width="5%"><code>-k</code>
1120 </td><td valign="top" width="15%"><code>keysdir</code>
1121 <br></td></tr></table>
1122
1123 <div class="node">
1124 <p><hr>
1125 <a name="Internal-Commands"></a>
1126 Next: <a rel="next" accesskey="n" href="#Control-Message-Commands">Control Message Commands</a>,
1127 Previous: <a rel="previous" accesskey="p" href="#Usage">Usage</a>,
1128 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1129
1130 </div>
1131
1132 <!-- node-name, next, previous, up -->
1133 <h3 class="section">Internal Commands</h3>
1134
1135 <p>Interactive format commands consist of a keyword followed by zero to four arguments. Only enough characters of the full keyword to uniquely identify the command need be typed. The output of a command is normally sent to the standard output, but optionally the output of individual commands may be sent to a file by appending a <code>></code>, followed by a file name, to the command line. A number of interactive format commands are executed entirely within the <code>ntpq</code> program itself and do not result in NTP mode-6 requests being sent to a server. These are described following.
1136
1137 <dl>
1138 <dt><code><a name="help"></a> ? [</code><kbd>command_keyword</kbd><code>]</code><dt><code>help [</code><kbd>command_keyword</kbd><code>]</code><dd>A <code>?</code> by itself will print a list of all the command keywords known to <code>ntpq</code>. A <code>?</code> followed by a command keyword will print function and usage information about the command.
1139
1140 <br><dt><code><a name="addvars"></a> >addvars </code><kbd>name</kbd><code> [ = </code><kbd>value</kbd><code>] [...]</code><dt><code>rmvars </code><kbd>name</kbd><code> [...]</code><dt><code>clearvars</dt></code><dd>The arguments to these commands consist of a list of items of the form
1141 <kbd>name</kbd><code> = </code><kbd>value</kbd>, where the <code>= </code><kbd>value</kbd> is ignored,
1142 and can be omitted in read requests.
1143 <code>ntpq</code> maintains an internal list in which data to be included
1144 in control messages can be assembled, and sent using the <code>readlist</code>
1145 and <code>writelist</code> commands described below.
1146 The <code>addvars</code> command allows variables and optional values
1147 to be added to the list.
1148 If more than one variable is to be added
1149 the list should be comma-separated and not contain white space.
1150 The <code>rmvars</code> command can be used to remove individual variables
1151 from the list,
1152 while the <code>clearlist</code> command removes all variables from the list.
1153
1154 <br><dt><code><a name="cooked"></a> cooked</code><dd>Display server messages in prettyprint format.
1155
1156 <br><dt><code><a name="debug"></a> debug more | less | off</code><dd>Turns internal query program debugging on and off.
1157
1158 <br><dt><code><a name="delay"></a> delay </code><kbd>milliseconds</kbd><dd>Specify a time interval to be added to timestamps included in requests which require authentication. This is used to enable (unreliable) server reconfiguration over long delay network paths or between machines whose clocks are unsynchronized. Actually the server does not now require timestamps in authenticated requests, so this command may be obsolete.
1159
1160 <br><dt><code><a name="host"></a> host </code><kbd>name</kbd><dd>Set the host to which future queries will be sent.
1161 The name may be either a DNS name or a numeric address.
1162
1163 <br><dt><code><a name="hostnames"></a> hostnames [yes | no]</code><dd>If <code>yes</code> is specified, host names are printed in information displays.
1164 If <code>no</code> is specified, numeric addresses are printed instead.
1165 The default is <code>yes</code>,
1166 unless modified using the command line <code>-n</code> switch.
1167
1168 <br><dt><code><a name="keyid"></a> keyid </code><kbd>keyid</kbd><dd>This command specifies the key number to be used
1169 to authenticate configuration requests.
1170 This must correspond to a key ID configured in <code>ntp.conf</code> for this purpose.
1171
1172 <br><dt><code><a name="keytype"></a> keytype</code><dd>Specify the digest algorithm to use for authenticated requests,
1173 with default <code>MD5</code>.
1174 If the OpenSSL library is installed,
1175 digest can be be any message digest algorithm supported by the library.
1176 The current selections are: <code>MD2</code>, <code>MD4</code>, <code>MD5</code>, <code>MDC2</code>, <code>RIPEMD160</code>, <code>SHA</code> and <code>SHA1</code>.
1177
1178 <br><dt><code><a name="ntpversion"></a> ntpversion 1 | 2 | 3 | 4</code><dd>Sets the NTP version number which <code>ntpq</code> claims in packets.
1179 Defaults to 2.
1180 Note that mode-6 control messages (and modes, for that matter)
1181 didn't exist in NTP version 1.
1182
1183 <br><dt><code><a name="passwd"></a> passwd</code><dd>This command prompts for a password to authenticate requests.
1184 The password must correspond to the key ID configured in <code>ntp.conf</code> for this purpose.
1185
1186 <br><dt><code><a name="quit"></a> quit</code><dd>Exit <code>ntpq</code>.
1187
1188 <br><dt><code><a name="raw"></a> raw</code><dd>Display server messages as received and without reformatting.
1189
1190 <br><dt><code><a name="timeout"></a> timeout </code><kbd>millseconds</kbd><dd>Specify a timeout period for responses to server queries.
1191 The default is about 5000 milliseconds.
1192 Note that since <code>ntpq</code> retries each query once after a timeout
1193 the total waiting time for a timeout will be twice the timeout value set.
1194
1195 </dl>
1196
1197 <div class="node">
1198 <p><hr>
1199 <a name="Control-Message-Commands"></a>
1200 Next: <a rel="next" accesskey="n" href="#Status-Words-and-Kiss-Codes">Status Words and Kiss Codes</a>,
1201 Previous: <a rel="previous" accesskey="p" href="#Internal-Commands">Internal Commands</a>,
1202 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1203
1204 </div>
1205
1206 <!-- node-name, next, previous, up -->
1207 <h3 class="section">Control Message Commands</h3>
1208
1209 <p>Association IDs are used to identify system, peer and clock variables.
1210 System variables are assigned an association ID of zero and system name space,
1211 while each association is assigned a nonzero association ID and peer namespace.
1212 Most control commands send a single mode-6 message to the server
1213 and expect a single response message.
1214 The exceptions are the <code>peers</code> command,
1215 which sends a series of messages,
1216 and the <code>mreadlist</code> and <code>mreadvar</code> commands,
1217 which iterate over a range of associations.
1218
1219 <p><a name="as"></a>
1220 <dl>
1221 <dt><code>associations</code><dd>Display a list of mobilized associations in the form:
1222 <br>
1223 <code>ind assid status conf reach auth condition last_event cnt</code>
1224
1225 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="40%">Description
1226
1227 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>ind</code>
1228 </td><td valign="top" width="40%">index on this list
1229
1230 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>assid</code>
1231 </td><td valign="top" width="40%">association ID
1232
1233 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>status</code>
1234 </td><td valign="top" width="40%"><a href="decode.html#peer">peer status word</a>
1235
1236 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>conf</code>
1237 </td><td valign="top" width="40%"><code>yes</code>: persistent, <code>no</code>: ephemeral
1238
1239 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>reach</code>
1240 </td><td valign="top" width="40%"><code>yes</code>: reachable, <code>no</code>: unreachable
1241
1242 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>auth</code>
1243 </td><td valign="top" width="40%"><code>ok</code>, <code>yes</code>, <code>bad</code> and <code>none</code>
1244
1245 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>condition</code>
1246 </td><td valign="top" width="40%">selection status (see the <code>select</code> field of the <a href="decode.html#peer">peer status word</a>)
1247
1248 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>last_event</code>
1249 </td><td valign="top" width="40%">event report (see the <code>event</code> field of the <a href="decode.html#peer">peer status word</a>)
1250
1251 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>cnt</code>
1252 event count (see the <code>count</code> field of the <a href="decode.html#peer">peer status word</a>)
1253
1254 <br></td></tr></table>
1255
1256 <br><dt><code><a name="cv"></a> clockvar </code><kbd>assocID</kbd><code> [</code><kbd>name</kbd><code> [ = </code><kbd>value</kbd><code> [...]] [...]]</code><dt><code>cv </code><kbd>assocID</kbd><code> [</code><kbd>name</kbd><code> [ = </code><kbd>value</kbd><code> [...] ][...]]</code><dd>Display a list of <a href="#clock">clock variables</a> for those associations supporting a reference clock.
1257
1258 <br><dt><code><a name="g_t_003aconfig"></a> :config [...]</code><dd>Send the remainder of the command line, including whitespace, to the server
1259 as a run-time configuration command in the same format
1260 as the configuration file.
1261 This command is experimental until further notice and clarification.
1262 Authentication is of course required.
1263
1264 <br><dt><code><a name="config_002dfrom_002dfile"></a> config-from-file </code><kbd>filename</kbd><dd>Send the each line of <kbd>filename</kbd> to the server as
1265 run-time configuration commands in the same format as the configuration file.
1266 This command is experimental until further notice and clarification.
1267 Authentication is required.
1268
1269 <br><dt><code><a name="ifstats"></a> ifstats</code><dd>Display statistics for each local network address.
1270 Authentication is required.
1271
1272 <br><dt><code><a name="iostats"></a> iostats</code><dd>Display network and reference clock I/O statistics.
1273
1274 <br><dt><code><a name="kerninfo"></a> kerninfo</code><dd>Display kernel loop and PPS statistics.
1275 As with other ntpq output, times are in milliseconds.
1276 The precision value displayed is in milliseconds as well,
1277 unlike the precision system variable.
1278
1279 <br><dt><code><a name="lassoc"></a> lassociations</code><dd>Perform the same function as the associations command,
1280 except display mobilized and unmobilized associations.
1281
1282 <br><dt><code><a name="monstats"></a> monstats</code><dd>Display monitor facility statistics.
1283
1284 <br><dt><code><a name="mrulist"></a> mrulist [limited | kod | mincount=</code><kbd>count</kbd><code> | laddr=</code><kbd>localaddr</kbd><code> | sort=</code><kbd>sortorder</kbd><code> | resany=</code><kbd>hexmask</kbd><code> | resall=</code><kbd>hexmask</kbd><code>]</code><dd>Obtain and print traffic counts collected and maintained by
1285 the monitor facility.
1286 With the exception of <code>sort=</code><kbd>sortorder</kbd>,
1287 the options filter the list returned by <code>ntpd</code>.
1288 The <code>limited</code> and <code>kod</code> options return only entries
1289 representing client addresses from which the last packet received
1290 triggered either discarding or a KoD response.
1291 The <code>mincount=</code><kbd>count</kbd> option filters entries representing
1292 less than <kbd>count</kbd> packets.
1293 The <code>laddr=</code><kbd>localaddr</kbd> option filters entries for packets
1294 received on any local address other than <kbd>localaddr</kbd>.
1295 <code>resany=</code><kbd>hexmask</kbd> and <code>resall=</code><kbd>hexmask</kbd>
1296 filter entries containing none or less than all, respectively,
1297 of the bits in <kbd>hexmask</kbd>, which must begin with <code>0x</code>.
1298 <br>
1299 The <kbd>sortorder</kbd> defaults to <code>lstint</code> and may be any of
1300 <code>addr</code>, <code>count</code>, <code>avgint</code>, <code>lstint</code>, or
1301 any of those preceded by a minus sign (hyphen) to reverse the sort order.
1302 The output columns are:
1303
1304 <p><table summary=""><tr align="left"><th valign="top" width="10%">Column </th><th valign="top" width="40%">Description
1305
1306 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>lstint</code>
1307 </td><td valign="top" width="40%">
1308 Interval in s between the receipt of the most recent packet from this
1309 address and the completion of the retrieval of the MRU list by <code>ntpq</code>
1310
1311 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>avgint</code>
1312 </td><td valign="top" width="40%">
1313 Average interval in s between packets from this address.
1314
1315 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rstr</code>
1316 </td><td valign="top" width="40%">
1317 Restriction flags associated with this address.
1318 Most are copied unchanged from the matching <code>restrict</code> command,
1319 however 0x400 (kod) and 0x20 (limited) flags are cleared unless
1320 the last packet from this address triggered a rate control response.
1321
1322 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>r</code>
1323 </td><td valign="top" width="40%">
1324 Rate control indicator, either a period, <code>L</code> or <code>K</code> for
1325 no rate control response, rate limiting by discarding, or
1326 rate limiting with a KoD response, respectively.
1327
1328 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>m</code>
1329 </td><td valign="top" width="40%">
1330 Packet mode.
1331 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>v</code>
1332 </td><td valign="top" width="40%">
1333 Packet version number.
1334
1335 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>count</code>
1336 </td><td valign="top" width="40%">
1337 Packets received from this address.
1338
1339 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rport</code>
1340 </td><td valign="top" width="40%">
1341 Source port of last packet from this address.
1342
1343 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>remote address</code>
1344 </td><td valign="top" width="40%">
1345 DNS name, numeric address, or address followed by claimed DNS name which
1346 could not be verified in parentheses.
1347
1348 <br></td></tr></table>
1349
1350 <br><dt><code><a name="mreadvar"></a> mreadvar </code><kbd>assocID</kbd> <kbd>assocID</kbd><code> [ </code><kbd>variable_name</kbd><code> [ = </code><kbd>value</kbd><code>[ ... ]</code><dt><code><a name="mrv"></a> mrv </code><kbd>assocID</kbd> <kbd>assocID</kbd><code> [ </code><kbd>variable_name</kbd><code> [ = </code><kbd>value</kbd><code>[ ... ]</code><dd>Perform the same function as the <code>readvar</code> command,
1351 except for a range of association IDs.
1352 This range is determined from the association list cached by
1353 the most recent <code>associations</code> command.
1354
1355 <br><dt><code><a name="passoc"></a> passociations</code><dd>Perform the same function as the <code>associations command</code>, except that
1356 it uses previously stored data rather than making a new query.
1357
1358 <br><dt><code><a name="pe"></a> peers</code><dd>Display a list of peers in the form:
1359 <br>
1360 <code>[tally]remote refid st t when pool reach delay offset jitter</code>
1361
1362 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1363 <br></th></tr><tr align="left"><td valign="top" width="10%"><code>[tally]</code>
1364 </td><td valign="top" width="20%">
1365 single-character code indicating current value of the <code>select</code> field
1366 of the <a href="decode.html#peer">peer status word</a>.
1367
1368 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>remote</code>
1369 </td><td valign="top" width="20%">
1370 host name (or IP number) of peer
1371
1372 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>refid</code>
1373 </td><td valign="top" width="20%">
1374 association ID or <a href="decode.html#kiss">kiss code</a>.
1375
1376 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>st</code>
1377 </td><td valign="top" width="20%">
1378 stratum
1379
1380 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>t</code>
1381 </td><td valign="top" width="20%">
1382 <code>u</code>: unicast or manycast client,
1383 <code>b</code>: broadcast or multicast client,
1384 <code>l</code>: local (reference clock),
1385 <code>s</code>: symmetric (peer),
1386 <code>A</code>: manycast server,
1387 <code>B</code>: broadcast server,
1388 <code>M</code>: multicast server.
1389
1390 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>when</code>
1391 </td><td valign="top" width="20%">
1392 sec/min/hr since last received packet
1393
1394 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>poll</code>
1395 </td><td valign="top" width="20%">
1396 poll interval (log(2) s)
1397
1398 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>reach</code>
1399 </td><td valign="top" width="20%">
1400 reach shift register (octal)
1401
1402 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>delay</code>
1403 </td><td valign="top" width="20%">
1404 roundtrip delay
1405
1406 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>offset</code>
1407 </td><td valign="top" width="20%">
1408 offset of server relative to this host
1409
1410 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>jitter</code>
1411 </td><td valign="top" width="20%">
1412 jitter
1413
1414 <br></td></tr></table>
1415
1416 <br><dt><code><a name="rv"></a> readvar </code><kbd>assocID</kbd> <kbd>name</kbd><code> [ = </code><kbd>value</kbd><code> ] [,...]</code><dt><code>rv </code><kbd>assocID</kbd><code> [ </code><kbd>name</kbd><code> ] [,...]</code><dd>Display the specified variables.
1417 If <kbd>assocID</kbd> is zero,
1418 the variables are from the <a href="#system">system variables</a> name space,
1419 otherwise they are from the <a href="#peer">peer variables</a> name space.
1420 The <kbd>assocID</kbd> is required, as the same name can occur in both spaces.
1421 If no <kbd>name</kbd> is included,
1422 all operative variables in the name space are displayed.
1423 In this case only, if the <kbd>assocID</kbd> is omitted, it is assumed zero.
1424 Multiple names are specified with comma separators and without whitespace.
1425 Note that time values are represented in milliseconds and
1426 frequency values in parts-per-million (PPM).
1427 Some NTP timestamps are represented in the format YYYYMMDDTTTT,
1428 where YYYY is the year, MM the month of year, DD the day of month and
1429 TTTT the time of day.
1430
1431 <br><dt><code><a name="saveconfig"></a> saveconfig </code><kbd>filename</kbd><dd>Write the current configuration, including any runtime modifications
1432 given with <code>:config</code> or <code>config-from-file</code>,
1433 to the ntpd host's file <kbd>filename</kbd>.
1434 This command will be rejected by the server unless
1435 <a href="miscopt.html#saveconfigdir">saveconfigdir</a>
1436 appears in the <code>ntpd</code> configuration file.
1437 <kbd>filename</kbd> can use <code>strftime()</code> format specifiers
1438 to substitute the current date and time, for example,
1439 <code>saveconfig ntp-%Y%m%d-%H%M%S.conf</code>.
1440 The filename used is stored in system variable <code>savedconfig</code>.
1441 Authentication is required.
1442
1443 <br><dt><code><a name="writevar"></a> writevar </code><kbd>assocID</kbd> <kbd>name</kbd><code> = </code><kbd>value</kbd><code> [,...]</code><dd>Write the specified variables.
1444 If the <kbd>assocID</kbd> is zero, the variables are from the
1445 <a href="#system">system variables</a> name space, otherwise they are from the
1446 <a href="#peer">peer variables</a> name space.
1447 The <kbd>assocID</kbd> is required,
1448 as the same name can occur in both spaces.
1449
1450 <br><dt><code><a name="sysinfo"></a> sysinfo</code><dd>Display operational summary.
1451
1452 <br><dt><code><a name="sysstats"></a> sysstats</code><dd>Print statistics counters maintained in the protocol module.
1453
1454 </dl>
1455
1456 <div class="node">
1457 <p><hr>
1458 <a name="Status-Words-and-Kiss-Codes"></a>
1459 Next: <a rel="next" accesskey="n" href="#System-Variables">System Variables</a>,
1460 Previous: <a rel="previous" accesskey="p" href="#Control-Message-Commands">Control Message Commands</a>,
1461 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1462
1463 </div>
1464
1465 <!-- node-name, next, previous, up -->
1466 <h3 class="section">Status Words and Kiss Codes</h3>
1467
1468 <p>The current state of the operating program is shown
1469 in a set of status words maintained by the system
1470 and each association separately.
1471 These words are displayed in the <code>rv</code> and <code>as</code> commands
1472 both in hexadecimal and decoded short tip strings.
1473 The codes, tips and short explanations are on the
1474 <a href="decode.html">Event Messages and Status Words</a> page.
1475 The page also includes a list of system and peer messages,
1476 the code for the latest of which is included in the status word.
1477
1478 <p>Information resulting from protocol machine state transitions
1479 is displayed using an informal set of ASCII strings called
1480 <a href="decode.html#kiss">kiss codes</a>.
1481 The original purpose was for kiss-o'-death (KoD) packets sent
1482 by the server to advise the client of an unusual condition.
1483 They are now displayed, when appropriate,
1484 in the reference identifier field in various billboards.
1485
1486 <div class="node">
1487 <p><hr>
1488 <a name="System-Variables"></a>
1489 Next: <a rel="next" accesskey="n" href="#Peer-Variables">Peer Variables</a>,
1490 Previous: <a rel="previous" accesskey="p" href="#Status-Words-and-Kiss-Codes">Status Words and Kiss Codes</a>,
1491 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1492
1493 </div>
1494
1495 <!-- node-name, next, previous, up -->
1496 <h3 class="section">System Variables</h3>
1497
1498 <p>The following system variables appear in the <code>rv</code> billboard.
1499 Not all variables are displayed in some configurations.
1500
1501 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1502
1503 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>status</code>
1504 </td><td valign="top" width="20%">
1505 <a href="decode.html#sys">system status word</a>
1506
1507 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>version</code>
1508 </td><td valign="top" width="20%">
1509 NTP software version and build time
1510
1511 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>processor</code>
1512 </td><td valign="top" width="20%">
1513 hardware platform and version
1514
1515 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>system</code>
1516 </td><td valign="top" width="20%">
1517 operating system and version
1518
1519 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>leap</code>
1520 </td><td valign="top" width="20%">
1521 leap warning indicator (0-3)
1522
1523 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>stratum</code>
1524 </td><td valign="top" width="20%">
1525 stratum (1-15)
1526
1527 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>precision</code>
1528 </td><td valign="top" width="20%">
1529 precision (log(2) s)
1530
1531 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rootdelay</code>
1532 </td><td valign="top" width="20%">
1533 total roundtrip delay to the primary reference clock
1534
1535 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rootdisp</code>
1536 </td><td valign="top" width="20%">
1537 total dispersion to the primary reference clock
1538
1539 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>peer</code>
1540 </td><td valign="top" width="20%">
1541 system peer association ID
1542
1543 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>tc</code>
1544 time constant and poll exponent (log(2) s) (3-17)
1545
1546 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>mintc</code>
1547 minimum time constant (log(2) s) (3-10)
1548
1549 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>clock</code>
1550 </td><td valign="top" width="20%">
1551 date and time of day
1552
1553 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>refid</code>
1554 reference ID or <a href="decode.html#kiss">kiss code</a>
1555
1556 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>reftime</code>
1557 </td><td valign="top" width="20%">
1558 reference time
1559
1560 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>offset</code>
1561 </td><td valign="top" width="20%">
1562 combined offset of server relative to this host
1563
1564 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>sys_jitter</code>
1565 </td><td valign="top" width="20%">
1566 combined system jitter
1567
1568 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>frequency</code>
1569 </td><td valign="top" width="20%">
1570 frequency offset (PPM) relative to hardware clock
1571
1572 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>clk_wander</code>
1573 </td><td valign="top" width="20%">
1574 clock frequency wander (PPM)
1575
1576 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>clk_jitter</code>
1577 </td><td valign="top" width="20%">
1578 clock jitter
1579
1580 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>tai</code>
1581 </td><td valign="top" width="20%">
1582 TAI-UTC offset (s)
1583
1584 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>leapsec</code>
1585 </td><td valign="top" width="20%">
1586 NTP seconds when the next leap second is/was inserted
1587
1588 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>expire</code>
1589 </td><td valign="top" width="20%">
1590 NTP seconds when the NIST leapseconds file expires
1591
1592 <br></td></tr></table>
1593
1594 <p>The jitter and wander statistics are exponentially-weighted RMS averages.
1595 The system jitter is defined in the NTPv4 specification;
1596 the clock jitter statistic is computed by the clock discipline module.
1597
1598 <p>When the NTPv4 daemon is compiled with the OpenSSL software library,
1599 additional system variables are displayed, including some or all of the
1600 following, depending on the particular Autokey dance:
1601
1602 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1603
1604 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>host</code>
1605 </td><td valign="top" width="20%">
1606 Autokey host name for this host
1607
1608 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>ident</code>
1609 </td><td valign="top" width="20%">
1610 Autokey group name for this host
1611
1612 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>flags</code>
1613 </td><td valign="top" width="20%">
1614 host flags (see Autokey specification)
1615
1616 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>digest</code>
1617 </td><td valign="top" width="20%">
1618 OpenSSL message digest algorithm
1619
1620 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>signature</code>
1621 </td><td valign="top" width="20%">
1622 OpenSSL digest/signature scheme
1623
1624 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>update</code>
1625 </td><td valign="top" width="20%">
1626 NTP seconds at last signature update
1627
1628 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>cert</code>
1629 </td><td valign="top" width="20%">
1630 certificate subject, issuer and certificate flags
1631
1632 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>until</code>
1633 </td><td valign="top" width="20%">
1634 NTP seconds when the certificate expires
1635
1636 <br></td></tr></table>
1637
1638 <div class="node">
1639 <p><hr>
1640 <a name="Peer-Variables"></a>
1641 Next: <a rel="next" accesskey="n" href="#Clock-Variables">Clock Variables</a>,
1642 Previous: <a rel="previous" accesskey="p" href="#System-Variables">System Variables</a>,
1643 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1644
1645 </div>
1646
1647 <!-- node-name, next, previous, up -->
1648 <h3 class="section">Peer Variables</h3>
1649
1650 <p>The following peer variables appear in the <code>rv</code> billboard
1651 for each association.
1652 Not all variables are displayed in some configurations.
1653
1654 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1655
1656 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>associd</code>
1657 </td><td valign="top" width="20%">
1658 association ID
1659
1660 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>status</code>
1661 </td><td valign="top" width="20%">
1662 <a href="decode.html#peer">peer status word</a>
1663
1664 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>srcadr</code>
1665 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>srcport</code>
1666 </td><td valign="top" width="20%">
1667 source (remote) IP address and port
1668
1669 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>dstadr</code>
1670 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>dstport</code>
1671 </td><td valign="top" width="20%">
1672 destination (local) IP address and port
1673
1674 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>leap</code>
1675 </td><td valign="top" width="20%">
1676 leap indicator (0-3)
1677
1678 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>stratum</code>
1679 </td><td valign="top" width="20%">
1680 stratum (0-15)
1681
1682 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>precision</code>
1683 </td><td valign="top" width="20%">
1684 precision (log(2) s)
1685
1686 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rootdelay</code>
1687 </td><td valign="top" width="20%">
1688 total roundtrip delay to the primary reference clock
1689
1690 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>rootdisp</code>
1691 </td><td valign="top" width="20%">total root dispersion to the primary reference clock
1692
1693 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>refid</code>
1694 </td><td valign="top" width="20%">
1695 reference ID or <a href="decode.html#kiss">kiss code</a>
1696
1697 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>reftime</code>
1698 </td><td valign="top" width="20%">
1699 reference time
1700
1701 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>reach</code>
1702 </td><td valign="top" width="20%">
1703 reach register (octal)
1704
1705 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>unreach</code>
1706 </td><td valign="top" width="20%">
1707 unreach counter
1708
1709 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>hmode</code>
1710 </td><td valign="top" width="20%">
1711 host mode (1-6)
1712
1713 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>pmode</code>
1714 </td><td valign="top" width="20%">
1715 peer mode (1-5)
1716
1717 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>hpoll</code>
1718 </td><td valign="top" width="20%">
1719 host poll exponent (log(2) s) (3-17)
1720 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>ppoll</code>
1721 </td><td valign="top" width="20%">
1722 peer poll exponent (log(2) s) (3-17)
1723
1724 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>headway</code>
1725 </td><td valign="top" width="20%">
1726 headway (see <a href="rate.html">Rate Management and the Kiss-o'-Death Packet</a>)
1727
1728 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>flash</code>
1729 </td><td valign="top" width="20%">
1730 <a href="decode.html#flash">flash status word</a>
1731
1732 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>offset</code>
1733 </td><td valign="top" width="20%">
1734 filter offset
1735
1736 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>delay</code>
1737 </td><td valign="top" width="20%">
1738 filter delay
1739
1740 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>dispersion</code>
1741 </td><td valign="top" width="20%">
1742 filter dispersion
1743
1744 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>jitter</code>
1745 </td><td valign="top" width="20%">
1746 filter jitter
1747
1748 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>ident</code>
1749 </td><td valign="top" width="20%">
1750 Autokey group name for this association
1751
1752 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>bias</code>
1753 </td><td valign="top" width="20%">
1754 unicast/broadcast bias
1755
1756 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>xleave</code>
1757 </td><td valign="top" width="20%">
1758 interleave delay (see <a href="xleave.html">NTP Interleaved Modes</a>)
1759
1760 <br></td></tr></table>
1761
1762 <p>The bias variable is calculated when the first broadcast packet is received
1763 after the calibration volley. It represents the offset of the broadcast
1764 subgraph relative to the unicast subgraph. The xleave variable appears
1765 only the interleaved symmetric and interleaved modes. It represents
1766 the internal queuing, buffering and transmission delays for the preceding
1767 packet.
1768
1769 <p>When the NTPv4 daemon is compiled with the OpenSSL software library,
1770 additional peer variables are displayed, including the following:
1771
1772 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1773
1774 <p><br></th></tr><tr align="left"><td valign="top" width="10%"><code>flags</code>
1775 </td><td valign="top" width="20%">
1776 peer flags (see Autokey specification)
1777
1778 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>host</code>
1779 </td><td valign="top" width="20%">
1780 Autokey server name
1781
1782 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>flags</code>
1783 </td><td valign="top" width="20%">
1784 peer flags (see Autokey specification)
1785
1786 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>signature</code>
1787 </td><td valign="top" width="20%">
1788 OpenSSL digest/signature scheme
1789
1790 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>initsequence</code>
1791 </td><td valign="top" width="20%">
1792 initial key ID
1793
1794 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>initkey</code>
1795 </td><td valign="top" width="20%">
1796 initial key index
1797
1798 <p><br></td></tr><tr align="left"><td valign="top" width="10%"><code>timestamp</code>
1799 </td><td valign="top" width="20%">
1800 Autokey signature timestamp
1801
1802 <br></td></tr></table>
1803
1804 <div class="node">
1805 <p><hr>
1806 <a name="Clock-Variables"></a>
1807 Previous: <a rel="previous" accesskey="p" href="#Peer-Variables">Peer Variables</a>,
1808 Up: <a rel="up" accesskey="u" href="#Top">Top</a>
1809
1810 </div>
1811
1812 <!-- node-name, next, previous, up -->
1813 <h3 class="section">Clock Variables</h3>
1814
1815 <p>The following clock variables appear in the <code>cv</code> billboard for each association with a reference clock. Not all variables are displayed in some configurations.
1816
1817 <p><table summary=""><tr align="left"><th valign="top" width="10%">Variable </th><th valign="top" width="20%">Description
1818 <br></th></tr><tr align="left"><td valign="top" width="10%"><code>associd</code>
1819 </td><td valign="top" width="20%">association ID
1820 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>status</code>
1821 </td><td valign="top" width="20%"><a href="decode.html#clock">clock status word</a>
1822 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>device</code>
1823 </td><td valign="top" width="20%">device description
1824 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>timecode</code>
1825 </td><td valign="top" width="20%">ASCII time code string (specific to device)
1826 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>poll</code>
1827 </td><td valign="top" width="20%">poll messages sent
1828 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>noreply</code>
1829 </td><td valign="top" width="20%">no reply
1830 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>badformat</code>
1831 </td><td valign="top" width="20%">bad format
1832 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>baddata</code>
1833 </td><td valign="top" width="20%">bad date or time
1834 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>fudgetime1</code>
1835 </td><td valign="top" width="20%">fudge time 1
1836 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>fudgetime2</code>
1837 </td><td valign="top" width="20%">fudge time 2
1838 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>stratum</code>
1839 </td><td valign="top" width="20%">driver stratum
1840 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>refid</code>
1841 </td><td valign="top" width="20%">driver reference ID
1842 <br></td></tr><tr align="left"><td valign="top" width="10%"><code>flags</code>
1843 </td><td valign="top" width="20%">driver flags
1844 <br></td></tr></table>
1845
1846 </body></html>
1847
1848