ProCurve Networking
ProCurve / Cisco Interoperability
Guide
Introduction... 3
Discovery protocols: LLDP & CDP ... 4
VLAN configuration ... 7
Introduction ... 7
VLAN configuration on Cisco Catalyst ... 8
VLAN configuration on HP ProCurve ...10
Checking VLANs status and connectivity...11
Additional info about VLANs...14
Link aggregation ...19 Introduction ...19 A Static Trunk/Channel ...21 LACP Trunk/Channel...24 Spanning-Tree ...29 Introduction ...29 MSTP Configuration ...31
Cisco as Core running PVST+, HP ProCurve as Edge running RSTP ...41
HP ProCurve as Core running RSTP, Cisco as Edge running PVST+ ...47
IP routing Interoperability...55
Sample topology...55
RIP configuration ...55
OSPF Single Area ...60
Redistribution into OSPF ...64
Configuration of Multiple OSPF areas ...70
Other OSPF features...77
IP Multicast interoperability...80
Introduction ...80
PIM DENSE Mode ...80
Introduction
Today’s multi-vendor environments present many challenges to
administrators trying to configure dissimilar (proprietary vs. standard)
protocols. In an effort to accommodate the needs for many of our
partners and customers, ProCurve networking has written this guide to
assist in the configuration and deployment of ProCurve and Cisco
environments.
The intent of this document isn’t to describe why you should do these
things, nor does it argue what the benefits are. It merely goes
through how to accomplish the necessary configurations to get the
Cisco and ProCurve switches configured so that they will work
together.
While the testing conducted was extensive, it is impossible that all
possible configurations and scenarios were captured. This document
therefore, can not be assumed to be perfect as it applies to every
environment. Please consider carefully the implications of some of
these changes before instituting them.
The recommendation is to test the new configurations in a controlled
environment prior to rolling out changes that could impact your
production environment. Additionally, saving current configuration
files for switches is a good practice for backup.
Discovery protocols: LLDP & CDP
ProCurve is committed to standards. And it is logically that the proprietary discovery protocol CDP (Cisco Discovery protocol) has been replaced by the IEEE 802.1AB standard LLDP (Link Layer Discovery protocol) when this one was released.
If LLDP is enabled by default, CDP remains in Read-only mode (receive-only). Then ProCurve switches can discover LLDP neighbors as well as Cisco device neighbors.
Note: Cisco does not support yet LLDP in its equipments.
Cisco IP Phone could in a close future supports LLDP-MED (Media End-Point Discovery) which will then allow automatic discovery and configuration of IP Phones.
Some IP Phone vendors such as Avaya and Mitel are already committed to LLDP-MED.
The network scheme used here is the same as in the MSTP example.
Procurve-Edge-1
Discovery configuration
We simply use the default configuration regarding Discovery protocols. On ProCurve switches: LLDP is enabled in send and receive mode. CDP is enabled in received mode.
On Cisco: CDP is enabled by default.
Procurve-Edge-2 Gi1/3 Cisco-Core-1 e 1 e 2 Gi1/1 Gi1/1 Gi1/3 Gi1/2 Gi1/2 Cisco-Core-2 e 1 e 2
Checking Discovery info on a ProCurve switch
The following command lists CDP neighbors. As expected, it displays the two Catalyst 6500.
ProCurve-Edge-1# show cdp neighbors CDP neighbors information
Port Device ID | Platform Capability ---- --- + --- --- 1 Core-Cisco-1 | Cisco IOS Software, C6500... R S 2 Core-Cisco-2 | Cisco IOS Software, C6500... R S
LLDP neighbors: the ProCurve switch displays the two Catalyst 6500 as well because the LLDP display includes the CDP neighbors.
ProCurve-Edge-1# show lldp info remote-device LLDP Remote Devices Information
LocalPort | ChassisId PortId PortDescr SysName
--- + --- --- --- --- 1 | Core-Cisco-1 Gig...
2 | Core-Cisco-2 Gig...
We display the LLDP neighbors attached to given ports. It shows details about neighbors.
ProCurve-Edge-1# show lldp info remote-device 1-2 LLDP Remote Device Information Detail
Local Port : 1 ChassisType : local ChassisId : Core-Cisco-1 PortType : local PortId : GigabitEthernet0/1 SysName :
System Descr : Cisco IOS Software, C6500 Software (C6500-IPSERVICESK9-M)...
PortDescr :
System Capabilities Supported : bridge, router System Capabilities Enabled : bridge, router Remote Management Address
Type : ipv4 Address : 10.1.1.1 --- Local Port : 2 ChassisType : local ChassisId : Core-Cisco-2 PortType : local PortId : GigabitEthernet0/1 SysName :
System Descr : Cisco IOS Software, C6500 Software (C6500-IPSERVICESK9-M)...
PortDescr :
System Capabilities Supported : bridge, router System Capabilities Enabled : bridge, router
Remote Management Address Type : ipv4
Address : 10.1.1.2
Checking Discovery info on a Cisco switch
As ProCurve switches do not send anymore CDP frames, a Cisco switch will not recognize ProCurve neighbors.
Let’s hope for a Cisco commitment to the IEEE LLDP standard.
Core-Cisco-1#show cdp neighbors
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone Device ID Local Intrfce Holdtme Capability Platform Port ID Core-Cisco-2 Gig 0/3 171 R S I WS-C6500-4 Gig0/3
VLAN configuration
11-Introduction12-VLAN Configuration on Cisco Catalyst 13-VLAN configuration on HP ProCurve 14-Checking VLANs status and connectivity 15-Additional info about VLANs
a. Native VLAN
b. Configuring a “management” VLAN other than VLAN 1 c. Changing maximum number of VLANs
d. Configuring ports for IP Phones e. VTP – GVRP
f. Cisco Extended Range of VLANs
Introduction
Glossary
This chapter deals with port based VLANs that Cisco and HP ProCurve both support. Different names are used to describe similar concepts on both platforms.
Cisco HP ProCurve What is it?
Trunk Tagged A port that “carries”
multiple VLANs using the 802.1q tag, for example an uplink, an IP phone port.
Access Untagged A port that belongs to a
unique VLAN and is untagged
Native VLAN - Defines the untagged
VLAN of a 802.1q - tagged port. Defaults to VLAN 1 on HP and Cisco
Sample topology
Edge/Access ports untagged
in VLANs 10,20, 30 & 40
VLAN configuration on Cisco Catalyst
Step 1: VLAN CreationConf t
vlan 10, 20, 30, 40
Step 2: Assignment of Access ports to VLANs
interface range FastEthernet1/0/10 - 19 switchport access vlan 10
switchport mode access
interface range FastEthernet1/0/20 - 29 switchport access vlan 20
switchport mode access
interface range FastEthernet1/0/30 - 39 switchport access vlan 30
switchport mode access
interface range FastEthernet1/0/40 - 48 switchport access vlan 40
switchport mode access
Vlan 40 10.1.40.1/24
Procurve-1
Cisco-1
Uplink 802.1q port
tagged in
VLANs 10,20, 30 & 40
and untagged in vlan 1
Vlan 30 10.1.30.1/24 Vlan 20 10.1.20.1/24 Vlan 10 10.1.10.1/24 Vlan 1 10.1.1.1/24 Vlan 40 10.1.40.2/24 Vlan 30 10.1.30.2/24 Vlan 20 10.1.20.2/24 Vlan 10 10.1.10.2/24 Vlan 1 10.1.1.2/24
Step 3: Creation of 802.1q links (Cisco “Trunk”)
interface FastEthernet1/0/1
The “encapsulation” method defines how multiple VLANs are carried on Cisco Ethernet links. Cisco supports a proprietary method, ISL, and the IEEE
standard 802.1q (noted “dot1q”).
switchport trunk encapsulation dot1q
By default, a Cisco “trunk” carries all VLANs. The “allowed VLAN” restricts transport of VLANs to the specified VLANs.
switchport trunk allowed vlan 1,10,20,30,40
By default, a port is in ”access” mode, i.e. it belongs to one VLAN only.
switchport mode trunk
Cisco also supports a proprietary negotiation protocol for the trunk named DTP (Dynamic Trunk Protocol). When defined in “trunk” mode the port generates DTP frames. The following command disables generation of DTP frames. This is the recommended configuration when connected to ProCurve switches.
switchport nonegotiate
Step 4: IP configuration
If the switch is a layer 2 switch, a unique IP address is usually defined in one VLAN for management purpose only and a default gateway is configured for access from remote subnets.
interface vlan1
ip address 10.1.1.2 255.255.255.0 no shutdown
ip default-gateway 10.1.1.1
In this sample, for testing connectivity, one IP address has been defined in each VLAN. interface vlan10 ip address 10.1.10.2 255.255.255.0 no shutdown interface vlan20 ip address 10.1.20.2 255.255.255.0 no shutdown interface vlan30 ip address 10.1.30.2 255.255.255.0 no shutdown interface vlan40 ip address 10.1.40.2 255.255.255.0 no shutdown
VLAN configuration on HP ProCurve
Step1: VLAN creation and port assignmentVLAN creation
Conf
Ports 1 to 9 are assigned to VLAN 10 and removed from VLAN 1 (default VLAN).
Port 45 (uplink) is tagged in VLAN 10 while remaining untagged member of VLAN 1.
vlan 10 name Test10 untagged 1-9 tagged 45 Exit
Ports 10 to 19 are assigned to VLAN 20. Port 45 (uplink) is tagged in VLAN 20.
vlan 20 untagged 10-19 tagged 45 exit vlan 30 untagged 20-29 tagged 45 exit vlan 40 untagged 30-44 tagged 45 exit Step2: IP address
One or more IP address per VLAN can be configured. Usually on a L2 switch, one ip address in a VLAN and a default-gateway is defined.
In this example, multiple IP addresses have been defined for testing connectivity. vlan 1 ip address 10.1.1.1 255.255.255.0 exit vlan 10 ip address 10.1.10.1 255.255.255.0 exit vlan 20 ip address 10.1.20.1 255.255.255.0 exit vlan 30 ip address 10.1.30.1 255.255.255.0 exit
vlan 40
ip address 10.1.40.1 255.255.255.0 exit
Checking VLANs status and connectivity
Checking VLANs on Cisco
Checking ports assignment to VLANs
The following display shows the “access” ports and does not include the Cisco “trunk” (802.1q links) ports.
Cisco-1#show vlan
vlan Name Status Ports
---- --- --- ---1 default active Fa---1/0/2, Fa---1/0/3, Fa---1/0/4 Fa1/0/5, Fa1/0/6, Fa1/0/7 Fa1/0/8, Fa1/0/9, Fa1/0/19 Fa1/0/45, Fa1/0/46, Fa1/0/47 Fa1/0/48, Gi1/0/1, Gi1/0/2 Gi1/0/3, Gi1/0/4
10 vlan0010 active Fa1/0/10, Fa1/0/11, Fa1/0/12 Fa1/0/13, Fa1/0/14, Fa1/0/15 Fa1/0/16, Fa1/0/17, Fa1/0/18 20 vlan0020 active Fa1/0/20, Fa1/0/21, Fa1/0/22 Fa1/0/23, Fa1/0/24, Fa1/0/25 Fa1/0/26, Fa1/0/27, Fa1/0/28 Fa1/0/29
30 vlan0030 active Fa1/0/30, Fa1/0/31, Fa1/0/32 Fa1/0/33, Fa1/0/34, Fa1/0/35 Fa1/0/36, Fa1/0/37, Fa1/0/38 Fa1/0/39
40 vlan0040 active Fa1/0/40, Fa1/0/41, Fa1/0/42 Fa1/0/43, Fa1/0/44 1002 fddi-default act/unsup 1003 token-ring-default act/unsup 1004 fddinet-default act/unsup 1005 trnet-default act/unsup (skip…)
Checking a Cisco “Trunk” (802.1q) port status
Note the operational mode, the encapsulation mode dot1q (802.1q), the Native VLAN (the untagged VLAN on the 802.1q link) and the allowed VLANs on port.
Cisco-1#show int fa1/0/1 switchport
Name: Fa1/0/1
Switchport: Enabled
Administrative Mode: trunk Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: Off Access Mode vlan: 1 (default)
Trunking Native Mode vlan: 1 (default) Administrative Native vlan tagging: enabled
… (skip)
Trunking vlans Enabled: 1,10,20,30,40
Pruning vlans Enabled: 2-1001 Capture Mode Disabled
Capture vlans Allowed: ALL … (skip)
Checking access port status
Cisco-1#sh int fa1/0/10 switchport
Name: Fa1/0/10 Switchport: Enabled
Administrative Mode: static access
Operational Mode: up
Administrative Trunking Encapsulation: negotiate Negotiation of Trunking: Off
Access Mode vlan: 10 (vlan0010)
Trunking Native Mode vlan: 1 (default) Administrative Native vlan tagging: enabled … (skip)
Testing connectivity
The connectivity is tested in the various VLANs defined on the 802.1q link
Cisco-1#ping 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds: !!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/8 ms
Cisco-1#ping 10.1.10.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.10.1, timeout is 2 seconds: !!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/9 ms
Cisco-1#ping 10.1.20.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.20.1, timeout is 2 seconds: !!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Cisco-1#ping 10.1.30.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.30.1, timeout is 2 seconds: !!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Cisco-1#ping 10.1.40.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.40.1, timeout is 2 seconds: !!!!!
Checking VLANs on HP ProCurve
The following is a list of defined VLANs. Procurve-1(config)# show vlan
Status and Counters - vlan Information
Maximum vlans to support : 8 Primary vlan : DEFAULT_vlan
Management vlan :
802.1Q vlan ID Name | Status Voice Jumbo --- --- + --- --- --- 1 DEFAULT_vlan | Port-based No No 10 TEST10 | Port-based No No 20 vlan20 | Port-based No No 30 vlan30 | Port-based No No 40 vlan40 | Port-based No No
*Note that the maximum number of VLANs can be increased.
List of ports defined in a given VLAN
Procurve-1(config)# show vlan 10
Status and Counters - vlan Information - Ports - vlan 10
802.1Q vlan ID : 10 Name : Test10
Status : Port-based Voice : No
Jumbo : No
Port Information Mode Unknown vlan Status --- --- --- --- 1 Untagged Learn Down 2 Untagged Learn Down 3 Untagged Learn Down 4 Untagged Learn Down 5 Untagged Learn Down 6 Untagged Learn Down 7 Untagged Learn Down 8 Untagged Learn Down 9 Untagged Learn Down 45 Tagged Learn Up 46 Tagged Learn Down 47 Tagged Learn Down 48 Tagged Learn Down
List of VLANs defined for a given port. Although it is not explicitly shown in this display, port 45 is tagged in VLAN 10, 20, 30 and 40 and untagged in 1.
Procurve-1(config)# show vlan port 45
Status and Counters - vlan Information - for ports 46
802.1Q vlan ID Name | Status Voice Jumbo --- --- + --- --- --- 1 DEFAULT_vlan | Port-based No No 10 TEST10 | Port-based No No 20 vlan20 | Port-based No No 30 vlan30 | Port-based No No 40 vlan40 | Port-based No No
Port 10 as an access port is untagged and belongs to VLAN 20 only Procurve-1(config)# show vlan port 10
Status and Counters - vlan Information - for ports 10
802.1Q vlan ID Name | Status Voice Jumbo --- --- + --- --- --- 20 vlan20 | Port-based No No
Checking IP interfaces
Procurve-1(config)# sh ip Internet (IP) Service IP Routing : Disabled
Default-gateway : 10.1.1.1 Default TTL : 64
Arp Age : 20
vlan | IP Config IP Address Subnet Mask Proxy ARP --- + --- --- --- --- DEFAULT_vlan| Manual 10.1.1.1 255.255.255.0 No TEST10 | Manual 10.1.10.1 255.255.255.0 No vlan20 | Manual 10.1.20.1 255.255.255.0 No vlan30 | Manual 10.1.30.1 255.255.255.0 No vlan40 | Manual 10.1.40.1 255.255.255.0 No
Additional info about VLANs
The “Native” VLAN
The concept of native VLAN on Cisco defines the “untagged” VLAN on a “tagged” link. It is VLAN 1 by default. It can be changed with the following commands:
interface FastEthernet1/0/1
Which native VLAN is defined on a port can be checked with:
Show interface Fa1/0/1 switchport
On HP ProCurve, when a port is tagged for any number of VLANs, it remains untagged in VLAN 1 by default. To make VLAN 99 the untagged (native) VLAN of a tagged port, enter the following commands:
vlan 99 Untagged 45
Then check that Port 45 is untagged in VLAN 99 with:
Show vlan 99
Usually the Native VLAN is used to manage switches.
Tip : What is the benefit of configuring the Native Vlan with an IP address?
A switch, with its default configuration, have all ports untagged. If connected to a tagged port, this switch will still be able to send and receive frames through the “untagged’ (native) VLAN. It will then be able to receive an IP address automatically via DHCP. This IP address can be discovered by LLDP (show lldp info remote) or found at the DHCP server. The switch can then be managed and configured remotely via Telnet.
Configuring a “management” VLAN other than VLAN 1
It is very common to use VLAN 1 as the management VLAN. But any created VLAN can be used to manage switches. As explained in the previous
paragraph, it is common to use the Native/Untagged VLAN to be the management VLAN. Again this is not mandatory and one can choose the VLAN to be carried as tagged on uplinks. Choosing a VLAN other than VLAN 1 for management, we make a clear distinction between Default VLAN and Management VLAN.
In the following example, VLAN 99 is used as the management VLAN and defined as untagged on 802.1q uplinks.
ProCurve configuration of a management VLAN
vlan 99 Untagged 45 Ip address 10.1.99.1/24 exit Ip default-gateway 10.1.99.1 vlan 10 Tagged 45 exit vlan 20 Tagged 45 exit
vlan 30 Tagged 45 exit vlan 40 Tagged 45 Exit Checking VLAN
Procurve-1# show vlan 99
Status and Counters - vlan Information - Ports - vlan 99
802.1Q vlan ID : 99 Name : vlan99
Status : Port-based Voice : No
Jumbo : No
Port Information Mode Unknown vlan Status --- --- --- --- 45 Untagged Learn Up
Procurve-1# show vlan port 45
Status and Counters - vlan Information - for ports 45
802.1Q vlan ID Name | Status Voice Jumbo --- --- + --- --- --- 10 TEST10 | Port-based No No 20 vlan20 | Port-based No No 30 vlan30 | Port-based No No 40 vlan40 | Port-based No No 99 vlan99 | Port-based No No
Configuration of a management VLAN on Cisco
interface FastEthernet1/0/1
switchport trunk encapsulation dot1q switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,20,30,40,99 switchport mode trunk
int vlan 99
ip address 10.199.2 255.255.255.0 no shutdown
Checking VLAN
Cisco-1#sh vlan 99
vlan Name Status Ports
---- --- --- --- 99 vlan0099 active
Cisco-1#sh int fa 1/0/1 switchport
Name: Fa1/0/1
Switchport: Enabled
Administrative Mode: trunk Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q Operational Trunking Encapsulation: dot1q Negotiation of Trunking: On
Access Mode vlan: 1 (default)
Trunking Native Mode vlan: 99 (vlan0099) Administrative Native vlan tagging: enabled Voice vlan: none
… (skip)
Trunking vlans Enabled: 1,10,20,30,40,99 Pruning vlans Enabled: 2-1001
… (skip)
Checking connectivity
Cisco-1#ping 10.1.99.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.99.1, timeout is 2 seconds: !!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/9 ms
Note that HP ProCurve also defines a security concept called “Management VLAN”. When enabled, it becomes the only VLAN through which the switch can be configured. It is disabled by default. (see Advanced Traffic Management Guide, Jan ’05. @ http://www.hp.com/rnd/support/manuals/5300xl.htm ) to configure.
Changing the maximum number of VLANs on ProCurve
On ProCurve, the maximum number of VLANs can be increased by entering: Conf
Max-vlans 48 Write memory reload
Configuration of ports for IP Phones
To support both an IP Phone and a PC, a port is configured with one tagged VLAN (for example 200) to carry voice and one untagged VLAN (for example 10) to transport the data
On ProCurve:
vlan 10 name DATA10 Untagged B1-B12
vlan 200 name IPVOICE Tagged B1-B12
On Cisco:
Interface range fa1/0/1 - 12
switchport trunk encapsulation dot1q switchport trunk allowed vlan 10,200 switchport mode trunk
switchport trunk native vlan 10 switchport nonegotiate
VTP – GVRP
Cisco supports the proprietary protocol VTP (VLAN Trunking Protocol) that allows propagation of created, deleted or modified VLANs through multiple Cisco switches. ProCurve switches do not support it.
On the other hand, HP supports the IEEE GVRP standard (GARP VLAN Registration Protocol) which combines automatic creation of VLANs and automatic tagging of uplinks. GVRP is supported on some Cisco switches running the CatOS software and interacts properly with ProCurve switches. But it’s that GVRP support as been removed in the IOS for Catalyst switches
Cisco Extended Range of VLANs
Previously to 802.1q mode, Cisco “trunk” ports supported the proprietary ISL mode to carry multiple VLANs on a port. The VLAN-id in ISL is based on 10 Bits and then supports VLANs ranging from 1 to 1023.
With 802.1q support, VLAN Id is on 12 bits and Cisco has defined an “extended range” to support VLANs from 1024 to 4095.
To create a VLAN in the “extended range”, vtp must be defined in “transparent mode” with the following global config mode command:
Link aggregation
21- Introduction22- Static Link Aggregation 23- LACP Link Aggregation
HP Active and Cisco passive Cisco Active and HP passive HP static LACP and Cisco passive
Introduction
Glossary
Cisco HP ProCurve What is it?
Channel-group Trunk Description of an aggregated link
Port-channel Trunk port The logical port
representing an aggregated link
Int channel 1 Int trk1 To enter the
configuration mode of an aggregated link interface
FEC is the “Fast EtherChannel” concept. It implements the “Port Aggregation Protocol” (PAgP) that allows two equipments to negotiate a link aggregation. FEC is supported on most of the Cisco switches and routers. It used to be supported in the oldest version of firmware of ProCurve.
Note: In the most recent versions of Firmware, support for FEC has been removed.
LACP is the “Link Aggregation Control Protocol” defined by the 802.3ad standard. Similarly to FEC, it provides a way for both parts to negotiate a port aggregation. With LACP, one or more additional links can operate as « standby » links that will activate only if another active link goes down
Static and Dynamic trunks/channels
A “Static” trunks becomes an active trunk unconditionally and independently of the configuration of the other side. A static trunk does not need any protocol to be created.
“Dynamic” trunks will be created if both sides agree to it. To do so, they exchange messages, either PAgP or LACP, to negotiate their status. One side is said “active” (LACP) or “desirable” (PAgP), meaning that it initiates the
negotiation. The other side is said ”passive” (LACP) or “auto” (PAgP) and forms a link aggregation automatically.
Static and Dynamic
On most HP ProCurve devices1, static trunks can also be defined as LACP. In
that case, they become active unconditionally AND generate LACP frames to allow the remote side to form a trunk automatically.
When to use a static or a dynamic trunk/channel?
Static trunks “always” work and can be used to create link aggregation with switches of many brands and with servers equipped with the right NIC and driver. Because of its simplicity, it is the preferred method.
When one manages a large number of trunks and doesn’t know in advance what will be connected to the ports of a switch, dynamic trunks can reduce the configuration burden.
If the remote side supports LACP in passive mode (default on Cisco and HP), one side only has to be configured in “active” mode for the trunk to be
formed automatically.
What works together?
When connecting a Cisco and a HP ProCurve switch, some options work together and some don’t. This table summarizes what options can be combined with each other to create a trunk on both sides.
HP / Cisco mode On (no
protocol) FEC Desirable FEC Auto LACP Active LACP Passive
Static (no protocol) Y N N N N
Static FEC(*) Y Y Y N N
Static LACP Y N N Y Y
LACP Active N N N Y Y
LACP Passive N N N Y N
Legend N=No, one side at least will not create a trunk; Y=yes trunk is created on both sides, Y= yes and preferred setup.
(*): requires older version of firmware of ProCurve switches
Ports in the link aggregation group
Ports in the channel or trunk group must share same characteristics: speed, duplex, vlan assignment. The media type, such as 1000BT or 1000SX, can be mixed on HP ProCurve. The same holds true for Cisco.
“Logical” port defined by the Link aggregation
On Cisco it is named “port-channel” and is configured as the “Interface Port-channel x”.
On HP ProCurve it is name “trunk port” and is configured as the “interface Trk#” for a static trunk or “interface Dyn#” for a dynamic trunk.
On HP ProCurve, when a trunk is formed, it is assigned to the default-vlan.
A Static Trunk/Channel
Sample Topology
Cisco
Channel Fa1/0/1 - 4
Trunk 45 - 48
Procurve
In this example, trunk/channel group is configured as a L2 port assigned to Vlan 10.
Static Trunk on HP ProCurve
Configuration
conf
trunk 45-48 Trk1 Trunk
Trk1 is a “logical” port and can be assigned to a Vlan as any other physical port. An IP address is assigned to Vlan 10 to test connectivity
vlan 10
untagged Trk1
ip address 10.1.10.1 255.255.255.0 exit
Checking trunk status
To verify what ports are members of a trunk:
ProCurve# show trunk Load Balancing
Port | Name Type | Group Type ---- + --- --- + --- --- 45 | 100/1000T | Trk1 Trunk 46 | 100/1000T | Trk1 Trunk 47 | 100/1000T | Trk1 Trunk 48 | 100/1000T | Trk1 Trunk
What vlans does trunk Trk1 belongs to?
ProCurve# show vlan port trk1
Status and Counters - VLAN Information - for ports Trk1 802.1Q VLAN ID Name | Status Voice Jumbo --- --- + --- --- --- 10 VLAN10 | Port-based No No
To check connectivity with neighbor: ProCurve# ping 10.1.1.2
10.1.1.2 is alive, time = 1 ms
Static port-channel on Cisco
Configuration
conf t
interface range FastEthernet1/0/1 – 4
Interfaces are configured as L2 interface in Vlan 10
switchport mode access switchport access vlan 10
Interfaces are put in the same channel group. “On” mode means static.
channel-group 1 mode ?
active Enable LACP unconditionally
auto Enable PAgP only if a PAgP device is detected desirable Enable PAgP unconditionally
on Enable Etherchannel only
passive Enable LACP only if a LACP device is detected channel-group 1 mode on
An IP address is assigned to Vlan 10 to test connectivity.
interface Vlan 10
ip address 10.1.10.2 255.255.255.0 no shutdown
Checking Channel status
Cisco1#show etherchannel 1 summary
Flags: D - down P - in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2
U - in use f - failed to allocate aggregator u - unsuitable for bundling
w - waiting to be aggregated d - default port
Number of channel-groups in use: 1 Number of aggregators: 1 Group Port-channel Protocol Ports
---+---+---+--- 1 Po1(RU) PAgP Fa1/0/1(P) Fa1/0/2(P) Fa1/0/3(P) Fa1/0/4(P)
Cisco#show int etherchannel 1 detail
----
FastEthernet1/0/1:
Port state = Up Mstr In-Bndl
Channel group = 1 Mode = On/FEC Gcchange = -
Port-channel = Po1 GC = - Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = - Age of the port in the current state: 00d:00h:02m:11s
… (skip)
Info is repeated for all ports that are members of the channel
LACP Trunk/Channel
With LACP, one side must be “active” (send LACP frames) and the other “passive”.
Dynamic channel/trunk: Cisco active – HP passive
Cisco LACP Active configuration
Cisco switch is defined as the “active” side
conf t
int range fa1/0/1 - 4
channel-group 1 mode active exit
Check channel status
Cisco#sh int etherchannel
----
FastEthernet1/0/1:
Port state = Up Mstr In-Bndl
Channel group = 1 Mode = Active Gcchange = -
Port-channel = Po1 GC = - Pseudo port-channel = Po1 Port index = 0 Load = 0x00 Protocol = LACP
Flags: S - Device is sending Slow LACPDUs F - Device is sending fast LACPDUs. A - Device is in active mode. P - Device is in passive mode.
Local information:
LACP port Admin Oper Port Port Port Flags State Priority Key Key Number State Fa1/0/1 SA bndl 32768 0x1 0x1 0x3 0x3D Partner's information:
LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa1/0/1 SP 0 0011.0a50.0d80 8s 0x0 0x2D 0x3C Age of the port in the current state: 00d:00h:00m:06s
(skip info..)
Port-channel1:Port-channel1 (Primary aggregator) Age of the Port-channel = 00d:00h:06m:15s
Logical slot/port = 10/1 Number of ports = 4 HotStandBy port = null
Port state = Port-channel Ag-Inuse Protocol = LACP
Ports in the Port-channel:
Index Load Port EC state No of bits ---+---+---+---+--- 0 00 Fa1/0/1 Active 0
0 00 Fa1/0/2 Active 0 0 00 Fa1/0/3 Active 0 0 00 Fa1/0/4 Active 0
Time since last port bundled: 00d:00h:00m:09s Fa1/0/4 Time since last port Un-bundled: 00d:00h:02m:54s Fa1/0/4
Test connectivity
Cisco#ping 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds: ..!!!
Success rate is 60 percent (3/5), round-trip min/avg/max = 1/1/1 ms
Configuration of HP ProCurve LACP Trunk (“passive”)
By default on ProCurve, ports are defined as LACP Passive. So no configuration is needed.
Check trunk formation:
ProCurve# show trunk Load Balancing
Port | Name Type | Group Type ---- + --- --- + --- --- 45 | 100/1000T | Dyn1 LACP 46 | 100/1000T | Dyn1 LACP 47 | 100/1000T | Dyn1 LACP 48 | 100/1000T | Dyn1 LACP
Note: the trunk group defined on ProCurve is a Dynamic trunk “Dyn1” and belongs to Vlan1.
It cannot be assigned to any other vlans except via GVRP.
To allocate trunk port to Vlans, one should prefer the “static” trunk, with or without LACP or FEC protocols.
Dynamic LACP trunk/channel: HP Active - Cisco Passive
Cisco switch is defined in LACP Passive mode
Conf t
interface range FastEthernet1/0/1 - 4 switchport mode access
channel-group 1 mode passive exit
HP ProCurve is the LACP Active side
hostname "ProCurve" interface 45-48 lacp Active exit
The trunk group defined on ProCurve is a Dynamic trunk “Dyn1” and belongs to Vlan1.
It cannot be assigned to any other vlans except via GVRP.
To allocate trunk port to Vlans, one should prefer the “static” trunk, with or without LACP or FEC protocols.
Static LACP trunk
On a HP ProCurve switch, a trunk can be defined as static LACP. Trunk will form itself unconditionally and LACP frames will be sent. The remote side will form automatically if in LACP passive mode.
Sample topology
Cisco-2
In the following example, the trunk is defined with 6 Ports and as a Layer 3 trunk.
HP Static LACP trunk configuration
The following defines a trunk as static LACP. The trunk group “trk1” is then assigned to Vlan 10 in which an IP address is defined.
Conf t
trunk a1-a6 trk1 lacp vlan 10
untagged trk1 ip address 10.1.10.1/24 exit
ProCurve1# show trunk Load Balancing
Port | Name Type | Group Type ---- + --- --- + --- --- A1 | 100/1000T | Trk1 LACP
Procurve-2
Channel
Fa1/0/1
-6
Int Po 1 = 10.1.10.2/24
Vlan 10 = 10.1.10.1/24
Trunk A1 - A6
A2 | 100/1000T | Trk1 LACP A3 | 100/1000T | Trk1 LACP A4 | 100/1000T | Trk1 LACP A5 | 100/1000T | Trk1 LACP A6 | 100/1000T | Trk1 LACP
ProCurve1# show lacp
LACP
PORT LACP TRUNK PORT LACP LACP NUMB ENABLED GROUP STATUS PARTNER STATUS ---- --- --- --- --- --- A1 Active Trk1 Up Yes Success
A2 Active Trk1 Up Yes Success A3 Active Trk1 Up Yes Success A4 Active Trk1 Up Yes Success A5 Active Trk1 Up Yes Success A6 Active Trk1 Up Yes Success ProCurve1# ping 10.1.10.2
10.1.10.2 is alive, time = 1 ms
Configuration of Cisco LACP passive channel
The “no switchport” command is required to define a channel as L3 channel. Ports are defines in LACP passive mode
conf t
interface range FastEthernet1/0/1 - 6 no switchport
channel-group 1 mode passive exit
IP address is defined on the Port-Channel interface.
interface Port-channel1 no switchport
ip address 10.1.10.2 255.255.255.0 end
Check channel status
Cisco1#sh etherchannel 1 summary
Flags: D - down P - in port-channel
I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2
U - in use f - failed to allocate aggregator u - unsuitable for bundling
w - waiting to be aggregated d - default port
Number of channel-groups in use: 1 Number of aggregators: 1 Group Port-channel Protocol Ports
---+---+---+--- 1 Po1(RU) LACP Fa1/0/1(P) Fa1/0/2(P) Fa1/0/3(P) Fa1/0/4(P) Fa1/0/5(P) Fa1/0/6(P)
Detailed display shows that a channel is created, LACP is the protocol in use, info about “Local switch” and “partner”.
Cisco1#sh etherchannel 1 detail
Group state = L3
Ports: 6 Maxports = 16
Port-channels: 1 Max Port-channels = 16 Protocol: LACP
Ports in the group: --- Port: Fa1/0/1
---
Port state = Up Mstr In-Bndl
Channel group = 1 Mode = Passive Gcchange = -
Port-channel = Po1 GC = - Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = LACP
Flags: S - Device is sending Slow LACPDUs F - Device is sending fast LACPDUs.
A - Device is in active mode. P - Device is in passive mode.
Local information:
LACP port Admin Oper Port Port Port Flags State Priority Key Key Number State
Fa1/0/1 SP bndl 32768 0x1 0x1 0x3FB 0x3C
Partner's information:
LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa1/0/1 SA 0 000e.7f06.0100 12s 0xD2 0x1 0x3D (skip info…)
Port-channels in the group: --- Port-channel: Po1 (Primary Aggregator) ---
Age of the Port-channel = 00d:07h:30m:17s
Logical slot/port = 10/1 Number of ports = 6 HotStandBy port = null
Passive port list = Fa1/0/1 Fa1/0/2 Fa1/0/3 Fa1/0/4 Fa1/0/5 Fa1/0/6 Port state = Port-channel L3-Ag Ag-Inuse
Protocol = LACP Ports in the Port-channel:
Index Load Port EC state No of bits ---+---+---+---+--- 0 00 Fa1/0/1 Passive 0 0 00 Fa1/0/2 Passive 0 0 00 Fa1/0/3 Passive 0 0 00 Fa1/0/4 Passive 0 0 00 Fa1/0/5 Passive 0 0 00 Fa1/0/6 Passive 0
Time since last port bundled: 00d:00h:01m:12s Fa1/0/6 Time since last port Un-bundled: 00d:00h:01m:55s Fa1/0/6
Spanning-Tree
31- Introduction32- MSTP
33- PVST and RSTP
321- Cisco as Core, ProCurve as Edge 322- ProCurve as Core, Cisco as Edge
Introduction
Glossary
STP is Spanning-Tree Protocol
The IEEE standard implementation of STP is 802.1D.
RSTP is Rapid Spanning-Tree Protocol defined by the 802.1w IEEE standard. MSTP is Multiple Spanning-Tree Protocol defined by the 802.1s IEEE
standard.
PVST is Per VLAN Spanning-tree proprietary implementation of STP on Cisco equipment
PVST+ is the implementation of PVST on 802.1q links.
Spanning-Tree on HP ProCurve Switches
802.1D and 802.1w (RSTP)
All HP ProCurve switches implement both of these STP standards.
On HP ProCurve, Spanning-Tree has to be activated, the default mode is then Rapid STP.
MSTP 802.1s
It is supported on most manageable switches except 2500 and 4100 switches Please refer to switch documentation.
Spanning-Tree on Cisco Switches
PVST+
By default, Cisco switches run PVST+. PVST is the implementation of STP on ISL links (Cisco proprietary multi-VLAN encapsulation) while PVST+ runs on 802.1q links .
In PVST+, there is one instance of STP per VLAN and BPDUs use a proprietary Multicast Mac Address. They are not “understood” by HP ProCurve switches (except by ProCurve 9300M and 9400M) and are then flooded as a regular multicast. So, regarding PVST+ BPDUs, HP ProCurve switches appear as a hub.
However, Native VLAN (untagged VLAN of a tagged link equal to VLAN 1 be default) is an exception. In Native VLAN, the Cisco switches send standard STP BPDUs, which are “understood” by HP ProCurve switches. This is how both platform interact.
Cisco has also introduced Rapid PVST+, a PVST+ implementation that integrates Rapid STP principles.
Prestandard MSTP
MSTP should not be confused with the prestandard version of MSTP.
MSTP (802.1s)
You must run the latest versions of IOS to get support of MSTP (check on Cisco web site).
Caution
Support for the IEEE 802.1s standard has been introduced around September 2005 by Cisco in the IOS. One should refer to Cisco web site for IOS support of compliant MSTP (*). Caution should be taken on not confusing the
prestandard MST and the compliant IEEE 802.1s MST. If configuration of both modes looks exactly the same, the prestandard does NOT
interoperate with the MSTP on ProCurve as this one complies with IEEE 802.1s standard.
(*) Versions of IOS implementing the Compliant IEEE 802.1s starts with: 12.2(18) for Catalyst 6500, 12.2(25)SG for Catalyst 4500 and 12.2(25)SEC on Catalyst 35xx, 37xx, and 2970.
What Spanning-Tree mode should you choose between Cisco and ProCurve Switches?
MSTP is obviously the ideal choice because it is standard based and
supported by both vendors, it converges quickly and allows load-balancing of traffic on uplinks with appropriate configuration.
If not all your devices support MSTP yet, a progressive migration to MSTP can be put in place as it interoperates with Standard, Rapid Spanning Tree modes and with PVST via the Native Vlan.
Note that all STP modes interoperate via the standard spanning-tree mode also named the Common Spanning-Tree (CST). So whatever is your choice,
you should always carefully define the root and secondary root of the CST. On Cisco look after priority of STP in the Native Vlan (vlan 1 by
MSTP Configuration
Procurve-Edge-1
The parameters for the MSTP domain has been defined as followed: Configuration Name = procurve-cisco (case sensitive)
Configuration Number = 1 Instance 1 = vlans 1, 10, 20 Instance 2 = vlans 30, 40
Configuration of Cisco-Core-1
hostname Core-Cisco-1
Following defines MST mode (802.1s)
spanning-tree mode mst
spanning-tree extend system-id
All parameters of the MSTP configuration must match on all switches of the MSTP domain. spanning-tree mst configuration name procurve-cisco revision 1 instance 1 vlan 1, 10, 20 instance 2 vlan 30, 40
For load balancing of traffic among links, Cisco-core-1 is defined as Root of instance 0 and 1 (priority 0) and secondary root of instance 2 (priority 4096)
spanning-tree mst 0-1 priority 0 spanning-tree mst 2 priority 4096 VLAN Creation Procurve-Edge-2 Gi1/3 Cisco-Core-1 e 1 e 2 Gi1/1 Gi1/1 Gi1/3 Gi1/2 Gi1/2 Cisco-Core-2 e 1 e 2
VLAN 1 exists by default
vlan 10,20,30,40
Uplinks are defined as 802.1q links. They are named “trunks” in Cisco terminology and “tagged links” in ProCurve terminology. The “nonegogiate” feature means that we do no use the Dynamic Trunk Protocol to negotiate the status of the uplink.
interface range GigabitEthernet0/1 - 3 switchport trunk encapsulation dot1q switchport mode trunk
switchport nonegotiate
Access ports (Cisco Terminology) or Edge ports (ProCurve terminology) are defined as untagged members of a Vlan. The portfast mode defines them as Edge port in Spanning tree terminology.
Interface range GigabitEthernet0/4 -10 switchport access vlan 10
switchport mode access spanning-tree portfast !
interface range GigabitEthernet0/11 - 24 switchport access vlan 20
switchport mode access spanning-tree portfast
IP configuration.
ip routing
The Virtual IP used as Default Gateway for the various VLANs are set using HSRP (Hot Standby Router Protocol), the Cisco proprietary protocol.
As Cisco-Core-1 is the Root of MST instance 1, we also set it as Master of the Virtual IP of Vlans 1, 10 & 20. And as it is secondary root for MST instance 2, we define it as the Backup of Virtual IP in Vlans 30 & 40.
interface Vlan1 ip address 10.1.1.1 255.255.255.0 standby 1 ip 10.1.1.254 standby 1 timers 1 3 standby 1 priority 255 standby 1 preempt ! interface Vlan10 ip address 10.1.10.1 255.255.255.0 standby 10 ip 10.1.10.254 standby 10 timers 1 3 standby 10 priority 255 standby 10 preempt ! interface Vlan20 ip address 10.1.20.1 255.255.255.0 standby 20 ip 10.1.20.254 standby 20 timers 1 3 standby 20 priority 255 standby 20 preempt ! interface Vlan30 ip address 10.1.30.1 255.255.255.0 standby 30 ip 10.1.30.254 standby 30 timers 1 3 ! interface Vlan40
ip address 10.1.40.1 255.255.255.0 standby 40 ip 10.1.40.254 standby 40 timers 1 3 ! end Core-cisco-2 configuration hostname Core-Cisco-2 !
Global Configuration is similar to the configuration of Cisco-Core-1
spanning-tree mode mst
spanning-tree extend system-id spanning-tree mst configuration name procurve-cisco
revision 1
instance 1 vlan 1, 10, 20 instance 2 vlan 30, 40
For load balancing of traffic among uplinks, Cisco-core-2 is defined as Root of instance 2 (priority 0) and secondary root of instance 0 and 1 (priority 4096)
spanning-tree mst 0-1 priority 4096 spanning-tree mst 2 priority 0 !
vlan 10,20,30,40 !
For load balancing of traffic among uplinks, Cisco-core-2 is defined as Root of instance 2 and secondary root of instances 0 and 1.
interface range GigabitEthernet0/1 - 3 switchport trunk encapsulation dot1q switchport mode trunk
switchport nonegotiate !
!
ip routing
Because Cisco-Core-2 is set as the secondary Root of MST instance 1, we define it as HSRP backup of the Virtual IP of VLANs 1, 10 & 20.
And because it is root of MST instance 2, we set it as the Master of Virtual IP in VLANs 30 & 40. interface Vlan1 ip address 10.1.1.2 255.255.255.0 standby 1 ip 10.1.1.254 standby 1 timers 1 3 ! interface Vlan10 ip address 10.1.10.2 255.255.255.0 standby 10 ip 10.1.10.254 standby 10 timers 1 3 ! interface Vlan20 ip address 10.1.20.2 255.255.255.0 standby 20 ip 10.1.20.254 standby 20 timers 1 3 ! interface Vlan30 ip address 10.1.30.2 255.255.255.0 standby 30 ip 10.1.30.254 standby 30 timers 1 3 standby 30 priority 255
standby 30 preempt ! interface Vlan40 ip address 10.1.40.2 255.255.255.0 standby 40 ip 10.1.40.254 standby 40 timers 1 3 standby 40 priority 255 standby 40 preempt end ProCurve-Edge-1 Configuration ProCurve-Edge-1 is a 3500yl. hostname "ProCurve-Edge-1" VLAN configuration
Uplinks ports are 1 and 2
vlan 1 name "DEFAULT_VLAN" untagged 1-24 ip address 10.1.1.3 255.255.255.0 exit vlan 10 name "VLAN10" untagged 11-15 tagged 1-2 no ip address exit vlan 20 name "VLAN20" untagged 16-20 tagged 1-2 no ip address exit vlan 30 name "VLAN30" untagged 21-25 tagged 1-2 no ip address exit vlan 40 name "VLAN40" untagged 25-30 tagged 1-2 no ip address exit
Let’s enable Spanning-tree. It default on MSTP on the latest ProCurve switches: 3500yl, 5400zl and 4200vl
spanning-tree
Default port configuration in MSTP is non Edge and Point-to-Point. We define Edge ports as “Edge”.
spanning-tree 11-30 edge-port
MSTP Configuration: Name, Revision and instances match the one of other switches in MSTP domain
spanning-tree config-name "procurve-cisco" spanning-tree config-revision 1
spanning-tree instance 1 vlan 1 10 20 spanning-tree instance 2 vlan 30 40
ProCurve-Edge-2 Configuration
Configuration is similar to the configuration of ProCurve-Edge-1.
In our example ProCurve-Edge-2 is a 3400. Spanning-tree mode defaults to RSTP. And we have to turn it on MSTP mode that requires a reboot.
hostname "ProCurve-Edge-2" max-vlans 16 vlan 1 name "DEFAULT_VLAN" untagged 1-9,18-24 ip address 10.1.1.4 255.255.255.0 no untagged 10-17 exit vlan 10 name "VLAN10" untagged 10-11 tagged 1-2 exit vlan 20 name "VLAN20" untagged 12-13 no ip address tagged 1-2 exit vlan 30 name "VLAN30" untagged 14-15 no ip address tagged 1-2 exit vlan 40 name "VLAN40" untagged 16-17 no ip address tagged 1-2 exit spanning-tree spanning-tree protocol-version MSTP spanning-tree 10-17 edge-port
spanning-tree config-name "procurve-cisco" spanning-tree config-revision 1
spanning-tree instance 1 vlan 1 10 20 spanning-tree instance 2 vlan 30 40
Checking configuration of MSTP
In the following displays: note that the
Mac Address of Cisco Core-1 is 0010.0db1.7100 or 00100d-b17100 Mac Address of Cisco Core-2 is 0010.0db3.1200 or 00100d-b31200
On Cisco-Core-1
The following command displays the parameters of MSTP configuration. Note that Cisco shows all the non assigned VLANs in Instance 0 (=IST
Instance) where ProCurve shows the non assigned AND created Vlans only.
Core-Cisco-1#show spanning-tree mst configuration Name [procurve-cisco]
Revision 1 Instances configured 3 Instance Vlans mapped
--- ---0 2-9,11-19,21-29,31-39,41-4094
1 1,10,20 2 30,40
---
Status of MSTP spanning tree in each instance. Cisco-Core-1 (0010.0db1.7100 ) is root in instances 0 and 1. Cisco-Core-2 (0010.0db1.7100) is root in instance 2.
Core-Cisco-1#show spanning-tree mst
##### MST0 vlans mapped: 2-9,11-19,21-29,31-39,41-4094
Bridge address 0010.0db1.7100 priority 0 (0 sysid 0) Root this switch for the CIST
Operational hello time 2 , forward delay 15, max age 20, txholdcount 6 Configured hello time 2 , forward delay 15, max age 20, max hops 20 Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p
Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Desg FWD 20000 128.3 P2p Gi1/45 Desg FWD 20000 128.45 Edge P2p ##### MST1 vlans mapped: 1,10,20
Bridge address 0010.0db1.7100 priority 1 (0 sysid 1) Root this switch for MST1
Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p
Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Desg FWD 20000 128.3 P2p Gi1/45 Desg FWD 20000 128.45 Edge P2p ##### MST2 vlans mapped: 30,40
Bridge address 0010.0db1.7100 priority 4098 (4096 sysid 2) Root address 0010.0db3.1200 priority 2 (0 sysid 2) port Gi1/3 cost 20000 rem hops19 Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Root FWD 20000 128.3 P2p On Cisco-Core-2 Parameters of MSTP configuration.
Core-Cisco-2#show spanning-tree mst configuration Name [procurve-cisco]
Instance Vlans mapped --- --- 0 2-9,11-19,21-29,31-39,41-4094 1 1,10,20 2 30,40 ---
Status of MSTP spanning tree in each instance.
Cisco-Core-1 (0010.0db1.7100 ) is root in instances 0 and 1. Cisco-Core-2 (0010.0db3.1200) is root in instance 2.
Core-Cisco-2#show spanning-tree mst
##### MST0 vlans mapped: 2-9,11-19,21-29,31-39,41-4094
Bridge address 0010.0db3.1200 priority 4096 (4096 sysid 0) Root address 0010.0db1.7100 priority 0 (0 sysid 0) port Gi1/3 path cost 0
Regional Root address 0010.0db1.7100 priority 0 (0 sysid 0) internal cost 20000 rem hops 19 Operational hello time 2 , forward delay 15, max age 20, txholdcount 6 Configured hello time 2 , forward delay 15, max age 20, max hops 20 Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p
Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Root FWD 20000 128.3 P2p ##### MST1 vlans mapped: 1,10,20
Bridge address 0010.0db3.1200 priority 4097 (4096 sysid 1) Root address 0010.0db1.7100 priority 1 (0 sysid 1) port Gi1/3 cost 20000 rem hops 19 Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p
Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Root FWD 20000 128.3 P2p ##### MST2 vlans mapped: 30,40
Bridge address 0010.0db3.1200 priority 2 (0 sysid 2) Root this switch for MST2
Interface Role Sts Cost Prio.Nbr Type
--- ---- --- --- --- --- Gi1/1 Desg FWD 20000 128.1 P2p Gi1/2 Desg FWD 20000 128.2 P2p Gi1/3 Desg FWD 20000 128.3 P2p On ProCurve-Edge-1 Parameters of MSTP configuration.
Note that display shows IST instance without any Vlans. In fact the vlans, including those not yet created, that are not associated with an existing instance are mapped to the IST instance.
ProCurve-Edge-1# show spanning-tree mst-config MST Configuration Identifier Information MST Configuration Name : procurve-cisco MST Configuration Revision : 1
MST Configuration Digest : 0x2DC307C6A31621DC6311050884E69C4E IST Mapped VLANs :
Instance ID Mapped VLANs
--- --- 1 1,10,20
2 30,40
The following display shows ports configuration.
Note that uplinks are set as Non edge and others are set as Edge.
ProCurve-Edge-1# show spanning-tree 1-5 config
Multiple Spanning Tree (MST) Configuration Information STP Enabled [No] : Yes
Force Version [MSTP-operation] : MSTP-operation Default Path Costs [802.1t] : 802.1t
MST Configuration Name : procurve-cisco
MST Configuration Revision : 1 Switch Priority : 32768 Forward Delay [15] : 15 Hello Time [2] : 2 Max Age [20] : 20 Max Hops [20] : 20
| Prio BPDU Port Type | Cost rity Edge Pnt-to-Pnt MCheck Hello Time Filter ---- --- + --- --- ---- --- --- ---
1 100/1000T | Auto 128 No Force-True Yes Use Global No 2 100/1000T | Auto 128 No Force-True Yes Use Global No 3 100/1000T | Auto 128 No Force-True Yes Use Global No 4 100/1000T | Auto 128 Yes Force-True Yes Use Global No 5 100/1000T | Auto 128 Yes Force-True Yes Use Global No
Status in IST Instance: Root port is 1 and alternate (blocked) is 2
ProCurve-Edge-1# show spanning-tree 1-2 instance ist IST Instance Information
Instance ID : 0 Mapped VLANs :
Switch Priority : 32768 Topology Change Count : 4 Time Since Last Change : 11 mins
Regional Root MAC Address : 00100d-b17100 Regional Root Priority : 0
Regional Root Path Cost : 20000 Regional Root Port : 1 Remaining Hops : 19
Designated Port Type Cost Priority Role State Bridge
---- --- --- --- --- --- --- 1 100/1000T 20000 128 Root Forwarding 00100d-b17100 2 100/1000T 20000 128 Alternate Blocking 00100d-b31200
Status in Instance 1: Root port is 1 and alternate (blocked) is 2
ProCurve-Edge-1# show spanning-tree 1-2 instance 1 MST Instance Information
Instance ID : 1
Switch Priority : 32768 Topology Change Count : 2 Time Since Last Change : 13 mins
Regional Root MAC Address : 00100d-b17100 Regional Root Priority : 0
Regional Root Path Cost : 20000 Regional Root Port : 1 Remaining Hops : 19
Designated Port Type Cost Priority Role State Bridge
---- --- --- --- --- --- --- 1 100/1000T 20000 128 Root Forwarding 00100d-b17100 2 100/1000T 20000 128 Alternate Blocking 00100d-b31200
Status in Instance 2: Root port is 2 and alternate (blocked) is 1
ProCurve-Edge-1# show spanning-tree 1-2 instance 2 MST Instance Information
Instance ID : 2 Mapped VLANs : 30,40
Switch Priority : 32768 Topology Change Count : 4 Time Since Last Change : 13 mins
Regional Root MAC Address : 00100d-b31200 Regional Root Priority : 0
Regional Root Path Cost : 20000 Regional Root Port : 2 Remaining Hops : 19
Designated Port Type Cost Priority Role State Bridge
---- --- --- --- --- --- --- 1 100/1000T 20000 128 Alternate Blocking 00100d-b17100 2 100/1000T 20000 128 Root Forwarding 00100d-b31200 ProCurve-Edge-1# show spanning-tree 1-2
Multiple Spanning Tree (MST) Information STP Enabled : Yes
Force Version : MSTP-operation IST Mapped VLANs :
Filtered Ports :
Switch MAC Address : 001635-b487c0 Switch Priority : 32768
Max Age : 20 Max Hops : 20 Forward Delay : 15
Topology Change Count : 10 Time Since Last Change : 53 secs CST Root MAC Address : 00100d-b31200 CST Root Priority : 4096
CST Root Path Cost : 0 CST Root Port : 2
IST Regional Root MAC Address : 00100d-b31200 IST Regional Root Priority : 4096
IST Regional Root Path Cost : 20000 IST Remaining Hops : 19
| Prio | Designated Hello
Port Type | Cost rity State | Bridge Time PtP Edge ---- --- + --- --- --- + --- --- --- 1 100/1000T | 20000 128 Blocking | 001635-b487c0 2 Yes No 2 100/1000T | 20000 128 Forwarding | 00100d-b31200 2 Yes No
IP and HSRP Status
Displays are shown to explain
Core-Cisco-1#show ip int brief
Interface IP-Address OK? Method Status Protocol Vlan1 10.1.1.1 YES manual up up Vlan10 10.1.10.1 YES manual up up Vlan20 10.1.20.1 YES manual up up Vlan30 10.1.30.1 YES manual up up Vlan40 10.1.40.1 YES manual up up Core-Cisco-1#sh standby brief
P indicates configured to preempt. |
Interface Grp Prio P State Active Standby Virtual IP Vl1 1 255 P Active local 10.1.1.2 10.1.1.254 Vl10 10 255 P Active local 10.1.10.2 10.1.10.254 Vl20 20 255 P Active local 10.1.20.2 10.1.20.254 Vl30 30 100 Standby 10.1.30.2 local 10.1.30.254 Vl40 40 100 Standby 10.1.40.2 local 10.1.40.254 Core-Cisco-2#show ip int brief
Interface IP-Address OK? Method Status Protocol Vlan1 10.1.1.2 YES manual up up Vlan10 10.1.10.2 YES manual up up Vlan20 10.1.20.2 YES manual up up Vlan30 10.1.30.2 YES manual up up Vlan40 10.1.40.2 YES manual up up Core-Cisco-2#sh standby brief
P indicates configured to preempt. |
Interface Grp Prio P State Active Standby Virtual IP Vl1 1 100 Standby 10.1.1.1 local 10.1.1.254 Vl10 10 100 Standby 10.1.10.1 local 10.1.10.254 Vl20 20 100 Standby 10.1.20.1 local 10.1.20.254 Vl30 30 255 P Active local 10.1.30.1 10.1.30.254 Vl40 40 255 P Active local 10.1.40.1 10.1.40.254
Cisco as Core running PVST+, HP ProCurve as Edge
running RSTP
Procurve-Edge-1
Cisco-2
Cisco-1
Uplinks are tagged with VLANs 10,20, 30 & 40
Untagged in Vlan 1 (Native-Vlan)
In this topology, uplinks are tagged with VLANs 10, 20, 30 and 40 and untagged for VLAN 1. On Cisco, it is named the Native VLAN.
In PVST+ Cisco-1 is the primary Root for VLANs 1, 10 and 20 and Cisco-2 the secondary Root.
Cisco-2 is the primary Root for VLANs 30 and 40 and Cisco-1 the secondary Root.
ProCurve-Edge-1 is an access switch.
Cisco-1 PVST+ Configuration
Following define PVST+ Spanning-Tree mode, allows PVST+ to run for VLANs above 1023 an up to 4095.
Conf t
hostname Cisco-1
Spanning-Tree mode pvst
Spanning-Tree extend system-id
Cisco-1 is the primary Root for VLAN 1, 10, 20 and the secondary Root for VLAN 30,40
Spanning-Tree vlan 1,10,20 priority 0 Spanning-Tree vlan 30,40 priority 4096
Although it is not mandatory, the STP timers have been lowered to speed convergence time. One should pay attention in using those values as it may create instability if not applied properly. The following values are acceptable in a network with a “diameter” of 3, which means that BPDUs will not cross more than 3 switches before returning to originator Root switch.
Spanning-Tree vlan 1,10,20,30,40 hello-time 1 Spanning-Tree vlan 1,10,20,30,40 forward-time 4 Spanning-Tree vlan 1,10,20,30,40 max-age 6 !
Access ports are configured in PortFast mode
interface range FastEthernet1/0/10 - 48 Spanning-Tree portfast
exit
802.1q link (Cisco “trunk”) Configuration
interface range GigabitEthernet1/0/1 - 4 switchport trunk encapsulation dot1q
switchport trunk allowed vlan 1,10,20,30,40 switchport mode trunk
Assignment of Access ports to VLAN
interface range FastEthernet1/0/10 - 19 switchport access vlan 10
switchport mode access
interface range FastEthernet1/0/20 - 29 switchport access vlan 20
switchport mode access
interface range FastEthernet1/0/30 - 39 switchport access vlan 30
switchport mode access
interface range FastEthernet1/0/40 - 48 switchport access vlan 40
switchport mode access
PVST+ configuration of Cisco-2
Configuration of Cisco-2 is similar to Cisco-1’s.
Conf t
hostname Cisco-2
PVST+ Spanning-Tree Configuration
Spanning-Tree mode pvst
Allows PVST+ to run for VLANs above 1023 and up to 4095.
Spanning-Tree extend system-id
Cisco-2 is the secondary Root for VLANs 1, 10, 20 and primary Root for VLANs 30,40
Spanning-Tree vlan 1,10,20 priority 4096 Spanning-Tree vlan 30,40 priority 0
When changed, timers must be changed on primary and on secondary Roots.
Spanning-Tree vlan 1,10,20,30,40 hello-time 1 Spanning-Tree vlan 1,10,20,30,40 forward-time 4 Spanning-Tree vlan 1,10,20,30,40 max-age 6 !
Enable PortFast on all ports except the Cisco “trunk” ports
Spanning-Tree portfast default
ProCurve Edge-1 configuration
ProCurve Edge-1 is an Edge/Access switch.
Conf
hostname "ProCurve-Edge-1"
STP configuration. Default mode is RSTP.
In RSTP mode, default configuration of all ports is Point-to-Point and Edge (fast convergence). To follow the specifications of the standard, the Uplinks are defined as Point-to-Point and Non Edge.
no Spanning-Tree A15-A16 edge-port
The following enables Spanning-Tree.
Spanning-Tree
Default mode is RSTP (802.1w), other modes are Standard STP (802.1D) and MSTP (802.1s). Changing mode requires a reboot.
VLANs configuration vlan 1 ip address 10.1.1.10 255.255.255.0 vlan 10 untagged B1-B4 tagged A15-A16 vlan 20 untagged B5-B9 tagged A15-A16 vlan 30 untagged B10-B14 tagged A15-A16 vlan 40 untagged B15-B19 tagged A15-A16
Checking STP status
In the following displays, Mac address of Cisco-1 is 0013.c382.a900 and Mac address of Cisco-2 is 0013.c392.d200.