Cisco Nexus 7000 シリーズ NX-OS MPLS コンフィギュレーション ガイド
MPLS LSP ping および traceroute による接 続の確認
MPLS LSP ping および traceroute による接続の確認
発行日;2012/05/08 | 英語版ドキュメント(2011/10/28 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 6MB) | フィードバック

目次

MPLS LSP ping および traceroute による接続の確認

MPLS LSP ping および traceroute の概要

MPLS LSP ping の動作

MPLS LSP Traceroute の動作

MPLS LSP ping および MPLS LSP traceroute を使用した MPLS ネットワーク管理

LSP ping または LSP traceroute を処理するルータから提供される情報

IP では MPLS エコー要求パケットは転送されない

MPLS LSP ping および traceroute のライセンス要件

MPLS LSP ping および traceroute の前提条件

MPLS LSP ping および traceroute に関する注意事項と制限事項

MPLS LSP ping および traceroute の設定

MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化

MPLS LSP ping と traceroute を使用した LDP IPv4 FEC の検証

DSCP を使用した、エコー応答における特定のサービス クラスの要求

MPLS エコー要求に対する応答ルータの応答方法の制御

ipv4 応答モード

router-alert 応答モード

MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避

MPLS LSP ping を使用したループの検出

MPLS LSP traceroute を使用したループの検出

LSP の切断の検出

暗黙的ヌルとタグ付けされたパケットの追跡

非タグ付きパケットの追跡

パケットを送信できない原因の特定

IPv4 LDP LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出

エコー パケットがルータから発信されるときに経由するインターフェイスの指定

パケット伝送のペーシング

エコー要求の request-dsmap を使用した中継ルータに対するダウンストリーム情報の問い合わせ

ルータに対する DSMAP の問い合わせ

中継ルータによるターゲット FEC スタックの検証の要求

LSP ping のイネーブル化による非タグ付きインターフェイスを起因とする LSP 切断の検出

MPLS LSP ping および traceroute の設定例

例:MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化

例:MPLS LSP ping と LSP traceroute を使用した FEC の検証

例:DSCP を使用した、エコー応答における特定のサービス クラスの要求

例:MPLS エコー要求に対する応答ルータの応答方法の制御

例:MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避

例:MPLS LSP ping で発生する可能性があるループ

例:MPLS LSP traceroute で発生する可能性があるループ

例:LSP の切断の検出

例:LSP ping または traceroute を使用したトラブルシューティング

例:LSP での MTU ディスカバリ

例:暗黙的ヌルとタグ付けされたパケットの追跡

例:非タグ付きパケットの追跡

例:パケットを送信できない原因の特定

例:IPv4 LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出

例:エコー パケットがルータから発信されるときに経由するインターフェイスの指定

例:パケット伝送のペーシング

例:中継ルータに対するダウンストリーム情報の問い合わせ

例:ルータに対する DSMAP の問い合わせ

例:中継ルータによるターゲット FEC スタックの検証の要求

例:LSP ping のイネーブル化による、非タグ付きインターフェイスを起因とする LSP 切断の検出

MPLS LSP ping および traceroute に関する追加情報

関連資料

標準

MIB

RFC

MPLS LSP ping および traceroute の機能履歴

MPLS LSP ping および traceroute による接続の確認

この章では、MPLS LSP ping および traceroute を使用して Multiprotocol Label Switching(MPLS; マルチプロトコル ラベル スイッチング)接続を確認する方法について説明します。

この章の内容は、次のとおりです。

「MPLS LSP ping および traceroute の概要」

「MPLS LSP ping および traceroute のライセンス要件」

「MPLS LSP ping および traceroute の前提条件」

「MPLS LSP ping および traceroute に関する注意事項と制限事項」

「MPLS LSP ping および traceroute の設定」

「MPLS LSP ping および traceroute の設定例」

「MPLS LSP ping および traceroute に関する追加情報」

「MPLS LSP ping および traceroute の機能履歴」

MPLS LSP ping および traceroute の概要

MPLS LSP ping および traceroute を使用すると、サービス プロバイダーは、Label Switched Path(LSP; ラベル スイッチド パス)を監視し、MPLS 転送の問題を迅速に隔離できます。MPLS LSP ping および traceroute により、LSP 接続をテストし、IPv4 Label Distribution Protocol(LDP; ラベル配布プロトコル)のプレフィクスや Resource Reservation Protocol(RSVP; リソース予約プロトコル)の Traffic Engineering(TE; トラフィック エンジニアリング)を確認できます。

Internet Control Message Protocol(ICMP; インターネット制御メッセージ プロトコル)の ping と traceroute は、転送エラーの発生時に根本原因を診断するのに役立ちます。ただし、これらの機能では LSP エラーが検出されない場合があります。LSP 切断が発生しても、ICMP パケットは IP 経由で宛先に転送できるためです。

MPLS LSP ping および traceroute は、次の理由で LSP 切断の検出に適しています。

MPLS エコー要求パケットは、IP 経由で転送できません。これは、このパケットの IP TTL が 1 に設定され、宛先 IP アドレス フィールドは 127/8 アドレスに設定されるためです。

チェック対象の FEC は、ICMP の場合とは異なり、宛先 IP アドレス フィールドに格納されません。

MPLS エコー要求パケットと応答パケットは、LSP をテストします。このマニュアルで説明する機能は、IETF RFC 4379『 Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures 』に基づいています。

エコー要求の出力インターフェイス制御

エコー要求のトラフィック ペーシング

エコー要求のスタック末尾の明示的ヌル ラベル シム

エコー要求の request-dsmap 機能

Request-fec チェック

深度制限の報告

ここでは、次の内容について説明します。

「MPLS LSP ping の動作」

「MPLS LSP Traceroute の動作」

MPLS LSP ping の動作

ping mpls コマンドを使用することにより、MPLS エコー要求パケットとエコー応答パケットを使用して LSP を検証できます。

MPLS エコー要求パケットは、検証対象の LSP に関連付けられた適切なラベル スタックを使用してターゲット ルータに送信されます。ラベル スタックを使用すると、パケットは LSP 自体を介して転送されます。

MPLS エコー要求パケットの宛先 IP アドレスは、ラベル スタックの選択に使用されるアドレスとは異なります。宛先 IP アドレスは、127. x . y . z /8 アドレスとして定義されます。127. x . y . z /8 アドレスを使用すると、LSP が切断された場合に IP パケットが宛先に IP スイッチングされるのを防ぐことができます。

MPLS エコー応答は、MPLS エコー要求に応じて送信されます。応答は IP パケットとして送信され、IP、MPLS、または両方のスイッチング タイプの組み合わせを使用して転送されます。MPLS エコー応答パケットの送信元アドレスは、エコー応答を生成しているルータから取得されるアドレスです。宛先アドレスは、MPLS エコー要求パケットを送信したルータの送信元アドレスです。

MPLS エコー応答の宛先ポートは、エコー要求の送信元ポートに設定されます。

図 27-1 に MPLS LSP ping のエコー要求とエコー応答のパスを示します。

図 27-1 MPLS LSP ping のエコー要求とエコー応答のパス

 

LSR1 で LSR6 の FEC に対する MPLS LSP ping 要求を開始すると、 表 27-1 に示すような結果になります。

 

表 27-1 図 27-1 に基づく MPLS LSP ping の例

ステップ
ルータ
アクション

1.

LSR1

ターゲット ルータ LSR6 の FEC に対する LSP ping 要求を開始し、MPLS エコー要求を LSR2 に送信します。

2.

LSR2

MPLS エコー要求パケットを受信し、中継ルータ LSR3 と LSR4 を経由して最後から 2 番めのルータ LSR5 に転送します。

3.

LSR5

MPLS エコー要求を受信し、MPLS ラベルをポップしてパケットを IP パケットとして LSR6 に転送します。

4.

LSR6

IP パケットを受信し、MPLS エコー要求を処理して、代替ルート経由で MPLS エコー応答を LSR1 に送信します。

5.

LSR7 ~ LSR10

MPLS エコー応答を受信し、送信元ルータ LSR1 に転送します。

6.

LSR1

MPLS エコー要求に対する MPLS エコー応答を受信します。

MPLS LSP Traceroute の動作

MPLS LSP traceroute では、MPLS エコー要求パケットとエコー応答パケットを使用して LSP を検証します。MPLS LSP traceroute を使用すると、 traceroute mpls コマンドで適切なキーワードと引数を使用することによって、IPv4 LDP と IPv4 RSVP FEC を検証できます。

MPLS LSP traceroute では、Time-to-Live(TTL; 存続可能時間)設定を使用して LSP の TTL を強制的に期限切れにします。MPLS LSP traceroute は、連続した各ホップのダウンストリーム マッピングを検出するために、自身の MPLS エコー要求の TTL 値(TTL = 1、2、3、4)を付加的に増加させます。中継ルータは、TTL = 1 のラベル付きパケットを受信すると、MPLS エコー要求を処理します。TTL が期限切れになると、中継ルータがパケットを処理のために Route Processor(RP; ルート プロセッサ)に送信し、TTL が期限切れになった MPLS パケットに応じて、中継ホップに関する情報が含まれる MPLS エコー応答を返します。

MPLS エコー応答の宛先ポートは、エコー要求の送信元ポートに設定されます。


) ルータが Traffic Engineering(TE; トラフィック エンジニアリング)トンネルを通過する IPV4 FEC をトレースすると、中間ルータは、中間ルータで LDP が実行されていない場合に U(到達不能)を返すことがあります。


図 27-2 に、LSR1 から LSR4 までの LSP の MPLS LSP traceroute 例を示します。

図 27-2 MPLS LSP traceroute の例

 

LSR1 から LSR4 の FEC に対する MPLS LSP traceroute を入力すると、 表 27-2 に示すような結果になります。

 

表 27-2 図 27-2 に基づく MPLS LSP traceroute の例

ステップ
ルータ
MPLS パケット タイプと説明
ルータのアクション(受信または送信)

1.

LSR1

MPLS エコー要求:ターゲット FEC は LSR4 とダウンストリーム マッピングを指す

ラベル スタックの TTL を 1 に設定する

要求を LSR2 に送信する

2.

LSR2

MPLS エコー応答

TTL = 1 のパケットを受信する

User Datagram Protocol(UDP; ユーザ データグラム プロトコル)パケットを MPLS エコー要求として処理する

ダウンストリーム マッピングを検索し、着信ラベルに基づいて独自のダウンストリーム マッピングを付加して LSR1 に応答する

3.

LSR1

MPLS エコー要求:ターゲット FEC は同じで、LSR2 からのエコー応答で受信したダウンストリーム マッピングを含む

ラベル スタックの TTL を 2 に設定する

要求を LSR2 に送信する

4.

LSR2

MPLS エコー要求

TTL = 2 のパケットを受信する

TTL を減らす

エコー要求を LSR3 に転送する

5.

LSR3

MPLS 応答パケット

TTL = 1 のパケットを受信する

UDP パケットを MPLS エコー要求として処理する

ダウンストリーム マッピングを検索し、着信ラベルに基づいて独自のダウンストリーム マッピングを付加して LSR1 に応答する

6.

LSR1

MPLS エコー要求:ターゲットの FEC は同じで、LSR3 からのエコー応答で受信したダウンストリーム マッピングを含む

パケットの TTL を 3 に設定する

要求を LSR2 に送信する

7.

LSR2

MPLS エコー要求

TTL = 3 のパケットを受信する

TTL を減らす

エコー要求を LSR3 に転送する

8.

LSR3

MPLS エコー要求

TTL = 2 のパケットを受信する

TTL を減らす

エコー要求を LSR4 に転送する

9.

LSR4

MPLS エコー応答

TTL = 1 のパケットを受信する

UDP パケットを MPLS エコー要求として処理する

ダウンストリーム マッピングを検索し、ルータがターゲット FEC の出力ルータであることも確認する

LSR1 に応答する

MPLS LSP ping および MPLS LSP traceroute を使用した MPLS ネットワーク管理

MPLS ネットワークを管理するには、LSP を監視して MPLS 転送の問題を迅速に隔離できる必要があります。そのためには、LSP の動作を評価したり、LSP によるユーザ トラフィックの伝送の失敗を検出したりする方法が必要です。

MPLS LSP ping を使用すると、IPv4 LDP プレフィクス宛てのパケットの転送に使用される LSP を確認できます。MPLS LSP traceroute を使用すると、IPv4 LDP プレフィクス宛てのパケットの伝送に使用される LSP をトレースできます。

MPLS エコー要求は、検証する LSP 経由で送信されます。TTL の期限切れまたは LSP の切断が発生すると、中継ルータはエコー要求を目的の宛先に到達する前に処理します。ルータは説明的な応答コードを含む MPLS エコー応答をエコー要求の送信元に返します。

成功したエコー要求は LSP の出口で処理されます。エコー応答は IP パス、MPLS パス、または両方のパスの組み合わせを経由してエコー要求の送信元に返送されます。

LSP ping または LSP traceroute を処理するルータから提供される情報

表 27-3 に、LSP ping または LSP traceroute パケットを処理するルータから送信者に返される要求の成否に関するコードを示します。

ping mpls コマンドで verbose キーワードを入力すると、MPLS LSP ping 動作の戻りコードも表示できます。

 

表 27-3 エコー応答の戻りコード

出力コード
エコーの戻りコード
意味

x

0

戻りコードなし。

M

1

不正なエコー要求。

m

2

サポートされていない TLV。

!

3

成功。

F

4

FEC マッピングなし。

D

5

DS マップの不一致。

I

6

不明なアップストリーム インターフェイス インデックス。

U

7

予約済み

L

8

ラベル付けされた出力インターフェイス。

B

9

ラベル付けされていない出力インターフェイス。

f

10

FEC の不一致。

N

11

ラベル エントリなし。

P

12

受信インターフェイスのラベル プロトコルなし。

p

13

LSP の終了が不完全。

X

unknown

未定義の戻りコード。


) エコーの戻りコード 6 と 7 は、バージョン 3(draft-ieft-mpls-ping-03)でのみ受け入れられます。バージョン 3 では、これらの戻りコードは次のような意味を持ちます。

コード 6:応答ルータがダウンストリーム ルータの 1 つであり、この FEC の受信側インターフェイスにおけるマッピングが当該ラベルである。

コード 7:応答ルータがダウンストリーム ルータの 1 つであり、この FEC のマッピングが当該ラベルではない。


 

IP では MPLS エコー要求パケットは転送されない

LSP ping 中に送信された MPLS エコー要求パケットは、IP によって転送されません。MPLS エコー要求パケットの IP ヘッダーの宛先アドレス フィールドは 127. x.y.z /8 アドレスです。ルータは 127. x.y.z /8 アドレスを使用したパケットを転送しません。127. x.y.z /8 アドレスは、ローカル ホストのアドレスに対応します。

127. x . y . z アドレスを UDP パケットの宛先アドレスとして使用することが重要です。これは、中継ルータが LSP のラベル スイッチングを行わない場合、MPLS エコー要求パケットは、このアドレスをターゲット ルータにすることができない可能性があるためです。127. x . y . z アドレスを使用すると、LSP の切断を検出できます。中継ルータでは、次のことが発生します。

中継ルータで LSP の切断が発生した場合、MPLS エコー パケットは転送されず、ルータによって使用されます。

LSP が切断されていない場合、MPLS エコー パケットはターゲット ルータに到達し、LSP の終点で処理されます。

図 27-3 に、中継ルータが LSP でパケットのラベル スイッチングに失敗した場合の MPLS エコー要求と応答のパスを示します。

図 27-3 中継ルータがパケットのラベル スイッチングに失敗した場合のパス

 


) MPLS Virtual Private Network(VPN; バーチャル プライベート ネットワーク)パケットは IP パケットですが、MPLS ネットワークのエンドポイントの Virtual Routing and Forwarding(VRF)インスタンスには宛先 IP アドレスだけが重要であるため、MPLS VPN パケットには中継ルータで使用可能なフォワーディング情報が格納されません。


MPLS LSP ping および traceroute のライセンス要件

次の表に、この機能のライセンス要件を示します。

 

製品
ライセンス要件

Cisco NX-OS

MPLS LSP ping および traceroute には MPLS ライセンスが必要です。Cisco NX-OS ライセンス方式、およびライセンスの取得方法と適用方法の詳細については、『 Cisco NX-OS Licensing Guide を参照してください。

MPLS LSP ping および traceroute の前提条件

MPLS LSP ping および traceroute には、次の前提条件があります。

MPLS ライセンスをインストールする必要があります。

MPLS LSP ping および traceroute を実行する前に、Intrusion Detection System(IDS; 侵入検知システム)がディセーブルに設定され、IP アドレスが予約済みの 127.x.x.x の範囲内にある場合にパケットをドロップするオプションが選択されていないことを確認してください。

MPLS LDP 機能または MPLS Traffic Engineering(TE; トラフィック エンジニアリング)機能をイネーブルにする必要があります。

MPLS LSP ping および traceroute に関する注意事項と制限事項

MPLS LSP ping および traceroute 設定時の注意事項と制限事項は次のとおりです。

MPLS LSP ping を使用して、MPLS VPN を検証またはトレースすることはできません。

MPLS LSP traceroute を使用して、TTL 隠蔽を使用する LSP のトラブルシューティングを行うことはできません。

MPLS は、宛先単位およびパケット単位の(ラウンド ロビン)ロード バランシングをサポートします。パケット単位のロード バランシングが有効である場合は、MPLS LSP traceroute を使用してはなりません。LSP traceroute の実行中に、中継ルータが、直接接続されているアップストリーム ルータからの前のエコー応答に含まれる情報について整合性チェックを行うためです。ラウンド ロビンを使用するときには、パケットの TTL が特定のルータで期限切れになるようにエコー要求パケットのパスを制御することはできません。この機能がなければ、LSP traceroute の実行中に整合性チェックが失敗し、整合性チェック エラーを示す戻りコードが表示される可能性があります。

プラットフォームでは、MPLS エコー要求パケットに応答できるように、LSP ping と traceroute がサポートされている必要があります。

MPLS LSP ping/traceroute for LDP/TE および LSP ping for VCCV 機能がパス全体でイネーブルになっている場合を除き、パス上のいずれかのノードで要求が失敗した場合、応答を受け取ることはできません。

ネットワーク内に異なるドラフト バージョンを組み合わせて実装する場合は、特定の制限があります。ドラフト バージョンにはシスコの実装との互換性があります。Type, Length, Value(TLV; タイプ、長さ、値)が十分なバージョニング情報なしに変更されているため、初期のバージョンには最近のバージョンとの互換性がない場合もあります。

MPLS LSP ping および traceroute の設定

ここでは、次の内容について説明します。

「MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化」

「MPLS LSP ping と traceroute を使用した LDP IPv4 FEC の検証」

「DSCP を使用した、エコー応答における特定のサービス クラスの要求」

「MPLS エコー要求に対する応答ルータの応答方法の制御」

「MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避」

「LSP の切断の検出」

MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化

バージョン 3(draft-ietf-mpls-ping-03)よりもあとの LSP ping ドラフトでは、多数の TLV 形式の変更が行われていますが、ドラフトのバージョン同士が必ずしも相互運用するとはかぎりません。

新しいシスコの実装がドラフト バージョン 3 のシスコの実装やシスコ以外の実装と相互運用できるようにするには、グローバル コンフィギュレーション モードを使用して、エコー パケットをドラフト バージョン 3 の実装によって認識される形式でデコードします。

特に設定がなければ、シスコの実装では、IETF の実装がベースにしているバージョンを想定して、エコー要求の符号化とデコードを行います。

TLV バージョンの問題によって発生するエラーが応答ルータから報告されないようにするには、コア内のすべてのルータを設定する必要があります。同じドラフト バージョンで MPLS エコー パケットを符号化およびデコードしてください。たとえば、ネットワークで RFC 4379(シスコ バージョン 4)の実装が実行され、1 つのルータがバージョン 3(シスコ リビジョン 3)にだけ対応している場合は、ネットワーク内のすべてのルータをリビジョン 3 モードで動作するように設定します。

シスコのベンダー拡張

シスコ バージョン 3(draft-ietf-mpls-ping-03.txt)の実装では、ignore-if-not-understood TLV スペースにベンダー拡張 TLV が定義されています。これは次の目的で使用されます。

TLV バージョンを追跡する機能を提供する。

実験用の応答 Type of Service(ToS; タイプ オブ サービス)機能を提供する。

最初の機能は、エコー パケットの符号化とデコードの動作を設定するために、グローバル コンフィギュレーション コマンドよりも前に定義されました。設定されたデコード動作は、エコー パケット内の TLV バージョン情報によって上書きされます。グローバル コンフィギュレーション機能の導入後、TLV バージョンにこの TLV を使用する必要はなくなりました。

2 番めの機能は、応答 DSCP を制御します。ドラフト バージョン 8 では、応答 ToS TLV が定義されているため、応答 DSCP を使用する必要はなくなりました。

手順の概要

1. configure terminal

2. mpls oam

3. echo revision { 3 | 4 }

4. echo vendor-extension

5. exit

手順の詳細

 

コマンド
目的

ステップ 1

configure terminal

 

例:

switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

mpls oam

 

例:

switch(config)# mpls oam

エコー パケットのデフォルト動作をカスタマイズするために、MPLS OAM コンフィギュレーション モードを開始します。

ステップ 3

echo revision { 3 | 4 }

 

例:

switch(config-mpls)# echo revision 4

エコー パケットのデフォルト値のリビジョン番号を指定します。

3:draft-ietf-mpls-ping-03(リビジョン 2)

4:RFC 4379 準拠(デフォルト)

ステップ 4

echo vendor-extension

 

例:

switch(config-mpls)# echo vendor-extension

エコー パケットで TLV のシスコ独自の拡張を送信します。

ステップ 5

exit

 

例:

switch(config-mpls)# exit

グローバル コンフィギュレーション モードに戻ります。

MPLS LSP ping と traceroute を使用した LDP IPv4 FEC の検証

LSP はラベルで構成されています。ルータは、LDP またはその他の MPLS アプリケーションを使用してラベルを認識します。MPLS LSP ping または traceroute を使用して、特定の FEC のトラフィックを転送するために使用される LSP を検証できます。

ルータが LDP によってアドバタイズされた IPv4 FEC プレフィクス宛ての MPLS パケットを転送することを確認できます。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask-length [ repeat count ] [ exp exp-bits ] [ verbose ]
または
traceroute mpls ipv4 destination-address / destination-mask-length

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask-length [ repeat count ] [ exp exp-bits ] [ verbose ]

または

traceroute mpls ipv4 destination-address / destination-mask-length [ exp exp-bits ] [ verbose ]

 

例:

switch# ping mpls ipv4 10.131.191.252/32 repeat 5 exp 5 verbose

 

または

 

例:

switch# traceroute mpls ipv4 10.131.191.252/32

検証する LDP IPv4 プレフィクスの FEC を選択します。

(注) Cisco NX-OS は、中継ルータが EXP 設定を返す操作をサポートします。これらの値は常に 0 と報告されます。exp オプションを指定してコマンドを入力すると(例:exp 5)、出力には応答ルータから報告される exp ビット設定の値として常に 0 が表示されます。

DSCP を使用した、エコー応答における特定のサービス クラスの要求

応答 DSCP オプションは、IETF draft-ietf-mpls-lsp-ping-03.txt の試験モードでサポートされます。シスコは、応答 TOS TLV を使用するのではなく、応答 DSCP オプションのベンダー固有の拡張を実装しました。応答 TOS TLV は、RFC 4379 の reply dscp コマンドと同じ目的を果たします。このドラフトは、応答 DSCP を制御するための標準化された方法を示します。


) RFC 4379 よりも前のバージョンでは、シスコは応答 DSCP オプションをシスコのベンダー拡張 TLV を使用した試験的な機能として実装しました。ルータがドラフト バージョン 3 の実装の MPLS エコー パケットを符号化するように設定されている場合は、RFC 4379 で定義された応答 TOS TLV の代わりに、シスコのベンダー拡張 TLV が使用されます。

Cisco NX-OS をリビジョン 3 モードで動作するように設定した場合でも、送信にはシスコのベンダー拡張 TLV が使用されます。Cisco NX-OS は、エコー要求パケットに対しても必ずベンダー拡張 TLV で応答します。


 

手順の概要

1. ping mpls ipv4 destination-address / destination-mask-length [ reply dscp dscp-value ]
または
traceroute mpls ipv4 destination-address / destination-mask-length [ reply dscp dscp-value ]

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask-length [ reply dscp dscp-value ]

 

または

traceroute mpls ipv4 destination-address / destination-mask-length [ reply dscp dscp-value ]

 

例:

switch# ping mpls ipv4 10.131.191.252/32 reply dscp 50

 

または

 

例:

switch# traceroute mpls ipv4 10.131.191.252/32 reply dscp 50

エコー応答の DSCP 値を制御します。

MPLS エコー要求に対する応答ルータの応答方法の制御

応答モードは、 ping mpls コマンドまたは traceroute mpls コマンドを入力するときに、MPLS エコー要求に対する応答ルータの応答方法を制御します。エコー要求パケットには、次の 2 つの応答モードがあります。

ipv4:IPv4 UDP パケットで応答する(デフォルト)

router-alert:ルータ アラートを含む IPv4 UDP パケットで応答する


) 見逃しを防ぐために ipv4 および router-alert 応答モードを相互に使用してください。ipv4 モードを介して応答を受信できない場合は、router-alert reply 応答モードでテストを送信します。両方のモードで失敗する場合は、リターン パスに問題があることを意味します。唯一考えられる問題は、応答 TOS が正しく設定されていないことです。


ここでは、次の内容について説明します。

「ipv4 応答モード」

「router-alert 応答モード」

ipv4 応答モード

IPv4 パケットは、LSP の完全性を定期的にポーリングする場合に、 ping mpls コマンドまたは traceroute mpls コマンドで使用される最も一般的な応答モードです。このオプションは、パケットが IP ホップと MPLS ホップのいずれを通過して MPLS エコー要求の送信元に到達するかを明示的に制御するものではありません。 reply mode ipv4 キーワードを使用した場合に、送信元(ヘッドエンド)ルータが MPLS エコー要求に対する応答を受信できないときは、 reply mode router-alert キーワードを使用します。

router-alert 応答モード

router-alert 応答モードを使用すると、ルータ アラート オプションが IP ヘッダーに追加されます。IP ヘッダーに IP ルータ アラート オプションが含まれる IP パケットまたは最も外側のラベルがルータ アラート ラベルである MPLS パケットがルータに到着すると、ルータはそのパケットを Route Processor(RP; ルート プロセッサ)レベルにパント(リダイレクト)し、宛先までの各中間ホップの Cisco ルータにパケットを処理させます。ハードウェアとラインカード フォワーディングの不整合が回避されます。router-alert 応答モードは、応答がホップバイホップで移動するため、IPv4 モードよりもコストがかかります。処理速度も遅いため、送信元が応答を受信するまで比較的長い時間がかかります。

表 27-4 に、IP ルータ アラート オプションを含む IP パケットと MPLS パケットがルータ スイッチング パス プロセスによって処理される方法を示します。

 

表 27-4 パス プロセスによる IP および MPLS ルータ アラート パケットの処理

着信パケット
通常のスイッチング アクション
プロセス スイッチング アクション
発信パケット

IP パケット:IP ヘッダーにルータ アラート オプションが含まれる

IP ヘッダーにルータ アラート オプションが含まれていると、パケットはプロセス スイッチング パスにパントされる。

パケットをそのまま転送する。

IP パケット:IP ヘッダーにルータ アラート オプションが含まれる

パケットをそのまま転送する。

MPLS パケット

MPLS パケット:最も外側のラベルにルータ アラートが含まれる

ルータ アラート ラベルが最も外側のラベルである場合、パケットはプロセス スイッチング パスにパントされる。

最も外側のルータ アラート ラベルを削除し、パケットを IP パケットとして転送する。

IP パケット:IP ヘッダーにルータ アラート オプションが含まれる

最も外側のルータ アラート ラベルを保持し、MPLS パケットを転送する。

MPLS パケット:最も外側のラベルにルータ アラートが含まれる

手順の概要

1. ping mpls ipv4 destination-address / destination-mask-length reply mode { ipv4 | router-alert }
または
traceroute mpls ipv4 destination-address / destination-mask reply mode { ipv4 | router-alert }

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask-length reply mode { ipv4 | router-alert }

 

または

traceroute mpls ipv4 destination-address / destination-mask reply mode { ipv4 | router-alert }

 

例:

switch# ping mpls ipv4 10.131.191.252/32 reply mode ipv4

 

または

 

例:

switch# traceroute mpls ipv4 10.131.191.252/32 reply mode router-alert

MPLS LSP 接続をチェックします。

または

パケットが宛先に転送されるときに実際にたどる MPLS LSP ルートを検出します。

キーワードを入力する必要があります。

MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避

MPLS Embedded Management の相互作用機能である LSP ping for LDP 機能オプションを使用すると、ループが発生します。 ping mpls コマンドと traceroute mpls コマンドで発生する可能性があるループについては、次のトピックを参照してください。

「MPLS LSP ping を使用したループの検出」

「MPLS LSP traceroute を使用したループの検出」

MPLS LSP ping を使用したループの検出

MPLS LSP ping 機能を使用すると、UDP 宛先アドレス範囲、繰り返しオプション、またはスイープ オプションを使用した場合に、ループが発生する可能性があります。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask [ destination address-start address-end increment ] [ repeat count ] [ sweep minimum maximum size-i ncrement ]

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask [ destination address-start address-end increment ] [ repeat count ] [ sweep minimum maximum size-i ncrement ]

 

例:

switch# ping mpls ipv4 10.131.159.251/32 destination 127.0.0.1 127.0.0.2 1 repeat 2 sweep 1450 1475 25

MPLS LSP 接続をチェックします。

MPLS LSP traceroute を使用したループの検出

MPLS LSP traceroute 機能を使用すると、UDP 宛先アドレス範囲オプションと存続可能時間オプションを使用した場合に、ループが発生する可能性があります。

デフォルトでは、最大 TTL は 30 に設定されます。したがって、traceroute のターゲットに到達しない場合は(LSP に問題がある場合に発生する可能性があります)、traceroute の出力に 30 行のエントリが含まれることがあります。LSP に問題が発生した場合は、エントリが重複する可能性があります。トレースが最後に到達するポイントのルータ アドレスは、出力が 30 行になるまで繰り返されます。重複したエントリは無視できます。

手順の概要

1. traceroute mpls ipv4 destination-address / destination-mask [ destination address-start address-end address-increment ] [ ttl maximum-time-to-live ]

手順の詳細

 

コマンド
目的

ステップ 1

traceroute mpls ipv4 destination-address / destination-mask [ destination address-start address-end address increment ] [ ttl maximum-time-to-live ]

 

例:

switch# traceroute mpls ipv4 10.131.159.251/32 destination 127.0.0.1 127.0.0.3 1 ttl 5

パケットが宛先に転送されるときにたどる MPLS LSP ルートを検出します。ここに挙げた例は、ループがどのように発生するかを示しています。

LSP の切断の検出

ネットワークで MPLS パケットの転送に問題が発生した場合は、LSP が切断されている場所を特定できます。ここでは、LSP での MTU ディスカバリについて説明します。

最後から 2 番めのホップの非タグ付き出力インターフェイスは、LSP 経由の IP パケットの転送に影響しません。これは、転送判断が最後から 2 番めのホップで着信ラベルを使用して行われるためです。ただし、非タグ付き出力インターフェイスを使用すると、MPLS VPN のトラフィックが最後から 2 番めのホップでドロップされます。

MPLS LSP ping の実行中、MPLS エコー要求パケットは、IP ヘッダーの IP パケット属性が Don't Fragment(DF)ビットに設定された状態で送信されます。これにより、MPLS エコー要求を使用して、フラグメンテーションなしでパケットが LSP を通過できるようにするための MTU をテストできます。

図 27-4 に、LDP によってアドバタイズされたラベルで構成されている 1 つの LSP(PE1 から PE2 まで)のサンプル ネットワークを示します。

図 27-4 LSP のサンプル ネットワーク:LDP によってアドバタイズされたラベル

 

MPLS LSP traceroute 機能を使用して LSP をトレースすることによって、各ホップの Maximum Receive Unit(MRU; 最大受信ユニット)を確認できます。MRU は、LSP 経由で転送できる、ラベル付けされたパケットの最大サイズです。

ここでは、次の内容について説明します。

「暗黙的ヌルとタグ付けされたパケットの追跡」

「非タグ付きパケットの追跡」

「パケットを送信できない原因の特定」

「IPv4 LDP LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出」

「エコー パケットがルータから発信されるときに経由するインターフェイスの指定」

「パケット伝送のペーシング」

「エコー要求の request-dsmap を使用した中継ルータに対するダウンストリーム情報の問い合わせ」

「ルータに対する DSMAP の問い合わせ」

「中継ルータによるターゲット FEC スタックの検証の要求」

「LSP ping のイネーブル化による非タグ付きインターフェイスを起因とする LSP 切断の検出」

暗黙的ヌルとタグ付けされたパケットの追跡

暗黙的ヌルとタグ付けされたパケットを追跡できます。

手順の概要

1. traceroute mpls ipv4 destination-address / destination-mask

手順の詳細

 

コマンド
目的

ステップ 1

traceroute mpls ipv4 destination-address / destination-mask

 

例:

switch# traceroute mpls ipv4 10.131.159.252/32

パケットが宛先に転送されるときに実際にたどる MPLS LSP ルートを検出します。

非タグ付きパケットの追跡

非タグ付きパケットを追跡できます。

手順の概要

1. show mpls ldp discovery

手順の詳細

 

コマンド
目的

ステップ 1

show mpls ldp discovery

 

例:

switch# show mpls ldp discovery

LDP ディスカバリ プロセスのステータスを表示し、LDP が正しく設定されているかどうかを示します。

パケットを送信できない原因の特定

Q 戻りコードは、パケットを送信できなかったことを意味します。この問題は、処理メモリの不足が原因である場合がありますが、コマンド ラインで入力された FEC 情報に一致する LSP が見つからなかったために発生した可能性があります。

LSP のパスの問題を修正できるように、パケットが転送されなかった原因を特定する必要があります。そのためには、Routing Information Base(RIB; ルーティング情報ベース)、Forwarding Information Base(FIB; 転送情報ベース)、Label Information Base(LIB; ラベル情報ベース)、および MPLS LFIB を調べます。これらのルーティングまたはフォワーディング ベースに FEC のエントリがない場合は、戻りコードが Q になります。

手順の概要

1. show ip route [ network [ / length ] detail

2. show mpls switching [ network [ / length ]

3. attach module module_number

4. show forwarding [ route | mpls | adjacency mpls stats ]

手順の詳細

 

コマンド
目的

ステップ 1

show ip route [ network [ / length ]] detail

 

例:

switch# show ip route 10.137.191.252 detail

ルーティング テーブルの現在の状態を表示します。

MPLS エコー応答が Q を返すと、ルーティング情報データベースでトラブルシューティングが実行されます。

ステップ 2

show mpls switching [ network [ / length ]]

 

例:

switch# show mpls switching

MPLS LFIB の内容を表示します。ラベル スイッチングされるパケットは、MPLSFWD コンポーネントの転送テーブルを使用します。

ステップ 3

attach module module_number

 

例:

switch# attach module 1

ラインカード モジュールに接続します。

ステップ 4

show forwarding [ route | mpls | adjacency mpls stats ]

 

例:

module-1# show forwarding route

module-1# show forwarding mpls

module-1# show forwarding adjacency mpls stats

IPFIB の内容を表示します。このテーブルには、ラインカード ハードウェアによって IP スイッチングまたはラベル スイッチングされるパケットが示されています。

IPv4 LDP LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出

ICMP ping または trace は、送信元ルータからターゲット ルータまでの 1 本のパスをたどります。送信元ルータからの IP パケットのラウンド ロビン ロード バランシングでは、ターゲット IP アドレスへのさまざまな出力パスを検出します。

MPLS LSP ping と traceroute の場合、ネットワークにターゲット ルータへの複数のパスが存在するときに、Cisco ルータはロード バランシングに IP ヘッダー内の送信元アドレスと宛先アドレスを使用します。MPLS のシスコの実装では、IP ペイロードの宛先アドレスをチェックしてロード バランシングを実行する場合があります(チェックのタイプはプラットフォームによって異なります)。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask-length [ destination address-start address-end increment ]

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask-length [ destination address-start address-end increment ]

 

例:

switch# ping mpls ipv4 10.131.159.251/32 destination 127.0.0.1/8

ロード バランシングのパスをチェックします。

127 .z.y.x /8 宛先アドレスを入力します。

エコー パケットがルータから発信されるときに経由するインターフェイスの指定

エコー パケットがルータから発信されるときに経由するインターフェイスを制御できます。パス出力情報は、LSP ping と traceroute への入力として使用されます。

エコー要求の出力インターフェイス制御機能を使用すると、LSP の詳細なデバッグや評価を行うパスをエコー パケットが通過することを強制できます。この機能は、PE ルータが MPLS クラウドに接続し、切断されたリンクがある場合に役立ちます。特定のリンクを介してトラフィックを誘導できます。この機能は、ネットワークの問題のトラブルシューティングにも役立ちます。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask [ output interface tx-interface ]
または
traceroute mpls ipv4 destination-address / destination-mask [ output interface tx-interface ]

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask [ output interface tx-interface ]

または

traceroute mpls ipv4 destination-address / destination-mask [ output interface tx-interface ]

 

例:

switch# ping mpls ipv4 10.131.159.251/32 output interface ethernet0/0

または

 

例:

switch# traceroute mpls ipv4 10.131.159.251/32 output interface ethernet0/0

MPLS LSP 接続をチェックします。

または

パケットが宛先に転送されるときにたどる MPLS LSP ルートを検出します。

キーワードを指定する必要があります。

パケット伝送のペーシング

エコー要求のトラフィック ペーシングを使用すると、受信側ルータがパケットをドロップしないように、パケット伝送をペーシングできます。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask [ interval ms ]
または
traceroute mpls ipv4 destination-address / destination-mask

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask [ interval ms ]

 

または

traceroute mpls ipv4 destination-address / destination-mask

 

例:

switch# ping mpls ipv4 10.131.159.251/32 interval 2

 

または

 

例:

switch# traceroute mpls ipv4 10.131.159.251/32

MPLS LSP 接続をチェックします。

または

パケットが宛先に転送されるときにたどる MPLS LSP ルートを検出します。

キーワードを指定する必要があります。

エコー要求の request-dsmap を使用した中継ルータに対するダウンストリーム情報の問い合わせ

TTL フラグを使用したトラブルシューティング機能であるエコー要求の request-dsmap 機能を使用するときには、中継ルータを選択して問い合わせることができます。エラーがある場合は、以前の各エラーに対して lsp traceroute コマンドを入力する必要はありません。失敗したホップにだけ集中できます。

ダウンストリーム マッピングのフラグ フィールドの request-dsmap フラグと非準拠ルータの追跡方法を指定する手順によって、ワイルドカード Downstream Map(DSMAP; ダウンストリーム マップ)で任意に MPLS エコー要求パケットの TTL を期限切れにすることができます。

ラベルのないエコー要求の DSMAP を受信した場合、送信元に検証する DSMAP がなかったことを意味します。エコー要求の DSMAP TLV のダウンストリーム ルータ ID フィールドが ALLROUTERs アドレス(224.0.0.2)に設定され、ラベルがない場合、送信元ルータは任意に中継ルータに対して DSMAP 情報を問い合わせることができます。

ping mpls コマンドを使用すると、トラブルシューティングやダウンストリーム ルータに対する DSMAP の問い合わせのために、ワイルドカード DSMAP を使用して、いずれかの中継ルータで MPLS エコー要求の TTL を期限切れにすることができます。デフォルトでは、DSMAP には IPv4 ビットマップ ハッシュキーがあります。ハッシュキー 0(なし)を選択することもできます。 ping mpls コマンドを使用すると、送信元ルータが中継ルータのエコー要求の TTL を選択的に期限切れにして、中継ルータにダウンストリーム情報を問い合わせることができます。マルチパス(ハッシュキー)タイプを選択できるようにすると、送信元ルータは、マルチパス LSP traceroute の場合と同様に、中継ルータに対してロード バランシング情報を問い合わせることができます。このとき、送信元ルータと各エコー要求の TTL が期限切れになるルータ間を通過するすべての後続ノードに問い合わせる必要はありません。エコー要求は TTL 設定で使用します。これは、エコー要求に使用した LSP の出口にエコー要求が到達しても、応答ルータは DSMAP を返さないためです。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask [ dsmap [ hashkey { none | ipv4 bitmap bitmap-size }]]

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask [ dsmap [ hashkey { none | ipv4 bitmap bitmap-size }]]

 

例:

switch# ping mpls ipv4 10.161.251/32 dsmap hashkey ipv4 bitmap 16

MPLS LSP 接続をチェックします。

キーワードを指定する必要があります。

ルータに対する DSMAP の問い合わせ

ルータは、ソフトウェアまたはハードウェアのフォワーディング レイヤに DSMAP TLV で返す必要がある深度制限を問い合わせることができます。フォワーディングによって値が提供されない場合、デフォルトは 255 です。

深度制限を確認するには、 ping mpls コマンドで dsmap キーワードと ttl キーワードを指定します。中継ルータは、DSMAP についての問い合わせを受けます。深度制限は、エコー応答の DSMAP とともに返されます。値が 0 の場合、IP ヘッダーはロード バランシングに使用されています。別の値の場合、IP ヘッダーはその数のラベルまでロード バランスを行います。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask ttl time-to-live dsmap

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask ttl time-to-live dsmap

 

例:

switch# ping mpls ipv4 10.131.159.252/32 ttl 1 dsmap

MPLS LSP 接続をチェックします。

キーワードを指定する必要があります。

中継ルータによるターゲット FEC スタックの検証の要求

MPLS エコー要求は、特定の LSP をテストします。テスト対象の LSP は、FEC スタックで識別されます。

中継ルータにターゲット FEC スタックの検証を要求するには、送信元ルータから ping mpls コマンドと traceroute mpls コマンドに flags fec キーワードを入力して V フラグを設定します。デフォルトでは、エコー要求パケットは V フラグが 0 に設定されて送信されます。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask flags fec
または
traceroute mpls ipv4 destination-address / destination-mask flags fec

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask flags fec

 

または

traceroute mpls ipv4 destination-address / destination-mask flags fec

 

例:

switch# ping mpls ipv4 10.131.159.252/32 flags fec

 

または

 

例:

switch# traceroute mpls ipv4 10.131.159.252/32 flags fec

MPLS LSP 接続をチェックします。

または

パケットが宛先に転送されるときに実際にたどる MPLS LSP ルートを検出します。

キーワードを入力する必要があります。

LSP ping のイネーブル化による非タグ付きインターフェイスを起因とする LSP 切断の検出

IPv4 FEC を伝送する LSP の MPLS LSP ping と traceroute では、ラベルが要求されていない場合でも、明示的ヌル ラベルを MPLS ラベル スタックに強制的に追加できます。このプロセスにより、LSP ping で非タグ付きインターフェイスを起因とする LSP の切断を検出できます。LSP ping は、LSP が MPLS トラフィックを送信できない場合は LSP が動作していると報告しません。

明示的ヌル ラベルが MPLS ラベル スタックに追加されるのは、MPLS エコー要求パケットが LSP ping の宛先に直接接続されている非タグ付きインターフェイスから転送された場合、または MPLS エコー要求パケットの IP TTL 値が 1 に設定されている場合です。

lsp ping コマンドを入力すると、LSP が IP トラフィックを伝送できるかどうかがテストされます。最後から 2 番めのホップの非タグ付き出力インターフェイスで発生したエラーは検出されません。明示的ヌル シムを使用すると、LSP の MPLS トラフィック伝送能力をテストできます。

LSP ping をイネーブルにすると、 ping mpls コマンドまたは traceroute mpls コマンドに force-explicit-null キーワードを指定することにより、非タグ付きインターフェイスを起因とする LSP の切断を検出できます。

手順の概要

1. ping mpls ipv4 destination-address / destination-mask force-explicit-null
または
traceroute mpls ipv4 destination-address / destination-mask force-explicit-null

手順の詳細

 

コマンド
目的

ステップ 1

ping mpls ipv4 destination-address / destination-mask force-explicit-null

 

または

traceroute mpls ipv4 destination-address / destination-mask force-explicit-null

 

例:

switch# ping mpls ipv4 10.131.191.252/32 force-explicit-null

 

または

 

例:

switch# traceroute mpls ipv4 10.131.191.252/32 force-explicit-null

MPLS LSP 接続をチェックします。

または

パケットが宛先に転送されるときに実際にたどる MPLS LSP ルートを検出します。

キーワードを入力する必要があります。

MPLS LSP ping および traceroute の設定例

MPLS LSP ping/traceroute for LDP/TE および LSP ping for Virtual Circuit Connection Verification(VCCV)の例は、図 27-5 に示すサンプル トポロジに基づいています。

図 27-5 設定例のサンプル トポロジ

 

ここでは、次の内容について説明します。

「例:MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化」

「例:MPLS LSP ping と LSP traceroute を使用した FEC の検証」

「例:DSCP を使用した、エコー応答における特定のサービス クラスの要求」

「例:MPLS エコー要求に対する応答ルータの応答方法の制御」

「例:MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避」

「例:LSP の切断の検出」

例:MPLS LSP と ping または traceroute 実装間の互換性のイネーブル化

次に、RFC 4379 の解釈が Cisco NX-OS とは異なるベンダー実装と相互運用するように MPLS マルチパス LSP traceroute を設定する例を示します。

configure terminal
!
mpls oam
echo revision 4
no echo vendor-extension
exit
 

デフォルトのエコー リビジョン番号は 4 です。これは IEFT ドラフト 11 に対応します。

例:MPLS LSP ping と LSP traceroute を使用した FEC の検証

次に、 ping mpls コマンドを使用して IPv4 LDP LSP の接続をテストする例を示します。

switch# ping mpls ipv4 10.137.191.252/32 repeat 1
 
Sending 1, 100-byte MPLS Echos to 10.137.191.252/32,
timeout is 2 seconds, send interval is 0 msec:
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
 

例:DSCP を使用した、エコー応答における特定のサービス クラスの要求

次に、DSCP を使用してエコー応答における特定の CoS を要求する例を示します。

switch# ping mpls ipv4 10.131.159.252/32 reply dscp 50
 
<0-63> Differentiated services codepoint value
af11 Match packets with AF11 dscp (001010)
af12 Match packets with AF12 dscp (001100)
af13 Match packets with AF13 dscp (001110)
af21 Match packets with AF21 dscp (010010)
af22 Match packets with AF22 dscp (010100)
af23 Match packets with AF23 dscp (010110)
af31 Match packets with AF31 dscp (011010)
af32 Match packets with AF32 dscp (011100)
af33 Match packets with AF33 dscp (011110)
af41 Match packets with AF41 dscp (100010)
af42 Match packets with AF42 dscp (100100)
af43 Match packets with AF43 dscp (100110)
cs1 Match packets with CS1(precedence 1) dscp (001000)
cs2 Match packets with CS2(precedence 2) dscp (010000)
cs3 Match packets with CS3(precedence 3) dscp (011000)
cs4 Match packets with CS4(precedence 4) dscp (100000)
cs5 Match packets with CS5(precedence 5) dscp (101000)
cs6 Match packets with CS6(precedence 6) dscp (110000)
cs7 Match packets with CS7(precedence 7) dscp (111000)
default Match packets with default dscp (000000)
ef Match packets with EF dscp (101110)

例:MPLS エコー要求に対する応答ルータの応答方法の制御

次に、ipv4 応答モードを使用して MPLS LSP 接続をチェックする例を示します。

switch# ping mpls ipv4 10.131.191.252/32 reply mode ipv4

例:MPLS LSP ping および LSP traceroute コマンド オプション使用時のループの回避

次の事項について説明します。

「例:MPLS LSP ping で発生する可能性があるループ」

「例:MPLS LSP traceroute で発生する可能性があるループ」

例:MPLS LSP ping で発生する可能性があるループ

次の ping mpls コマンドを使用した場合のループの動作例を次に示します。

switch# ping mpls ipv4 10.131.159.251/32 destination 127.0.0.1 127.0.0.2 1 repeat 2
sweep 1450 1475 25
 
Sending 2, [1450..1500]-byte MPLS Echos to 10.131.159.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
Destination address 127.0.0.1
!
!
Destination address 127.0.0.2
!
!
Destination address 127.0.0.1
!
!
Destination address 127.0.0.2
!
!
 

ping mpls コマンドを入力すると、ルータは最後のアドレスに到達するまで宛先アドレスごとに各パケット サイズ範囲を送信できます。この例では、宛先アドレス 127.0.0.5 に到達するまでループは同じように続行されます。シーケンスは、数が repeat count キーワードと引数で指定した値に到達するまで続行されます。この例では、リピート回数は 2 です。MPLS LSP ping のループ シーケンスは次のようになります。

repeat = 1
destination address 1 (address-start)
for (size from sweep minimum to maximum, counting by size-increment)
send an lsp ping
 
destination address 2 (address-start + address-increment)
for (size from sweep minimum to maximum, counting by size-increment)
send an lsp ping
 
destination address 3 (address-start + address-increment + address-increment)
for (size from sweep minimum to maximum, counting by size-increment)
send an lsp ping
.
.
.
until destination address = address-end
 
.
.
.
until repeat = count 2

例:MPLS LSP traceroute で発生する可能性があるループ

次の traceroute mpls コマンドを使用した場合のループの発生例を次に示します。

switch# traceroute mpls ipv4 10.131.159.251/32 destination 127.0.0.1 127.0.0.3 1 ttl 5
 
Tracing MPLS Label Switched Path to 10.131.159.251/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
Destination address 127.0.0.1
0 10.131.191.230 MRU 1500 [Labels: 19 Exp: 0]
R 1 10.131.159.226 MRU 1504 [implicit-null] 40 ms
! 2 10.131.159.225 40 ms
Destination address 127.0.0.2
0 10.131.191.230 MRU 1500 [Labels: 19 Exp: 0]
R 1 10.131.159.226 MRU 1504 [implicit-null] 40 ms
! 2 10.131.159.225 40 ms
Destination address 127.0.0.3
0 10.131.191.230 MRU 1500 [Labels: 19 Exp: 0]
R 1 10.131.159.226 MRU 1504 [implicit-null] 40 ms
! 2 10.131.159.225 48 ms
 

mpls trace コマンドを入力すると、宛先の end-address 引数で指定されたアドレスに到達するまで、各宛先アドレスについて、1 から最大 TTL( ttl maximum-time-to-live キーワードと引数)までの各 TTL を送信できます。この例では、最大 TTL は 5 で、終了宛先アドレスは 127.0.0.3 です。MPLS LSP traceroute のループ シーケンスは次のようになります。

destination address 1 (address-start)
for (ttl from 1 to maximum-time-to-live)
send an lsp trace
 
destination address 2 (address-start + address-increment)
for (ttl from 1 to 5)
send an lsp trace
 
destination address 3 (address-start + address-increment + address-increment)
for (ttl from 1 to maximum-time-to-live)
send an lsp trace
.
.
.
until destination address = 4

 

次に、トレース中に IP アドレスが 10.6.1.6 のルータで LSP の問題が発生した場合の例を示します。

switch# traceroute mpls ipv4 10.6.7.4/32
 
Tracing MPLS Label Switched Path to 10.6.7.4/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.6.1.14 MRU 4470 [Labels: 22 Exp: 0]
R 1 10.6.1.5 MRU 4470 [Labels: 21 Exp: 0] 2 ms
R 2 10.6.1.6 4 ms <------ 2 ~ 30 TTL が繰り返されるルータ アドレス
R 3 10.6.1.6 1 ms
R 4 10.6.1.6 1 ms
R 5 10.6.1.6 3 ms
R 6 10.6.1.6 4 ms
R 7 10.6.1.6 1 ms
R 8 10.6.1.6 2 ms
R 9 10.6.1.6 3 ms
R 10 10.6.1.6 4 ms
R 11 10.6.1.6 1 ms
R 12 10.6.1.6 2 ms
R 13 10.6.1.6 4 ms
R 14 10.6.1.6 5 ms
R 15 10.6.1.6 2 ms
R 16 10.6.1.6 3 ms
R 17 10.6.1.6 4 ms
R 18 10.6.1.6 2 ms
R 19 10.6.1.6 3 ms
R 20 10.6.1.6 4 ms
R 21 10.6.1.6 1 ms
R 22 10.6.1.6 2 ms
R 23 10.6.1.6 3 ms
R 24 10.6.1.6 4 ms
R 25 10.6.1.6 1 ms
R 26 10.6.1.6 3 ms
R 27 10.6.1.6 4 ms
R 28 10.6.1.6 1 ms
R 29 10.6.1.6 2 ms
R 30 10.6.1.6 3 ms <------ TTL 30
 

ネットワーク内の最大ホップ カウントがわかっている場合は、 traceroute mpls ttl maximum-time-to-live コマンドを使用して TTL を小さい値に設定できます。次の例では、上記の例と同じ traceroute コマンドを使用していますが、TTL が 5 に設定されています。

switch# traceroute mpls ipv4 10.6.7.4/32 ttl 5
 
Tracing MPLS Label Switched Path to 10.6.7.4/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.6.1.14 MRU 4470 [Labels: 22 Exp: 0]
R 1 10.6.1.5 MRU 4474 [No Label] 3 ms
R 2 10.6.1.6 4 ms <------ 2 ~ 5 TTL が繰り返されるルータ アドレス
R 3 10.6.1.6 1 ms
R 4 10.6.1.6 3 ms
R 5 10.6.1.6 4 ms

例:LSP の切断の検出

ここでは、次の内容について説明します。

「例:LSP ping または traceroute を使用したトラブルシューティング」

「例:LSP での MTU ディスカバリ」

「例:暗黙的ヌルとタグ付けされたパケットの追跡」

「例:非タグ付きパケットの追跡」

「例:パケットを送信できない原因の特定」

「例:IPv4 LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出」

「例:エコー パケットがルータから発信されるときに経由するインターフェイスの指定」

「例:パケット伝送のペーシング」

「例:中継ルータに対するダウンストリーム情報の問い合わせ」

「例:ルータに対する DSMAP の問い合わせ」

「例:中継ルータによるターゲット FEC スタックの検証の要求」

「例:LSP ping のイネーブル化による、非タグ付きインターフェイスを起因とする LSP 切断の検出」

例:LSP ping または traceroute を使用したトラブルシューティング

ICMP の ping コマンドと trace コマンドは、多くの場合、エラーの根本原因の診断に使用されます。LSP が切断されている場合、パケットは IP フォワーディングによってターゲット ルータに到達することがあるため、ICMP の ping および traceroute 機能は、MPLS 転送の問題の検出では信頼性がありません。MPLS LSP ping または traceroute 機能は、この診断およびトラブルシューティング機能の適用範囲を MPLS ネットワークまで広げ、IP 転送テーブルと MPLS 転送テーブルの不整合(ある場合)、MPLS 制御とデータ プレーンにおける不整合、および応答パスの問題を処理します。

図 27-6 に、LDP LSP のサンプル トポロジを示します。

図 27-6 LDP LSP のサンプル トポロジ

 

ここでは、次の内容について説明します。

「LSP が正しく設定されているかどうかの確認」

「LSP の切断の検出」

LSP が正しく設定されているかどうかの確認

この項の show コマンドの出力を使用して、LSP が正しく設定されているかどうかを確認します。

次の例は、トンネル 1 が MPLS 転送テーブルに含まれていることを示しています。

PE1# show mpls forwarding-table 10.131.159.252
 
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
22 18 [T] 10.131.159.252/32 0 Tu1 point2point
 
 
[T] Forwarding through a TSP tunnel.
View additional tagging info with the 'detail' option
 

次の例では、PE1 で発行した traceroute mpls コマンドによって、最も外側のラベルが 16 でスタック末尾のラベルが 18 であるパケットが PE1 から PE2 へ転送されることを確認しています。

PE1# traceroute mpls ipv4 10.131.159.252/32
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.252 MRU 1496 [Labels: 16/18 Exp: 0/0] L 1 10.131.191.229
MRU 1508 [Labels: 18 Exp: 0] 0 ms L 2 10.131.159.225
MRU 1504 [Labels: implicit-null Exp: 0] 0 ms ! 3 10.131.159.234 20 ms
PE1#
 

感嘆符(!)で示されているように、PE2 に対する MPLS LSP traceroute は成功しています。

LSP の切断の検出

この項のコマンドの出力を使用して、LSP の切断を検出します。

次に、ルータ PE1 と P2 の間で LDP ターゲット セッションを確立するコマンドの例を示します。

PE1# show mpls ldp discovery
 
Local LDP Identifier:
10.131.191.252:0
Discovery Sources:
Interfaces:
Ethernet0/0 (ldp): xmit/recv
LDP Id: 10.131.191.251:0
Tunnel1 (ldp): Targeted -> 10.131.159.251
Targeted Hellos:
10.131.191.252 -> 10.131.159.252 (ldp): active/passive, xmit/recv
LDP Id: 10.131.159.252:0
10.131.191.252 -> 10.131.159.251 (ldp): active, xmit/recv
LDP Id: 10.131.159.251:0
 

次の例は、P2 ルータがグローバル コンフィギュレーション モードにあることを示します。

P2(config)# no mpls ldp discovery targeted-hello accept
 

LDP 設定の変更により、TE トンネルのヘッドエンドとテールエンド間のターゲット LDP セッションがダウンします。P2 で学習された IPv4 プレフィクスのラベルは、PE1 にアドバタイズされません。P2 から到達可能なすべての IP プレフィクスには、PE1 から MPLS ではなく IP を経由する場合にだけ到達可能です。PE1 のトンネル 1 を経由したそれらのプレフィクス宛てのパケットは、P2 で IP スイッチングされます(これは望ましくありません)。

次の例は、LDP ターゲット セッションがダウンしていることを示します。

PE1# show mpls ldp discovery
 
Local LDP Identifier:
10.131.191.252:0
Discovery Sources:
Interfaces:
Ethernet0/0 (ldp): xmit/recv
LDP Id: 10.131.191.251:0
Tunnel1 (ldp): Targeted -> 10.131.159.251
Targeted Hellos:
10.131.191.252 -> 10.131.159.252 (ldp): active/passive, xmit/recv
LDP Id: 10.131.159.252:0
10.131.191.252 -> 10.131.159.251 (ldp): active, xmit
 

Cisco NX-OS では、転送に関連する情報が次の 3 つのコンポーネントに格納されます。

1. IPv4 ルーティング コンポーネント。

2. ラベル スイッチド パケット用の MPLS 転送コンポーネント。

3. ラインカード ハードウェアによって IP スイッチングまたはラベル スイッチングされるパケット。

次のコマンドを使用すると、これらの各コンポーネントに格納されているテーブルを表示できます。

PE1# show ip route 10.137.191.252 detail
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
 
10.137.191.252/32, ubest/mbest: 1/0
*via 10.133.191.246, Eth1/1, [115/100], 2d17h, isis-p1, L2 (mpls)
MPLS[0]: Label=20 E=0 TTL=255 S=0, LDP
client-specific data: 42
 
PE1# show mpls switching
 
Legend:
(P)=Protected, (F)=FRR active, (*)=more labels in stack.
 
In-Label Out-Label FEC name Out-Interface Next-Hop
VRF default
20 3 10.131.191.252/32 Eth1/1 10.133.191.246
17 3 10.132.191.252/32 Eth1/2 10.132.191.225
21 19 10.136.191.252/32 Eth1/1 10.133.191.246
18 20 10.137.191.252/32 Eth1/1 10.133.191.246
 
PE1# attach module 1
module-1# show forwarding route
IPv4 routes for table default/base
------------------+------------------+----------------------+-----------------
Prefix | Next-hop | Interface | Labels
------------------+------------------+----------------------+-----------------
0.0.0.0/32 Drop Null0
127.0.0.0/8 Drop Null0
255.255.255.255/32 Receive sup-eth1
10.131.191.252/32 10.133.191.246 Ethernet1/1 NO-OP
10.132.191.224/30 Attached Ethernet1/2
10.132.191.224/32 Drop Null0
10.132.191.225/32 10.132.191.225 Ethernet1/2
10.132.191.226/32 Receive sup-eth1
10.132.191.227/32 Attached Ethernet1/2
10.132.191.228/30 10.133.191.246 Ethernet1/1
10.132.191.252/32 10.132.191.225 Ethernet1/2 NO-OP
10.133.191.244/30 Attached Ethernet1/1
10.133.191.244/32 Drop Null0
10.133.191.245/32 Receive sup-eth1
10.133.191.246/32 10.133.191.246 Ethernet1/1
10.133.191.247/32 Attached Ethernet1/1
10.133.191.252/32 Receive sup-eth1
10.136.191.244/30 10.133.191.246 Ethernet1/1
10.136.191.252/32 10.133.191.246 Ethernet1/1 PUSH 19
10.137.191.112/30 10.133.191.246 Ethernet1/1
10.137.191.252/32 10.133.191.246 Ethernet1/1 PUSH 20
module-1# show forwarding mpls
--------+-----------+-------------------+----------------+-------------+-------
Local |Prefix |FEC |Next-Hop |Interface |Out
Label |Table Id |(Prefix/Tunnel id) | | |Label
--------+-----------+-------------------+----------------+-------------+-------
20 |0x1 |10.131.191.252/32 |10.133.191.246 |Ethernet1/1 |3
17 |0x1 |10.132.191.252/32 |10.132.191.225 |Ethernet1/2 |3
21 |0x1 |10.136.191.252/32 |10.133.191.246 |Ethernet1/1 |19
18 |0x1 |10.137.191.252/32 |10.133.191.246 |Ethernet1/1 |20
 
module-1# show forwarding adjacency mpls stats
next-hop rewrite info tx packets tx bytes Label info
-----------------------------------------------------------------------
10.133.191.246 Ethernet1/1 0 0 NO-OP 3
10.133.191.246 Ethernet1/1 0 0 POP 3
10.133.191.246 Ethernet1/1 0 0 PUSH 19
10.133.191.246 Ethernet1/1 0 0 SWAP 19
10.133.191.246 Ethernet1/1 0 0 PUSH 20
10.133.191.246 Ethernet1/1 0 0 SWAP 20
10.132.191.225 Ethernet1/2 0 0 NO-OP 3
10.132.191.225 Ethernet1/2 2 140 POP 3
module-1# exit
PE1#
 

次に、PE1 ルータに対するコマンドの例を示します。

PE1# ping mpls ipv4 10.131.159.252/32 repeat 1
 
Sending 1, 100-byte MPLS Echos to 10.131.159.252/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
R
Success rate is 0 percent (0/1)
 

この ping mpls コマンドは失敗しています。R は、MPLS エコー応答の送信元にルーティング エントリがあり、MPLS FEC がないことを示します。 ping mpls コマンドで verbose キーワードを入力すると、MPLS LSP エコー応答の送信元アドレスと戻りコードが表示されます。応答ルータに対する Telnet と転送テーブルおよびラベル テーブルの検査によって、切断が発生した場所を特定できる必要があります。切断はアップストリーム ルータで発生する可能性があるため、隣接するアップストリーム ルータも調べる必要があります。

PE1# ping mpls ipv4 10.131.159.252/32 repeat 1 verbose
 
Sending 1, 100-byte MPLS Echos to 10.131.159.252/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
R 10.131.159.225, return code 6
 
Success rate is 0 percent (0/1)
 

または、LSP traceroute コマンドを使用して、切断の原因となったルータを特定します。次の例では、TTL の後続の値が 2 よりも大きい場合、同じルータ(10.131.159.225)が応答し続けます。これは、TTL にかかわらず、MPLS エコー要求はそのルータによって処理され続けることを意味します。ラベル スタックの検査によって、P1 が最後のラベルをポップし、パケットを IP パケットとして P2 に転送することがわかります。これは、パケットが P2 によって処理され続ける理由を説明するものです。MPLS エコー要求パケットは、IP ヘッダーの宛先アドレスによって転送できません。これは、アドレスが 127/8 アドレスに設定されているためです。

PE1# traceroute mpls ipv4 10.131.159.252/32 ttl 5
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.230 MRU 1496 [Labels: 22/19 Exp: 0/0]
R 1 10.131.159.226 MRU 1500 [Labels: 19 Exp: 0] 40 ms
R 2 10.131.159.229 MRU 1504 [implicit-null] 28 ms
! 3 10.131.159.230 40 ms
pe1#

例:LSP での MTU ディスカバリ

次の例は、LSP が LDP によって作成されたラベルで構成されている場合に trace mpls コマンドを実行した結果を示しています。

PE1# traceroute mpls ipv4 10.131.159.252/32
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.230 MRU 1496 [Labels: 22/19 Exp: 0/0]
R 1 10.131.159.226 MRU 1500 [Labels: 19 Exp: 0] 40 ms
R 2 10.131.159.229 MRU 1504 [implicit-null] 28 ms
! 3 10.131.159.230 40 ms
pe1#
 

MPLS MTU を確認するには、まず LSP 出力インターフェイスを表示します。

PE1# show mpls switching 10.136.191.252
 
Legend:
(P)=Protected, (F)=FRR active, (*)=more labels in stack.
 
In-Label Out-Label FEC name Out-Interface Next-Hop
21 19 10.136.191.252/32 Eth1/1 10.133.191.246
 
Net imposed bytes = 0 ( 1 label popped (21), 1 label pushed (19) )
 

LSP に収容されるエコー要求の大きさを確認するには、まず show interface interface-name コマンドを使用して、IP MTU のサイズを計算します。

PE1# show interface ethernet 1/1 | include MTU
MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec
 

show interface interface-name の例では、IP MTU は 1500 バイトです。MTU の数値からラベル スタックに対応するバイト数を引きます。 show mpls forwarding コマンドの出力は、タグ スタックが 1 つのラベル(21)で構成されていることを示しています。したがって、LSP で送信できる最も大きい MPLS エコーパケット要求は、1500 - (2 x 4) = 1492 になります。

次の ping mpls コマンドを使用して、これを検証できます。

PE1# ping mpls ipv4 10.131.159.252/32 sweep 1492 1500 1 repeat 1
 
Sending 1, [1492..1500]-byte MPLS Echos to 10.131.159.252/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
!QQQQQQQQ
Success rate is 11 percent (1/9), round-trip min/avg/max = 40/40/40 ms
 

このコマンドでは、サイズ範囲が 1492 ~ 1500 バイトのエコー パケットが宛先アドレスに送信されます。感嘆符(!)で示されているように、1492 バイトのパケットだけが正常に送信されています。バイト サイズが 1493 ~ 1500 のパケットは、Q で示されているように、送信元で抑制されました。

指定サイズのペイロードをテストできるように、MPLS エコー要求をパディングできます。パディング TLV は、MPLS エコー要求を使用して LSP でサポート可能な MTU を検出する場合に役立ちます。MTU ディスカバリは、Any Transport over MPLS(AToM)のように、フラグメント化できない非 IP ペイロードを含むアプリケーションにはきわめて重要です。

例:暗黙的ヌルとタグ付けされたパケットの追跡

次の例では、トンネル 1 はシャットダウンされ、LDP ラベルで構成された LSP だけが確立されます。暗黙的ヌルは、P2 ルータと PE2 ルータの間でアドバタイズされます。PE1 ルータで MPLS LSP traceroute コマンドを入力すると、次のように出力され、パケットが暗黙的ヌル ラベル付きで P2 から PE2 に転送されることが示されます。アドレス 10.131.159.229 は、PE2 ルータに対する P2 のイーサネット 0/0 出力インターフェイス用に設定されています。

PE1# traceroute mpls ipv4 10.131.159.252/32
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.230 MRU 1496 [Labels: 22/19 Exp: 0/0]
R 1 10.131.159.226 MRU 1500 [Labels: 19 Exp: 0] 40 ms
R 2 10.131.159.229 MRU 1504 [implicit-null] 28 ms
! 3 10.131.159.230 40 ms
pe1#

例:非タグ付きパケットの追跡

非タグ付きの例は、MPLS VPN の問題の原因となる可能性がある Interior Gateway Protocol(IGP)LSP に有効な設定です。

P2 ルータで show mpls ldp discovery コマンドを入力すると、LDP が正しく設定されていることを示す結果が表示されます。

P2# show mpls ldp discovery
 
Local LDP Identifier:
10.131.159.251:0
Discovery Sources:
Interfaces:
Ethernet0/0 (ldp): xmit/recv
LDP Id: 10.131.159.252:0
Ethernet1/0 (ldp): xmit/recv
LDP Id: 10.131.191.251:0
 

show mpls ldp discovery コマンドの出力は、PE2 を P2 に接続するイーサネット インターフェイス 0/0 がパケットを送受信していることを示しています。

イーサネット インターフェイス 0/0 に対して no mpls ip コマンドを入力した場合、P2 ルータと PE2 ルータ間の LDP セッションは確立されません。PE ルータで show mpls ldp discovery コマンドを入力すると、PE2 との MPLS LDP セッションがダウンしていることがわかります。

P2# show mpls ldp discovery
 
Local LDP Identifier:
10.131.159.251:0
Discovery Sources:
Interfaces:
Ethernet0/0 (ldp): xmit
Ethernet1/0 (ldp): xmit/recv
LDP Id: 10.131.191.251:0
 

非タグ付きの例では、次に示すように、MPLS LSP traceroute の応答に No Label のタグが付いたパケットが含まれます。P2 から PE2 への出力インターフェイス(この例ではイーサネット 0/0)に対して mpls ip コマンドを入力して、インターフェイス P2 から PE2 への MPLS LSP セッションを再確立する必要があります。

PE1# traceroute mpls ipv4 10.131.159.252/32
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.230 MRU 1500 [Labels: 20 Exp: 0]
R 1 10.131.159.226 MRU 1500 [Labels: 19 Exp: 0] 80 ms
R 2 10.131.159.229 MRU 1504 [No Label] 28 ms <----No MPLS session from P2 to PE2.
! 3 10.131.159.230 40 ms

例:パケットを送信できない原因の特定

次の例は、MPLS エコー要求が送信されないことを示しています。返された Q によって、伝送エラーが示されています。

PE1# ping mpls ipv4 10.0.0.1/32
 
Sending 5, 100-byte MPLS Echos to 10.0.0.1/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
QQQQQ
Success rate is 0 percent (0/5)
 

次の show ip route コマンドは、IPv4 アドレス(10.0.0.1)が Label Forwarding Information Base(LFIB; ラベル転送情報ベース)または Routing Information Base(RIB; ルーティング情報ベース)にないことを示しています。したがって、MPLS エコー要求は送信されません。

PE1# show ip route 10.0.0.1
 
% Subnet not in table

例:IPv4 LSP でロード バランシングがイネーブルになっている場合の LSP 切断の検出

次の例では、宛先が同じパスが複数あります。これらの例の出力は、送信元ルータとターゲット ルータ間でロード バランシングが行われていることを示しています。

PE1 ルータのイーサネット インターフェイス 1/0 を動作させるには、PE1 ルータで次のコマンドを入力します。

PE1# configure terminal
 
Enter configuration commands, one per line. End with CNTL/Z.
 
PE1(config)# interface ethernet 1/0
 
PE1(config-if)# no shutdown
 
PE1(config-if)# end
 
*Dec 31 19:14:10.034: %LINK-3-UPDOWN: Interface Ethernet1/0, changed state to up
*Dec 31 19:14:11.054: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet1/0,
changed state to upend
PE1#
*Dec 31 19:14:12.574: %SYS-5-CONFIG_I: Configured from console by console
*Dec 31 19:14:19.334: %OSPF-5-ADJCHG: Process 1, Nbr 10.131.159.252 on Ethernet1/0
from LOADING to FULL, Loading Done
PE1#
 

次の例は、選択されたパスのパス インデックスが 0 であることを示しています。

switch# ping mpls ipv4 10.131.159.251/32 destination 127.0.0.1/32
 
Sending 1, 100-byte MPLS Echos to 10.131.159.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 40/40/40 ms
PE1#
*Dec 29 20:42:40.638: LSPV: Echo Request sent on IPV4 LSP, load_index 2,
pathindex 0, size 100
*Dec 29 20:42:40.638: 46 00 00 64 00 00 40 00 FF 11 9D 03 0A 83 BF FC
*Dec 29 20:42:40.638: 7F 00 00 01 94 04 00 00 0D AF 0D AF 00 4C 14 70
*Dec 29 20:42:40.638: 00 01 00 00 01 02 00 00 1A 00 00 1C 00 00 00 01
*Dec 29 20:42:40.638: C3 9B 10 40 A3 6C 08 D4 00 00 00 00 00 00 00 00
*Dec 29 20:42:40.638: 00 01 00 09 00 01 00 05 0A 83 9F FB 20 00 03 00
*Dec 29 20:42:40.638: 13 01 AB CD AB CD AB CD AB CD AB CD AB CD AB CD
*Dec 29 20:42:40.638: AB CD AB CD
*Dec 29 20:42:40.678: LSPV: Echo packet received: src 10.131.159.225,
dst 10.131.191.252, size 74
*Dec 29 20:42:40.678: AA BB CC 00 98 01 AA BB CC 00 FC 01 08 00 45 C0
*Dec 29 20:42:40.678: 00 3C 32 D6 00 00 FD 11 15 37 0A 83 9F E1 0A 83
*Dec 29 20:42:40.678: BF FC 0D AF 0D AF 00 28 D1 85 00 01 00 00 02 02
*Dec 29 20:42:40.678: 03 00 1A 00 00 1C 00 00 00 01 C3 9B 10 40 A3 6C
*Dec 29 20:42:40.678: 08 D4 C3 9B 10 40 66 F5 C3 C8
 

次の例は、選択されたパスのパス インデックスが 1 であることを示しています。

PE1# ping mpls ipv4 10.131.159.251/32 destination 127.0.0.3/32
 
Sending 1, 100-byte MPLS Echos to 10.131.159.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 40/40/40 ms
PE1#
*Dec 29 20:43:09.518: LSPV: Echo Request sent on IPV4 LSP, load_index 13,
pathindex 1, size 100
*Dec 29 20:43:09.518: 46 00 00 64 00 00 40 00 FF 11 9D 01 0A 83 BF FC
*Dec 29 20:43:09.518: 7F 00 00 03 94 04 00 00 0D AF 0D AF 00 4C 88 58
*Dec 29 20:43:09.518: 00 01 00 00 01 02 00 00 38 00 00 1D 00 00 00 01
*Dec 29 20:43:09.518: C3 9B 10 5D 84 B3 95 84 00 00 00 00 00 00 00 00
*Dec 29 20:43:09.518: 00 01 00 09 00 01 00 05 0A 83 9F FB 20 00 03 00
*Dec 29 20:43:09.518: 13 01 AB CD AB CD AB CD AB CD AB CD AB CD AB CD
*Dec 29 20:43:09.518: AB CD AB CD
*Dec 29 20:43:09.558: LSPV: Echo packet received: src 10.131.159.229,
dst 10.131.191.252, size 74
*Dec 29 20:43:09.558: AA BB CC 00 98 01 AA BB CC 00 FC 01 08 00 45 C0
*Dec 29 20:43:09.558: 00 3C 32 E9 00 00 FD 11 15 20 0A 83 9F E5 0A 83
*Dec 29 20:43:09.558: BF FC 0D AF 0D AF 00 28 D7 57 00 01 00 00 02 02
*Dec 29 20:43:09.558: 03 00 38 00 00 1D 00 00 00 01 C3 9B 10 5D 84 B3
*Dec 29 20:43:09.558: 95 84 C3 9B 10 5D 48 3D 50 78
 

選択された実際のパスを確認するには、 packet キーワードと data キーワードを指定して debug mpls lspv コマンドを入力します。


) ロード バランシング アルゴリズムは、IP ヘッダーの送信元アドレスと宛先アドレスに基づくハッシュによって、パケットを使用可能な出力パスに均一に分散しようとします。destination キーワードに address-startaddress-end、および address-increment 引数を指定しても、期待どおりの結果が得られない場合があります。


例:エコー パケットがルータから発信されるときに経由するインターフェイスの指定

次に、アップストリーム ルータからロード バランシングをテストする例を示します。

switch# ping mpls ipv4 10.131.161.251/32 ttl 1 repeat 1 dsmap hashkey ipv4 bitmap 8
 
Sending 1, 100-byte MPLS Echos to 10.131.161.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
L
Echo Reply received from 10.131.131.2
DSMAP 0, DS Router Addr 10.131.141.130, DS Intf Addr 10.131.141.130
Depth Limit 0, MRU 1500 [Labels: 54 Exp: 0]
Multipath Addresses:
127.0.0.3 127.0.0.5 127.0.0.7 127.0.0.8
DSMAP 1, DS Router Addr 10.131.141.2, DS Intf Addr 10.131.141.2
Depth Limit 0, MRU 1500 [Labels: 40 Exp: 0]
Multipath Addresses:
127.0.0.1 127.0.0.2 127.0.0.4 127.0.0.6
 

次の例は、エコー応答の送信元アドレスが 2 ホップ離れていると判断し、アップストリームにアドバタイズされた rx ラベルをチェックして、中継ルータが適切な結果を報告したことを検証する方法を示しています。

Success rate is 0 percent (0/1)
 
switch# traceroute mpls ipv4 10.131.161.251/32 destination 127.0.0.6 ttl 2
 
Tracing MPLS Label Switched Path to 10.131.161.251/32, timeout is 2 seconds
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.131.1 10.131.131.2 MRU 1500 [Labels: 37 Exp: 0]
L 1 10.131.131.2 10.131.141.2 MRU 1500 [Labels: 40 Exp: 0] 0 ms, ret code 8
L 2 10.131.141.2 10.131.150.2 MRU 1504 [Labels: implicit-null Exp: 0] 0 ms, ret code 8
switch#
switch# telnet 10.131.141.2
Trying 10.131.141.2 ... Open
 
User Access Verification
 
Password:
switch> en
 

次の例は、イーサネット出力インターフェイス 0/0 に対して LSP traceroute を実行する方法を示しています。

switch# traceroute mpls ipv4 10.131.159.251/32
 
Tracing MPLS Label Switched Path to 10.131.159.251/32, timeout is 2 seconds
 
Type escape sequence to abort.
0 10.131.159.246 MRU 1500 [Labels: 19 Exp: 0]
L 1 10.131.159.245 MRU 1504 [Labels: implicit-null Exp: 0] 4 ms
! 2 10.131.159.229 20 ms
 
switch# traceroute mpls ipv4 10.131.159.251/32 output-interface ethernet 7/1
 
Tracing MPLS Label Switched Path to 10.131.159.251/32, timeout is 2 seconds
 
Type escape sequence to abort.
0 10.131.191.230 MRU 1500 [Labels: 18 Exp: 0]
L 1 10.131.191.229 MRU 1504 [Labels: implicit-null Exp: 0] 0 ms
! 2 10.131.159.225 1 ms

例:パケット伝送のペーシング

次の例は、パケット伝送をペーシングする方法を示しています。

switch# ping mpls ipv4 10.5.5.5/32 interval 100
 
Sending 5, 100-byte MPLS Echos to 10.5.5.5/32,
timeout is 2 seconds, send interval is 100 msec:
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 28/29/36 ms PE-802

例:中継ルータに対するダウンストリーム情報の問い合わせ

次に、2 本の出力パスを持つルータに問い合わせた場合のサンプル出力を示します。

switch# ping mpls ipv4 10.161.251/32 ttl 4 repeat 1 dsmap hashkey ipv4 bitmap 16
 
Sending 1, 100-byte MPLS Echos to 10.131.161.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
L
Echo Reply received from 10.131.131.2
DSMAP 0, DS Router Addr 10.131.141.130, DS Intf Addr 10.131.141.130
Depth Limit 0, MRU 1500 [Labels: 54 Exp: 0]
Multipath Addresses:
127.0.0.3 127.0.0.6 127.0.0.9 127.0.0.10
127.0.0.12 127.0.0.13 127.0.0.14 127.0.0.15
127.0.0.16
 
DSMAP 1, DS Router Addr 10.131.141.2, DS Intf Addr 10.131.141.2
Depth Limit 0, MRU 1500 [Labels: 40 Exp: 0]
Multipath Addresses:
127.0.0.1 127.0.0.2 127.0.0.4 127.0.0.5
127.0.0.7 127.0.0.8 127.0.0.11
 
Success rate is 0 percent (0/1)
 

マルチパス アドレスにより、パケットは出力ラベル スタックを使用してルータに中継されます。出力パスの本数の確認には ping mpls コマンドが有用ですが、ルータが 2 ホップ以上離れている場合は、ルータでこれらのアドレスを使用して問い合わせ対象のルータにパケットを中継できるとはかぎりません。このような状況になるのは、IP ヘッダーの宛先アドレスが変更されたために、送信元ルータと応答ルータの間にあるルータによって、パケットが異なる方法でロード バランシングされることがあるためです。ロード バランシングは、IP ヘッダーの送信元アドレスの影響を受けます。次に、アップストリーム ルータからのロード バランシング報告をテストする例を示します。

switch# ping mpls ipv4 10.131.161.251/32 ttl 1 repeat 1 dsmap hashkey ipv4 bitmap 8
 
Sending 1, 100-byte MPLS Echos to 10.131.161.251/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
L
Echo Reply received from 10.131.131.2
DSMAP 0, DS Router Addr 10.131.141.130, DS Intf Addr 10.131.141.130
Depth Limit 0, MRU 1500 [Labels: 54 Exp: 0]
Multipath Addresses:
127.0.0.3 127.0.0.5 127.0.0.7 127.0.0.8
DSMAP 1, DS Router Addr 10.131.141.2, DS Intf Addr 10.131.141.2
Depth Limit 0, MRU 1500 [Labels: 40 Exp: 0]
Multipath Addresses:
127.0.0.1 127.0.0.2 127.0.0.4 127.0.0.6
 

中継ルータが適切な結果を報告したことを検証するには、2 ホップ離れているエコー応答の送信元アドレスを判断し、アップストリームにアドバタイズされた rx ラベルをチェックします。次に出力例を示します。

 
Success rate is 0 percent (0/1)
 

次に、traceroute の例を示します。

switch# traceroute mpls ipv4 10.131.161.251/32 destination 127.0.0.6 ttl 2
 
Tracing MPLS Label Switched Path to 10.131.161.251/32, timeout is 2 seconds
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.131.1 10.131.131.2 MRU 1500 [Labels: 37 Exp: 0]
L 1 10.131.131.2 10.131.141.2 MRU 1500 [Labels: 40 Exp: 0] 0 ms, ret code 8
L 2 10.131.141.2 10.131.150.2 MRU 1504 [Labels: implicit-null Exp: 0] 0 ms, ret code 8
switch#
switch# telnet 10.131.141.2
Trying 10.131.141.2 ... Open
 
User Access Verification
 
Password:
switch> en
 

例:ルータに対する DSMAP の問い合わせ

次の例は、ソフトウェアとハードウェアのフォワーディング レイヤに DSMAP TLV で返す必要がある深度制限を問い合わせる方法を示しています。

switch# ping mpls ipv4 10.131.159.252/32 ttl 1 dsmap
 
Sending 1, 100-byte MPLS Echos to 10.131.159.252/32,
timeout is 2 seconds, send interval is 0 msec:
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
L
Echo Reply received from 10.131.191.229
DSMAP 0, DS Router Addr 10.131.159.225, DS Intf Addr 10.131.159.225
Depth Limit 0, MRU 1508 [Labels: 18 Exp: 0]
Multipath Addresses:
127.0.0.1 127.0.0.2 127.0.0.3 127.0.0.4
127.0.0.5 127.0.0.6 127.0.0.7 127.0.0.8
127.0.0.9 127.0.0.10 127.0.0.11 127.0.0.12
127.0.0.13 127.0.0.14 127.0.0.15 127.0.0.16
127.0.0.17 127.0.0.18 127.0.0.19 127.0.0.20
127.0.0.21 127.0.0.22 127.0.0.23 127.0.0.24
127.0.0.25 127.0.0.26 127.0.0.27 127.0.0.28
127.0.0.29 127.0.0.30 127.0.0.31 127.0.0.32
Success rate is 0 percent (0/1)

例:中継ルータによるターゲット FEC スタックの検証の要求

次の例は、中継ルータで、テスト対象の LSP を識別するターゲット FEC スタックを検証する方法を示しています。

switch# traceroute mpls ipv4 10.5.5.5/32 flags fec
 
Tracing MPLS Label Switched Path to 10.5.5.5/32, timeout is 2 seconds
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.2.3.2 10.2.3.3 MRU 1500 [Labels: 19 Exp: 0] L 1 10.2.3.3 10.3.4.4 MRU 1500 [Labels: 19 Exp: 0] 40 ms, ret code 8 L 2 10.3.4.4 10.4.5.5 MRU 1504 [Labels: implicit-null Exp: 0] 32 ms, ret code 8 ! 3 10.4.5.5 40 ms, ret code 3
switch# ping mpls ipv4 10.5.5.5/32
Sending 5, 100-byte MPLS Echos to 10.5.5.5/32
timeout is 2 seconds, send interval is 0 msec:
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
! size 100, reply addr 10.4.5.5, return code 3
! size 100, reply addr 10.4.5.5, return code 3
! size 100, reply addr 10.4.5.5, return code 3
! size 100, reply addr 10.4.5.5, return code 3
! size 100, reply addr 10.4.5.5, return code 3
 
Success rate is 100 percent (5/5), round-trip min/avg/max = 28/31/32 ms

例:LSP ping のイネーブル化による、非タグ付きインターフェイスを起因とする LSP 切断の検出

次に、明示的ヌル ラベル シムがある場合に、ラベル スタックの最後に追加されるラベルの例を示します。

switch# traceroute mpls ipv4 10.131.159.252/32 force-explicit-null
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.252 MRU 1492 [Labels: 16/18/explicit-null Exp: 0/0/0]
L 1 10.131.191.229 MRU 1508 [Labels: 18/explicit-null Exp: 0/0] 0 ms
L 2 10.131.159.225 MRU 1508 [Labels: explicit-null Exp: 0] 0 ms
! 3 10.131.159.234 4 ms
 

次に、明示的ヌル ラベル シムがない場合のコマンド出力例を示します。

switch# traceroute mpls ipv4 10.131.159.252/32
 
Tracing MPLS Label Switched Path to 10.131.159.252/32, timeout is 2 seconds
 
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'X' - unknown return code, 'x' - return code 0
 
Type escape sequence to abort.
0 10.131.191.252 MRU 1496 [Labels: 16/18 Exp: 0/0]
L 1 10.131.191.229 MRU 1508 [Labels: 18 Exp: 0] 4 ms
L 2 10.131.159.225 MRU 1504 [Labels: implicit-null Exp: 0] 4 ms
! 3 10.131.159.234 4 ms

MPLS LSP ping および traceroute に関する追加情報

MPLS LSP ping および traceroute を使用した MPLS 接続のトラブルシューティングの詳細情報については、次の項を参照してください。

「関連資料」

「標準」

「MIB」

「RFC」

関連資料

関連項目
参照先

Cisco NX-OS MPLS コマンド

Cisco Nexus 7000 Series NX-OS MPLS Command Reference

標準

標準
タイトル

この機能でサポートされる新規または改訂された標準規格はありません。また、この機能による既存の標準規格サポートの変更はありません。

--

MIB

MIB
MIB のリンク

この機能によってサポートされる新しい MIB または変更された MIB はありません。またこの機能による既存 MIB のサポートに変更はありません。

選択したプラットフォーム、Cisco NX-OS リリース、およびフィーチャ セットに対する MIB を特定してダウンロードするには、次の URL にある Cisco MIB Locator を使用します。

http://www.cisco.com/go/mibs

MPLS LSP ping および traceroute の機能履歴

表 27-5 は、この機能のリリースの履歴です。

 

表 27-5 MPLS LSP ping および traceroute の機能履歴

機能名
リリース
機能情報

MPLS LSP ping および traceroute

5.2(1)

この機能が導入されました。