【Nexus】Part 6 – vPC L3ゲートウェイ構成
前回の記事「Part 5 – vPCについて」では、vPCに関する基本的用語やL2環境でのvPC構成、コンフィグレーションなどご紹介させていただきました。今回は一歩進んでL3ゲートウェイとして利用可能なL3 vPC構成や、コンフィグレーション、推奨設定について確認してみたいと思います。
なお本記事はCisco Liveや各種ドキュメントの情報をベースに作成しています。vPC構成検討の際の参考になれば幸いです。
*Nexus9000vシリーズの記事のまとめはこちらから
*Nexus 9000vはversion 9.3(1)を元に動作確認を行っています。
目次
L3 vPCゲートウェイの構成について
vPCをL3ゲートウェイ構成で利用する場合、vPC配下のL2ネットワークやサーバを終端し、コアネットワークとの境界ゲートウェイとして利用するケースが多いと思います。このようなユースケースでのL3 vPCベストプラクティス構成は以下のイメージとなります。
この構成では、vPC構成の各VLANにSVIを設定してFHRP(HSRPやVRRP)機能を使ってVIPをゲートウェイアドレスとして動かします。コアネットワークとの接続は上記の構成のようにRouted Portでコアルータと接続しています。
コアルータとvPCノード、またvPCノード間でそれぞれでルーティングプロトコルを動かしてルート情報を共有しています。ルーティングを動作させる上で、不要なPeerの確立を予防する上でダウンリンク側のSVIにPassiveIFを設定しています(個人的な経験としてコアネットワークとの接続にRouted PortではなくvPCを利用するケースも多いと思います)。
ここでひとつ理解しておきたい動作として、FHRPをvPC構成で利用するに辺りFHRP機能はvPC用に最適化されます。例えばFHRPを動作させると通常2つのデバイスでActiveとStandby(MasterとBackup)というステータスが存在します。
しかしvPCで利用した場合はどちらもActive/Activeで動作します。つまりステータスがStandbyとなっているノードにパケットが送信されても、Active側に転送されずにローカルでルーティングされる動作となります。これは、vPC配下のデバイスからトラフィックがリンクアグリゲーション上のリンクを分散されて流れてきても常に到着したノード(Stanbyであっても)ルーティング処理がされるということです。
このL3vPCベストプラクティス構成でのポイントについてまとめると以下の通りとなります。
- アップストリームとはpoint-to-pointでルーティングプロトコルを利用
- L3バックアップパスとして、ピア間にポイントツーポイントでL3リンクを接続するか、Peer-Link経由でSVIで使う。ひとつで十分
- FHRP (HSRP, VRRP)を利用するSVIで経路配布のためルーティングプロトコルを起動する場合、passive-interfacesを設定して不要なネイバーを確立しないようにすること
vPCの様々オプション設定
vPC機能には基本コンフィグレーション以外に多くのオプション設定が存在しています。これらのオプションは単純な改善機能であったり、実環境で問題となった際に登場したエンハンス機能などがあります。ここではいくつかピックアップしてコマンド名と効果についてご紹介します。今回のL3 vPCの動作確認の際には、可能な限り有効にして動作させています。
peer-gateway(利用推奨)
ピアデバイスのゲートウェイ MAC アドレスを宛先とするパケットのレイヤ3フォワーディングを有効にする。L3フォワーディングの効率化と思われるが、いくつかのNASやLB向けにユースケースがあるようである
peer-switch(利用推奨)
デフォルト状態では、プライマリデバイスがSTPを処理し、セカンダリデバイスはBPDUをプライマリデバイスにパスする。
peer-switchを有効にすることで、vPCペアが2台で論理的な一台のSTP rootとして動作するので、それぞれの機器がBPDUを処理する。一部障害時のコンバージェンスタイムに効果
auto-recovery(利用推奨)
特定のケースでセカンダリデバイスをプライマリに昇格させる機能。ユースケースは以下の通り。
1. Peer-linkがダウンし、その後に何らかの理由でプライマリデバイスのリブートなどが発生し、セカンダリデバイス側でpeer-keepalivesが3発受け取れないと、セカンダリデバイスをプライマリロールに昇格させる
2. 両デバイスがダウンして、セカンダリデバイスだけが立ち上がった際に、プライマリロールに昇格させる
ip arp synchronize / ipv6 nd synchronize(L3環境で利用推奨)
ArpとNDをvPCデバイス間でCFSを利用して同期する。コンバージェンスタイムの高速化。L3で利用する際には推奨
Object-Tracking
L3構成で有効なオプション。peer-keepalivesが生きている状態で、アップリンクとPeer-Linkが落ちると、セカンダリデバイスのvPCもダウンするので、ブラックホールが発生する。そこで、そのような状況をObject-Trackingで検知して、vPCのロールスイッチオーバさせる
vPC Self-Isolation
全てのラインカードがダウンか、Peer-Linkの全VLANがダウンした場合、peer-keepaliveを通してセカンダリデバイスにプライマリロールを引き継がせる機能。デフォルトはdisable
Graceful Insertion and Removal
vPC domain内のデバイスをdebugやupgradeなどのメンテナンス要因で意図的にスイッチを分離させる機能。メンテンナンスが必要な場面でコマンド投入する。
モードはIsolateとShutdownの2つ存在あり、それぞれ以下のような特徴がある。
Isolate(推奨)
・ コマンド – system mode maintenance
・IFを落とさない
・Local routeを維持
・Protocol Neighborは維持(BGPなどでwithdrawは発生)
・データトラフィックのロスを避ける
Shutdown
・コマンド – system mode maintenance shutdown
・IFを落とす
・Local routeをクリーンアップする
・Protocol Neighborは落とす
・データトラフィックのロスが発生
L3 vPCゲートウェイ構成での動作確認
それではここから実際にL3 vPCゲートウェイとして、上でご紹介した構成上のポイントや、推奨設定を盛り込んで動作確認を行いたいと思います。今回構成するL3 vPCゲートウェイとして、vPCと同時に利用するプロトコルは以下の通りです。
コアNW側
・OSPF – アップリンクとPeer-Linkに作ったバックアップパス用のVLAN 20で稼働
アクセスNW側
・HSRP – Native VLAN 1で稼働
・VRRP – VLAN 100で稼働
・Rapid-PVST – VLAN 1,100で稼働
構成図
構成機器
- NXOS1 – NXOS9.3(1) – vPC primary device
- NXOS2 – NXOS9.3(1) – vPC secondary device
- NXOS3 – NXOS9.3(1) – アクセスSW
- NXOS4 – NXOS9.3(1) – アクセスSW
- CSR4 – CSR1000V 15.5(3)S4b – Core router
- VPC5-10 – Ping確認用端末
本構成での確認事項
・vPCによるL2接続(同一VLANの端末同士の通信)
・L3ゲートウェイとしての動作(端末・コアルータ間、VLAN間端末通信)
コンフィグレーション
今回のコンフィグレーションについては、Port-Channelについては、利用環境上でLACPフレームを透過しないためスタティックを設定しています。ただしpeer-linkについてはコンフィグレーションガイド上ではLACPを設定していますのでLACPが推奨と考えられます。
NXOS1
hostname NXOS1
feature vrrp
feature ospf
feature interface-vlan
feature hsrp
feature lacp
feature vpc
vlan 1,20,100
spanning-tree vlan 1,100 priority 0
vpc domain 10
peer-switch
peer-keepalive destination 192.168.0.2
peer-gateway
auto-recovery
ipv6 nd synchronize
ip arp synchronize
interface Vlan1
no shutdown
no ip redirects
ip address 1.1.1.252/24
no ipv6 redirects
ip ospf passive-interface
ip router ospf 100 area 0.0.0.0
hsrp version 2
hsrp 1
preempt
priority 254
ip 1.1.1.254
interface Vlan20
no shutdown
no ip redirects
ip address 20.0.0.1/24
no ipv6 redirects
ip router ospf 100 area 0.0.0.0
interface Vlan100
no shutdown
no ip redirects
ip address 100.1.1.252/24
no ipv6 redirects
ip ospf passive-interface
ip router ospf 100 area 0.0.0.0
vrrp 100
priority 254
address 100.1.1.254
no shutdown
interface port-channel1
switchport mode trunk
switchport trunk allowed vlan 1,100
vpc 1
interface port-channel2
switchport mode trunk
switchport trunk allowed vlan 1,100
vpc 2
interface port-channel10
switchport mode trunk
switchport trunk allowed vlan 1,20,100
spanning-tree port type network
vpc peer-link
interface Ethernet1/1
switchport mode trunk
switchport trunk allowed vlan 1,100
channel-group 1
interface Ethernet1/2
switchport mode trunk
switchport trunk allowed vlan 1,100
channel-group 2
interface Ethernet1/3
switchport access vlan 100
interface Ethernet1/4
no switchport
ip address 30.0.0.1/24
ip router ospf 100 area 0.0.0.0
no shutdown
interface Ethernet1/6
switchport mode trunk
switchport trunk allowed vlan 1,20,100
channel-group 10
interface Ethernet1/7
switchport mode trunk
switchport trunk allowed vlan 1,20,100
channel-group 10
interface mgmt0
vrf member management
ip address 192.168.0.1/24
interface loopback0
ip address 50.1.1.2/32
ip router ospf 100 area 0.0.0.0
router ospf 100
NXOS2
hostname NXOS2
feature vrrp
feature ospf
feature interface-vlan
feature hsrp
feature lacp
feature vpc
vlan 1,20,100
spanning-tree vlan 1,100 priority 0
vpc domain 10
peer-switch
peer-keepalive destination 192.168.0.1
peer-gateway
ipv6 nd synchronize
ip arp synchronize
interface Vlan1
no shutdown
no ip redirects
ip address 1.1.1.253/24
no ipv6 redirects
ip ospf passive-interface
ip router ospf 100 area 0.0.0.0
hsrp version 2
hsrp 1
ip 1.1.1.254
interface Vlan20
no shutdown
no ip redirects
ip address 20.0.0.2/24
no ipv6 redirects
ip router ospf 100 area 0.0.0.0
interface Vlan100
no shutdown
no ip redirects
ip address 100.1.1.253/24
no ipv6 redirects
ip ospf passive-interface
ip router ospf 100 area 0.0.0.0
vrrp 100
address 100.1.1.254
no shutdown
interface port-channel1
switchport mode trunk
switchport trunk allowed vlan 1,100
vpc 1
interface port-channel2
switchport mode trunk
switchport trunk allowed vlan 1,100
vpc 2
interface port-channel10
switchport mode trunk
switchport trunk allowed vlan 1,20,100
spanning-tree port type network
vpc peer-link
interface Ethernet1/1
switchport mode trunk
switchport trunk allowed vlan 1,100
channel-group 1
interface Ethernet1/2
switchport mode trunk
switchport trunk allowed vlan 1,100
channel-group 2
interface Ethernet1/3
switchport access vlan 100
interface Ethernet1/4
no switchport
ip address 40.0.0.1/24
ip router ospf 100 area 0.0.0.0
no shutdown
interface Ethernet1/6
switchport mode trunk
switchport trunk allowed vlan 1,20,100
channel-group 10
interface Ethernet1/7
switchport mode trunk
switchport trunk allowed vlan 1,20,100
channel-group 10
interface mgmt0
vrf member management
ip address 192.168.0.2/24
interface loopback0
ip address 50.1.1.3/32
router ospf 100
vPC ステータス確認
NXOS1
NXOS1# show vpc
Legend:
(*) - local vPC is down, forwarding via vPC peer-link
vPC domain id : 10
Peer status : peer adjacency formed ok
vPC keep-alive status : peer is alive
Configuration consistency status : success
Per-vlan consistency status : success
Type-2 consistency status : success
vPC role : primary
Number of vPCs configured : 2
Peer Gateway : Enabled
Dual-active excluded VLANs : -
Graceful Consistency Check : Enabled
Auto-recovery status : Enabled, timer is off.(timeout = 240s)
Delay-restore status : Timer is off.(timeout = 30s)
Delay-restore SVI status : Timer is off.(timeout = 10s)
Operational Layer3 Peer-router : Disabled
Virtual-peerlink mode : Disabled
vPC Peer-link status
---------------------------------------------------------------------
id Port Status Active vlans
-- ---- ------ -------------------------------------------------
1 Po10 up 1,20,100
vPC status
----------------------------------------------------------------------------
Id Port Status Consistency Reason Active vlans
-- ------------ ------ ----------- ------ ---------------
1 Po1 up success success 1,100
2 Po2 up success success 1,100
Please check "show vpc consistency-parameters vpc <vpc-num>" for the
consistency reason of down vpc and for type-2 consistency reasons for
any vpc.
NXOS1#
NXOS2
NXOS2# show vpc
Legend:
(*) - local vPC is down, forwarding via vPC peer-link
vPC domain id : 10
Peer status : peer adjacency formed ok
vPC keep-alive status : peer is alive
Configuration consistency status : success
Per-vlan consistency status : success
Type-2 consistency status : success
vPC role : secondary
Number of vPCs configured : 2
Peer Gateway : Enabled
Dual-active excluded VLANs : -
Graceful Consistency Check : Enabled
Auto-recovery status : Disabled
Delay-restore status : Timer is off.(timeout = 30s)
Delay-restore SVI status : Timer is off.(timeout = 10s)
Operational Layer3 Peer-router : Disabled
Virtual-peerlink mode : Disabled
vPC Peer-link status
---------------------------------------------------------------------
id Port Status Active vlans
-- ---- ------ -------------------------------------------------
1 Po10 up 1,20,100
vPC status
----------------------------------------------------------------------------
Id Port Status Consistency Reason Active vlans
-- ------------ ------ ----------- ------ ---------------
1 Po1 up success success 1,100
2 Po2 up success success 1,100
Please check "show vpc consistency-parameters vpc <vpc-num>" for the
consistency reason of down vpc and for type-2 consistency reasons for
any vpc.
NXOS2#
L3(OSPF/HSRP/VRRP)プロトコル ステータス確認
NXOS1
NXOS1# show ip ospf nei
OSPF Process ID 100 VRF default
Total number of neighbors: 2
Neighbor ID Pri State Up Time Address Interface
50.1.1.3 1 FULL/DR 00:15:45 20.0.0.2 Vlan20
50.1.1.1 1 FULL/DR 00:15:45 30.0.0.2 Eth1/4
NXOS1#
NXOS1# show hsrp
Vlan1 - Group 1 (HSRP-V2) (IPv4)
Local state is Active, priority 254 (Cfged 254), may preempt
Forwarding threshold(for vPC), lower: 0 upper: 254
Hellotime 3 sec, holdtime 10 sec
Next hello sent in 0.282000 sec(s)
Virtual IP address is 1.1.1.254 (Cfged)
Active router is local
Standby router is 1.1.1.253 , priority 100 expires in 9.707000 sec(s)
Authentication text "cisco"
Virtual mac address is 0000.0c9f.f001 (Default MAC)
2 state changes, last state change 00:38:12
IP redundancy name is hsrp-Vlan1-1 (default)
NXOS1#
NXOS1# show hsrp bri
*:IPv6 group #:group belongs to a bundle
P indicates configured to preempt.
|
Interface Grp Prio P State Active addr Standby addr Group addr
Vlan1 1 254 P Active local 1.1.1.253 1.1.1.254
(conf)
NXOS1#
NXOS1# show vrrp detail
Vlan100 - Group 100 (IPV4)
State is Master
Virtual IP address is 100.1.1.254
Priority 254, Configured 254
Forwarding threshold(for VPC), lower: 1 upper: 254
Advertisement interval 1
Preemption enabled
Virtual MAC address is 0000.5e00.0164
Master router is Local
NXOS1#
NXOS1# show vrrp
Interface VR IpVersion Pri Time Pre State VR IP addr
---------------------------------------------------------------
Vlan100 100 IPV4 254 1 s Y Master 100.1.1.254
NXOS1#
NXOS2
NXOS2# show ip ospf nei
OSPF Process ID 100 VRF default
Total number of neighbors: 2
Neighbor ID Pri State Up Time Address Interface
50.1.1.2 1 FULL/BDR 00:17:04 20.0.0.1 Vlan20
50.1.1.1 1 FULL/DR 00:45:51 40.0.0.2 Eth1/4
NXOS2#
NXOS2# show hsrp
Vlan1 - Group 1 (HSRP-V2) (IPv4)
Local state is Standby, priority 100 (Cfged 100)
Forwarding threshold(for vPC), lower: 0 upper: 100
Hellotime 3 sec, holdtime 10 sec
Next hello sent in 0.870000 sec(s)
Virtual IP address is 1.1.1.254 (Cfged)
Active router is 1.1.1.252, priority 254 expires in 9.264000 sec(s)
Standby router is local
Authentication text "cisco"
Virtual mac address is 0000.0c9f.f001 (Default MAC)
4 state changes, last state change 00:36:18
IP redundancy name is hsrp-Vlan1-1 (default)
NXOS2#
NXOS2# show hsrp bri
*:IPv6 group #:group belongs to a bundle
P indicates configured to preempt.
|
Interface Grp Prio P State Active addr Standby addr Group addr
Vlan1 1 100 Standby 1.1.1.252 local 1.1.1.254
(conf)
NXOS2#
NXOS2# show vrrp detail
Vlan100 - Group 100 (IPV4)
State is Backup
Virtual IP address is 100.1.1.254
Priority 100, Configured 100
Forwarding threshold(for VPC), lower: 1 upper: 100
Advertisement interval 1
Preemption enabled
Virtual MAC address is 0000.5e00.0164
Master router is 100.1.1.252
NXOS2#
NXOS2# show vrrp
Interface VR IpVersion Pri Time Pre State VR IP addr
---------------------------------------------------------------
Vlan100 100 IPV4 100 1 s Y Backup 100.1.1.254
NXOS2#
L2(STP) ステータス確認
NXOS1
NXOS1# show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 1
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 1 (priority 0 sys-id-ext 1)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po1 Desg FWD 1 128.4096 (vPC) P2p
Po2 Desg FWD 1 128.4097 (vPC) P2p
Po10 Desg FWD 3 128.4105 (vPC peer-link) Network P2p
Eth1/5 Desg FWD 4 128.5 P2p
VLAN0020
Spanning tree enabled protocol rstp
Root ID Priority 32788
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32788 (priority 32768 sys-id-ext 20)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po10 Desg FWD 3 128.4105 (vPC peer-link) Network P2p
VLAN0100
Spanning tree enabled protocol rstp
Root ID Priority 100
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 100 (priority 0 sys-id-ext 100)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po1 Desg FWD 1 128.4096 (vPC) P2p
Po2 Desg FWD 1 128.4097 (vPC) P2p
Po10 Desg FWD 3 128.4105 (vPC peer-link) Network P2p
Eth1/3 Desg FWD 4 128.3 P2p
NXOS1#
NXOS2
NXOS2# show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 1
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 1 (priority 0 sys-id-ext 1)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po1 Desg FWD 1 128.4096 (vPC) P2p
Po2 Desg FWD 1 128.4097 (vPC) P2p
Po10 Root FWD 3 128.4105 (vPC peer-link) Network P2p
Eth1/5 Desg FWD 4 128.5 P2p
VLAN0020
Spanning tree enabled protocol rstp
Root ID Priority 32788
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32788 (priority 32768 sys-id-ext 20)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po10 Root FWD 3 128.4105 (vPC peer-link) Network P2p
VLAN0100
Spanning tree enabled protocol rstp
Root ID Priority 100
Address 0023.04ee.be0a
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 100 (priority 0 sys-id-ext 100)
Address 0023.04ee.be0a
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po1 Desg FWD 1 128.4096 (vPC) P2p
Po2 Desg FWD 1 128.4097 (vPC) P2p
Po10 Root FWD 3 128.4105 (vPC peer-link) Network P2p
Eth1/3 Desg FWD 4 128.3 P2p
NXOS2#
テーブル(ARP/MAC/Route ) 確認
NXOS1
NXOS1# show ip arp
Flags: * - Adjacencies learnt on non-active FHRP router
+ - Adjacencies synced via CFSoE
# - Adjacencies Throttled for Glean
CP - Added via L2RIB, Control plane Adjacencies
PS - Added via L2RIB, Peer Sync
RO - Re-Originated Peer Sync Entry
D - Static Adjacencies attached to down interface
IP ARP Table for context default
Total number of entries: 10
Address Age MAC Address Interface Flags
100.1.1.1 00:00:08 0050.7966.6805 Vlan100 +
100.1.1.2 00:00:08 0050.7966.6806 Vlan100
100.1.1.3 00:01:18 0050.7966.6808 Vlan100
100.1.1.4 00:01:12 0050.7966.680a Vlan100
20.0.0.2 00:01:32 5000.0002.0007 Vlan20
1.1.1.1 00:01:19 0050.7966.6807 Vlan1
1.1.1.2 00:01:14 0050.7966.6809 Vlan1
30.0.0.2 00:11:08 5000.000b.0000 Ethernet1/4
100.1.1.254 - 0000.5e00.0164 Vlan100
1.1.1.254 - 0000.0c9f.f001 Vlan1
NXOS1#
NXOS1# show system internal l2fwder mac
Legend:
* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
age - seconds since last seen,+ - primary entry using vPC Peer-Link,
(T) - True, (F) - False, C - ControlPlane MAC
VLAN MAC Address Type age Secure NTFY Ports
---------+-----------------+--------+---------+------+----+------------------
* 100 0050.7966.6808 dynamic 00:05:23 F F Po1
* 100 5000.0002.0007 static - F F Po10
* 20 5000.0002.0007 static - F F Po10
* 1 5000.0002.0007 static - F F Po10
* 100 0050.7966.6805 dynamic 00:05:27 F F Eth1/3
G 100 0000.5e00.0164 static - F F sup-eth1(R)
* 1 0050.7966.6809 dynamic 00:15:23 F F Po2
G 100 5000.0001.0007 static - F F sup-eth1(R)
G 20 5000.0001.0007 static - F F sup-eth1(R)
G - 5000:0001:0007 static - F F sup-eth1(R)
G 1 5000.0001.0007 static - F F sup-eth1(R)
* 100 0050.7966.680a dynamic 00:05:07 F F Po2
G 1 0000.0c9f.f001 static - F F sup-eth1(R)
* 1 0050.7966.6807 dynamic 00:15:26 F F Po1
NXOS1#
NXOS1# 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>
1.1.1.0/24, ubest/mbest: 1/0, attached
*via 1.1.1.252, Vlan1, [0/0], 00:43:29, direct
1.1.1.252/32, ubest/mbest: 1/0, attached
*via 1.1.1.252, Vlan1, [0/0], 00:43:29, local
1.1.1.254/32, ubest/mbest: 1/0, attached
*via 1.1.1.254, Vlan1, [0/0], 00:43:07, hsrp
20.0.0.0/24, ubest/mbest: 1/0, attached
*via 20.0.0.1, Vlan20, [0/0], 00:40:01, direct
20.0.0.1/32, ubest/mbest: 1/0, attached
*via 20.0.0.1, Vlan20, [0/0], 00:40:01, local
30.0.0.0/24, ubest/mbest: 1/0, attached
*via 30.0.0.1, Eth1/4, [0/0], 00:48:58, direct
30.0.0.1/32, ubest/mbest: 1/0, attached
*via 30.0.0.1, Eth1/4, [0/0], 00:48:58, local
40.0.0.0/24, ubest/mbest: 1/0
*via 30.0.0.2, Eth1/4, [110/41], 00:20:40, ospf-100, intra
50.1.1.1/32, ubest/mbest: 1/0
*via 30.0.0.2, Eth1/4, [110/41], 00:20:40, ospf-100, intra
50.1.1.2/32, ubest/mbest: 2/0, attached
*via 50.1.1.2, Lo0, [0/0], 00:51:54, local
*via 50.1.1.2, Lo0, [0/0], 00:51:54, direct
100.1.1.0/24, ubest/mbest: 1/0, attached
*via 100.1.1.252, Vlan100, [0/0], 00:43:28, direct
100.1.1.252/32, ubest/mbest: 1/0, attached
*via 100.1.1.252, Vlan100, [0/0], 00:43:28, local
100.1.1.254/32, ubest/mbest: 1/0, attached
*via 100.1.1.254, Vlan100, [0/0], 00:43:25, vrrp_engine
NXOS1#
NXOS2
NXOS2# show ip arp
Flags: * - Adjacencies learnt on non-activåe FHRP router
+ - Adjacencies synced via CFSoE
# - Adjacencies Throttled for Glean
CP - Added via L2RIB, Control plane Adjacencies
PS - Added via L2RIB, Peer Sync
RO - Re-Originated Peer Sync Entry
D - Static Adjacencies attached to down interface
IP ARP Table for context default
Total number of entries: 8
Address Age MAC Address Interface Flags
100.1.1.1 00:01:56 0050.7966.6805 Vlan100
100.1.1.2 00:01:56 0050.7966.6806 Vlan100 +
100.1.1.3 00:03:05 0050.7966.6808 Vlan100 *
100.1.1.4 00:03:00 0050.7966.680a Vlan100 *
20.0.0.1 00:03:20 5000.0001.0007 Vlan20
1.1.1.1 00:03:07 0050.7966.6807 Vlan1 *
1.1.1.2 00:03:02 0050.7966.6809 Vlan1 *
40.0.0.2 00:13:31 5000.000b.0001 Ethernet1/4
NXOS2#
NXOS2# show system internal l2fwder mac
Legend:
* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
age - seconds since last seen,+ - primary entry using vPC Peer-Link,
(T) - True, (F) - False, C - ControlPlane MAC
VLAN MAC Address Type age Secure NTFY Ports
---------+-----------------+--------+---------+------+----+------------------
* 100 0050.7966.6808 dynamic 00:07:04 F F Po1
G 100 5000.0002.0007 static - F F sup-eth1(R)
G 20 5000.0002.0007 static - F F sup-eth1(R)
G - 5000:0002:0007 static - F F sup-eth1(R)
G 1 5000.0002.0007 static - F F sup-eth1(R)
* 100 0000.5e00.0164 static - F F Po10
* 1 0050.7966.6809 dynamic 00:03:11 F F Po2
* 100 5000.0001.0007 static - F F Po10
* 20 5000.0001.0007 static - F F Po10
* 1 5000.0001.0007 static - F F Po10
* 100 0050.7966.6806 dynamic 00:07:07 F F Eth1/3
* 100 0050.7966.680a dynamic 00:06:47 F F Po2
* 1 0050.7966.6807 dynamic 00:03:12 F F Po1
NXOS2#
NXOS2# 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>
1.1.1.0/24, ubest/mbest: 1/0, attached
*via 1.1.1.253, Vlan1, [0/0], 00:45:18, direct
1.1.1.253/32, ubest/mbest: 1/0, attached
*via 1.1.1.253, Vlan1, [0/0], 00:45:19, local
1.1.1.254/32, ubest/mbest: 1/0, attached
*via 1.1.1.254, Vlan1, [0/0], 00:41:35, hsrp
20.0.0.0/24, ubest/mbest: 1/0, attached
*via 20.0.0.2, Vlan20, [0/0], 00:41:44, direct
20.0.0.2/32, ubest/mbest: 1/0, attached
*via 20.0.0.2, Vlan20, [0/0], 00:41:44, local
30.0.0.0/24, ubest/mbest: 1/0
*via 40.0.0.2, Eth1/4, [110/41], 00:51:08, ospf-100, intra
40.0.0.0/24, ubest/mbest: 1/0, attached
*via 40.0.0.1, Eth1/4, [0/0], 00:51:16, direct
40.0.0.1/32, ubest/mbest: 1/0, attached
*via 40.0.0.1, Eth1/4, [0/0], 00:51:16, local
50.1.1.1/32, ubest/mbest: 1/0
*via 40.0.0.2, Eth1/4, [110/41], 00:51:08, ospf-100, intra
50.1.1.2/32, ubest/mbest: 1/0
*via 20.0.0.1, Vlan20, [110/41], 00:22:13, ospf-100, intra
50.1.1.3/32, ubest/mbest: 2/0, attached
*via 50.1.1.3, Lo0, [0/0], 00:53:43, local
*via 50.1.1.3, Lo0, [0/0], 00:53:43, direct
100.1.1.0/24, ubest/mbest: 1/0, attached
*via 100.1.1.253, Vlan100, [0/0], 00:45:18, direct
100.1.1.253/32, ubest/mbest: 1/0, attached
*via 100.1.1.253, Vlan100, [0/0], 00:45:18, local
100.1.1.254/32, ubest/mbest: 1/0, attached
*via 100.1.1.254, Vlan100, [0/0], 00:41:48, vrrp_engine
NXOS2#
疎通確認
- VPS5-10からCSR(コアルータ)のLoopbackに対してPing疎通確認ー>OK
- VPS5-10間においてお互いにPing疎通確認ー>OK
今回はvPCをL3ゲートウェイとして動かしてみて、vPCによるL2接続(同一VLANの端末同士の通信)、L3ゲートウェイとしての動作(端末・コアルータ間、VLAN間端末通信)を確認することができました。
まとめ
今回はL3ゲートウェイとして利用可能なL3 vPC構成や、vPCのコンフィグレーション、推奨設定について確認してみました。Cisco LiveやNXOSのドキュメントを見ていると、多くの留意点やコマンドなどが存在しています。特にドキュメントを見ていて機種依存がかなりあることに気が付きます。実際にvPC構成を検討する場合には最新NXOSのvPC項目のガイドラインやリミテーション、スケーラビリティは確認したほうがよいです。
最後にvPCを構成する上での全般的なベストプラクティスについて、これまで書かなかった項目についてざっと書き出します。Cisco Liveかドキュメントに記載されていた内容です。ご参考になれば幸いです。
- ドメインIDはvPC domainのsystem macで利用されるため、ドメインごとにユニークIDを使うこと
- STP(Rapid-PVST+ or MST)は有効にすべき。vPCドメインのスイッチがRootにするよう設計すること。peer-switchを利用する場合には両方のデバイス で同じPriorityにすること
- Peer-LinkではSTP Bridge Assuranceがデフォルトで有効。変更しないこと
- vPC上での片方向検知のための機能として、UDLDは使わないでLACPを使うこと
- シャーシ型のNexusを利用する場合、ラインカードを跨いだPort Channel構成が基本
参考ドキュメント
Cisco Nexus 9000 Series NX-OS Interfaces Configuration Guide, Release 9.3(x)
vPC Best Practices and Design on NXOS