この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、セグメント ルーティングの設定方法について説明します。
セグメント ルーティングとは、送信元ルーティングと同様に、パケットが辿るパスをパケット自体にエンコードする手法のことです。ノードは制御された一連の命令(セグメントと呼ばれます)によってパケットをステアリングするために、パケットの前にセグメント ルーティング ヘッダーを付加します。各セグメントを識別するセグメント ID(SID)は、フラットな 32 ビットの符号なし整数からなります。
セグメントのサブクラスである Border Gateway Protocol(BGP)が、BGP 転送命令を識別します。プレフィックス セグメントは使用可能なすべての等コスト マルチパス(ECMP)パスを使用して、宛先への最短パスに沿ってパケットをステアリングします。
セグメント ルーティングのアーキテクチャは、MPLS データ プレーンに直接適用されます。
セグメント ルーティングをサポートするためには、BGP が BGP プレフィックスのセグメント ID(SID)をアドバタイズできなければなりません。BGP プレフィックス SID は、セグメント ルーティング BGP ドメイン内で常にグローバルな ID であり、この SID によって、BGP によって計算された ECMP 対応のベスト パスでパケットを関連プレフィックスに転送するための命令が特定されます。BGP プレフィックス SID は、BGP プレフィックス セグメントを識別します。
セグメント ルーティング グローバル ブロック(SRGB)とは、MPLS セグメント ルーティングに予約されたローカル ラベルの範囲のことです。デフォルトのラベル範囲は 16000 ~ 23999 です。
SRGB は、セグメント ルーティング ノードのローカル プロパティです。各ノードにはそれぞれに異なる SRGB 値を設定できるため、BGP プレフィックス セグメントに関連付けられた絶対 SID 値はノードごとに異なる場合があります。
SRGB は、動的なラベル範囲の正しいサブセットである必要があり、オプションの MPLS スタティック ラベル範囲と重複することがあってはなりません。設定済みまたはデフォルトの SRGB 範囲内にある動的ラベルがすでに割り当てられている場合、その設定は承認されて、SRGB 範囲内にある既存の動的ラベルは元のクライアントに割り当てられたままになります。BGP ルータがこれらのラベルのいずれかを割り当てようとすると、SRGB マッピングが失敗し、BGP ルータは動的ラベル割り当てに復帰します。SRGB 範囲を変更すると、新しい範囲の割り当てが可能であるかどうかに関わらず、クライアントはその範囲内のラベルの割り当てを解除します。
インサービス ソフトウェア アップグレード(ISSU)は、BGP グレートフル リスタートによって最小限サポートされます。すべての状態(セグメント ルーティング状態を含む)は、BGP ルートのピアから再学習する必要があります。グレースフル リスタートの処理中、前に学習されたルートとラベルの状態は保持されます。
以下の単純な例では、3 台のルータのすべてが iBGP を実行して、互いにネットワーク層到達可能性情報(NRLI)をアドバタイズします。また、ルータはそれぞれのループバック インターフェイスをネクスト ホップとしてアドバタイズすることによって、ルータ 2.2.2.2 とルータ 3.3.3.3 間に ECMP が提供されます。
次の表に、この機能のライセンス要件を示します。
セグメント ルーティングに関する注意事項および制約事項は、次のとおりです。
セグメント ルーティングは、N9K モードで動作している Cisco Nexus 3100 シリーズ スイッチでのみサポートされます。
スタティック MPLS、MPLS セグメント ルーティング、および MPLS 除去を同時にイネーブルにすることはできません。
スタティック MPLS、MPLS セグメント ルーティング、MPLS 除去は相互に排他的であるため、マルチホップ BGP 用にアンダーレイでルーティングしているセグメントのみがシングルホップ BGP です。オーバーレイとして eBGP を実行している iBGP マルチホップ トポロジはサポートされていません。
特定のインターフェイスへの転送に続く MPLS ポップはサポートされません。PHP(penultimate hop pop)は、コントロール プレーンが IPv4 Implicit NULL ラベルをインストールしている場合でも、Explicit NULL ラベルをアウトラベルとしてラベル FIB(LFIB)にインストールすることによって回避されます。
BGP ラベル付きユニキャストおよび BGP セグメント ルーティングは、IPv6 プレフィックスではサポートされていません。
BGP ラベル付きユニキャストおよび BGP セグメント ルーティングは、トンネル インターフェイス経由(GRE および VXLAN を含む)または vPC アクセス インターフェイスではサポートされていません。
Path MTU Discovery(RFC 2923)は、MPLS Label Switched Path(LSP)経由またはセグメント ルーティングされたパスではサポートされていません。
Cisco Nexus 9200 シリーズ スイッチでは、隣接統計情報はレイヤ 3 または MPLS の隣接関係では保持されません。
Cisco Nexus 9500 シリーズ スイッチでは、MPLS LSP およびセグメント ルーティングされたパスは、サブインターフェイス(ポート チャネルまたは通常のレイヤ 3 ポート)ではサポートされていません。
Cisco Nexus 9500 シリーズ スイッチでは、セグメント ルーティングはデフォルトの階層型ルーティング モードでのみサポートされます。
BGP設定コマンドの neighbor-down fib-accelerate および suppress-fib-pending は、MPLS プレフィクスではサポートされていません。
RFC 2973 および RFC 3270 で定義されている統一モデルはサポートされません。その結果、IP DSCP ビットが強制された MPLS ヘッダーにコピーされず、TTL は常に 255 に設定されます。
セグメント ルーティング グローバル ブロック(SRGB)の再構成により、BGP プロセスが自動的に再起動され、既存の URIB および ULIB エントリを更新します。トラフィック損失が数秒間発生するため、稼働中に SRGB を再設定すべきではありません。
ネットワークの拡張性のため、トップオブラック(ToR)または境界リーフ スイッチから接続されているプレフィクスをアドバタイズするマルチホップ BGP とともに階層型ルーティング設計を使用することを推奨します。
BGP ルート リフレクタのトポロジ(RFC 4556)はセグメント ルーティング パスではサポートされていません。
BGP セッションは MPLS LSP またはセグメント ルーティング パスではサポートされていません。
レイヤ 3 転送整合性チェッカは MPLS ルートではサポートされていません。
相互に排他的な MPLS 機能(たとえば、スタティック MPLS など)がイネーブルにされていない限り、MPLS セグメント ルーティングをイネーブルにできます。
MPLS 機能セットをインストールしてイネーブルにするには、install feature-set mpls および feature-set mpls コマンドを使用します。
2.
[no] feature mpls segment-routing
3.
(任意) show running-config | inc 'feature mpls segment-routing'
4.
(任意) copy running-config startup-config
セグメント ルーティングに使用するインターフェイスに対して MPLS をイネーブルにできます。
MPLS 機能セットをインストールしてイネーブルにするには、install feature-set mpls および feature-set mpls コマンドを使用します。
3.
[no] mpls ip forwarding
4.
(任意) copy running-config startup-config
IPv4 ユニキャスト アドレス ファミリの MPLS ラベル割り当てを設定できます。
MPLS 機能セットをインストールしてイネーブルにするには、install feature-set mpls および feature-set mpls コマンドを使用します。
MPLS セグメント ルーティング機能をイネーブルにする必要があります。MPLS セグメント ルーティングのイネーブル化を参照してください。
2.
[no] router bgpautonomous-system-number
3.
address-family ipv4 unicast
4.
[no] allocate-label {all | route-maproute-map-name}
5.
exit
6.
neighboripv4-addressremote-asautonomous-system-number
7.
address-family ipv4 labeled-unicast
8.
(任意) show bgp ipv4 labeled-unicastprefix
9.
(任意) copy running-config startup-config
セグメント ルーティング グローバル ブロック(SRGB)には、開始 MPLS ラベルと終了 MPLS ラベルを設定できます。
MPLS 機能セットをインストールしてイネーブルにするには、install feature-set mpls および feature-set mpls コマンドを使用します。
MPLS セグメント ルーティング機能をイネーブルにする必要があります。MPLS セグメント ルーティングのイネーブル化を参照してください。
2.
[no] segment-routing mpls
3.
[no] global-blockbeginning-labelending-label
4.
(任意) show mpls label range
5.
(任意) copy running-config startup-config
network コマンドと一致するルートのラベル インデックスを設定できます。これにより、ローカル ラベルを指定する network コマンドにルート マップが指定されている場合、set label-index コマンドを含むルート マップで設定されたローカル プレフィックスに対して BGP プレフィックス SID がアドバタイズされるようになります。(network コマンドの詳細については、『Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide』の「Configuring Basic BGP」の章を参照してください)。
(注) | ルート マップが network コマンド以外のコンテキストで指定されている場合、ルート マップのラベル インデックスは無視されます。また、プレフィックスが allocate-label route-maproute-map-name コマンドで設定されているかどうかに関わらず、ラベルはルート マップのラベル インデックスを持つプレフィックスに対して割り当てられます。 |
3.
[no] set label-indexindex
4.
exit
5.
router bgpautonomous-system-number
6.
address-family ipv4 unicast
7.
networkip-prefix [route-mapmap-name]
8.
(任意) show route-map [map-name]
9.
(任意) copy running-config startup-config
セグメント ルーティングの設定を表示するには、次のいずれかの作業を行います。
コマンド | 目的 |
---|---|
show bgp ipv4 labeled-unicastprefix |
アドバタイズされたラベル インデックスと、指定された IPv4 プレフィックスに選択されているローカル ラベルを表示します。 |
show bgp paths |
アドバタイズされたラベル インデックスを含め、BGP パス情報を表示します。 |
show mpls label range |
設定されている SRGB のラベル範囲を表示します。 |
show route-map [map-name] |
ラベル インデックスを含め、ルート マップに関する情報を表示します。 |
show running-config | inc 'feature mpls segment-routing' |
MPLS セグメント ルーティング機能の状態を表示します。 |
以下に、プレフィクスを指定した show bgp ipv4 labeled-unicast コマンドを使用して、アドバタイズされたラベル インデックスと選択されているローカル ラベルを表示する例を示します。
switch# show bgp ipv4 labeled-unicast 19.19.19.19/32 BGP routing table information for VRF default, address family IPv4 Label Unicast BGP routing table entry for 19.19.19.19/32, version 2 Paths: (1 available, best #1) Flags: (0x20c0012) on xmit-list, is in urib, is backup urib route, has label label af: version 2, (0x100002) on xmit-list local label: 16010 Advertised path-id 1, Label AF advertised path-id 1 Path type: external, path is valid, is best path AS-Path: 19 , path sourced external to AS 60.1.1.19 (metric 0) from 60.1.1.19 (100.100.100.100) Origin IGP, MED not set, localpref 100, weight 0 Received label 3 Prefix-SID Attribute: Length: 10 Label Index TLV: Length 7, Flags 0x0 Label Index 10 Path-id 1 not advertised to any peer Label AF advertisement Path-id 1 not advertised to any peer
この項の例では、2 台のルータ間で共通の BGP プレフィックス SID の設定を示します。
以下に、BGP スピーカ設定 10.10.10.10/32 および 20.20.20.20/32 を、それぞれラベル インデックス 10、20 でアドバタイズする例を示します。この例では、デフォルトのセグメント ルーティング グローバル ブロック(SRGB)である 16000 から 23999 の範囲を使用します。
hostname s1 install feature-set mpls feature-set mpls feature telnet feature bash-shell feature scp-server feature bgp feature mpls segment-routing segment-routing mpls vlan 1 route-map label-index-10 permit 10 set label-index 10 route-map label-index-20 permit 10 set label-index 20 vrf context management ip route 0.0.0.0/0 10.30.108.1 interface Ethernet1/1 no switchport ip address 10.1.1.1/24 no shutdown interface mgmt0 ip address dhcp vrf member management interface loopback1 ip address 10.10.10.10/32 interface loopback2 ip address 20.20.20.20/32 line console line vty router bgp 1 address-family ipv4 unicast network 10.10.10.10/32 route-map label-index-10 network 20.20.20.20/32 route-map label-index-20 allocate-label all neighbor 10.1.1.2 remote-as 2 address-family ipv4 labeled-unicast
以下に、BGP スピーカから設定を受信する例を示します。
hostname s2 install feature-set mpls feature-set mpls feature telnet feature bash-shell feature scp-server feature bgp feature mpls segment-routing segment-routing mpls vlan 1 vrf context management ip route 0.0.0.0/0 10.30.97.1 ip route 0.0.0.0/0 10.30.108.1 interface Ethernet1/1 no switchport ip address 10.1.1.2/24 ipv6 address 10:1:1::2/64 no shutdown interface mgmt0 ip address dhcp vrf member management interface loopback1 ip address 2.2.2.2/32 line console line vty router bgp 2 address-family ipv4 unicast allocate-label all neighbor 10.1.1.1 remote-as 1 address-family ipv4 labeled-unicast
以下に、BGP スピーカからの設定を表示する例を示します。この例では show コマンドによって、16000 から 23999 の SRGB 範囲内にあるラベル 16010 にマップするラベル インデックス 10 のプレフィックス 10.10.10.10 が表示されます。
switch# show bgp ipv4 labeled-unicast 10.10.10.10/32 BGP routing table information for VRF default, address family IPv4 Label Unicast BGP routing table entry for 10.10.10.10/32, version 7 Paths: (1 available, best #1) Flags: (0x20c001a) on xmit-list, is in urib, is best urib route, is in HW, , has label label af: version 8, (0x100002) on xmit-list local label: 16010 Advertised path-id 1, Label AF advertised path-id 1 Path type: external, path is valid, is best path, no labeled nexthop, in rib AS-Path: 1 , path sourced external to AS 10.1.1.1 (metric 0) from 10.1.1.1 (10.10.10.10) Origin IGP, MED not set, localpref 100, weight 0 Received label 0 Prefix-SID Attribute: Length: 10 Label Index TLV: Length 7, Flags 0x0 Label Index 10 Path-id 1 not advertised to any peer Label AF advertisement Path-id 1 not advertised to any peer
関連項目 | マニュアル タイトル |
---|---|
BGP |
『Cisco Nexus 9000 Series Unicast Routing Configuration Guide』 |