名称
      ntpq - 標準NTP (Network Time Protocol) 照会プログラム

 構文
      ntpq [  -inp ] [  -c command ] [  host ] [  ... ]

 説明
      ntpq は、 NTP サーバに現在の状態について照会したり、その状態の変更を要
      求するために使用されます。このプログラムは対話モードで実行できます。ま
      た、コマンド行引き数を使用して制御することもできます。任意変数の読み取
      りと書き込みを行う要求は一括することが可能です。また、未フォーマット出
      力とフォーマット済みプリント出力のどちらでもオプションで指定できます。
      さらに ntpq は、サーバに複数の照会を送ることにより、共通のフォーマット
      でピアのリストを入手してプリントすることもできます。

      ntpq を実行するときに1つ以上の要求オプションをコマンド行に指定すると、
      各要求はコマンド行引き数で指定された各ホスト上で、または localhost 上
      (デフォルト) で動作しているNTPサーバに送られます。要求オプションが何も
      指定されない場合、 ntpq は対話モードで動作します。その場合、 ntpq は対
      話フォーマット・コマンドを標準入力から読み取って、それらのコマンドをコ
      マンド行で指定された最初のホスト上で動作している NTP サーバ上で実行し
      ようとします (ホストの指定を省略した場合のデフォルトは、やはり
      localhost です)。標準入力がターミナル装置の場合、 ntpq はコマンドの入
      力を求めるプロンプトを表示します。

      ntpq はNTPモード6パケットを使用してNTPサーバと通信するので、これが可能
      なネットワーク上の任意の互換サーバへの照会に使用できます。ただし、NTP
      はUDPプロトコルなので、この通信はやや信頼性に欠けており、特に長距離に
      またがるネットワーク・トポロジーを使用する場合はその可能性が高くなりま
      す。 ntpq は要求の再伝送を1回だけ試みます。そして、一定のタイムアウト
      時間内にリモート・ホストから応答がない場合は、要求を時間切れで打ち切り
      ます。

      以下でコマンド行オプションについて説明します。

      -c    これに続いて指定された command 引き数は対話フォーマット・コマン
            ドとして解釈されます。これはコマンドのリストに追加され、指定され
            たホストに送られて実行されます。複数の -c オプションを指定できま
            す。

      -i    ntpq を対話モードで動作させます。プロンプトは標準出力に書き出さ
            れ、コマンドは標準入力から読み取られます。

      -n    すべてのホスト・アドレスを正規のホスト名に変換せずに、 4つの項を
            ドットで区切った数値フォーマットで出力します。

      -p    サーバに既知のピアのリストを、それらの状態の要約とともにプリント
            します。これは peers 対話コマンドの機能と同じです。

 対話型内部コマンド

      対話フォーマット・コマンドは、1個のキーワードとそれに続く 0個から4個の
      引き数から成ります。キーワード文字列のうち、入力する必要があるのは、コ
      マンドを一意に表すのに必要な最小限の文字だけです。通常、コマンドの出力
      は標準出力に送られますが、必要に応じて個々のコマンドの出力をファイルに
      送ることもできます。それには > とファイル名をコマンド行に追加します。

      指定された対話フォーマット・コマンドはすべて ntpq プログラム自体の内部
      で実行され、NTPモード6要求がサーバに送られることはありません。これにつ
      いては後で説明します。

      ? [  command_keyword ]

      1個の ? を単独で指定すると、この ntpq プロセス実体に既知の全コマンド・
      キーワードのリストがプリントされます。1個の ? の後に1個のコマンド・
      キーワードを続けると、そのコマンドの機能と使用法に関する情報がプリント
      されます。

      timeout millseconds

      サーバ照会に対する応答のタイムアウト時間を指定します。デフォルトは約
      5000ミリ秒です。なお、 ntpq はタイムアウトの後に各照会を1回再試行する
      ので、タイムアウトの合計待ち時間は設定されたタイムアウト値の 2倍になる
      ことに注意してください。

      host hostname

      以後の照会の送り先となるホストを設定します。 hostname にはホスト名と数
      値アドレスのどちらでも指定できます。

      keyid #

      このコマンドにより、構成要求を認証するために使用するキー番号を指定でき
      ます。この値は、サーバがこの目的で使用するように設定されているキー番号
      と一致していなければなりません。

      passwd

      このコマンドは、パスワードを入力するように求めます (これはエコーされま
      せん)。このパスワードは、構成要求を認証するために使用されることになり
      ます。これらの要求に成功するのは、この目的でNTPサーバが使用するように
      設定されているキーとこのパスワードが一致した場合だけです。

      hostnames yes|no

      yes を指定すると、情報の表示にホスト名が使用されます。 no を指定する
      と、ホスト名ではなく数値アドレスがプリントされます。デフォルトは yes
      ですが、コマンド行の -n スイッチを使用してデフォルトを変更することもで
      きます。

      raw

      照会コマンドからの全出力を、リモート・サーバから受信したままの形でプリ
      ントします。データに対する唯一のフォーマット変換 (解釈) は、非ASCII
      データをプリント可能な (ただし読解可能とは限らない) 形式に変換すること
      です。

      cooked

      照会コマンドからの出力を読解可能な形式に変換します (  cooked 出力に変
      換します)。すなわち、サーバが認識する変数の値が、人間が使用できるよう
      なフォーマットに変換されます。

      ntpversion 1|2|3

      ntpq がパケット内で宣言するNTPバージョン番号を設定します。デフォルトは
      3 です。なお、モード6制御メッセージはNTPバージョン1には存在しないこと
      に注意してください (また、モードも存在しません)。バージョン1を必要とす
      るサーバはもう残っていないと思われます。

      version

      ntpq のバージョンを表示します。

      keytype m|d

      認証タイプを md5 [  m ] または des [  d ] に設定します。

      authenticate yes|no

      通常、 ntpq は書き込み要求以外は要求の認証を行いません。コマンド
      authenticate yes を指定すると、 ntpq はすべての要求に付随して認証情報
      を送るようになります。

      debug more|less|no

      内部的な照会プログラムのデバッグ機能をオン/オフ切り換えします。

      quit

      ntpq を終了します。

 制御メッセージ・コマンド
      NTPサーバから既知の各ピアには、16ビット整数のアソシエーション識別子 (
      association identifier ) が割り当てられています。ピア変数を伝達する
      NTP制御メッセージには、その値がどのピアに対応するのかを明示するため
      に、ピアのアソシエーションIDを含めなければなりません。0というアソシ
      エーションIDは特殊な値で、変数がシステム変数であることを示します。これ
      は、名前が別の名称空間から取り出されている変数です。

      制御メッセージ・コマンドを実行すると、1つ以上のNTPモード6 メッセージが
      サーバに送信され、データが戻されて一定のフォーマットでプリントされま
      す。現在実現されているコマンドの大半は、単一のメッセージを送信して単一
      の応答を受け取ります。ただし、現時点では、 peers コマンド (あらかじめ
      決まった一連のメッセージを送信して必要なデータを受け取るコマンド) と、
      mreadlist および mreadvar コマンド (複数のアソシエーションに同じ要求
      メッセージを送信するコマンド) がその例外です。

      associations

      照会したサーバのスペック内のピアについて、アソシエーション識別子とピア
      ・ステータスのリストを取得してプリントします。このリストは複数カラムの
      形式でプリントされます。第1のカラムは、アソシエーションを1から番号付け
      したインデックスで、内部的に使用されます。第2のカラムは、サーバが戻し
      た実際のアソシエーション識別子です。第3カラムは、ピアのステータス・
      ワードです。これの後には、ステータス・ワードからデコードされたデータを
      示すいくつかのカラムが続きます。なお、 associations コマンドによって戻
      されるデータは ntpq の中で内部的にキャッシュされることに注意してくださ
      い。インデックスは、人間が入力しにくいアソシエーション識別子を使用する
      サーバを扱うときに使用できます。すなわち、これ以後、アソシエーション識
      別子を引き数として必要とする任意のコマンドで、 &index という形式を使用
      できるようになります。

      lassocations

      サーバが状態を保持しているすべてのアソシエーションについて、そのアソシ
      エーション識別子とピア・ステータスのリストを取得してプリントします。こ
      のコマンドと associations コマンドの違いは、単にこのコマンドはスペック
      外のクライアントのアソシエーション (すなわちあいまい) の状態を保持する
      サーバを対象としているという点だけです。そのようなアソシエーションは、
      通常、 associations コマンドの使用時には表示から除外されますが、
      lassociations の出力には含まれます。

      passociations

      スペック内のピアに関するアソシエーション・データを内部的にキャッシュさ
      れたアソシエーション・リストから取り出してプリントします。このコマンド
      は、新しい照会を行わずに内部的に保存されているデータを表示しますが、そ
      の他の点では associations と動作は同じです。

      lpassociations

      スペック外のクライアントのアソシエーションも含む全アソシエーションに関
      するデータを、内部的にキャッシュされたアソシエーション・リストから取り
      出してプリントします。このコマンドが passociations と異なるのはあいま
      いな状態を扱うときだけです。

      pstatus assocID

      指定されたアソシエーションについて、ステータス読み取り要求をサーバに送
      信します。そして、戻されたステータス値、名前、およびピア変数の値をプリ
      ントします。

      readvar [  assocID ] [  [,...] ]

      変数読み取り要求を送信することにより、指定された変数の値を戻すように
      サーバに要求します。アソシエーションIDを省略した場合、または 0 の場合
      は、変数はシステム変数となります。それ以外の場合は、ピア変数となり、戻
      される値は対応するピアの値になります。変数リストを省略するとデータなし
      の要求が送信され、サーバからはデフォルトの表示が戻されます。

      rv [  assocID ] [  [,...] ]

      入力しやすい短縮形の readvar コマンドです。

      writevar assocID =[,...]

      readvar 要求と同様ですが、指定された変数を読み取るのではなく書き込みま
      す。

      readlist [  assocID ]

      内部的な変数リスト内の変数の値を戻すようにサーバに要求します。アソシ
      エーションIDを省略した場合、または0の場合は、変数はシステム変数である
      と見なされます。それ以外の場合は、ピア変数として扱われます。内部の変数
      リストが空の場合は、データなしで要求が送信され、リモート・サーバからは
      デフォルトの表示が戻されます。

      rl [  assocID ]

      入力しやすい短縮形の readlist コマンドです。

      mreadvar assocID assocID [  [,...] ]

      readvar コマンドと同様ですが、照会が一定範囲の複数の (ゼロでない) アソ
      シエーションIDのそれぞれについて実行される点が異なります。この範囲は直
      前の associations コマンドによってキャッシュされたアソシエーション・リ
      ストから決定されます。

      mrv assocID assocID [  [,...] ]

      入力しやすい短縮形の mreadvar コマンドです。

      mreadlist assocID assocID

      readlist コマンドと同様ですが、照会が一定範囲の複数の (ゼロでない) ア
      ソシエーションIDのそれぞれについて実行される点が異なります。この範囲は
      直前の associations コマンドによってキャッシュされたアソシエーション・
      リストから決定されます。

      mrl assocID assocID

      入力しやすい短縮形の mreadlist コマンドです。

      clocklist [  assocID ]

      サーバのクロック変数を送るように要求します。この要求に対しては、ラジオ
      ・クロックなどの外部同期機構を備えたサーバから有効な応答が戻されます。
      アソシエーション識別子を省略した場合、または 0 の場合、要求は system
      clock の変数に関する要求になり、通常は、クロックを備えたすべてのサーバ
      から有効な応答が戻されます。もし、サーバがクロックを疑似ピアとして扱っ
      ており、そのためにサーバに複数のクロックが同時に接続されている可能性が
      ある場合は、該当するピアのアソシエーションIDを指定することにより、その
      クロックの変数が表示されます。
:

      clockvar [  assocID ] [  [,...] ]

      サーバのクロック変数のリストを送るように要求します。この要求に対して
      は、ラジオ・クロックなどの外部同期機構を備えたサーバから有効な応答が戻
      されます。アソシエーション識別子を省略した場合、または 0 の場合、要求
      は system clock の変数に関する要求になり、通常は、クロックを備えたすべ
      てのサーバから有効な応答が戻されます。もし、サーバがクロックを疑似ピア
      として扱っており、そのためにサーバに複数のクロックが同時に接続されてい
      る可能性がある場合は、該当するピアのアソシエーションIDを指定することに
      より、そのクロックの変数が表示されます。変数リストの指定を省略すると、
      サーバからはデフォルトの変数の表示が戻されます。

      cv [  assocID ] [  [,...] ]

      入力しやすい短縮形の clockvar コマンドです。

      peers

      サーバのスペック内のピアのリストが、各ピアの状態の要約とともに戻されま
      す。要約情報には、リモート・ピアのアドレス、参照ID
       (参照IDが不明の場合は0.0.0.0)、リモート・ピアのストラータム、ポーリン
      グ間隔 (秒単位)、および到達可能性レジスタ (8進数) が含まれるほか、ピア
      の現在の推定遅延、偏差、および分散が全てミリ秒単位で示されます。さらに、
      左端の文字はクロック選択アルゴリズムにおけるこのピアの状態を表します。
      文字が隣に表示されるピアは、クロック選択アルゴリズムの最終段階に含まれ
      ていたピアだけです。 . は、このピアがクロック誤り検査で不合格になった
      ことを示し、 + は、ピアがこの検査に合格したことを示します。 * は、現在
      サーバによる同期の対象となっているピアであることを表します。なお、
      peers コマンドは、戻された応答の中の値を解析する能力に依存しているの
      で、データ・フォーマットの制御能力が低いサーバでは良好に動作しないこと
      があります。

      ホスト・フィールドの内容は4つの形式のいずれかです。すなわち、ホスト
      名、IPアドレス、基準クロックのインプリメンテーション名とそのパラメー
      タ、または REFCLK(  , ) のいずれかで
      す。 hostnames no が指定されている場合は、IPアドレスだけが表示されま
      す。

      lpeers

      peers と同様に動作しますが、異なるのは、このコマンドの場合にはサーバが
      状態を保持している全アソシエーションについての要約がプリントされること
      です。そのため、このコマンドを実行すると、はるかに長大なピア・リストが
      あいまいな状態のサーバから生成されることがあります。

      opeers

      古い形式の peers コマンドで、参照IDの代わりにローカル・インタフェース
      ・アドレスが使用されます。

      lopeers

      古い形式の lpeers コマンドで、参照IDの代わりにローカル・インタフェース
      ・アドレスが使用されます。

 使用例
# ntpq -p
     remote           refid      st t when poll reach   delay   offset    disp
==============================================================================
 *yyyy.yyy.kyutec     .GPS.       1 u  415 1024  377     3.81    0.867    0.70
 +zzzz.zzz.kyutec     .GPS.       1 u  878 1024  377    22.22   -1.340    3.01
 +clock.tl.fukuok     .GPS.       1 u  886 1024  377    19.39    1.348    0.82
==============================================================================
使用例の記号説明
 左端の記号
  "*" :現在,参照同期中のサーバー
  "+" :現在,クロック誤り検査に合格したサーバー
  "#" :現在,参照同期中ですが,距離が遠いサーバー
  " " :現在,参照していないサーバー
  "x" :現在,クロック誤り検査で不合格になったサーバー
  "." :現在,参照リストからはずされたサーバー

 remote :サーバー・アドレス
 refid  :参照ID(サーバーが参照しているマシンID.不明の場合は0.0.0.0)
 st     :サーバーのストラータム(一次サーバーは1,二次サーバーは2)
 t      :ピアの型 (l:local, u:unicast, m:multicast, b:broadcast)
 when   :いつ最後のバケットを受信したか(秒単位).(何秒前に受信したか)
 poll   :ポーリングの時間間隔(秒単位).
 reach  :到達可能性に関するレジスタ・データ(8進数:到達実績が多いと大)
 delay  :推定遅延(ミリ秒単位).
 offset :偏差補償(ミリ秒単位).
 disp   :分散(ミリ秒単位).

 ファイル
      /etc/ntp.keys                 認証に使用される暗号化キーが保存されます。

 著者
      ntpq はトロント大学のDennis Fergusonによって開発されました。
      また,デラウェア大学のDavid L. Millsによって修正されました。

 参照
      ntpdate(1M), xntpd(1M),
      DARPA Internet Request For Comments RFC1035 .