メインコンテンツまでスキップ

9. Traceroute Considerations (Traceroute の考慮事項)

9. Traceroute Considerations (Traceroute の考慮事項)

LISP サイト内の送信元ホストが別の LISP サイト内の宛先ホストに traceroute を開始する場合, 完全なパスを確認できることが非常に望ましいです。パケットは ITR から ETR までカプセル化されているため, トンネルのスパンは単一のホップと見なすことができます。ただし, LISP traceroute は完全なパスを提供するため, ユーザーは送信元 LISP ホストから宛先 LISP ホストへのパスの 3 つの異なるセグメントを確認できます:

Segment 1 (送信元 LISP サイト内の EID ベース):

source host ---> first hop ... next hop ---> ITR

Segment 2 (コアネットワーク内の RLOC ベース):

ITR ---> next hop ... next hop ---> ETR

Segment 3 (宛先 LISP サイト内の EID ベース):

ETR ---> next hop ... last hop ---> destination host

パスのセグメント 1 の場合, ICMP Time Exceeded メッセージは通常の方法で返されます。今日と同じです。ITR はカプセル化前に TTL をデクリメントし, 0 かどうかをテストします。したがって, ITR のホップ数は, traceroute ソースによって EID アドレス (サイトに面したインターフェイスアドレス) を持つものとして表示されます。

パスのセグメント 2 の場合, ICMP Time Exceeded メッセージは ITR に返されます。TTL が 0 にデクリメントされるのは外部ヘッダで行われるため, ICMP メッセージの宛先は ITR RLOC アドレスであり, カプセル化された traceroute パケットの送信元 RLOC アドレスです。ITR は ICMP ペイロード内部を調べて traceroute ソースを確認し, ICMP メッセージを traceroute クライアントのアドレスに返すことができ, また ICMP メッセージ内にコアルータの IP アドレスを保持します。これにより, traceroute クライアントは traceroute 出力にコアルータアドレス (RLOC アドレス) を表示できます。ETR は RLOC アドレスを返し, TTL が 0 にデクリメントされたことに応答します。以前のコアルータと同じです。

セグメント 3 の場合, ETR の下流の次ホップルータは, カプセル化され, コアに送信され, ETR によってカプセル化解除され, 転送されたパケットの TTL をデクリメントします。最終宛先ではないためです。TTL が 0 にデクリメントされた場合, traceroute 宛先へのパス上の任意のルータ (次ホップルータまたは宛先を含む) は, traceroute クライアントの送信元 EID に ICMP Time Exceeded メッセージを送信します。ICMP メッセージはローカル ITR によってカプセル化され, traceroute を開始した送信元サイトの ETR に送り返され, パケットはそこでホストに配信されます。