$ cd ~/tool

$ traceroute(経路表示)

当サーバーから指定ホストまでのネットワーク経路(各ホップと応答時間)を表示します。

最大30ホップまで探索します。完了まで十数秒かかることがあり、応答なしが3回続くと自動で打ち切ります。高速化のためホスト名の逆引きは省略(IP表示)しています。

how to read — 結果の読み方

1行が1ホップ(経由するルーター)です。番号・IPアドレス・応答時間(ms)の順に、当サーバーから対象まで通った道のりを上から順に表示します。

各ホップの応答時間
そのルーターまでの往復時間。急に跳ね上がる箇所があれば、そこで長距離区間(海外経由など)や混雑が起きている目安になります。
*(アスタリスク)
そのホップから応答が返らなかった印。多くは障害ではありません。ルーターがTTL超過の応答(ICMP)を低優先・抑制しているだけで、最終行(目的地)が応答していれば経路はつながっています
「応答なしが3回続いたため打ち切り」
目的地の手前で連続して無応答だった場合の表示。経路の途中以降がICMPを遮断しているか、本当に到達できない状態です。

how it works — tracerouteのしくみ

tracerouteは、パケットの寿命(TTL)を 1・2・3… と増やしながら送ります。TTLが0になったルーターは「TTL超過」を送り返すので、1ホップずつ経由ルーターが分かるという仕組みです。

troubleshooting — よくある疑問

途中から「*」ばかりになる。障害ですか?
多くは障害ではありません。そのルーター以降がICMPの応答を抑制しているだけのことが多く、Webやサービスには問題なく繋がります。実際に繋がるかは pingポート開放チェック で確認してください。
最後まで「*」で目的地に届かない
目的地が traceroute(ICMP/UDP)を遮断している、または経路上で本当に到達できない状態です。サービス自体が動いているかは、ポートへ実際に接続する pingport で切り分けられます。
同じ宛先なのに経路が毎回少し変わる
正常です。経路はロードバランスや動的な経路変更で変わることがあります。複数経路に分散している場合、ホップが回ごとに入れ替わって見えることもあります。
ホスト名(逆引き)が表示されない
応答を速くするため、逆引き(名前解決)を省略してIPで表示しています。IPの逆引きホスト名は DNS・逆引き(PTR)確認 で調べられます。

cli — 手元のコマンドでも確認できます

PS> tracert example.com # Windows(ICMP)
$ traceroute example.com # mac / Linux
$ traceroute -T -p 443 example.com # TCPで経路を辿る(FW越えしやすい)

手元から実行すると「自宅から対象まで」、当ツールだと「当サーバーから対象まで」の経路が分かります。経路のどこから自宅側/サーバー側かの切り分けに使えます。

関連ツール