vPC
NX-OSvPC (Virtual Port Channel) enables a pair of NX-OS switches to appear as a single logical switch to downstream devices, providing active-active redundancy and eliminating spanning tree blocked ports for increased bandwidth utilization. It supports comprehensive domain configuration including auto-recovery, delay restore timers, peer gateway for routing over vPC, peer switch for STP convergence optimization, fast convergence, graceful consistency checking, and Layer 3 peer router functionality. vPC keepalive management provides configurable destination/source IPs, intervals, timeouts, VRF assignment, and QoS marking (DSCP, ToS, precedence) for reliable peer health monitoring.
Diagram
Section titled “Diagram”Diagram
Section titled “Diagram”Diagram
Section titled “Diagram”Classes
Section titled “Classes”configuration (nxos.devices)
Section titled “configuration (nxos.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| vpc | Class | [vpc] | No |
vpc (nxos.devices.configuration)
Section titled “vpc (nxos.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| domain_id | Integer | min: 1, max: 1000 | Yes | |
| auto_recovery | Boolean | true, false | No | |
| auto_recovery_reload_delay | Integer | min: 60, max: 3600 | No | |
| delay_restore | Integer | min: 1, max: 3600 | No | |
| delay_restore_orphan_port | Integer | min: 0, max: 300 | No | |
| delay_restore_interface_vlan | Integer | min: 1, max: 3600 | No | |
| delay_peer_link | Integer | min: 0, max: 7200 | No | |
| dscp | Integer | min: 0, max: 63 | No | |
| dual_active_exclude_interface_vlans | Class | [dual_active_exclude_interface_vlans] | No | |
| fast_convergence | Boolean | true, false | No | |
| graceful_consistency_check | Boolean | true, false | No | |
| layer3_peer_router | Boolean | true, false | No | |
| layer3_peer_router_syslog | Boolean | true, false | No | |
| layer3_peer_router_syslog_interval | Integer | min: 1, max: 3600 | No | |
| mac_address_bpdu_source_version_2 | Boolean | true, false | No | |
| peer_gateway | Boolean | true, false | No | |
| peer_gateway_exclude_vlans | Class | [peer_gateway_exclude_vlans] | No | |
| virtual_peer_link_destination | IP | No | ||
| peer_switch | Boolean | true, false | No | |
| role_priority | Integer | min: 1, max: 65535 | No | |
| system_mac | String | No | ||
| system_priority | Integer | min: 1, max: 65535 | No | |
| track | Integer | min: 0, max: 500 | No | |
| virtual_peer_link_source | IP | No | ||
| keepalive | Class | [keepalive] | No | |
| ip_arp_synchronize | Boolean | true, false | No | |
| ipv6_nd_synchronize | Boolean | true, false | No | |
| peer_link_port_channel | Integer | min: 1, max: 4096 | No |
vpc (nxos.devices.configuration)
Section titled “vpc (nxos.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| domain_id | Integer | min: 1, max: 1000 | Yes | |
| auto_recovery | Boolean | true, false | No | |
| auto_recovery_reload_delay | Integer | min: 60, max: 3600 | No | |
| delay_restore | Integer | min: 1, max: 3600 | No | |
| delay_restore_orphan_port | Integer | min: 0, max: 300 | No | |
| delay_restore_interface_vlan | Integer | min: 1, max: 3600 | No | |
| delay_peer_link | Integer | min: 0, max: 7200 | No | |
| dscp | Integer | min: 0, max: 63 | No | |
| dual_active_exclude_interface_vlan | String | No | ||
| fast_convergence | Boolean | true, false | No | |
| graceful_consistency_check | Boolean | true, false | No | |
| layer3_peer_router | Boolean | true, false | No | |
| layer3_peer_router_syslog | Boolean | true, false | No | |
| layer3_peer_router_syslog_interval | Integer | min: 1, max: 3600 | No | |
| mac_address_bpdu_source_version_2 | Boolean | true, false | No | |
| peer_gateway | Boolean | true, false | No | |
| peer_gateway_exclude_vlan | String | No | ||
| virtual_peer_link_destination | IP | No | ||
| peer_switch | Boolean | true, false | No | |
| role_priority | Integer | min: 1, max: 65535 | No | |
| system_mac | String | No | ||
| system_priority | Integer | min: 1, max: 65535 | No | |
| track | Integer | min: 0, max: 500 | No | |
| virtual_peer_link_source | IP | No | ||
| keepalive | Class | [keepalive] | No | |
| ip_arp_synchronize | Boolean | true, false | No | |
| ipv6_nd_synchronize | Boolean | true, false | No | |
| peer_link_channel_group | Integer | min: 1, max: 4096 | No |
vpc (nxos.devices.configuration)
Section titled “vpc (nxos.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| domain_id | Integer | min: 1, max: 1000 | Yes | |
| auto_recovery | Boolean | true, false | No | |
| auto_recovery_reload_delay | Integer | min: 60, max: 3600 | No | |
| delay_restore | Integer | min: 1, max: 3600 | No | |
| delay_restore_orphan_port | Integer | min: 0, max: 300 | No | |
| delay_restore_interface_vlan | Integer | min: 1, max: 3600 | No | |
| delay_peer_link | Integer | min: 0, max: 7200 | No | |
| dscp | Integer | min: 0, max: 63 | No | |
| dual_active_exclude_interface_vlan | String | No | ||
| fast_convergence | Boolean | true, false | No | |
| graceful_consistency_check | Boolean | true, false | No | |
| layer3_peer_router | Boolean | true, false | No | |
| layer3_peer_router_syslog | Boolean | true, false | No | |
| layer3_peer_router_syslog_interval | Integer | min: 1, max: 3600 | No | |
| mac_address_bpdu_source_version_2 | Boolean | true, false | No | |
| peer_gateway | Boolean | true, false | No | |
| peer_gateway_exclude_vlan | String | No | ||
| virtual_peer_link_destination | IP | No | ||
| peer_switch | Boolean | true, false | No | |
| role_priority | Integer | min: 1, max: 65535 | No | |
| system_mac | String | No | ||
| system_priority | Integer | min: 1, max: 65535 | No | |
| track | Integer | min: 0, max: 500 | No | |
| virtual_peer_link_source | IP | No | ||
| keepalive | Class | [keepalive] | No | |
| peer_link_channel_group | Integer | min: 1, max: 4096 | No |
dual_active_exclude_interface_vlans (nxos.devices.configuration.vpc)
Section titled “dual_active_exclude_interface_vlans (nxos.devices.configuration.vpc)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ids | List | Integer[min: 1, max: 4094] | No | |
| ranges | List | [ranges] | No |
peer_gateway_exclude_vlans (nxos.devices.configuration.vpc)
Section titled “peer_gateway_exclude_vlans (nxos.devices.configuration.vpc)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ids | List | Integer[min: 1, max: 4094] | No | |
| ranges | List | [ranges] | No |
keepalive (nxos.devices.configuration.vpc)
Section titled “keepalive (nxos.devices.configuration.vpc)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| destination_ip | IP | Yes | ||
| source_ip | IP | Yes | ||
| hold_timeout | Integer | min: 3, max: 10 | No | |
| interval | Integer | min: 400, max: 10000 | No | |
| timeout | Integer | min: 3, max: 20 | No | |
| udp_port | Integer | min: 1, max: 65535 | No | |
| vrf | String | No | ||
| precedence | Any | Integer[min: 0, max: 7] or Choice[network, internet, critical, flash-override, flash, immediate, priority, routine] or String[Regex: ^.*[\$\%]\{.*$] | No | |
| tos | Any | Integer[min: 0, max: 15] or Choice[min-delay, max-throughput, max-reliability, min-monetary-cost, normal] or String[Regex: ^.*[\$\%]\{.*$] | No | |
| tos_byte | Integer | min: 0, max: 255 | No |
ranges (nxos.devices.configuration.vpc.dual_active_exclude_interface_vlans)
Section titled “ranges (nxos.devices.configuration.vpc.dual_active_exclude_interface_vlans)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| from | Integer | min: 1, max: 4094 | Yes | |
| to | Integer | min: 1, max: 4094 | Yes |
Examples
Section titled “Examples”Example 1: Basic vPC domain between LEAF1 and LEAF2 with keepalive and auto recovery
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 peer_gateway: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management peer_link_port_channel: 1Example 2: vPC domain with delay restore timers and peer switch for optimized STP convergence
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 peer_gateway: true peer_switch: true graceful_consistency_check: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management interval: 1000 timeout: 5 peer_link_port_channel: 1Example 3: Full-featured vPC with fast convergence, L3 peer router, and system priority on LEAF2
nxos: devices: - name: LEAF2 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 fast_convergence: true peer_gateway: true peer_switch: true graceful_consistency_check: true layer3_peer_router: true layer3_peer_router_syslog: true layer3_peer_router_syslog_interval: 3600 ip_arp_synchronize: true ipv6_nd_synchronize: true role_priority: 32768 system_priority: 2000 track: 3 keepalive: destination_ip: 10.1.50.1 source_ip: 10.1.50.2 vrf: management interval: 1000 timeout: 5 peer_link_port_channel: 1Examples
Section titled “Examples”Example 1: Basic vPC domain between LEAF1 and LEAF2 with keepalive and auto recovery
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 peer_gateway: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management peer_link_channel_group: 1Example 2: vPC domain with delay restore timers and peer switch for optimized STP convergence
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 peer_gateway: true peer_switch: true graceful_consistency_check: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management interval: 1000 timeout: 5 peer_link_channel_group: 1Example 3: Full-featured vPC with fast convergence, L3 peer router, and system priority on LEAF2
nxos: devices: - name: LEAF2 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 fast_convergence: true peer_gateway: true peer_switch: true graceful_consistency_check: true layer3_peer_router: true layer3_peer_router_syslog: true layer3_peer_router_syslog_interval: 3600 ip_arp_synchronize: true ipv6_nd_synchronize: true role_priority: 32768 system_priority: 2000 track: 3 keepalive: destination_ip: 10.1.50.1 source_ip: 10.1.50.2 vrf: management interval: 1000 timeout: 5 peer_link_channel_group: 1Examples
Section titled “Examples”Example 1: Basic vPC domain between LEAF1 and LEAF2 with keepalive and auto recovery
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 peer_gateway: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management peer_link_channel_group: 1Example 2: vPC domain with delay restore timers and peer switch for optimized STP convergence
nxos: devices: - name: LEAF1 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 peer_gateway: true peer_switch: true graceful_consistency_check: true keepalive: destination_ip: 10.1.50.2 source_ip: 10.1.50.1 vrf: management interval: 1000 timeout: 5 peer_link_channel_group: 1Example 3: Full-featured vPC with fast convergence, L3 peer router, and system priority on LEAF2
nxos: devices: - name: LEAF2 configuration: vpc: domain_id: 1 auto_recovery: true auto_recovery_reload_delay: 240 delay_restore: 150 delay_restore_interface_vlan: 90 delay_restore_orphan_port: 60 fast_convergence: true peer_gateway: true peer_switch: true graceful_consistency_check: true layer3_peer_router: true layer3_peer_router_syslog: true layer3_peer_router_syslog_interval: 3600 role_priority: 32768 system_priority: 2000 track: 3 keepalive: destination_ip: 10.1.50.1 source_ip: 10.1.50.2 vrf: management interval: 1000 timeout: 5 peer_link_channel_group: 1