Cisco Nexus OSPF 特定のネイバーからのルートの AD 値を変える方法

スイッチ
スポンサーリンク

作業環境

  • Nexsus 9000v
    • NXOS: version 9.3(10)

検証構成

上の構成で Nexus01 側にて Nexus02 から OSPF で受信したルートの AD 値を 200 にするよう設定してみます。

特定のネイバーからのルートを優先したり、非優先にしたりしたい場合にこのような設定を行います。

ベースとなる基本設定

Nexus01 と Nexus02 の基本的な設定として以下が設定されているものとします。

Nexus01 側

route-map Direct_to_OSPF permit 10
  set metric 100
  set metric-type type-1

interface Vlan10
  no shutdown
  ip address 192.168.75.111/24
  ip router ospf 10 area 0.0.0.0

interface Vlan20
  no shutdown
  ip address 172.16.20.1/24

interface Ethernet1/1
  switchport access vlan 10

interface Ethernet1/2
  switchport access vlan 20

interface loopback0
  ip address 10.1.1.1/32
icam monitor scale

router ospf 10
  router-id 10.1.1.1
  redistribute direct route-map Direct_to_OSPF

Nexus02 側

route-map Direct_to_OSPF permit 10
  set metric 100
  set metric-type type-1

interface Vlan10
  no shutdown
  ip address 192.168.75.112/24
  ip router ospf 10 area 0.0.0.0

interface Vlan30
  no shutdown
  ip address 172.16.30.1/24

interface Ethernet1/1
  switchport access vlan 10

interface Ethernet1/2
  switchport access vlan 30

interface loopback0
  ip address 10.1.1.2/32
icam monitor scale

router ospf 10
  router-id 10.1.1.2
  redistribute direct route-map Direct_to_OSPF

AD 値を変える設定方法

以下では上記の設定をベースとして、Nexus01 側で、Nexus02 から OSPF で受信したルートの AD 値を 200 にするよう設定してみます。

必要な設定は以下です。

  • プレフィックスリストの設定
  • ルートマップの設定
  • OSPF プロセスでのテーブルマップの設定

プレフィックスリストの設定

設定の中でプレフィックスリストを使用するため、まずはプレフィックスリストを設定します。このプレフィックスリストでは、AD 値を変更するルートのソースとなるルータ(今回の例では Nexus02)の IP アドレス(ルータ ID)を指定します。

  • ip prefix-list <プレフィックスリスト名> permit <アドレス/マスク長>
ip prefix-list Nexus02 permit 10.1.1.2/32

ルートマップの設定

ルートマップでは、AD 値を変更するルートのソースとなるルータ(今回の例では Nexus02)から受信したルートの AD 値を指定します。

  • route-map <ルートマップ名> permit <シーケンス番号>
    • match ip route-source prefix-list <プレフィックスリスト名>
    • set distance <AD 値>
route-map Nexus02ad200 permit 10
  match ip route-source prefix-list Nexus02
  set distance 200

OSPF プロセスでのテーブルマップの設定

最後に OSPF プロセスに対して、上で作成したルートマップをテーブルマップとして設定します。

  • router ospf <プロセス ID>
    • table-map <ルートマップ名>
router ospf 10
  table-map Nexus02ad200

AD 値の確認

Nexus01 のルーティングテーブルを確認してみます。

Nexus01# show ip route
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>

10.1.1.1/32, ubest/mbest: 2/0, attached
    *via 10.1.1.1, Lo0, [0/0], 01:08:15, local
    *via 10.1.1.1, Lo0, [0/0], 01:08:15, direct
10.1.1.2/32, ubest/mbest: 1/0
    *via 192.168.75.112, Vlan10, [200/140], 00:56:17, ospf-10, type-1 '←★注目★'
172.16.20.0/24, ubest/mbest: 1/0, attached
    *via 172.16.20.1, Vlan20, [0/0], 01:09:44, direct
172.16.20.1/32, ubest/mbest: 1/0, attached
    *via 172.16.20.1, Vlan20, [0/0], 01:09:44, local
172.16.30.0/24, ubest/mbest: 1/0
    *via 192.168.75.112, Vlan10, [200/140], 00:56:17, ospf-10, type-1 '←★注目★'
192.168.75.0/24, ubest/mbest: 1/0, attached
    *via 192.168.75.111, Vlan10, [0/0], 01:10:26, direct
192.168.75.111/32, ubest/mbest: 1/0, attached
    *via 192.168.75.111, Vlan10, [0/0], 01:10:26, local

上記の通り、Nexus02 から OSPF で受信したルートの AD 値 が 200 になっていることが分かります。

show ip ospf route でも distance が 200 になっていることが分かります。

Nexus01# show ip ospf route
 OSPF Process ID 10 VRF default, Routing Table
  (D) denotes route is directly attached      (R) denotes route is in RIB
  (L) denotes route label is in ULIB          (NHR) denotes next-hop is in RIB
10.1.1.2/32 (type-1)(R) area 0.0.0.0
     via 192.168.75.112/Vlan10  , cost 140 distance 200 (NHR)
172.16.30.0/24 (type-1)(R) area 0.0.0.0
     via 192.168.75.112/Vlan10  , cost 140 distance 200 (NHR)
192.168.75.0/24 (intra)(D) area 0.0.0.0
     via 192.168.75.111/Vlan10*  , cost 40 distance 110 (NHR)

参考資料

Cisco Nexus 9000 シリーズ NX-OS ユニキャスト ルーティング設定ガイド - OSPFv2 の設定 [Cisco Nexus 9000 シリーズ スイッチ]
OSPFv2 の設定

タイトルとURLをコピーしました