Danh mục sản phẩm
Hướng dẫn cấu hình vPC (virtual Port Channel) trên Switch Cisco Nexus
Giới thiệu
vPC (virtual Port Channel) là công nghệ ảo hóa của Cisco NX-OS, cho phép các liên kết đi tới hai switch Nexus khác nhau xuất hiện như một port-channel duy nhất với thiết bị ở phía bên kia. Thiết bị đó có thể là switch, server, firewall, load balancer hay bất kỳ thiết bị nào hỗ trợ link aggregation (LACP). vPC thuộc họ công nghệ Multichassis EtherChannel (MCEC) và được triển khai trên các dòng Nexus 9000, 7000, 5000 và 3000.
Nhờ vPC, mạng Layer 2 không còn cổng bị STP chặn, tận dụng được toàn bộ băng thông uplink và vẫn chạy được khi mất một link hoặc một switch. Bài này dùng một mô hình hai switch Nexus ghép cặp vPC, xuống một switch access Catalyst, cấu hình theo đúng thứ tự mà Cisco khuyến nghị.
⚡ Điểm nhanh về vPC
- Bản chất: hai Nexus ghép cặp thành một nút Layer 2 logic với thiết bị đầu cuối; mỗi switch vẫn chạy control plane riêng và cấu hình riêng.
- Quy mô domain: một vPC domain chỉ gồm tối đa 2 switch peer.
- Ba thành phần chính: vPC peer-link (trunk Layer 2, đồng bộ trạng thái), vPC peer-keepalive (liên kết Layer 3, kiểm tra peer còn sống) và vPC member port (port-channel xuống thiết bị đầu cuối).
- Thứ tự cấu hình:
feature vpc→ vPC domain → peer-keepalive → peer-link → vPC member port. - Timer peer-keepalive mặc định: gói UDP cổng 3200; interval 1 giây, hold timeout 3 giây, timeout 5 giây.
- Giấy phép: vPC, LACP, HSRP và VRRP nằm trong license NX-OS cơ bản; chỉ các tính năng Layer 3 như OSPF, IS-IS mới cần gói license riêng.
- Giao thức nên dùng phía đầu cuối: LACP mode active.
vPC giải quyết vấn đề gì
Với STP thông thường, khi một access switch nối lên hai switch phía trên, một trong hai uplink bị chặn để tránh loop. vPC thay đổi điều đó: hai uplink gom thành một port-channel nên STP chỉ nhìn thấy một liên kết logic và không chặn cổng nào.
| Lợi ích | Ý nghĩa thực tế |
|---|---|
| Không có cổng STP bị chặn | Dùng hết băng thông uplink, STP chỉ còn là cơ chế dự phòng chống loop |
| Server dual-home active-active | Cả hai đường đều chuyển tiếp traffic |
| Hội tụ nhanh | Mất một link, hàm hash chuyển flow sang link còn lại; mất một switch, switch kia nhận toàn bộ traffic |
| Default gateway active-active | Cả hai peer cùng làm gateway cho server |
| Control plane độc lập | Sự cố phần mềm trên một peer không lan sang peer kia |
Các thành phần của vPC
| Thành phần | Vai trò |
|---|---|
| vPC peer device | Một trong hai switch Nexus tạo nên cặp vPC |
| vPC domain | Nhóm gồm hai peer, cung cấp ngữ cảnh để cấu hình các tham số vPC toàn cục |
| vPC peer-link | Trunk 802.1Q giữa hai peer, mang BPDU, HSRP hello, cập nhật IGMP, gói điều khiển CFS và traffic flood từ peer kia; dùng để đồng bộ trạng thái |
| vPC peer-keepalive link | Liên kết Layer 3 chỉ mang gói heartbeat UDP, dùng để biết peer còn sống và phát hiện tình huống dual-active; không mang dữ liệu người dùng |
| vPC member port | Port-channel Layer 2 xuống thiết bị đầu cuối, gắn từ khóa vpc <id> |
| Orphan port | Cổng nối với thiết bị chỉ kết nối vào một peer duy nhất |
| CFS (Cisco Fabric Services) | Giao thức chạy trên peer-link, đồng bộ bảng MAC, trạng thái vPC và kiểm tra cấu hình; tự bật khi bật feature vpc |
Một quy tắc quan trọng của vPC: traffic đi vào từ một vPC member port rồi băng qua peer-link thì không được thoát ra vPC member port nào khác. Quy tắc này chặn loop ở tầng dữ liệu, xử lý bằng phần cứng. Ngoại lệ duy nhất là khi một vPC member port phía peer kia bị down, lúc đó peer-link trở thành đường dự phòng.
Chuẩn bị trước khi cấu hình
Mô hình lab trong bài:
- Hai switch Nexus: Switch Primary (peer chính, N9K-A) và Switch Secondary (peer phụ, N9K-B).
- Peer-link: cổng Eth1/1 và Eth1/2 trên mỗi switch, gom thành Port-channel 12.
- Peer-keepalive: cổng Eth1/3 trên mỗi switch, nối trực tiếp, địa chỉ 87.87.87.1/30 và 87.87.87.2/30 trong VRF riêng tên
keepalive. - Xuống switch access: cổng Eth1/48 trên mỗi Nexus, gom thành Port-channel 11, vPC ID 11.
- Các VLAN dùng chung: 10, 20, 30 (ví dụ).
Lưu ý trước khi bắt đầu:
- vPC không tự đồng bộ cấu hình. Bạn phải cấu hình riêng trên từng switch; hệ thống chỉ kiểm tra tính nhất quán.
- Phải cấu hình và đưa peer-keepalive lên trước, rồi mới tạo peer-link, nếu không vPC domain không hình thành.
- Mọi VLAN dùng qua vPC phải được tạo trên cả hai switch và phải được phép trên peer-link.
- Nếu đang chạy production, hãy hiểu rõ tác động của từng lệnh trước khi nhập.
Hướng dẫn cấu hình vPC từng bước
Bước 1: Bật tính năng và tạo VLAN trên cả hai switch
feature lacp feature vpc vlan 10,20,30
Bước 2: Cấu hình liên kết peer-keepalive
Cisco khuyến nghị dùng liên kết Layer 3 riêng cho peer-keepalive (một cổng 1G là đủ; port-channel 2 x 1G còn tốt hơn), đặt trong VRF riêng. Hai lựa chọn tiếp theo theo thứ tự ưu tiên là cổng mgmt0 và cuối cùng là đi qua hạ tầng Layer 3. Tuyệt đối không cho keepalive đi qua chính vPC peer-link.
Switch Primary:
vrf context keepalive interface Ethernet1/3 description vPC-Peer-Keepalive no switchport vrf member keepalive ip address 87.87.87.1/30 no shutdown
Switch Secondary:
vrf context keepalive interface Ethernet1/3 description vPC-Peer-Keepalive no switchport vrf member keepalive ip address 87.87.87.2/30 no shutdown
Lệnh vrf member phải đặt trước ip address, vì khi gán interface vào VRF, địa chỉ IP đã cấu hình sẽ bị xóa. Kiểm tra liên thông trước khi đi tiếp:
ping 87.87.87.2 vrf keepalive
Bước 3: Tạo vPC domain và khai báo peer-keepalive
vPC domain ID phải giống nhau trên hai peer. role priority giá trị nhỏ hơn sẽ thành peer chính (primary); nên để peer chính cũng là switch làm STP root và HSRP active.
Switch Primary:
vpc domain 87 role priority 100 peer-keepalive destination 87.87.87.2 source 87.87.87.1 vrf keepalive
Switch Secondary:
vpc domain 87 role priority 200 peer-keepalive destination 87.87.87.1 source 87.87.87.2 vrf keepalive
Trên mỗi switch, destination là địa chỉ của peer và source là địa chỉ của chính nó. Nếu bạn đặt trùng địa chỉ nguồn và đích, keepalive sẽ không bao giờ lên.
Kiểm tra:
show vpc peer-keepalive
Kết quả cần thấy vPC keep-alive status : peer is alive (hoặc trạng thái tương đương khi peer-link chưa lên), VRF keepalive, UDP port 3200.
Bước 4: Cấu hình vPC peer-link
Peer-link là thành phần quan trọng nhất của cặp vPC. Một số khuyến nghị của Cisco khi dựng peer-link:
- Dùng tối thiểu hai cổng 10G trở lên bundle thành port-channel; trên switch dạng module nên chia thành viên sang các module khác nhau để chịu lỗi tốt hơn.
- Không chèn thiết bị nào giữa hai peer, peer-link là liên kết điểm-điểm.
- Giới hạn VLAN trên peer-link bằng danh sách VLAN của vPC (VLAN pruning), và nên dùng một port-channel Layer 2 khác để mang các VLAN không thuộc vPC.
- Peer-link chạy
spanning-tree port type network, nên Bridge Assurance được kích hoạt trên liên kết này; không tắt nó đi.
Cấu hình giống nhau trên cả hai switch:
interface port-channel12 description vPC-Peer-Link switchport mode trunk switchport trunk allowed vlan 10,20,30 spanning-tree port type network vpc peer-link interface Ethernet1/1 description vPC-Peer-Link switchport mode trunk switchport trunk allowed vlan 10,20,30 channel-group 12 mode active no shutdown interface Ethernet1/2 description vPC-Peer-Link switchport mode trunk switchport trunk allowed vlan 10,20,30 channel-group 12 mode active no shutdown
Kiểm tra:
show vpc brief
Cần thấy Peer status : peer adjacency formed ok, vPC keep-alive status : peer is alive, Configuration consistency status : success và vPC role là primary trên Switch Primary, secondary trên Switch Secondary.
Bước 5: Bật các tính năng khuyến nghị cho vPC domain
Các lệnh này nằm trong cùng vPC domain. Cisco đưa vào cấu hình mẫu và khuyến nghị cho Nexus 9000:
vpc domain 87 peer-switch peer-gateway ip arp synchronize auto-recovery
| Lệnh | Tác dụng | Lưu ý |
|---|---|---|
peer-switch |
Hai peer xuất hiện như một STP root duy nhất (cùng bridge ID) | Phải cấu hình trên cả hai peer thì mới hoạt động; đặt STP priority giống nhau trên hai switch |
peer-gateway |
Peer có thể làm gateway cho gói gửi đến MAC router của peer kia, giữ traffic ở local, tránh dùng peer-link | Cần bật trước khi dùng layer3 peer-router |
ip arp synchronize |
Đồng bộ bảng ARP giữa hai peer | Dùng trong cấu hình mẫu của Cisco cho Nexus 9000 |
auto-recovery |
Cho phép peer chính hoạt động lại khi cả hai switch reload và peer kia không lên | Cisco khuyến nghị bật, dù hiếm khi vẫn có thể dẫn đến dual-active; timeout mặc định hiển thị 240 giây |
Nếu cần định tuyến động giữa hai peer qua vPC, Cisco bổ sung lệnh layer3 peer-router trong vPC domain, yêu cầu peer-gateway đã bật và phải cấu hình trên cả hai peer.
Để switch peer chính cũng là STP root, ví dụ đặt priority giống nhau trên cả hai switch khi đã dùng peer-switch:
spanning-tree vlan 10,20,30 priority 4096
Bước 6: Cấu hình vPC member port xuống thiết bị đầu cuối
Cấu hình port-channel và vpc 11 giống nhau trên hai Nexus. Cisco khuyến nghị đặt vPC ID trùng số port-channel để dễ quản lý, và dùng LACP mode active.
interface port-channel11 description vPC-to-Access-Switch switchport mode trunk switchport trunk allowed vlan 10,20,30 spanning-tree port type normal vpc 11 interface Ethernet1/48 description vPC-to-Access-Switch switchport mode trunk switchport trunk allowed vlan 10,20,30 channel-group 11 mode active no shutdown
vPC member port không hỗ trợ Bridge Assurance nên đặt spanning-tree port type normal. VLAN nào cho phép trên vPC member port thì bắt buộc phải có trên peer-link, nếu không VLAN đó không hoạt động.
Bước 7: Cấu hình phía switch access (không cần biết vPC)
Với switch access, đây chỉ là một port-channel LACP bình thường, một cổng nối lên Switch Primary và một cổng nối lên Switch Secondary. Ví dụ trên Catalyst:
interface port-channel11 switchport mode trunk ! interface GigabitEthernet1/0/1 switchport mode trunk channel-group 11 mode active ! interface GigabitEthernet1/0/2 switchport mode trunk channel-group 11 mode active
Nếu switch access cũng cần allowed VLAN, hãy khai báo giống phía Nexus.
Kiểm tra vPC sau khi cấu hình
| Lệnh | Mục đích |
|---|---|
show vpc brief |
Tổng quan: trạng thái peer, keepalive, consistency, vPC role, danh sách vPC và VLAN active |
show vpc role |
Role hiện tại, system-mac, role priority |
show vpc peer-keepalive |
Địa chỉ, VRF, UDP port và timer keepalive |
show vpc consistency-parameters global |
So sánh tham số toàn cục hai peer |
show vpc consistency-parameters interface port-channel 11 |
So sánh tham số của một vPC cụ thể |
show vpc orphan-ports |
Liệt kê orphan port |
show port-channel summary |
Trạng thái port-channel và các cổng thành viên |
show lacp neighbor |
Thông tin LACP phía đối tác |
Kết quả show vpc brief khi vPC chạy đúng có dạng:
vPC domain id : 87 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 vPC status Id Port Status Consistency Reason Active vlans 11 Po11 up success success 10,20,30
Kiểm tra nhất quán cấu hình: Type-1 và Type-2
Sau khi hai peer thông nhau qua peer-link, CFS so sánh cấu hình của hai bên. Có hai mức:
| Mức | Hậu quả khi lệch | Ví dụ tham số |
|---|---|---|
| Type-1 | vPC bị suspend. Với graceful consistency check (mặc định bật), chỉ peer phụ bị suspend, peer chính vẫn forwarding | STP mode, cấu hình MST region, Bridge Assurance, loop guard; trên từng vPC: LACP mode, tốc độ, duplex, switchport mode, native VLAN, MTU, allowed VLAN, STP port type |
| Type-2 | Vẫn forwarding nhưng có thể sai hành vi | MAC aging, VLAN database, SVI, ACL, QoS, cost và priority STP, HSRP, IGMP snooping, DHCP snooping |
Ví dụ: MTU của hai port-channel lệch nhau là lỗi Type-1 và sẽ làm vPC member port bị suspend. Khi thấy vPC ở trạng thái down, hãy chạy show vpc consistency-parameters trước tiên.
Khuyến nghị thiết kế từ Cisco
Peer-keepalive
- Dùng liên kết Layer 3 riêng, VRF riêng; không chạy keepalive trên peer-link.
- Với switch dùng nhiều supervisor và mgmt0, không nối mgmt0 trực tiếp hai switch với nhau mà nên chèn một switch Layer 2 ở giữa.
Peer-link và role
- Đặt
role prioritythủ công. Peer chính nên đồng thời là STP root và HSRP active. Role của vPC không preempt: sau khi một switch reload và quay lại, role vận hành (operational role) có thể khác role cấu hình. - Khi peer-link down trong lúc keepalive còn sống, peer phụ sẽ suspend vPC member port và tắt các SVI của vPC VLAN.
STP
- Giữ STP root ở lớp aggregation; không tắt STP kể cả khi mọi thiết bị đã đi qua vPC, vì nó vẫn là cơ chế chống loop dự phòng.
- Đặt cổng hướng host ở chế độ edge (PortFast) và bật BPDU Guard.
- Hai peer phải có cấu hình STP giống hệt nhau (mode, MST region, Bridge Assurance, loop guard).
Kết nối thiết bị đầu cuối
- Ưu tiên dual-attach bằng port-channel LACP. Nếu thiết bị chỉ nối được vào một switch (orphan port), nên nối vào peer chính; hoặc dùng VLAN không thuộc vPC cùng một port-channel riêng giữa hai peer làm đường dự phòng.
- Với định tuyến dự phòng, dùng một liên kết Layer 3 riêng giữa hai peer thay vì chạy qua peer-link và SVI.
Nâng cấp phần mềm và thay switch
- Dùng ISSU để nâng cấp NX-OS cho vPC domain, thực hiện lần lượt từng switch. Trong lúc ISSU, cấu hình trên peer còn lại bị khóa.
- Khi thay switch hỏng, đưa các liên kết lên theo thứ tự: peer-keepalive, peer-link, xác nhận vPC role đúng, sau đó mới tới vPC member port, orphan port và các cổng Layer 3. Nếu đã bật auto-recovery thì tắt nó trong lúc thay.
Một số mô hình triển khai vPC
| Mô hình | Mô tả | Điểm cần lưu ý |
|---|---|---|
| Single-sided vPC | Thiết bị đầu cuối nối trực tiếp vào cặp Nexus | Mô hình cơ bản trong bài này |
| Double-sided vPC | Hai cặp vPC nối với nhau, toàn bộ link liên kết thuộc cùng một vPC | Hai vPC domain phải dùng domain ID khác nhau vì ID được dùng trong LACP |
| vPC Fabric Peering (Nexus 9000) | Peer-link ảo chạy qua mạng fabric, không cần dành cổng vật lý cho peer-link | Khai báo virtual peer-link destination ... source ... trong vPC domain |
| vPC với VXLAN EVPN | Cặp leaf dùng chung một VTEP (địa chỉ secondary trên loopback) | Nên tăng delay restore interface-vlan khi có nhiều SVI, và timer hold-down của NVE phải lớn hơn delay restore |
Khi cặp Nexus cần kết nối lên router hoặc firewall, cấu hình khác với vPC member port Layer 2 ở trên. Chi tiết hai cách đấu nối và ví dụ cấu hình xem bài Kết nối uplink lên router cho cặp Switch Cisco Nexus vPC.
Giới hạn cần biết
- Một vPC domain chỉ có hai switch peer.
- vPC member port chỉ hỗ trợ port-channel Layer 2 (trunk hoặc access); không dùng port-channel Layer 3.
- Hai peer phải cấu hình độc lập, không có đồng bộ cấu hình tự động.
- Thành viên của peer-link và của vPC member port hai bên phải cùng loại cổng/module.
- vPC dùng để nối hai data center chỉ nên dùng cho tối đa hai site; nhiều hơn thì Cisco khuyến nghị OTV.
Các lỗi thường gặp
| Hiện tượng | Nguyên nhân thường gặp | Cách xử lý |
|---|---|---|
| Peer adjacency không hình thành | Keepalive không thông, hai peer khác domain ID, peer-link chưa lên | ping <peer> vrf keepalive, show vpc peer-keepalive, kiểm tra vpc domain hai bên |
| vPC báo down, consistency fail | Lệch tham số Type-1 (MTU, speed, switchport mode, native VLAN, LACP mode, STP) | show vpc consistency-parameters interface port-channel <id> và sửa cho khớp |
| VLAN không đi qua vPC | VLAN chưa tạo trên cả hai switch hoặc chưa allowed trên peer-link | Tạo VLAN trên cả hai, thêm vào allowed vlan của peer-link |
| Thiết bị nối vào peer phụ mất mạng khi peer-link down | Đó là orphan port nối vào peer phụ | Nối vào peer chính hoặc dùng VLAN không thuộc vPC với đường dự phòng riêng |
| Keepalive không lên dù cổng up | Gán sai địa chỉ nguồn và đích, hoặc interface chưa thuộc đúng VRF | Kiểm tra source và destination, VRF của interface, show vpc peer-keepalive |
Câu hỏi thường gặp (FAQ)
vPC khác gì với stack hay chassis ghép? Hai Nexus trong vPC vẫn là hai thiết bị độc lập, mỗi thiết bị có control plane và file cấu hình riêng. Chỉ phần port-channel hướng ra thiết bị đầu cuối được ảo hóa thành một liên kết logic.
Peer-keepalive có bắt buộc phải là liên kết vật lý riêng không? Không bắt buộc, nhưng Cisco ưu tiên liên kết Layer 3 riêng, sau đó mới tới mgmt0, và cuối cùng mới là định tuyến qua hạ tầng Layer 3. Điều cấm kỵ là chạy keepalive trên peer-link vì hai thành phần sẽ cùng hỏng một lúc.
Peer-keepalive mang dữ liệu người dùng không? Không. Đó chỉ là gói UDP cổng 3200 để kiểm tra peer còn sống. Khi peer-link hỏng, nó giúp phát hiện tình huống cả hai switch cùng active.
Điều gì xảy ra khi peer-link bị đứt? Nếu keepalive vẫn thông, peer phụ suspend toàn bộ vPC member port và tắt SVI của các vPC VLAN, mọi traffic dồn về peer chính. Nếu keepalive cũng đứt, hai peer không còn biết trạng thái nhau, vì vậy cần thiết kế để hai đường này không dùng chung điểm hỏng.
Có thể dùng chung vPC domain ID cho hai cặp Nexus nối vào nhau không? Không nên. Domain ID được dùng làm một phần của LACP, dùng trùng sẽ làm vPC nối giữa hai cặp flap liên tục. Nếu bắt buộc dùng chung, phải cấu hình system-mac khác nhau.
vPC có dùng chung được với định tuyến Layer 3 không? Có, nhưng vPC member port chỉ là port-channel Layer 2, và không nên định tuyến qua peer-link và SVI làm đường dự phòng. Hai cách nối uplink lên router (cổng routed riêng hoặc router nối Layer 2 qua vPC) được trình bày trong bài Kết nối uplink lên router cho cặp Switch Cisco Nexus vPC.
Server nối vào chỉ một Nexus thì sao? Đó là orphan port. Nếu có thể, hãy dual-attach bằng LACP; nếu không, nối vào peer chính hoặc dùng VLAN không thuộc vPC cùng đường liên kết riêng giữa hai peer.
Thông tin liên quan
- Kết nối uplink lên router cho cặp Switch Cisco Nexus vPC
- Giá tham khảo và danh mục Cisco Nexus
- Tìm hiểu về STP và cách triển khai thực tế
- Spanning Tree Bridge Assurance là gì
Cần tư vấn thiết kế vPC hoặc chọn dòng Nexus phù hợp, hãy liên hệ VNExperts để được hỗ trợ.
Ghi chú minh bạch
Nội dung bài được tổng hợp và đối chiếu từ hai tài liệu chính hãng của Cisco:
- Understand and Configure Nexus 9000 vPC with Best Practices (Document ID 218333, cập nhật 15/07/2025; lab trên Nexus 93180YC-FX chạy NX-OS 10.2(3)): các khuyến nghị cho Nexus 9000, cấu hình mẫu, lệnh kiểm tra, quy trình thay switch, ISSU.
- Design and Configuration Guide: Best Practices for Virtual Port Channels (vPC) on Cisco Nexus Series Switches (bản sửa đổi 03/2021): thuật ngữ, thứ tự dựng domain, timer peer-keepalive, khuyến nghị peer-link, kiểm tra nhất quán Type-1 và Type-2, STP, kết nối thiết bị đầu cuối.
Tài liệu thiết kế nêu trên viết chủ yếu theo Nexus 7000, nên một số chi tiết (như loại line card cho peer-link) phụ thuộc nền tảng. Khi triển khai, hãy đối chiếu với tài liệu cấu hình NX-OS đúng dòng Nexus và phiên bản phần mềm đang dùng. Địa chỉ IP, VLAN, số cổng và giá trị role priority trong bài là ví dụ lab, cần thay theo thực tế.
