스패닝 트리를 켜면 네트워크에 문제가 있음을 어떻게 알 수 있습니까?


13

스패닝 트리 프로토콜 (STP / RSTP / MSTP)에 대해 배우고 있는데 일단 전원을 켜고 네트워크 루프와 같은 네트워크 루프로부터 보호하고 있다면 네트워크 루프가 있는지 어떻게 알 수 있습니까?

루프가있는 방이 다운 되었기 때문에 대부분의 경우에 분명하다고 생각하지만 불만이 없으면 어떻게해야합니까?

이와 같은 네트워크 문제가 있음을 여전히 알 수있는 방법이 필요합니다. 장치가 어떤 종류의 경고를 보내거나 누군가가 때때로 로그 나 다른 것을 확인해야합니까?

답변:


22

스패닝 트리 이벤트에 대한 스위치 로그를 보거나 STP가 포트를 종료 할 때 SNMP 트랩을 보내도록 스위치를 구성합니다.


1
좋은 모니터링도 마찬가지입니다.
lsd

나는 이것이 명백한 대답이라고 생각한다. Splunk를 사용하여 로그를 피드하고 snmp 트랩과 경고를 모니터링하는 것과 같은 것을 할 수 있다고 생각합니다.
Scott Szretter

11

테스트. 무언가가 작동하고 있다는 것을 알고 싶다면 테스트하십시오.

STP를 활성화하면 네트워크 유지 관리를 예약하고 케이블을 루프에 연결하십시오. 네트워크가 여전히 작동하면 STP에서 루프를 감지했습니다. 네트워크가 다운되면 STP가 작동하지 않는 것입니다.


3
이 사이트의 답변의 거의 절반이 첫 문장으로 변경 될 수 있기 때문에 +1입니다.
gparent

4
유일한 문제는 그것이 내가 묻는 질문에 대한 대답이 아니라는 것입니다. 제 경우에는 네트워크가 작동 중입니다. 스패닝 트리가 꺼져 있고 네트워크 루프가 있으면 작동이 중지됩니다. 스패닝 트리를 ON으로 설정하면 이론적으로 네트워크가 계속 작동하므로 장비가 문제를 가리기 때문에 예를 들어 문제 루프가 있음을 어떻게 알 수 있습니까? (지금까지 snmp / logs에 대한 위의 대답이 의미가 있습니다)
Scott Szretter

2
설정을 테스트 한 경우 관리 인터페이스가 네트워크 루프를 표시했는지 알 수 있습니다. 알 수 없으므로 설정을 테스트하지 않아야합니다. 포트의 STP 상태가 포트 "오류"또는 "예외"상태 보고서로 표시되는 설정에서 일반적입니다.
Chris S

5

스패닝 트리는 루프가 "오류"라고 생각하지 않습니다. 그것들은 프로토콜의 일부이며 루프를 일으키는 포트를 찾은 다음 전달을 비활성화합니다. 특정 조건이 존재하는지 확인하기 위해 프로토콜을 사용하려고한다고 생각하지만 이것이 실제로 주요 목적은 아닙니다. "잘 설계된"네트워크에는 일반적으로 (중복성을 위해) 루프가있을 수 있습니다. 로깅 이벤트 스패닝 트리 상태 (또는 플랫폼에서 동등한 이벤트)를 켜는 것 외에 상자 밖에서 생각하십시오. 네트워크의 루프 (스패닝 트리에 의해 비활성화되지 않은 경우)는 브로드 캐스트 스톰에서 큰 트래픽 레벨을 유발합니다. 따라서 트래픽이 급격히 증가하면 이러한 수준과 모니터링 플랫폼에서 그래프를 작성하여 루프가 발생할 수 있습니다.


이해하는 것이 중요합니다. 많은 사람들이 스패닝 트리를 루프에 대해 잘못 비난하지만 스패닝 트리를 활성화 하여 중복을 위해 네트워크에 루프추가 할 수 있습니다 .
Paul Gear

2

테스트와 함께 STP / RSTP / MSTP 구현에서 고려해야 할 몇 가지 추가 사항은 다음과 같습니다.

  1. 스위치 우선 순위를 설정하여 사전 결정된 스위치가 루트로 선택되고 보조 스위치가 기본 스위치에 실패 할 경우 루트로 인계되도록 지정하십시오. 이것은 스패닝 트리 구현에서 가장 일반적인 실수입니다.
  2. 영구적으로 연결된 장치 (예 : 서버, 프린터, NAS)가있는 모든 포트는 포트 대기 모드 (Cisco 용어, HP ProCurve에서는 에지 포트라고 함)에 대기 시간이 길지 않도록해야합니다. 부팅 할 때 STP 수렴.
  3. 에지 장치 (PC, 프린터, 서버 등)에 연결하는 모든 포트에는 루트 가드가 활성화되어 있어야합니다. 이렇게하면 사람들이 잘못 구성되었거나 승인되지 않은 스위치를 연결하여 예기치 않게 재 수렴이 발생하는 것을 방지 할 수 있습니다.
  4. 제어에서 스위치 간 링크가 아닌 포트 (PC, 프린터, 서비스 제공 업체 라우터 포함)는 BPDU 가드가 활성화되어 있어야하며, STP BPDU가 수신 될 때 포트를 비활성화하도록 설정하는 것이 좋습니다. 이렇게하면 사람들이 에지 포트에서 잘못된 일을 시작할 때 즉시 알 수 있습니다.

이것은 매우 유용한 답변입니다 감사합니다. 우연히 언급 한 포인트에 대해 HP ProCurve에 해당하는 명령을 모르십니까? 이 HP 링크에는 모범 사례 권장 사항이 없습니다. h20565.www2.hp.com/hpsc/doc/public/…
g18c

나는이 질문에 스스로 답할 수있다 :) serverfault.com/questions/703386/…
g18c

2

이전의 진단 제안 외에도 스위치의 "스패닝 트리 표시"명령 (또는 이에 상응하는)의 출력을 해석하는 방법을 배워야합니다. 루트 포트, 지정된 포트 및 기타 여러 가지 중요한 진단이 표시됩니다.

다음은 2 x Cisco 2950 및 1 x HP 3400cl로 설정 한 네트워크 예입니다. 네트워크 연결은 다음과 같습니다.

  • hp3400cl [24]-> c2950 [g0 / 2] (1000Mbps)
  • c2950 [f0 / 23]-> c2950b [f0 / 47] (100Mbps)
  • c2950b [f0 / 45]-> hp3400cl [23] (100Mbps)

스위치는 모두 공통 스패닝 트리 인스턴스 만 설정된 MSTP 모드에 있습니다. hp3400cl의 우선 순위는 0이고 c2950은 8192에서 다음으로 가장 높은 우선 순위이며 c2950b는 12288의 우선 순위입니다. 따라서 hp3400cl은 루트 여야합니다. "show spanning-tree"출력 결과는 다음과 같습니다.

hp3400cl# show spanning-tree 

 Multiple Spanning Tree (MST) Information

  STP Enabled   : Yes
  Force Version : MSTP-operation
  IST Mapped VLANs : 1-4094
  Switch MAC Address : 001871-8bd020
  Switch Priority    : 0    
  Max Age  : 6 
  Max Hops : 20
  Forward Delay : 4 

  Topology Change Count  : 4           
  Time Since Last Change : 4 mins      

  CST Root MAC Address : 001871-8bd020
  CST Root Priority    : 0           
  CST Root Path Cost   : 0           
  CST Root Port        : This switch is root

  IST Regional Root MAC Address : 001871-8bd020
  IST Regional Root Priority    : 0           
  IST Regional Root Path Cost   : 0           
  IST Remaining Hops            : 20          

  Root Guard Ports : 
  TCN Guard Ports  : 
  BPDU Protected Ports :                                         
  BPDU Filtered Ports  :                                         

                  |           Prio             | Designated    Hello         
  Port  Type      | Cost      rity  State      | Bridge        Time  PtP Edge
  ----- --------- + --------- ----- ---------- + ------------- ----- --- ----
  1     100/1000T | Auto      128   Disabled   |
...
  22    100/1000T | Auto      128   Disabled   |
  23    100/1000T | 200000    128   Forwarding | 001871-8bd020 1     Yes No  
  24    100/1000T | 20000     128   Forwarding | 001871-8bd020 1     Yes No  

c2950#show spanning-tree 

MST00
  Spanning tree enabled protocol mstp
  Root ID    Priority    0
             Address     0018.718b.d020
             Cost        20000
             Port        26 (GigabitEthernet0/2)
             Hello Time   1 sec  Max Age  6 sec  Forward Delay  4 sec

  Bridge ID  Priority    8192   (priority 8192 sys-id-ext 0)
             Address     000c.308f.7f80
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
...
Fa0/24           Desg FWD 200000    128.24   P2p 
Gi0/2            Root FWD 20000     128.26   P2p Bound(RSTP) 

c2950b#show spanning-tree 

MST00
  Spanning tree enabled protocol mstp
  Root ID    Priority    0
             Address     0018.718b.d020
             Cost        20000
             Port        47 (FastEthernet0/47)
             Hello Time   1 sec  Max Age  6 sec  Forward Delay  4 sec

  Bridge ID  Priority    12288  (priority 12288 sys-id-ext 0)
             Address     000a.b7e3.30c0
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/45           Altn BLK 200000    128.45   P2p Bound(RSTP) 
Fa0/47           Root FWD 200000    128.47   P2p 

위 목록에서 포트 상태에 대해 유의해야 할 사항은 다음과 같습니다.

  • 다른 스위치에 대한 루트 스위치의 링크가 전달됩니다
  • 루트가 아닌 스위치의 루트 링크는 두 경우 모두 "Root FWD"입니다.
  • 비 루트 스위치의 서로 연결은 한쪽 끝은 "Altn BLK"이고 다른 쪽 끝은 "Desg FWD"입니다. 이는 c2950b가 f0 ​​/ 45가 루트에 대한 대체 경로임을 알고 루프를 방지하기 위해 루트를 차단했음을 의미합니다. 루트 포트 (f0 / 47)가 실패하면 c2950b는 f0 / 45를 다시 수렴하지 않고 루트 포트로 설정합니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.