이 문서에서는 PortFast BPDU(Bridge Protocol Data Unit) 가드 기능에 대해 설명합니다.이 기능은 Cisco에서 만든 STP(Spanning Tree Protocol) 개선 사항 중 하나입니다.이 기능은 스위치 네트워크 신뢰성, 관리 용이성 및 보안을 향상시킵니다.
이 문서에 대한 특정 요건이 없습니다.
이러한 소프트웨어 버전에서는 STP PortFast BPDU 가드를 도입했습니다.
Catalyst 4500/4000(Supervisor Engine II), 5500/5000, 6500/6000, 2926, 2926G, 2948G 및 2980G 플랫폼용 Catalyst OS(CatOS) 소프트웨어 버전 5.4.1
Catalyst 6500/6000 플랫폼용 Cisco IOS® Software 릴리스 12.0(7)XE
Cisco IOS Software 릴리스 12.1(8a)EW for the Catalyst 4500/4000 Supervisor Engine III
Cisco IOS Software 릴리스 12.1(12c)EW for the Catalyst 4500/4000 Supervisor Engine IV
Catalyst 2900XL 및 3500XL 시리즈용 Cisco IOS Software 릴리스 12.0(5)WC5
Catalyst 3750 Series 스위치용 Cisco IOS Software 릴리스 12.1(11)AX
Cisco IOS Software 릴리스 12.1(14)AX for the Catalyst 3750 Metro 스위치
Catalyst 3560 Series 스위치용 Cisco IOS Software 릴리스 12.1(19)EA1
Catalyst 3550 Series 스위치용 Cisco IOS Software 릴리스 12.1(4)EA1
Catalyst 2970 Series 스위치용 Cisco IOS Software 릴리스 12.1(11)AX
Catalyst 2955 Series 스위치용 Cisco IOS Software 릴리스 12.1(12c)EA1
Catalyst 2950 Series 스위치용 Cisco IOS Software 릴리스 12.1(6)EA2
Catalyst 2950 LRE(Long-Reach Ethernet) 스위치용 Cisco IOS Software 릴리스 12.1(11)EA1
Catalyst 2940 Series 스위치용 Cisco IOS Software 릴리스 12.1(13)AY
참고: STP PortFast BPDU 가드는 Catalyst 8500 시리즈, 2948G-L3 또는 4908G-L3 스위치에 사용할 수 없습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참고하십시오.
STP는 메시 토폴로지를 루프 프리(loop-free) 트리 유사 토폴로지로 구성합니다.브리지 포트의 링크가 작동하면 해당 포트에서 STP 계산이 발생합니다.계산의 결과는 포트를 전달 또는 차단 상태로 전환하는 것입니다.결과는 네트워크의 포트 위치와 STP 매개변수에 따라 달라집니다.이 계산 및 전환 기간은 일반적으로 30~50초가 소요됩니다.그 당시에는 사용자 데이터가 포트를 통과하지 못합니다.일부 사용자 애플리케이션은 해당 기간 동안 시간 초과될 수 있습니다.
포트를 전달 상태로 즉시 전환하도록 허용하려면 STP PortFast 기능을 활성화합니다.PortFast는 연결 시 포트를 STP 전달 모드로 즉시 전환합니다.포트가 여전히 STP에 참여하고 있습니다.따라서 포트가 루프의 일부가 될 경우 포트는 결국 STP 차단 모드로 전환됩니다.
포트가 STP에 참여하는 한 일부 디바이스는 루트 브리지 기능을 가정하고 활성 STP 토폴로지에 영향을 줄 수 있습니다.루트 브리지 기능을 가정하기 위해 디바이스는 포트에 연결되고 현재 루트 브리지보다 낮은 브리지 우선순위로 STP를 실행합니다.다른 디바이스에서 이 방식으로 루트 브리지 기능을 가정하면 네트워크가 최적화되지 않습니다.이는 네트워크에 대한 간단한 DoS(Denial of Service) 공격입니다.브리지 우선순위가 낮은 STP 디바이스를 임시로 도입하고 후속 제거를 수행하면 영구 STP가 재계산됩니다.
STP PortFast BPDU 가드 기능 향상으로 네트워크 설계자는 STP 도메인 경계를 적용하고 활성 토폴로지를 예측 가능하게 유지할 수 있습니다.STP PortFast가 활성화된 포트 뒤에 있는 디바이스는 STP 토폴로지에 영향을 주지 않습니다.BPDU가 수신될 때 BPDU 가드 작업은 PortFast가 구성된 포트를 비활성화합니다.BPDU 가드는 포트를 errdisable 상태로 전환하고 콘솔에 메시지가 나타납니다.이 메시지는 다음과 같은 예입니다.
2000 May 12 15:13:32 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast enable port. Disabling 2/1 2000 May 12 15:13:32 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1
다음 예를 고려하십시오.
브리지 A는 우선 순위 8192이며 VLAN의 루트입니다.브리지 B는 우선 순위 16384이며 동일한 VLAN에 대한 백업 루트 브리지입니다.기가비트 이더넷 링크가 연결되는 브리지 A와 B는 네트워크의 코어를 구성합니다.브리지 C는 액세스 스위치이며 디바이스 D에 연결되는 포트에 PortFast가 구성되어 있습니다. 다른 STP 매개변수가 기본값인 경우 브리지 B에 연결되는 브리지 C 포트는 STP 차단 상태입니다.PC(Device D)는 STP에 참여하지 않습니다.파선 화살표는 STP BPDU의 흐름을 나타냅니다.
그림 2에서 디바이스 D가 STP에 참여하기 시작했습니다.예를 들어 Linux 기반 브리지 애플리케이션은 PC에서 실행됩니다.소프트웨어 브리지의 우선 순위가 0이거나 루트 브리지의 우선 순위 값보다 작은 값이 있으면 소프트웨어 브리지가 루트 브리지 기능을 인수합니다.두 코어 스위치를 연결하는 기가비트 이더넷 링크는 차단 모드로 전환됩니다.이 전환으로 인해 해당 VLAN의 모든 데이터가 100Mbps 링크를 통해 이동합니다.VLAN의 코어를 통한 데이터 흐름이 링크보다 많을 경우 프레임 삭감이 발생합니다.프레임 삭제로 인해 연결이 중단됩니다.
STP PortFast BPDU 가드 기능은 이러한 상황을 방지합니다.이 기능은 브리지 C가 디바이스 D에서 STP BPDU를 수신하는 즉시 포트를 비활성화합니다.
STP PortFast BPDU 가드를 전역적으로 활성화 또는 비활성화할 수 있으며, 이는 PortFast가 구성된 모든 포트에 영향을 미칩니다.기본적으로 STP BPDU 가드는 비활성화되어 있습니다.스위치에서 STP PortFast BPDU 가드를 활성화하려면 다음 명령을 실행합니다.
Console> (enable) set spantree portfast bpdu-guard enable Spantree portfast bpdu-guard enabled on this switch. Console> (enable)
CatSwitch-IOS(config)# spanning-tree portfast bpduguard CatSwitch-IOS(config)
STP BPDU 가드가 포트를 비활성화하면 포트가 수동으로 활성화되지 않는 한 포트가 비활성 상태로 유지됩니다.errdisable 상태에서 자동으로 재활성화하도록 포트를 구성할 수 있습니다.errdisable-timeout 간격을 설정하고 시간 제한 기능을 활성화하는 다음 명령을 실행합니다.
Console> (enable) set errdisable-timeout interval 400 Console> (enable) set errdisable-timeout enable bpdu-guard
CatSwitch-IOS(config)# errdisable recovery cause bpduguard CatSwitch-IOS(config)# errdisable recovery interval 400
참고: 기본 시간 초과 간격은 300초이며, 기본적으로 시간 초과 기능은 비활성화됩니다.
기능이 활성화되었는지 비활성화되었는지 확인하려면 다음 명령을 실행합니다.
Console> (enable) show spantree summary Root switch for vlans: 3-4. Portfast bpdu-guard enabled for bridge. Uplinkfast disabled for bridge. Backbonefast disabled for bridge. Summary of Connected Spanning Tree Ports By VLAN: Vlan Blocking Listening Learning Forwarding STP Active ----- -------- --------- -------- ---------- ---------- 1 0 0 0 1 1 3 0 0 0 1 1 4 0 0 0 1 1 20 0 0 0 1 1 Blocking Listening Learning Forwarding STP Active ----- -------- --------- -------- ---------- ---------- Total 0 0 0 4 4 Console> (enable)
CatSwitch-IOS# show spanning-tree summary totals Root bridge for: none. PortFast BPDU Guard is enabled UplinkFast is disabled BackboneFast is disabled Spanning tree default pathcost method used is short Name Blocking Listening Learning Forwarding STP Active -------------------- -------- --------- -------- ---------- ---------- 1 VLAN 0 0 0 1 1 CatSwitch-IOS#