注目の書籍

好評発売中!

みるみるわかるネットワーク

大きなイラストや写真を用いたカラー記事でネットワークの仕組みを楽しく自然に学べます!

必聴講座ご紹介

ビッグデータ EXPO 2012春
ビッグデータ時代に備えて〜今検討すべき情報分析基盤の全貌とは

日本マイクロソフト


ビッグデータ EXPO 2012春
ICTを活用した、情報爆発時代の新たな価値創出

NEC


Cloud Days Osaka 2012
会社を強くするためのクラウド×ソーシャル活用術

セールスフォース・ドットコム

ネットワーク・エンジニア倶楽部

管理者のためのコマンド活用講座

日経NETWORK

tracert(2)――ボトルネックの探索にも使える

2010/03/18
出典:日経NETWORK 2009年5月号  pp.67-69
(記事は執筆時の情報に基づいており、現在では異なる場合があります)

パケットを何回も送って応答を確認

 前回はtracertコマンドの使い方と見方の基礎を紹介した。ここで,tracertコマンドのしくみを押さえておこう(図4)。

図4●tracertコマンドのしくみ
図4●tracertコマンドのしくみ
Windowsでtracertコマンドを実行すると,あて先のホストに向けてTTLを一つずつ増やしながらICMPエコー要求パケットを送り,時間超過メッセージを返信してきたルーターのIPアドレスを順次表示する。

 tracertコマンドを実行すると,送信元のパソコンはICMPのエコー要求パケットを送信する。このとき,tracertコマンドではパケットのヘッダー部分にある「TTL」というパラメータを使う。TTLはそのパケットが経由できるルーターの数を示す値である。ルーターを経由するたびに一つずつ減っていく。「0」になるとルーターはそれ以上パケットを中継せずに廃棄する。このときルーターは送信元に対して,「時間超過(time exceeded)メッセージ」をエラーとして返す。

 tracertコマンドでは,このTTLと時間超過メッセージをうまく使って,経路にあるルーターの情報と往復時間を調べている。図4を例に,順を追って見ていこう。

 tracertコマンドを実行すると,送信元のパソコンはTTLを「1」に設定してエコー要求パケットを送信する。TTLが1なので,最初のルーター1でTTLが一つ減らされて「0」となる。このためルーター1は次のルーター2にパケットを転送せずに廃棄し,送信元のパソコンに対して時間超過メッセージを送る。

 このメッセージの送信元アドレスから,送信元のパソコンは最初に経由するルーター1のIPアドレスがわかる。DNSサーバーで逆引きができる設定になっていれば,ルーター1のドメイン名もわかる。さらに往復にかかった時間も合わせて表示する。

 次に送信元のパソコンは,TTLを「2」に設定して,再びエコー要求パケットを送る。このパケットは,最初のルーター1を通過して,2番目のルーター2に到達する。ここでTTLが「0」になるのでルーター2はパケットを廃棄して,送信元のパソコンへ時間超過メッセージを返す。時間超過メッセージを受け取ったパソコンは,ルーター2のIPアドレスとドメイン名,往復時間を表示する。

 このように送信元のパソコンは,あて先のホストに到達するまでTTLを一つずつ増やして,エコー要求パケットを送信し続ける。エコー要求パケットがあて先のホストに到達すると,あて先のホストは時間超過メッセージではなく,エコー応答メッセージを送信する。送信元のパソコンがこのメッセージを受信すると,tracertコマンドの処理は完了する。

>>オプションを使ってみよう
次ページ以降はITpro会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)していただき、ITproの豊富なコンテンツをご覧ください。

この記事に対するfacebookコメント

nikkeibpITpro

読みましたか? 〜 未読記事をご紹介