【Cisco】Tracerouteコマンドとは?何に使えるの?
新年度を迎え、早くも桜が散りゆく時期となってしまいました。キムキムです。
暑いのか寒いのか、雨も降ったり止んだりと体調を崩しやすい季節ですので
お体にはお気をつけてお過ごしください。
さて、今日はTracerouteコマンドに触れていきます!
Cisco装置に限らず、Windowsでも似たような[tracert]コマンドというものも存在します。
一体何モノなのか、結果から何を知れるのかを一緒に見ていきましょう!
Tracerouteとは
ズバり、経路を確認するためのコマンドです。
これに尽きます。
まず、渋谷駅から松戸駅へ電車で向かう時どのように向かうでしょうか?
行き方は様々ですが、一例として以下の経路を通るとします。
渋谷駅ー表参道駅ー松戸駅
どうやら、銀座線で表参道駅まで向かい、そこから千代田線に乗り換えて着くそうです。
Googleで調べたら10秒で出てくる結果ですが、ネットワークの通信は目には見えないモノです。
Pingで確認してみようものなら、「松戸行けたよ!」という結果しか分かりません。
XX宛の通信がどのような経路を通り、目的地に到達するのか、それを確認するのがTracerouteというコマンドです。
また、Tracerouteは行きの通信だけではなく、戻りの通信も存在するので、コマンドが成功した時点で
行きの通信はもちろん、通った各装置から自分までの到達性も確認することが出来ます。
出力例(結果の見方)
実際にTracerouteコマンドを実行したものがこちらになります。
Router#traceroute 192.168.3.2
Type escape sequence to abort.
Tracing the route to 192.168.3.2
1 192.168.1.2 0 msec 0 msec 0 msec
2 192.168.2.2 0 msec 0 msec 0 msec
3 192.168.3.2 0 msec 0 msec 0 msec
Router#traceroute 192.168.3.2
■コマンド入力例です。「traceroute」の後に宛先のIPを入れるだけ、簡単ですね。
Type escape sequence to abort.
■コマンド処理を中断する方法が書かれています。
エスケープシーケンスというよく分からない言葉が書いていますが、「Ctrl+Shift+6」若しくは「Ctrl+C」など
装置、OSによって手段は異なりますが「間違えた!」と思ったら止める手段は覚えておきましょう。
Tracing the route to 192.168.3.2
■こちらは処理しているメッセージですね。実際に処理されているIPが表記されています。
1 192.168.1.2 0 msec 0 msec 0 msec
2 192.168.2.2 0 msec 0 msec 0 msec
3 192.168.3.2 0 msec 0 msec 0 msec
■こちらが今回の記事のキモとなっています。
1,2,3と書かれている頭の文字はホップ数(機器を移動したカウント)を表しています。
192.168.1.2や192.168.2.2等はルーティング等を行い、IPアドレスを用いたL3の通信遷移を表しています。
最後にmsecですが、表記されているIPへ到達するまでの時間をmsec表記で表してくれています。
つまり、今回「traceroute 192.168.3.2」というコマンドを実施した結果、「192.168.3.2」へ行く為に
「自分」→「192.168.1.2」→「192.168.2.2」→「192.168.3.2」という経路を通る事が確認出来ました!
今回は一本道の環境で実施したため、想定と結果がピッタリと合っていましたが
実際の環境は複雑なルーティングや経路切替などで、他の装置を経由するなどの事も有り得ます。
環境を覚えるために、通信の仕組みを知るために試してみてはいかがでしょうか!
また、蛇足ではありますが、CiscoのTracerouteは上り通信が「UDP」、下り通信は「ICMP」の様です。
アクセスリストの穴あけなどに役立てて下さい。
おわりに
今回はTracerouteという確認コマンドについて触れてみました。
実際に試してみるとなると「装置が必要じゃないの?」などハードルが高く感じられますが、自宅のPC等で
仮想環境を構築して試してみることも出来ます。
他の記事にて仮想環境の構築を「CiscoPacketTracer」というシミュレータにて実践する記事を書いているので
よかったら見ていってください。
CiscoPacketTracerを使ってみる②機器の配置と疎通
それでは!