Linuxのtracerouteコマンドの仕組みを説明してください

tracerouteコマンドは、特定種類のICMPパケットを送信して、送信元ホストから宛先ホストまでのネットワーク経路を追跡します。

トレーサールートプログラムは、次のように機能します。

  1. tracerouteプログラムは、最初のICMPパケットの宛先IPアドレスが目的ホストのIPアドレスで、TTL(生存時間)値が1となるパケットを送信します。TTLはパケットがネットワーク上を通過できる最大ホップ数を示し、パケットがルーターを通過すると、そのTTL値が1減算されます。
  2. 最初のICMPパケットが最初のルータに到着すると、ルータはTTLを1減算します。TTLが0になると、ルータはパケットを破棄し、送信ホストに「TTL Expired」(TTL の有効期限切れ)のICMP エラーメッセージを送信します。
  3. tracerouteコマンドは「TTL Expired」エラーメッセージを受け取ると、そのルーターのIPアドレスを記録し、TTL値2のICMPパケットを送信します。
  4. ステップ2およびステップ3を繰り返しながら、tracerouteはTTLの値を徐々に増やし、宛先ホストに到着する。各ホップで、tracerouteはルーターのIPアドレスと送信ホストからそのルーターへの往復時間(RTT)を記録する。
  5. traceroute が目的ホストから ICMP 応答を受信すると、経路が判明したことを示します。traceroute は、各ホップの IP アドレスと往復時間、および目的ホストに到達するために必要な総時間を表示します。

トレーサールートプログラムは、TTL値を1つずつ増加させてパケットがソースホストからターゲットホストに到達するまでの経路を、各ホップのIPアドレスとラウンドトリップタイムを記録することで追跡します。

bannerAds