tracertコマンドの使い方|結果の見方と「*」の意味、Linuxのtracerouteとの違い

tracertコマンドの使い方

tracertコマンドは、TTLを1から1ずつ増やしたパケットを送り、宛先までに通るルーターを順番に表示するWindowsのコマンドです。既定では最大30ホップまで調べ、1ホップごとに3回の往復時間を出します。途中に出る「*」は、そのルーターから応答が返らなかった印です。

この記事でわかること

  • tracertが経路を調べる仕組み(TTLと時間超過メッセージ)
  • Windows・Linux・Cisco IOSの既定値とオプションの対応
  • ホップ番号・往復時間・アドレスの結果の読み方
  • 「*」や「要求がタイムアウトしました」を出方のパターン別に読み分ける方法
  • WindowsとLinuxで結果が変わる理由と、pathpingで損失の場所を絞る手順

一次情報: Microsoft Learn「tracert」(参照)/traceroute(8) マニュアル(参照)/Cisco「Understand the Extended Ping and Extended Traceroute Commands」(参照)※2026年9月時点

経路を読んで障害の区間を絞る作業は、運用保守の仕事の中心にあります。構築から運用保守へ移るときに何が変わるのかは、成功と失敗のパターンに分けて別の記事で整理しました。

目次

tracertコマンドとは?宛先までのルーターを順番に表示するコマンド

tracertコマンドとは、宛先までの途中にあるルーターを、近い順に1台ずつ表示するWindowsのコマンドです。LinuxやmacOS、Cisco IOSでは、同じ役割のコマンドを「traceroute」と呼びます。

pingが「届くかどうか」を見るのに対し、tracertは「どこを通って、どこで止まるか」を見ます。pingで届かないとわかったあと、止まっている区間を探すときに使うのが基本の流れです。

TTLを1つずつ増やして、途中のルーターに返事をさせる

仕組みはTTLの性質を利用しています。ルーターはパケットを転送するたびにTTLを1減らし、0になったら捨てて、送り手に「時間超過」のメッセージを返します。ICMPの仕様(RFC 792)では、タイプ11・コード0が「転送中にTTLを超過した」という意味です。

tracertはこれを逆手に取ります。TTL=1で送れば1台目のルーターが、TTL=2で送れば2台目のルーターが時間超過を返してくるので、その送り主を順に並べれば経路になります。宛先に着いたら、宛先はエコー応答を返し、そこで終わりです。

  1. TTL=1で送る。1台目のルーターがTTLを0にして捨て、時間超過を返す
  2. TTL=2で送る。2台目のルーターが同じように時間超過を返す
  3. TTLを1ずつ増やす。返してきたルーターのアドレスを順番に表示する
  4. 宛先に届いたら終わる。宛先がエコー応答を返すか、最大ホップ数に達したところで止まる

表示されるアドレスは、各ルーターのうち送り手側を向いたインターフェースのものです。Microsoftの資料にも、そのように書かれています。構成図と見比べるときは、どちら側のIPが出ているかを意識すると迷いません。

Windows・Linux・Cisco IOSの既定値

同じ役割でも、送るパケットの種類と待ち時間はOSで違います。ここが、後で説明する「結果が食い違う」原因になります。

経路を調べるコマンドの既定値(2026年9月時点の公式資料)
項目Windows tracertLinux tracerouteCisco IOS traceroute
送るパケットICMPエコー要求UDP(宛先ポート33434から)UDP(宛先ポート33434から)
最大ホップ数303030
1ホップの試行回数333
応答の待ち時間4,000ミリ秒5秒3秒

出典は、WindowsがMicrosoft Learn「tracert」、Linuxがtraceroute(8)のマニュアル、Cisco IOSがシスコの拡張tracerouteの解説です。WindowsはICMP、LinuxとCisco IOSはUDPで調べるという違いは、先に押さえておいてください。

経路を調べるコマンドの既定値

Windows tracert
送るもの
ICMPエコー要求
最大ホップ
30
試行回数
1ホップ3回(固定)
待ち時間
4,000ミリ秒
Linux traceroute
送るもの
UDP(33434番から)
最大ホップ
30(-m)
試行回数
3(-q)
待ち時間
5秒(-w)
Cisco IOS traceroute
送るもの
UDP(33434番から)
最大ホップ
30
試行回数
3
待ち時間
3秒

図:WindowsはICMP、LinuxとCisco IOSはUDPで調べる。結果が食い違う原因の多くはここ

tracertコマンドの書き方とオプション

基本は「tracert 宛先」だけです。宛先はIPアドレスでもホスト名でも指定できます。

tracert 192.0.2.10
tracert /d www.example.com

実務でまず付けたいのが「/d」です。途中のルーターのIPを名前に変換しないので、表示がぐっと速くなります。逆引きの応答を待つぶん、名前を引く設定のままだと1行ごとに待たされるからです。

目的別オプション対応表(Windows/Linux)
やりたいことWindows tracertLinux traceroute
名前を引かずに速く出す/d-n
最大ホップ数を変える/h 15-m 15
待ち時間を変える/w 1000(ミリ秒)-w 2(秒)
1ホップの試行回数を変える変更なし(3回固定)-q 1
途中のホップから始める指定なし-f 5
ICMPで調べる既定がICMP-I
TCPで調べる指定なし-T(既定は80番)
IPv4/IPv6を指定/4//6-4/-6

LinuxのtracerouteはTCPでも調べられます。マニュアルでの位置づけは、ファイアウォールを越えるための方法です。Webサーバーまでの経路を見たいなら、-Tで80番や443番を宛先にすると最後まで届きやすくなります。環境によっては管理者権限(sudo)が要るので注意してください。

Cisco IOSの拡張traceroute

Cisco IOSでも「traceroute 宛先」の形はそのままです。特権EXECモードで引数を付けずに打つと、項目を対話形式で聞かれる拡張tracerouteになります。

Cisco IOS 拡張tracerouteの主な項目と既定値
項目既定値変える場面
Source address指定なしLAN側のIPから出して、戻り経路も確かめる
Probe count3時間を短くしたいときに減らす
Minimum Time to Live1手前の区間を飛ばしたいとき
Maximum Time to Live30経路が短いとわかっているとき
Port Number33434フィルターの影響を切り分けるとき
Timeout in seconds3遠い拠点で待ち時間を延ばす

tracertの結果の見方|ホップ番号・時間・アドレス

結果は1行が1ホップです。左から、ホップ番号、3回分の往復時間、応答したルーターのアドレスと並びます。下はWindowsの出力例で、アドレスは説明用の値にしています。

www.example.com [203.0.113.80] へのルートをトレースしています
経由するホップ数は最大 30 です:

  1    <1 ms    <1 ms    <1 ms  192.168.10.1
  2     3 ms     2 ms     3 ms  198.51.100.1
  3     8 ms     7 ms     9 ms  198.51.100.33
  4    45 ms    12 ms    11 ms  198.51.100.65
  5     *        *        *     要求がタイムアウトしました。
  6    14 ms    13 ms    15 ms  203.0.113.1
  7    15 ms    14 ms    14 ms  203.0.113.80

トレースを完了しました。
各列の意味と見るポイント
列意味見るポイント
左端の数字ホップ番号(何台目か)経路の長さ。いつもより増えたら迂回を疑う
3つの「ms」そのルーターまでの往復時間を3回測った値3回とも高いか、1回だけ跳ねたか
右端応答したルーターのIPや名前自社・プロバイダー・相手先のどこか
*待ち時間内に応答が無かった途中だけか、最後まで続くかで意味が変わる

時間の数字は「その先の区間」と比べて読む

往復時間は、そのホップのルーターまで行って戻る時間です。例の4ホップ目は45msと1回だけ跳ねていますが、5ホップ目以降は13〜15ms台に戻っています。後ろのホップが速いなら、途中の1回の跳ねは転送の遅れとは限らないという読み方です。

ルーターは、自分宛てに返す応答(時間超過など)の作成を、通過するパケットの転送より後回しにすることがあります。そのため、途中のホップだけ時間が大きく見えることは珍しくありません。遅延の起点と判断してよいのは、ある地点から後ろのホップが揃って遅くなったときです。

表示されるのは「行き」の経路だけ

tracertが表示するのは、自分から宛先へ向かう行きの経路です。一方で往復時間には、ルーターから自分へ戻る帰りの経路も含まれます。行きと帰りで別の回線を通る構成では、表に出ない帰りの区間が遅延の原因になっていることもあります。

「*」と「要求がタイムアウトしました」の読み方

「*」は、待ち時間内に応答が来なかったことを表す記号です。Microsoftの資料によると、時間超過メッセージを返さないルーターがあり、その行には「*」が並びます。「*」が出た場所より、「*」の後ろに行が続くかどうかを先に見てください。

「*」の出方のパターン別の読み方
出方考えられること次の一手
途中の1〜2行だけ「*」、その後は続くそのルーターが応答を返さない設定。通信は通っている基本は問題なし
ある行から最後まで「*」が30ホップまで続くその先で止まっている、または宛先側でICMPを遮断している手前の最後に返ったルーターを起点に調べる
最後の宛先の行だけ「*」宛先がエコー要求に応答しないサービスのポートに接続できるか確かめる
同じ2つのIPが交互に出続けるルーティングループ両ルーターの経路表を確認する
ある行から後ろの時間が揃って大きいその区間が遅延の起点pathpingで損失の有無も見る

「*」は出た場所より、後ろに行が続くかで読む

  • tracertに「*」が出た
    • 途中だけ「*」で後ろが続くそのルーターが応答を返さない設定。通信は先へ進んでいる
    • ある行から最後まで「*」その先で止まっているか、宛先側でICMPを遮断。最後に返ったルーターを起点に調べる
    • 宛先の行だけ「*」宛先がエコー要求に応答しない。サービスのポートに接続できるかを確かめる
    • 同じ2つのIPが交互に出るルーティングループ。両ルーターの経路表を確認する

図:「*」の出方で、問題なし・止まっている・ループ・遅延の起点に分ける

LinuxとCisco IOSで出る記号

Linuxのtracerouteは、「*」に加えて、到達不能の理由を記号で添えることがあります。マニュアルに載っている主なものは次のとおりです。

Linux traceroute とCisco IOS tracerouteの主な記号
記号Linux tracerouteCisco IOS traceroute
*待ち時間内に応答なしタイムアウト
!H/Hホスト到達不能ホスト到達不能
!N/Nネットワーク到達不能ネットワーク到達不能
!P/Pプロトコル到達不能プロトコル到達不能
!X/A管理上の理由で禁止管理上の理由で禁止(アクセスリストなど)
U─ポート到達不能

Cisco IOSで「A」が出たら、途中のアクセスリストで止められている可能性が高い合図です。記号が出たホップのルーターが、どのフィルターを持っているかを確かめに行きます。

WindowsとLinuxで結果が違う理由

同じ宛先なのに、Windowsのtracertは最後まで届き、Linuxのtracerouteは途中から「*」が並ぶ。これは現場でよく出会う食い違いです。

理由は、送っているパケットの種類が違うからです。WindowsはICMPのエコー要求、LinuxとCisco IOSはUDPの33434番以降を使います。ファイアウォールがICMPだけを通しUDPの高い番号を止めていれば、Linux側だけが途中で止まって見えます。

食い違ったときの確かめ方

  • Linuxで -I を付ける。Windowsのtracertと同じICMPで送り直し、結果が揃うか見る
  • Linuxで -T を付ける。TCPの80番や443番で送り、Webサーバーまで届くかを見る
  • 送り元をそろえる。比べる2台が同じネットワークにいるか確かめる。出口が違えば経路も違う

どの方法で最後まで届いたかは、そのままファイアウォールの設定を知る手がかりになります。ICMPは通るのにUDPは通らない、TCPの443だけ通る、といった具合です。

tracertで決め切れないときはpathpingで損失の場所を見る

tracertは各ホップに3回しか送らないので、ときどき落ちる程度の障害は見逃します。Windowsには、tracertで経路を調べたあと各ホップに繰り返しpingを打つ「pathping」が用意されています。

pathping /n 203.0.113.80

Microsoft Learnによると、pathpingは既定で各ルーターに100回ずつエコー要求を送り、送る間隔は250ミリ秒です。統計を取るあいだ、Microsoftの説明では約90秒(ホップ数で変わる)待つことになります。

pathpingの結果で見る列
列意味読み方
Source to Here送り手からそのホップまでの損失率宛先まで同じ割合が続くなら、その地点から先で落ちている
This Node/Link(ルーターの行)そのルーター自身が応答を落とした率ルーターの負荷。通過する通信には影響しないこともある
This Node/Link(縦棒の行)ルーター間の回線で落ちた率ここに損失があれば、その区間の混雑や回線品質を疑う

Microsoftの出力例でも、1台目と2台目のルーターの間の回線で13%が落ちている、という読み方が示されていました。回線の行の損失が、宛先まで引き継がれているかを見れば、どの区間を調べればよいかが決まります。Linuxなら、mtrというツールが同じ役割です。

経路の障害を絞り込む順番

  • ときどき途切れる障害ほど、1回のtracertでは見逃します。
  • 1pingで届くかを見る届かない・ときどき落ちる、を確かめる
  • 2tracert /d で経路と止まる位置を見る「*」の出方と、後ろが揃って遅くなる地点を探す
  • 3pathpingで区間ごとの損失を見る各ホップに100回。回線の行の損失が宛先まで続くかを読む
  • 4その区間の管理者に当たる自社・プロバイダー・相手先のどこかを右端のアドレスで判断する

Linuxでは traceroute -I/-T と mtr が同じ役割を果たします。

図:pingで届くかを見て、tracertで区間を、pathpingで損失の場所を絞る

よくある質問

tracertで「要求がタイムアウトしました」が出たら異常ですか?

途中の行だけに出て、その後ろのホップが表示されているなら、多くはそのルーターが応答を返さない設定になっているだけです。通信自体は先へ進んでいます。最後まで「*」が続く場合だけ、止まっている可能性を考えます。

tracertが遅くてなかなか終わらないのはなぜですか?

途中のルーターのIPを名前に変換しようとして、そのたびに待っているのが主な理由です。「/d」を付けると名前を引かずに済み、表示が速くなります。応答しないホップが多い経路では、「/w」で待ち時間を短くするのも効果があります。

tracertとtracerouteは同じものですか?

目的は同じですが、送るパケットが違います。WindowsのtracertはICMPのエコー要求、LinuxとCisco IOSのtracerouteは既定でUDPを使います。そのため、同じ宛先でも途中で止まる位置が変わることは珍しくありません。

途中のホップだけ往復時間が長いのは遅延の原因ですか?

後ろのホップの時間が小さいなら、原因とは限りません。ルーターは自分宛ての応答の作成を後回しにすることがあり、そのホップだけ時間が大きく見えることがあります。ある地点から後ろが揃って遅くなっているかで判断してください。

ときどき通信が途切れる障害はtracertで見つけられますか?

tracertは各ホップに3回しか送らないので、ときどき起きる損失は見逃しやすくなります。Windowsならpathpingで各ホップに100回ずつ送り、どの区間で落ちているかを数字で確かめる方が確実です。

まとめ

  • tracertは、TTLを1ずつ増やして途中のルーターに時間超過を返させ、経路を順に表示する
  • WindowsはICMP、LinuxとCisco IOSはUDPで調べる。結果が食い違う原因の多くはここ
  • 速く見たいときは /d(Linuxは -n)を付ける
  • 「*」は出た場所より、その後ろに行が続くかどうかで読む
  • ときどき落ちる障害は、pathpingで回線の行の損失を見て区間を絞る

経路を1台ずつ追えるようになると、障害連絡を受けたときに「どの会社の、どの区間に問い合わせるか」を自分で決められます。構築と運用のどちらに進んでも、長く使う基本の道具です。

クラウド移行が進んでも、経路と障害の区間を読める力はネットワークの仕事の土台に残ります。AI・クラウド時代に伸びる業務と縮む業務を、別の記事で分けて整理しました。

ネットワークエンジニアの将来性を見る


免責事項

※本記事はMicrosoft・シスコシステムズの公式ドキュメント、Linuxのマニュアル、RFCなどの公開情報をもとに整理したものです。コマンドの表示や既定値は、OSのバージョンや機器の設定によって変わる場合があります。業務で使う機器では、所属先の手順とベンダーの最新資料をあわせてご確認ください。


よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Tanabeです。新卒でSIerに入り、ネットワークの設計から構築、運用保守、クラウド移行まで10年やってきました。その間に転職を3回、CCNPも取りました。

正直に言うと、資格を取っても年収はすぐには上がりませんでした。1回目の転職は失敗、2回目でようやく150万円上がり、3回目で今の事業会社に落ち着いた。動いてみて分かったのは、資格の有無より「現場で何を任されてきたか」で評価が決まる、ということです。

エージェントの言葉を鵜呑みにして、危うく後悔しかけた経験もあります。だからこそ、自分がやらかした失敗をそのまま書いて、同じ回り道をしなくて済むように残しています。転職を考え始めた人が、条件で損をしないための材料にしてもらえたら嬉しいです。

目次