Cisco NCS 5000 ルータ向けMPLS コンフィギュレーションガイド 、 リリース 6.0.x
静的なラベル付けの実装
静的なラベル付けの実装

静的なラベル付けの実装

MPLS の静的なラベル付け

MPLS の静的機能では、IPv4 プレフィックスにローカル ラベルを静的に割り当てることができます。また、静的ラベルを含むパケットの転送に必要なネクストホップ情報を指定することで、ラベル スイッチド パス(LSP)をこれらの静的ラベル用にプロビジョニングできます。

静的に割り当てられたラベルと動的に割り当てられたラベルに不一致がある場合は、ルータによって警告メッセージがコンソール ログに発行されます。この警告メッセージによって、不一致を特定して解決できます。

動的ラベル上での静的ラベルをアドバタイズすると、次の利点が得られます。
  • ピアから不要なラベルを受信するリスク(侵害された MPLS 動的ラベリング プロトコルの実行)が軽減され、セキュリティが向上します。
  • 定義済みの LSP 上でユーザが完全に制御できるようになります。
  • 動的なラベル付けが処理されないため、システム リソースの使用が最適化されます。

制約事項

  • IPv6 パケットでの静的なラベル付けはサポートされていません。
  • ルータは静的ラベルの設定時にラベルの不一致を回避しません。生成されたすべての不一致は後で解消する必要があります。
  • 等コスト マルチパス ルーティング(ECMP)はサポートされていません。
  • インターフェイスを明示的に設定して、静的 MPLS ラベルを持つトラフィックを処理する必要があります。

ラベル範囲の定義および MPLS カプセル化のイネーブル化

デフォルトでは、MPLS カプセル化はすべてのインターフェイス上でディセーブルになっています。MPLS カプセル化は、静的 MPLS ラベル付きのトラフィックが通過するすべての入力 MPLS インターフェイスおよび出力 MPLS インターフェイス上で明示的にイネーブルになっている必要があります。

また、動的ラベルの範囲を定義する必要もあります。この動的範囲外にあるすべてのラベルが、静的ラベルとして手動による割り当てに使用できます。ルータは、静的に設定されたラベルを指定したラベルの範囲と照合して確認しません。したがって、ラベルの不一致を防止するには、静的 MPLS ラベルを動的ラベルの範囲に入らないように設定することが必要です。

設定例

MPLS の静的なラベル付けの設定を実行するには、以下を実行する必要があります。値は例として示しています。
  1. 動的ラベル範囲を定義します。このタスクでは 17000 ~ 18000 で設定されます。

  2. tenGigE 0/0/0/5 インターフェイス上で MPLS カプセル化をイネーブルにします。

  3. 特定の入力ラベル 24035 に対して静的な MPLS LSP をセットアップします。

  4. ラベル 24035 で受信したパケットの場合に、MPLSプロトコルがラベルをスワップし、24036 のラベルを適用するように転送情報を指定します。新しいラベルを適用した後、10 ギガビット イーサネット インターフェイスの 0/0/0/1 を通じて、次のホップである 10.2.2.2 にパケットを転送します。

Router(config)#mpls label range table 0 17000 18000
Router(config)#commit

Router(config)#mpls static

Router(config-mpls-static)#interface tenGigE 0/0/0/5
Router(config-mpls-static)#address-family ipv4 unicast
Router(config-mpls-static-af)#local-label 24035 allocate

Router(config-mpls-static-af-lbl)#forward
Router(config-mpls-static-af-lbl-fwd)#path 1 nexthop tenGigE 0/0/0/1 10.2.2.2 out-label 24036
Router(config-mpls-static-af-lbl-fwd)# commit

確認

MPLS がイネーブルになっているインターフェイスを確認します。
RP/0/RP0/CPU0:router# show  mpls interfaces
Mon May 12 06:21:30.937 DST
Interface                  LDP      Tunnel   Static   Enabled
-------------------------- -------- -------- -------- --------
TenGigE0/0/0/5								     No       No       Yes      Yes

指定したラベル値のステータスが「Created」であることを確認します。
RP/0/RP0/CPU0:router#show mpls static local-label all
Tue Apr 22 18:21:55.764 UTC
Label   VRF             Type         Prefix           RW Configured   Status   
------- --------------- ------------ ---------------- --------------- -------- 
24035   default         X-Connect    NA               Yes             Created

動的範囲をチェックし、指定したローカル ラベル値がこの範囲にないことを確認します。
RP/0/RP0/CPU0:router#show mpls label range
Mon Apr 28 19:56:00.596 IST
Range for dynamic labels: Min/Max: 17000/18000

MPLS の動的設定が適用され、ラベル転送が行われていることを確認します。
RP/0/RP0/CPU0:router#show mpls lsd forwarding         
Wed Nov 25 21:40:57.918 UTC
In_Label, (ID), Path_Info: <Type>
24035, (Static), 1 Paths
   1/1: IPv4, 'default':4U, BE1.2, nh=10.20.3.1, lbl=35001, flags=0x0, ext_flags=0x0

関連コマンド

  • mpls static

  • mpls label range

  • show mpls interfaces

ラベル不一致の特定と解消

静的ラベルまたはラベルの範囲の設定時または設定解除時は、次の場合にラベルの不一致が発生する可能性があります。

  • 動的ラベルとすでにバインディングされている IP プレフィックスに静的ラベルを設定した。
  • 同じラベル値が別の IP プレフィックスに動的に割り当てられている場合に、その IP プレフィックスに静的ラベルを設定した。

確認

次の show コマンドを使用してラベルの不一致を特定します。

Router#show mpls static local-label discrepancy 
Tue Apr 22 18:36:31.614 UTC
Label   VRF             Type         Prefix           RW Configured   Status   
------- --------------- ------------ ---------------- --------------- -------- 
24000   default         X-Connect     NA              Yes             Discrepancy

Router#show mpls static local-label all 
Tue Apr 22 18:36:31.614 UTC
Label   VRF             Type         Prefix           RW Configured   Status
------- --------------- ------------ ---------------- --------------- --------
24000   default         X-Connect    N/A              Yes             Discrepancy
24035   default         X-Connect    N/A              Yes             Created

RP/0/RP0/CPU0:router#show log
Thu Apr 24 14:18:57.655 UTC
Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns)
    Console logging: level warnings, 199 messages logged
    Monitor logging: level debugging, 0 messages logged
    Trap logging: level informational, 0 messages logged
    Buffer logging: level debugging, 2 messages logged

Log Buffer (307200 bytes):

RP/0/RSP0/CPU0:Apr 24 14:18:53.743 : mpls_static[1043]: %ROUTING-MPLS_STATIC-7-ERR_STATIC_LABEL_DISCREPANCY : 
The system detected 1 label discrepancies (static label could not be allocated due to conflict with other applications).  
Please use 'clear mpls static local-label discrepancy' to fix this issue. 
RP/0/RSP0/CPU0:Apr 24 14:18:53.937 : config[65762]: %MGBL-CONFIG-6-DB_COMMIT : Configuration committed by user 'cisco'. 
Use 'show configuration commit changes 1000000020' to view the changes. 

訂正

ラベルの不一致は、動的ラベルが割り当てられている IP プレフィックスに新しいラベルを割り当てることによって解消されます。不一致解消中は、静的ラベル設定が優先されます。不一致解消中は、トラフィックが影響を受けます。

Router# clear mpls static local-label discrepancy all

不一致が解消されたことを確認します。

Router# show mpls static local-label all
Wed Nov 25 21:45:50.368 UTC
Label   VRF             Type         Prefix           RW Configured   Status
------- --------------- ------------ ---------------- --------------- --------
24000   default         X-Connect    N/A              Yes             Created
24035   default         X-Connect    N/A              Yes             Created

関連コマンド

  • show mpls static local-label discrepancy

  • clear mpls static local-label discrepancy all