「インターネットの調子が悪いけど、どこに問題があるのか分からない…」
そんな経験はありませんか? Webサイトがなかなか表示されなかったり、オンラインゲームでラグが発生したりすると、イライラしてしまいますよね。そんなとき、問題の原因究明に役立つのが「tracert」コマンドです。
この記事では、ネットワークの経路を調査するための基本的なコマンド「tracert」について、その意味から使い方、結果の見方、さらにはトラブルシューティングまで、初心者にも分かりやすく徹底的に解説します。
tracertとは?
tracert(トレースルート)とは、指定したホスト(Webサーバーやゲームサーバーなど)までのネットワーク経路を調査し、その経路上にあるルーターの情報を一覧で表示するコマンドラインツールです。
簡単に言うと、目的地までの道のり(ネットワーク経路)と、各経由地点(ルーター)での応答時間(RTT)を可視化してくれるツールです。これにより、通信がどこで遅延しているのか、あるいはどこでパケットが損失しているのかを特定するのに役立ちます。
Windowsでは「tracert」、macOSやLinuxでは「traceroute」というコマンド名で同様の機能を利用できます。
なぜtracertが重要なのか?
tracertは、以下のような場面で非常に役立ちます。
- ネットワークの遅延箇所の特定: 通信が遅い場合、tracertを実行することで、どのルーターで時間がかかっているのかを把握できます。
- 通信障害の原因切り分け: 特定のWebサイトに繋がらない場合、tracertで経路を調べることで、自分のPC、自宅のルーター、プロバイダ、あるいは相手先のサーバーなど、どこに問題があるのかを推測できます。
- ネットワーク構成の確認: 複雑なネットワーク環境で、意図した通りに通信経路が設定されているかを確認できます。
tracertの使い方【OS別】
tracert(traceroute)コマンドの基本的な使い方は非常にシンプルです。コマンドプロンプト(Windows)またはターミナル(macOS/Linux)を開き、以下のように入力します。
Windowsの場合
- コマンドプロンプトを開く:
- Windowsキー + Rキーを押し、「ファイル名を指定して実行」ダイアログを開きます。
- 「cmd」と入力し、Enterキーを押します。
- tracertコマンドの実行
例えば、Googleの公開DNSサーバー(8.8.8.8)までの経路を調べる場合は、以下のように入力します。
tracert 8.8.8.8
Webサイトのドメイン名でも指定可能です。
tracert www.google.com
macOS/Linuxの場合
- ターミナルを開く:
- macOS: Launchpadから「ターミナル」を検索して開きます。
- Linux: 通常、Ctrl + Alt + Tキーで開きます(ディストリビューションにより異なります)。
- tracerouteコマンドの実行:
例えば、Googleの公開DNSサーバー(8.8.8.8)までの経路を調べる場合は、以下のように入力します。
traceroute 8.8.8.8
Webサイトのドメイン名でも指定可能です。
traceroute www.google.com
tracertの結果の見方・読み解き方
tracertを実行すると、以下のような情報が1行ずつ表示されます。
C:\Users\YourName>tracert 8.8.8.8
8.8.8.8 へのルートをトレースしています。最大ホップ数は 30 です:
1 <1 ms <1 ms <1 ms ルーターのIPアドレス [192.168.1.1]
2 2 ms 1 ms 2 ms プロバイダのゲートウェイIPアドレス [xxx.xxx.xxx.xxx]
3 * * * 要求がタイムアウトしました。
4 15 ms 14 ms 15 ms 経由ルーターのIPアドレス [yyy.yyy.yyy.yyy]
5 16 ms 15 ms 15 ms google-public-dns-a.google.com [8.8.8.8]
トレースを完了しました。
各列の意味は以下の通りです。
- 最初の列(ホップ数): 経由したルーターの順番を示します。1が最初で、数値が大きくなるほど目的地に近づきます。
- 2~4番目の列(RTT: Round Trip Time): パケットがそのルーターに到達し、応答が返ってくるまでの往復時間(ミリ秒単位)を3回計測した結果です。数値が小さいほど応答が速いことを意味します。
*
(アスタリスク): そのルーターからの応答がなかった(タイムアウトした)ことを示します。
- 5番目の列(ホスト名/IPアドレス): 経由したルーターのホスト名またはIPアドレスです。ホスト名が逆引きできない場合はIPアドレスのみが表示されます。
結果を読み解く際のポイント:
- RTTの急激な増加: 特定のホップでRTTが急に大きくなっている場合、そのルーターまたはその先の区間で遅延が発生している可能性があります。
- 連続するタイムアウト (
* * *
): 複数のホップで連続してタイムアウトが発生する場合、その先のネットワーク経路で何らかの問題(ルーターの設定ミス、ファイアウォールによるブロックなど)が発生している可能性があります。ただし、セキュリティ上の理由から意図的に応答を返さないように設定されているルーターもあるため、必ずしも障害とは限りません。 - 目的地に到達できない: 最終的な目的地(この例では8.8.8.8)に到達する前にタイムアウトが頻発する場合、通信経路の途中で問題が発生している可能性が高いです。
tracertの主なオプション (Windows版)
tracertコマンドには、より詳細な調査を行うためのオプションが用意されています。代表的なものをいくつか紹介します。
オプション | 説明 |
---|---|
-d | IPアドレスからホスト名への名前解決を行いません。表示が速くなることがあります。 |
-h <回数> | 検索する最大のホップ数を指定します。デフォルトは30です。 |
-w <ミリ秒> | 各応答のタイムアウト時間をミリ秒単位で指定します。デフォルトは4000ミリ秒(4秒)です。 |
-4 | IPv4 を強制的に使用します。 |
-6 | IPv6 を強制的に使用します。 |
例えば、ホップ数を10に制限し、タイムアウトを1000ミリ秒(1秒)に設定して 8.8.8.8
への経路を調査する場合は、以下のように入力します。
tracert -h 10 -w 1000 8.8.8.8
macOS/Linuxの traceroute コマンドにも同様のオプションがありますが、書式が異なる場合があります。詳細は man traceroute コマンドで確認してください。
tracertがうまくいかない・結果がおかしい場合の対処法
tracertを実行しても期待通りの結果が得られない場合や、エラーが表示される場合があります。主な原因と対処法を見ていきましょう。
- 「要求がタイムアウトしました。」が多発する
- ファイアウォール: PCやルーターのファイアウォールがICMPパケット(tracertが使用するパケットの一種)をブロックしている可能性があります。一時的にファイアウォールを無効にして試してみるか、ICMPを許可する設定を行ってください。
- 相手先サーバーの設定: 相手先のサーバーや経由ルーターが、セキュリティポリシーによりICMPに応答しないように設定されている場合があります。この場合は、tracertで経路のすべてを把握することはできません。
- ネットワークの混雑: 一時的なネットワークの混雑により、応答が遅れてタイムアウトになっている可能性もあります。時間をおいて再度試してみてください。
- 「宛先ホストに到達できません。」と表示される
- IPアドレスやホスト名の誤り: 入力したIPアドレスやホスト名が間違っている可能性があります。再度確認してください。
- DNSサーバーの問題: ホスト名で指定した場合、DNSサーバーが正しく名前解決できていない可能性があります。IPアドレスで直接指定してみるか、DNSサーバーの設定を確認してください。
- ネットワーク接続の問題: PCのネットワーク設定(IPアドレス、サブネットマスク、ゲートウェイなど)が正しくないか、LANケーブルが抜けているなど、物理的な接続に問題がある可能性があります。
- tracertコマンドが見つからない
- Windowsで「’tracert’ は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」と表示される場合、環境変数のPathが正しく設定されていない可能性がありますが、通常はシステムフォルダに存在するため、このエラーが出ることは稀です。コマンドプロンプトを管理者として実行してみるのも一つの手です。
tracertの限界と代替ツール
tracertは非常に便利なツールですが、万能ではありません。
- ICMPブロック: 前述の通り、ファイアウォールなどでICMPパケットがブロックされていると、正確な経路情報を取得できません。
- 非対称ルーティング: 行きと帰りのネットワーク経路が異なる場合(非対称ルーティング)、tracertで表示されるのは行きの経路のみです。
- ロードバランサー: 途中にロードバランサー(負荷分散装置)が存在する場合、毎回異なる経路を経由する可能性があり、tracertの結果が安定しないことがあります。
より高度なネットワーク診断が必要な場合は、以下のようなツールも検討してみると良いでしょう。
- mtr (My Traceroute): tracertとpingの機能を組み合わせたツールで、継続的に経路情報を監視し、パケットロスや遅延の統計情報を表示してくれます。LinuxやmacOSで利用できます。
- PingPlotter: GUIベースのネットワーク監視ツールで、tracertの結果をグラフで視覚的に表示し、問題箇所を特定しやすくします。有償版と無償版があります。
- pathping (Windows): tracertと同様に経路情報を表示するとともに、各ホップでのパケットロス率も計測してくれるコマンドです。tracertより詳細な分析が可能です。
まとめ:tracertを使いこなして快適なネットワークライフを!
「tracert」は、ネットワークの経路を調査し、通信トラブルの原因究明に役立つ強力なコマンドです。使い方はシンプルですが、結果を正しく読み解くことで、問題の切り分けや特定に大いに貢献します。
インターネットの調子が悪いと感じたら、まずは「tracert」を実行して、どこに問題が潜んでいるのかを探ってみましょう。
もし、tracertの結果を見ても原因が特定できない場合や、より専門的な対応が必要な場合は、ご利用のプロバイダやネットワーク管理者に相談することをおすすめします。