【Cisco】検証時にルータ台数が足りないときの解決方法【VRF】

ルータ

はじめに

ネットワーク検証時に使用できるルータ台数が必要台数よりも少ない場合、新たにルータを確保しなくても、ルータの VRF-Lite という機能を利用することで解決できる場合があります。

VRF-Lite を使用することで、1 台のルータの中で複数のルーティングテーブルを保持することが可能となり、1 台のルータのみでルータが複数台あるかのような状況をつくることができます。

※VRF = Virtual Routing and Forwarding

図:VRF イメージ

Cisco 機器においては、VRFVRF-Lite という 2 つの概念があります。VRF は MPLS-VPN 環境で使用する技術であり、VRF-Lite は MPLS-VPN を使用していない環境で使用する技術です。単に「VRF」と言った場合でも、実際には VRF-Lite のことを指している場合が多いです。

作業環境

  • Cisco C891FJ-K9
    • バージョン:15.3(3)M5

VRF-Lite の設定方法

設定手順は以下の通りです。

  1. VRF インスタンスを定義する
    • VRFインスタンスに対して RD (Route Distinguisher) を設定する
  2. インターフェイスに対して VRF を設定する
    • インターフェースを VRF に割り当てます
  3. インターフェースの IP アドレス等を設定する
  4. VRF 別にルーティングを設定する

VRF インスタンスの定義

最初に必要な数だけ VRF インスタンスを定義します。

設定コマンドは以下の通りです。

  • ip vrf <VRF 識別名>

この設定を行うと VRF 設定モードに移行します。

Router(config)#ip vrf VRF01
Router(config-vrf)#

RD (Route Distinguisher) の設定

RD は VRF の識別番号で、VRF 毎に固有の値を設定します。

VRF 設定モードにて以下コマンドで設定します。

  • rd <任意のAS番号>:<任意の整数>

上記の通り RD は 2 つの数値の組み合わせとなっています。これは他の VRF と重複しない値を設定すれば OK です。

Router(config-vrf)#rd 1:100
Router(config-vrf)#

インターフェースでの VRF 設定

VRF の定義ができたら、VRF に対してインターフェースを割り当てます。

ここで対象となるインターフェースは L3 インターフェース (物理、論理) のみで、スイッチポートに対しては設定できません。

一つの L3 インターフェースは、只 1 つのみの VRF に対応付けることが可能で、2 つ以上の VRF に対応付けることはできません。

インターフェースでの VRF 設定コマンドは以下の通りです。

  • ip vrf forwarding <VRF 識別名>
Router(config)#interface vlan100
Router(config-if)#ip vrf forwarding VRF01
Router(config-if)#

インターフェースの IP 等を設定

インターフェースで VRF を設定すると IP アドレス設定は削除されるため、IP アドレスは VRF 設定後に設定します。

Router(config)#interface vlan100
Router(config-if)#ip address 10.1.100.254 255.255.255.0

異なる VRF に属するインターフェース間であれば同じセグメントの IP アドレスを設定することが可能です。

VRF 別にルーティングを設定

ルーティングは VRF 別に設定することが可能です。

スタティックルートを設定する場合は以下コマンドで設定できます。

  • ip route vrf <VRF 識別名> <ネットワーク> <マスク> <ネクストホップ>
Router(config)#ip route vrf VRF01 0.0.0.0 0.0.0.0 10.1.100.1
Router(config)#

VRF 環境での各種コマンド実行について

VRF を設定している環境では、各種コマンド実行時に対象 VRF を指定することになります。

ルーティングテーブルの表示

  • show ip route vrf <VRF 識別名>
Router#show ip route vrf VRF01

Routing Table: VRF01
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override

Gateway of last resort is 10.1.100.1 to network 0.0.0.0

S*    0.0.0.0/0 [1/0] via 10.1.100.1
      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.1.100.0/24 is directly connected, Vlan100
L        10.1.100.254/32 is directly connected, Vlan100
Router#show ip route vrf VRF02

Routing Table: VRF02
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override

Gateway of last resort is 10.1.200.1 to network 0.0.0.0

S*    0.0.0.0/0 [1/0] via 10.1.200.1
      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.1.200.0/24 is directly connected, Vlan200
L        10.1.200.254/32 is directly connected, Vlan200

Ping の実行

  • ping vrf <VRF 識別名> <宛先IP等のオプション>
Router#ping vrf VRF01 10.1.200.254
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.200.254, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Router#ping vrf VRF02 10.1.100.254
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.100.254, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms

VRF 関連の確認コマンド

  • show ip vrf
    • VRF 一覧と各 VRF の RD、所属インターフェースを表示
Router#show ip vrf
  Name                             Default RD          Interfaces
  VRF01                            1:100               Vl100
  VRF02                            1:200               Vl200

  • show ip vrf interfaces
    • VRF 設定がされているインターフェースの設定・ステータス一覧を表示
Router#show ip vrf interfaces
Interface              IP-Address      VRF                              Protocol
Vl100                  10.1.100.254    VRF01                            up
Vl200                  10.1.200.254    VRF02                            up

  • show ip vrf detail
    • 各VRF の詳細情報を表示
Router#show ip vrf detail 
VRF VRF01 (VRF Id = 1); default RD 1:100; default VPNID <not set>
  Old CLI format, supports IPv4 only
  Flags: 0xC
  Interfaces:
    Vl100                   
VRF Table ID = 1
  Flags: 0x0
  No Export VPN route-target communities
  No Import VPN route-target communities
  No import route-map
  No global export route-map
  No export route-map
  VRF label distribution protocol: not configured
  VRF label allocation mode: per-prefix

VRF VRF02 (VRF Id = 2); default RD 1:200; default VPNID <not set>
  Old CLI format, supports IPv4 only
  Flags: 0xC
  Interfaces:
    Vl200                   
VRF Table ID = 2
  Flags: 0x0
  No Export VPN route-target communities
  No Import VPN route-target communities
  No import route-map
  No global export route-map
  No export route-map
  VRF label distribution protocol: not configured
  VRF label allocation mode: per-prefix


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