Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

An HP ProCurve Networking Configuration Note

How to improve and harden spanning-tree configuration on ProCurve switches

Contents
1. Introduction .............................................................................................................................................................. 2 2. Network diagram ...................................................................................................................................................... 2 3. Auto-Edge and Admin-Edge .................................................................................................................................... 4 4. BPDU Protection and BPDU Filtering ..................................................................................................................... 6 5. Spanning-tree Root Guard ...................................................................................................................................... 8 6. Loop protection ...................................................................................................................................................... 10 7. Firmware versions ................................................................................................................................................. 11 8. Reference documents ............................................................................................................................................ 12

How to improve and harden spanning-tree configuration on ProCurve switches

1. Introduction
This application note presents different commands that ease and fasten the convergence of spanning-tree protocol on a ProCurve network, while protecting against loops and unwanted topology changes.

2. Network diagram
The platform which will be used in this document to detail the different steps of the configuration consists of: Two Distribution switches: - 2 x ProCurve switches 8212zl, named Distrib-1 and Distrib-2 are set as Distribution switches. They aggregate multiple Edge switches redundantly. - Distribution switches act as redundant default gateway for the user VLANS/ IP subnets define between Edge and Distribution switch. For details on this configuration refer to AN-I1 and AN-I2. Two Core switches: - The 2 Cores Core-1 and Core-2 are connected to each of the 2 Distribution switches via Gigabit uplinks. Each link is defined as a unique VLAN and IP Subnet (Routed Link) A Router: A ProCurve Secure Router 7102dl is redundantly connected to the 2 Core switches:

This hardware configuration is detailed in Figure-1 below.

HP ProCurve Networking

How to improve and harden spanning-tree configuration on ProCurve switches

Figure 1. 3-Layer topology with spanning-tree and routed network interconnection

This platform represents a typical enterprise network topology, with Edge, Distribution and Core layers. Multiple spanning-tree with 2 instances is implemented on the Edge and Distribution switches. Now, in order to protect the network against unwanted loops or topology changes, we are going to implement several security features on the Distribution and Edge switches

How to improve and harden spanning-tree configuration on ProCurve switches

3. Auto-Edge and Admin-Edge


Preamble: in MSTP and RSTP, ports that connect to End nodes (PCs, Printers, Routers, Firewall) should be set as Edge port and Inter-Switch link should be set as non-Edge ports With the auto-edge-port feature, the identification of edge ports is automatic. Auto-edge-port- feature is enabled by default on ports. The port will look for BPDUs for 3 seconds; if there are none it begins forwarding packets and port is set as Edge, if there are BPDUs, it sets the port as non-Edge. As an admin, if you do not care about the 3 sec delay, auto-edge-port is an easy end recommended setup. For a manual setup of Edge ports, enable admin-edge-port on ports connected to end nodes. During spanning tree establishment, ports with admin-edge-port enabled transition immediately to the forwarding state. If a bridge or switch is detected on the segment, the port automatically operates as non-edge. Admin-edge-port is disabled by default. Note: If admin-edge-port is enabled for a port, the setting for auto-edge-port is ignored whether set to yes or no. If admin-edge-port is set to No, and auto-edge-port has not been disabled (set to No), then the auto-edge-port setting controls the behavior of the port. Then for the non Edge-Ports: disable admin-Edge (default value=disabled) and disable auto-edge-port (Default=Enabled) Synthesis: Auto-edge feature results on correct setting of ports (Edge or non-Edge) but introduce a delay of 3 seconds. To bypass this delay set your Edge ports as Admin-Edge. For the non Edge-Ports: disable admin-Edge (default value) and disable auto-edge-port. In our platform, following ports/modules are configured as admin edge: - Ports A1-B24 on switches Distrib-1, Distrib-2, Edge-2 and 1-24 on switch Edge-1 (3500yl) Following ports/modules are configured as no auto edge: - C1-C4 on switches Distrib-1, Distrib-2, Edge-2 and A1-A4 on switch Edge-1 (3500yl)

How to improve and harden spanning-tree configuration on ProCurve switches

Configuration example on Distrib-1:

! User ports A1-B24 are defined as admin-edge Distrib-1(config)# spanning-tree A1-A24, B1-B24 admin-edge-port

! Auto-edge is disabled on uplink ports Distrib-1(config)# no spanning-tree C1-C4 auto-edge-port

To view the edge configuration and status of all switch ports, use the command show spanning-tree config:

Distrib-1# show spanning-tree 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 : B10 MST Configuration Revision : 1 Switch Priority : 0 Forward Delay [15] : 15 Hello Time [2] : 2 Max Age [20] : 20 Max Hops [20] : 20

Port

Type

| Path | Cost

Prio rity

Admin Auto Edge Edge

Admin Hello PtP Time

Root Guard

TCN Guard

BPDU Flt

----- --------- + --------- ----- ----- ----- ----- ------ ------ ------ ---A1 100/1000T | Auto 128 No No True Global No No Yes A2 100/1000T | Auto 128 No No True Global No No Yes

B23 B24 C1 C2 C3 C4

100/1000T 100/1000T 10GbE-SR 10GbE-SR 10GbE-SR

| | | | | |

Auto Auto Auto Auto Auto Auto

... 128 128 128 128 128 128

Yes Yes No No No Yes

Yes Yes No No No Yes

True True True True True True

Global Global Global Global Global Global

No No No No No No

No No No No No No

No No No No No No

HP ProCurve Networking

How to improve and harden spanning-tree configuration on ProCurve switches

4. BPDU Protection and BPDU Filtering


The switch should never receive spanning tree BPDUs on user ports. If it happens, it means that somebody connected a switch on a port where it should not be connected. And the danger of connecting an unwanted switch to the network is that it can cause the spanning-tree algorithm to be recalculated and to completely change its topology and forward the traffic on the wrong links. In order to protect the network against such behavior, 2 security features exist: BPDU filtering and BPDU protection. BPDU filtering allows control of spanning-tree participation on a per-port basis. When enabled on a port, it excludes this port from any spanning-tree participation: the port will ignore spanning-tree BPDUs and stay locked in forwarding state. BPDU protection prevents unwanted BPDUs to enter the spanning-tree domain. It is usually used on ports connected to devices that do not support spanning-tree. When enabled on a port, BPDU protection will disable the port for a given period (configurable timeout) if a BPDU is received. In our case the 300s timeout will be used for port deactivation.

Basically, ports connected to identified devices that do not support spanning-tree should be configured with BPDU filtering. Ports not connected to anything yet should be configured with BPDU protection, which will disable a port in case of spoofed BPDU attack. In our configuration examples, ports connected to routed links are configured with BPDU filtering: - Ports A1-A2 on Distrib-1 and Distrib-2 Other edge-ports are configured with BPDU protection: - Ports A3-A24 and B1-B24 on Distrib-1, Distrib-2 - Ports A1-A24 and B1-B24 on Edge-2 - Ports 1-24 on Edge-1

HP ProCurve Networking

How to improve and harden spanning-tree configuration on ProCurve switches

Example on Distrib-1:

! BPDU filtering configuration: Distrib-1(config)# spanning-tree A1-A2 bpdu-filter

! Timeout configuration: Distrib-1(config)# spanning-tree bpdu-protection-timeout 300

! BPDU protection configuration: Distrib-1(config)# spanning-tree A1-A24, B1-B24 bpdu-protection

How to improve and harden spanning-tree configuration on ProCurve switches

To view the status of these features, use the commands show spanning-tree config , show spanning-tree bpduprotection and show run | include bpdu-protection

Distrib-1# show spanning-tree Config

Port

Type

| Path | Cost

Prio rity

Admin Auto Edge Edge

Admin Hello PtP Time

Root Guard

TCN Guard

BPDU Flt

----- --------- + --------- ----- ----- ----- ----- ------ ------ ------ ---A1 100/1000T | Auto 128 No No True Global No No Yes A2 100/1000T | Auto 128 No No True Global No No Yes

Distrib-1# show spanning-tree bpdu-protection

Status and Counters - STP Port(s) BPDU Protection Information

BPDU Protection Timeout (sec) : 300 BPDU Protected Ports : A3-A24,B3-B24

Distrib-1# show run | include bpdu-protection

spanning-tree ... spanning-tree spanning-tree ... spanning-tree spanning-tree

A21 bpdu-protection A24 bpdu-protection B1 bpdu-protection B24 bpdu-protection bpdu-protection-timeout 300 priority 0

5. Spanning-tree Root Guard


When a port is enabled as root-guard, it cannot be selected as the root port even if it receives superior STP BPDUs. The port is assigned an alternate port role and enters a blocking state if it receives superior STP BPDUs. A superior BPDU contains better information on the root bridge and/or path cost to the root bridge, which would normally replace the current root bridge selection. The superior BPDUs received on a port enabled as rootguard are ignored. All other BPDUs are accepted and the external devices may belong to the spanning tree as long as they do not claim to be the Root device. Use this command on MSTP Distribution switch ports that are connected to Edge switch that may come with wrong configuration or to devices located in other administrative network domains to: Ensure the stability of the core MSTP network topology so that undesired or damaging influences external to the network do not enter. Protect the configuration of the CIST root bridge that serves as the common root for the entire network. Default: The root-guard setting is disabled.

HP ProCurve Networking

How to improve and harden spanning-tree configuration on ProCurve switches

In our example, well enable Root Guard on ports of Distribution switches that connect to Edge switches. Root Guard configuration: Distrib-1# / Distrib-2# spanning-tree A1,C1,C2 root-guard

Configuration example on Distrib-1:

! Root Guard configuration: Distrib-1(config)# spanning-tree C2-C3 root-guard

How to improve and harden spanning-tree configuration on ProCurve switches

To view the status of root guard protection:

Distrib-1# show spanning-tree config

Port

Type

| Path | Cost

Prio rity

Admin Auto Edge Edge

Admin Hello PtP Time

Root Guard

TCN Guard

BPDU Flt

----- --------- + --------- ----- ----- ----- ----- ------ ------ ------ ---A1 100/1000T | Auto 128 No No True Global No No Yes A2 100/1000T | Auto 128 No No True Global No No Yes

B23 B24 C1 C2 C3 C4

100/1000T 100/1000T 10GbE-SR 10GbE-SR 10GbE-SR

| | | | | |

Auto Auto Auto Auto Auto Auto

... 128 128 128 128 128 128

Yes Yes No No No Yes

Yes Yes No No No Yes

True True True True True True

Global Global Global Global Global Global

No No No Yes Yes No

No No No No No No

No No No No No No

6. Loop protection
Loop protection mechanism is used to prevent accidental loops that can occur when an unmanaged non-spanningtree-capable equipment is connected and drops spanning-tree packets. When loop protection is enabled on a port, it sends out a loop protocol packet; if it then receives the same packet, it disables the port for a time that can be configured (disable-timer). Loop protection should be activated on all ports.

How to improve and harden spanning-tree configuration on ProCurve switches

Loop protect configuration example on Distrib-1:

! Disable timer configuration: Distrib-1(config)# loop-protect disable-timer 300

! Loop-protection activation: Distrib-1(config)# loop-protect A1-A24, B1-B24, C1-C4

Loop protection ports status check:

Distrib-1(config)# show loop-protect

Status and Counters - Loop Transmit Interval (sec) : Port Disable Timer (sec) : Loop Detected Trap :

Protection Information 5 300 Disabled

Loop Port Protection

Loop Detected

Loop Count

Time Since Last Loop

Rx Action

Port Status

---- ----------- --------A1 Yes No A2 Yes No ... B23 Yes No B24 Yes No C1 Yes No C2 Yes No C3 Yes No C4 Yes No

---------- ---------------- ------------ -------0 send-disable Up 0 send-disable Down 0 0 0 0 0 0 send-disable send-disable send-disable send-disable send-disable send-disable Down Up Up Up Down Down

7. Firmware versions
Switches firmware versions used in this application note are: For ProCurve switches 3500yl, 5406zl and 8212zl: K.13.25

HP ProCurve Networking

11

How to improve and harden spanning-tree configuration on ProCurve switches

8. Reference documents
This concludes the procedure for hardening MSTP on ProCurve switches. For further information about how to configure MSTP security features on ProCurve switches 3500yl-5400zl-8212zl, please refer to the following links: - ProCurve Advanced Traffic Management Guide for the ProCurve Series 3500yl/6200yl/5400zl/8212zl Switches Chapter 4- Multiple Instance Spanning-tree operation: http://cdn.procurve.com/training/Manuals/3500-5400-62008200-ATG-Jan08-4-MSTP.pdf

- Command Line Reference Guide: http://cdn.procurve.com/training/Manuals/8200-6200-5400-3500-CLI-K13Mar2008.pdf

For further information, please visit www.procurve.eu


2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein.

4AA2-3657EEE, December 2008

You might also like