はじめに
このドキュメントでは、Cisco Nexus NXOS®ベースのスイッチでルート再配布を設定する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- Nexus NX-OS ソフトウェア
- ルーティングプロトコル:Open Shortest Path First(OSPF)、ボーダーゲートウェイプロトコル(BGP)、Enhanced Interior Gateway Routing Protocol(EIGRP)。
使用するコンポーネント
このドキュメントの情報は、NXOSバージョン10.2.5.Mが稼働するCisco Nexus 9000に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
設定
ネットワーク図
- NEXUS AはOSPFプロセス21でループバックをアドバタイズしています。
loopback0 192.168.1.1/32
- NEXUS BはOSPFプロセス21でループバックをアドバタイズしています。
loopback0 192.168.2.1/32
- NEXUS CはEIGRPプロセス19でループバックをアドバタイズしています。
loopback10 172.16.9.1/32
- NEXUS DはEIGRPプロセス19でループバックをアドバタイズしています。
loopback10 172.16.21.1/32
コンフィギュレーション
この場合、Nexusスイッチは、OSPF、iBGP、およびEIGRPセッションを使用してネイバーシップセッションを確立しています。
注:1台のルータ上の2つ以上のルーティングプロトコル間で再配布を行う場合、再配布は推移的ではありません。つまり、ルータがプロトコル1をプロトコル2に再配布し、次にプロトコル2をプロトコル3に再配布した場合、プロトコル1からのルートはプロトコル3に再配布されません。
OSPFへの再配布
NEXUS B:
ステップ 1:再配布する必要があるプレフィックスを含むプレフィックスリストを設定します。
Nexus-B(config)# ip prefix-list REDISTRIBUTION seq 5 permit 0.0.0.0/0 le 32
注:手順2で空白のルートマップを設定することで、この手順を省略できます。0.0.0.0/0 le 32内部プレフィックスリストはすべてのルートを許可します。この記事のプレフィックスリスト設定の目的は、再配布されるルートを選択およびフィルタリングできることを示すことです。
ステップ 2:プレフィックスリストで指定された条件に一致するルートマップを作成します。
Nexus-B(config)# route-map BGP-TO-OSPF permit 10
Nexus-B(config-route-map)# match ip address prefix-list REDISTRIBUTION
Nexus-B(config-route-map)# match route-type internal
注:match route-type internalコマンドはiBGPルートを再配布するための要件です。デフォルトではeBGPルートのみが再配布されます。
ステップ 3:別のプロトコル(この場合はiBGP)から到達するOSPFにルートを再配布します。
Nexus-B(config)# router ospf 21
Nexus-B(config-router)# router-id 2.2.2.2
Nexus-B(config-router)# redistribute bgp 6500 route-map BGP-TO-OSPF
BGPへの再配布
NEXUS B:
ステップ 1: 再配布する必要があるプレフィックスを含むプレフィックスリストを設定します。
Nexus-B(config)# ip prefix-list REDISTRIBUTION seq 5 permit 0.0.0.0/0 le 32
ステップ 2: プレフィックスリストで指定された条件に一致するルートマップを作成します。
Nexus-B(config)# route-map OSPF-TO-BGP permit 10
Nexus-B(config-route-map)# match ip address prefix-list REDISTRIBUTION
ステップ 3: 別のプロトコル(この場合はOSPF)から着信するBGPにルートを再配布します。
Nexus-B(config)# router bgp 6500
Nexus-B(config-router)# address-family ipv4 unicast
Nexus-B(config-router-af)# redistribute ospf 21 route-map OSPF-TO-BGP
Nexus-B(config-router-af)# neighbor 10.24.1.2
Nexus-B(config-router-neighbor)# remote-as 6500
Nexus-B(config-router-neighbor)# address-family ipv4 unicast
NEXUS C:
ステップ 1: 再配布する必要があるプレフィックスを含むプレフィックスリストを設定します。
Nexus-C(config)# ip prefix-list REDISTRIBUTION seq 5 permit 0.0.0.0/0 le 32
ステップ 2: プレフィックスリストで指定された条件に一致するルートマップを作成します。
Nexus-C(config)# route-map EIGRP-TO-BGP permit 10
Nexus-C(config-route-map)# match ip address prefix-list REDISTRIBUTION
ステップ 3: 別のプロトコル(この場合はEIGRP)から着信するBGPにルートを再配布します。
Nexus-C(config)# router bgp 6500
Nexus-C(config-router)# address-family ipv4 unicast
Nexus-C(config-router-af)# redistribute eigrp 19 route-map EIGRP-TO-BGP
Nexus-C(config-router-af)# neighbor 10.24.1.1
Nexus-C(config-router-neighbor)# remote-as 6500
Nexus-C(config-router-neighbor)# address-family ipv4 unicast
EIGRPへの再配布
NEXUS C:
ステップ 1: 再配布する必要があるプレフィックスを含むプレフィックスリストを設定します。
Nexus-C(config)# ip prefix-list REDISTRIBUTION seq 5 permit 0.0.0.0/0 le 32
ステップ 2: プレフィックスリストで指定された条件に一致するルートマップを作成します。
Nexus-C(config)# route-map BGP-TO-EIGRP permit 10
Nexus-C(config-route-map)# match ip address prefix-list REDISTRIBUTION
Nexus-C(config-route-map)# match route-type internal
ステップ 3: 別のプロトコル(この場合はOSPF)から到達するルートをEIGRPに再配布します。
Nexus-C(config)# router eigrp 19
Nexus-C(config-router)# address-family ipv4 unicast
Nexus-C(config-router-af)# autonomous-system 17
Nexus-C(config-router-af)# router-id 11.11.11.11
Nexus-C(config-router-af)# redistribute bgp 6500 route-map BGP-TO-EIGRP
確認
再配布が設定されると、Nexusデバイスは他のプロトコルからのルートの受信を開始します。これらのルートは、外部ルートとして表示されます。
Nexus-Aルーティングテーブル:
Nexus-A# show ip route ospf-21
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%
' in via output denotes VRF
172.16.21.1/32, ubest/mbest: 1/0 *via 10.12.1.2, Eth1/36, [110/1], 00:00:57, ospf-21, type-2, tag 6500 <<<< this prefix is external to OSPF as it is coming from redistribution, originated from Nexus-B, the original route comes from Nexus-D. 192.168.2.1/32, ubest/mbest: 1/0 *via 10.12.1.2, Eth1/36, [110/2], 00:00:57, ospf-21, intra Nexus-A# show ip route direct IP Route Table for VRF "default" '*' denotes best ucast next-hop '**' denotes best mcast next-hop '[x/y]' denotes [preference/metric] '%
' in via output denotes VRF
10.12.1.0/24, ubest/mbest: 1/0, attached *via 10.12.1.1, Eth1/36, [0/0], 01:37:21, direct 192.168.1.1/32, ubest/mbest: 2/0, attached *via 192.168.1.1, Lo0, [0/0], 23:42:19, direct
Nexus-Bルーティングテーブル:
Nexus-B# show ip route ospf-21
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%
' in via output denotes VRF
192.168.1.1/32, ubest/mbest: 1/0 *via 10.12.1.1, Eth1/49, [110/2], 00:15:08, ospf-21, intra Nexus-B# show ip route bgp-6500 IP Route Table for VRF "default" '*' denotes best ucast next-hop '**' denotes best mcast next-hop '[x/y]' denotes [preference/metric] '%
' in via output denotes VRF
172.16.21.1/32, ubest/mbest: 1/0 *via 10.24.1.2, [200/128576], 00:19:49, bgp-6500, internal, tag 6500 <<< This prefix is learned by iBGP from Nexus-C, the original route is coming from the EIGRP redistribution, originated from NexusD.
Nexus-Cルーティングテーブル:
Nexus-C# show ip route bgp-6500
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%
' in via output denotes VRF
192.168.1.1/32, ubest/mbest: 1/0 *via 10.24.1.1, [200/2], 00:15:59, bgp-6500, internal, tag 6500 <<< This prefix is coming from iBGP, the route was originated from Nexus-A. Nexus-C# show ip route eigrp-19 IP Route Table for VRF "default" '*' denotes best ucast next-hop '**' denotes best mcast next-hop '[x/y]' denotes [preference/metric] '%
' in via output denotes VRF
172.16.21.1/32, ubest/mbest: 1/0 *via 10.36.1.2, Eth1/49, [90/128576], 00:26:03, eigrp-19, internal
EIGRP以外の再配布統計情報:
Nexus-C# show ip eigrp 19 route-map statistics redistribute bgp 6500
IP-EIGRP Route-map Traffic Statistics for AS 17 VRF default
C: No. of comparisions, M: No. of matches
route-map BGP-TO-EIGRP permit 10
match ip address prefix-list REDISTRIBUTION C: 2 M: 2
match route-type internal C: 2 M: 2
Total accept count for policy: 2
Total reject count for policy: 0
Nexus-Dルーティングテーブル:
Nexus-D# show ip route eigrp-19
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%
' in via output denotes VRF
172.16.9.1/32, ubest/mbest: 1/0 *via 10.36.1.1, Eth1/2, [90/128576], 00:29:14, eigrp-19, internal 192.168.1.1/32, ubest/mbest: 1/0 *via 10.36.1.1, Eth1/2, [170/51456], 00:12:49, eigrp-19, external, tag 6500 <<< This prefix is external to EIGRP as it is coming from redistribution, it comes from BGP but it was originated on Nexus-A. Nexus-D# sh ip route direct IP Route Table for VRF "default" '*' denotes best ucast next-hop '**' denotes best mcast next-hop '[x/y]' denotes [preference/metric] '%
' in via output denotes VRF
10.36.1.0/24, ubest/mbest: 1/0, attached *via 10.36.1.2, Eth1/2, [0/0], 1d00h, direct 172.16.21.1/32, ubest/mbest: 2/0, attached *via 172.16.21.1, Lo10, [0/0], 01:47:30, direct
Nexus-B(config)# router bgp 6500
Nexus-B(config-router)# address-family ipv4 unicast
Nexus-B(config-router-af)# redistribute ospf 21 route-map OSPF-TO-BGP
Nexus-B(config-router-af)# neighbor 10.24.1.2
Nexus-B(config-router-neighbor)# remote-as 6500
Nexus-B(config-router-neighbor)# address-family ipv4 unicast