traceroute

リモートホストへのネットワーク経路を調べます。

traceroute [-46dFITUnreAV] [-f first_ttl] [-g gate,...]
[-i device] [-m max_ttl] [-p port] [-s src_addr]
[-q nqueries] [-N squeries] [-t tos]
[-l flow_label] [-w waittime] [-z sendwait]
[-UL] [-P proto] [--sport=port] [-M method] [-O mod_options]
[--mtu] [--back]
host [packet_len]
traceroute6 [options]

説明

tracerouteは、指定されたhostまでの、IPネットワークから取得されるパケットの経路を辿ります。 IPプロトコルのTTL(Time to Live)フィールドを用いて、 ホストへの経路に沿った各ゲートウェイから、ICMP TIME_EXCEEDED応答を引き出すことを試みます。

traceroute6は、traceroute -6と同義です。

必須となるパラメーターは、宛先ホストの名前またはIPアドレスだけです。 任意のpacket_lenは、探索するパケットの合計サイズになります。 (デフォルトは、IPv4であれば60、IPv6であれば80です。) ある状況または最小値への増加の際の指定サイズは、無視される可能性があります。

このプログラムは、小さなTTL(Tiem to Lime)を使用した探索用のパケットを送りだすことにより、 インターネット上のあるホストを求めるIPパケットの経路を辿り、 ゲートウェイから返信されるICMPの"time exceeded"(時間超過)のリッスンを試みます。 TTLを使用して1つの探索を開始し、"host"を取得した事を、または最大(デフォルトで30ホップ)に到達したことを意味する、 ICMP "port unreachable"(または、TCP reset)を取得するまで1つずつ増加します。 3つの探索パケット(デフォルト)が各TTLの設定で送信され、 各探索のTTL、ゲートウェイのアドレス、往復時間が表示された行を出力します。 このアドレスの後に、リクエスト時の付加情報が続きます。 もし探索パケットが異なるゲートウェイから応答する場合は、各応答システムのアドレスが表示されます。 もし5.0秒(デフォルト)以内に応答が無ければ、"*"(アスタリスク)が出力されます。

往復時間の後に、追加注釈が出力されることがあります。

  • !H!N!P - (ホスト、ネットワーク、またはプロトコルが到達不可)
  • !S - (経路元が失敗)(翻訳に自信なし)
  • !F - (フラグメンテーションが必要)(翻訳に自信なし)
  • !X - (通信は管理上禁止)(翻訳に自信なし)
  • !V - (ホスト優先順違反)(翻訳に自信なし)
  • !C - (事実上の優先順切断)(翻訳に自信なし)
  • !<num> - (ICMP到達不可コード<num>)(翻訳に自信なし)

探索パケットが何らかの種類の到達不可の結果になった場合、 ほとんどがtracerouteがギブアップし、終了したものでしょう。

宛先ホストにはUDPの探索パケットは処理して欲しくないため、 宛先のポートにありそうにない値が設定されます。(-pフラグを付けることで変更可能です。) ICMPやTCPのtracerouteのような問題はありません。 (TCPでは探索パケットが宛先ホストのアプリケーションによって参照されないように、ハーフオープンのテクニックを使用します。

モダンなネットワーク環境では、ファイアーウォールの普及のため、 伝統的なトレースルーティングのメソッドが常に適用されるとは限りません。 そういったファイアーウォールは、"ありそうにない"UDPポート、あるいはICMPエコーをフィルタリングします。 この問題を解決するために、幾つかの追加のトレースルーティングのメソッドが実装(TCPを含む)されました。 詳細は後述する「利用可能なメソッドの一覧」を参照してください。 そういったメソッドは、ファイアーウォールを迂回するために、 特定のプロトコルと送信元/宛先のポートを使用することを試みます。 (ネットワークセッションの許可されたタイプが開始される時に、ファイアーウォールに参照される)(翻訳に自信なし)

オプション

オプション 説明
--help ヘルプ情報を出力します。
-4
-6
明示的にIPv4またはIPv6によるトレースルーティングを行わせます。 デフォルトでは、与えられた名前を解決を試み、自動的に適切なプロトコルを選び出します。 もしホスト名の解決でIPv4とIPv6アドレスの両方が返された場合、 tracerouteはIPv4を使用します。
-I 探索にICMP ECHOを使用します。
-T
--tcp
TCP SYNを使用します。
-d
--debu
ソケット層のデバッグを有効にします。(カーネルがサポートしていれば)
-F
--dont-fragment

探索パケットをフラグメント(断片化)しないように指定します。 (IPv4のために、中間ルーターに同様にリモートでフラグメントしない事を伝えるためのDFビットも設定します。)

  • Varying the size of the probing packet by the packet_len command line parameter, you can manually obtain information about the MTU of individual network hops. The --mtu option (see below) tries to do this automatically.
-f first_ttl
--first=first_ttl
first_ttlに指定したホップ数から開始します。(1の代わりとして)
-g gate,...
--gateway=gate,...
送信するパケットが通る特定のゲートウェイを指定します。 (IPv4は最大8、IPv6は最大127)
-I
--icmp
ICMP ECHOを使用します。
-i device
--interface=device
操作に使用するネットワーク・インターフェースを指定します。
-m max_ttl
--max-hops=max_ttl
最大ホップ数を設定します。(到達される最大TTL) デフォルトは30です。
-N squeries
--sim-queries=squeries
同時に試行される問い合わせ(調査)の数を設定します。(デフォルトは16です。)
-n ドメイン名のためのIPアドレス解決(DNS逆引き)を行いません。
-p port
--port=port
使用するポートを設定します。 これは"default"メソッドのUDPポートの初期値(各探索により増加、デフォルトは33434)、 または"icmp"の初期シーケンス(同様に増加、デフォルトは1から)、 またはその他のメソッドのある一定の宛先ポートのいずれかになります。 (デフォルトは、"tcp"であれば80、"udp"であれば53等)
-t tos
--tos=tos
出て行くパケットのTOS(IPv4のサービスタイプ(type of service))、 またはTC(IPv6のトラフィッククラス(traffic class))の値を設定します。
-l flow_label
--flowlabel=flow_label
IPv6のパケット用に、flow_labelの指定に使用されます。
-w waittime
--wait=waittime
調査の応答を待つ時間を秒単位で設定します。(デフォルトは5.0) 浮動小数点数の値も指定可能です。
-q nqueries
--queries=nqueries
各ホップに対して行う探索回数を設定します。 デフォルトは3です。
-r 通常の経路(ルーティング)を迂回し、割り当てられたネットワーク上のホストに直接送信します。
-s src_addr
--source=src_addr
パケットが出て行くIPアドレス元を指定します。
-z sendwait
--sendwait=sendwait
調査時の最小インターバル時間を設定します。(デフォルトは0) もし値が10より大きければ、それはミリ秒単位とされ、 そうでなければ秒単位とされます。(浮動小数点数の値も可)
-e
--extensions
(指定されると)MPLSを含む、ICMP拡張を表示します。
-A
--as-path-lookups
ルーティング登録されているパス検索として実行し、 対応するアドレスの後に直接結果を出力します。(翻訳に自信なし)
-M name
--module=name
tracerouteのオペレーションに指定されたモジュール(組み込みまたは外部のいずれか)を使用します。 多くのメソッドはそれぞれのショートカットを持ちます。 (-I-M icmpを意味します。)
-O OPTS,...
--options=OPTS,...
tracerouteモジュールのために、モジュール固有のオプションをOPTSに指定して使用します。 幾つかのOPTSはカンマ区切りを許可します。 もしOPTSに"help"が指定されると、利用可能なオプションの情報が表示されます。
--sport=num 出て行くパケット元として、numポートを使用します。 -N 1が伴います。
-U
--udp
トレースルーティングの特定のポートにUDPを使用します。 (各調査毎に増加するポートの代わりに) デフォルトのポートは、53番です。
-UL トレースルーティングにUDPLITEを使用します。 (デフォルトのdest(?)ポートは53番です。)
-P prot
--protocol=prot
トレースルーティングにprotプロトコルの生のパケットを使用します。
--mtu トレースされているパスに沿って、MTUを調べます。 -F -N 1が伴います。
--back 復路におけるホップ数を推測し、異なる場合はそれを表示します。
-V
--version
バージョン情報を出力して終了します。
--help ヘルプを表示して終了します。
引数 説明
host traceroute対象のホストを指定します。
packetlen パケットの最大長です。(デフォルト長は、IPヘッダー + 40です。) 無視、または許容最小値を増やす事が可能です。

 Back to top

© 2010 - 2017 STUDIO KINGDOM