ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [시스코] 스타토폴로지
    서버/CISCO 2017. 9. 26. 21:50


    단점

    @브리징 루프

    -브로드케스트 스톰

    : 스위치가 플러딩한 데이터가 스위치 토폴리지 상에서 계속 맴도는 현상

    : CPU의 과부하가 발생


    -유니케스트 프레임 복제 ( Copy Unicast Frame )
         : 경로가 2개이상일 경우 경로마다 유니케스트를 보내는 문제점


    -MAC 주소 테이블 불안정(MAC Flapping )

    : 맥 주소 학습이 경로마다 계속되어 불안정한 상태



    switch# show spanning-tree vlan 1

    블락킹, 정보확인 

    해결 : IEEE 802.1d Spanning-Tree Protocol

     

     : 블락킹   ( 정보확인 ) 

     : 논리적으로 경로를 막아놓는 상태 ( 구간이 에러났을때 해제되며 구간이 복구되며 다시 블락킹 된다. )


    root bridge : root ( dp ) 스위치

    non root bridge : 블락킹 포트를 가지고있는 스위치 

    backup root bridge : 


    블락킹 하는 조건

    BPDU : Root 브리지에서 생성되는 프레임

     1) cost : Root Path Cost 값이 높은 포트


     2) Bridge-ID : cost가 같을 때 2번째로 확인


     3) port-ID : Root 기준으로 큰 경로

       - 2가지 종류가 있음

       - Designated Port ( DP ) : BPDU 송신    : Root스위치의 포트는 그냥 다 DP라고 생각하면 된다.

       - ROOT Port ( RP ) : BPDU 수신


    Root 브리지 선출

    -우선순위 값이 가장 낮은 스위치

    -MAC 주소가 가장 낮은 스위치


    IEEE Spanning 용어  

    Disable : 포트가 작동하지 않은 상태


    Blocking : 포트가 논리적으로 차단되어있는 상태


    Listening : STP컨버전스 단계


    Learning :  이전 Forwading 상태로 이전하는 직전 단계


    Forwarding : 송수신이 가능한 상태


    listen( 15 ) > learning( 15 ) > foward   : 30초 가량 소요시간이 걸림 > 서비스의 지장

    max-age ( 20 ) > listen (15 ) > learning (15) > foward : 50초 가량 소요시간이 걸림 > 서비스 매우 지장.

    < 포트 패스트 > 

    sw(conf-t ) int fa0/1

    sw(conf-if) sh

    sw(conf-if) spanning-tree portfast  (trunk)

    sw(conf-if) no sh

    error > foward : 대기시간 없이 바로 연결

    단 스위치 - 스위치에는 권장하지 않는다 

    : 일시적으로 bridging loops 가 발생할 수 있다.

    : non - trunking ( access mode ) 


    Spanning tree의 기본 설정 : DP 

    기본값 줄이기

    SW1(config)#spanning-tree vlan 1 max-age 6 

    SW1(config)#spanning-tree vlan 1 forward-time 4


    default 값 15, 20 을 줄일 수 있다.


    UPlink & BackBone( CCNP - switch , CCNA (X) )

    SW(config) # spanning-tree uplinkfast :  지연시간 방지 ( listen, learn )

    SW(config) # spanning-tree backbonefast : max시간 ( 20 ) 방지


    RSTP ( CCNA, CCNP )

    switch 간에 빠르게 연결 ( Router , PC, Server 들은 포트 패스트를 해준다 . )

    int fa0/1  -- pc

     spanning-tree portfast



    int fa0/10 -- router

     spanning-tree portfast trunk


    제안 > 제안 > RP

    제안 > 동의 > DP

    SW1(config)#spanning-tree mode rapid-pvst 


    SW2(config)#spanning-tree vlan 1 priority 4096 

    SW2(config)#spanning-tree mode rapid-pvst 


    SW3(config)#spanning-tree vlan 1 priority 16384 

    SW3(config)#spanning-tree mode rapid-pvst



    >> Spanning Tree는 128개 까지 지원이된다.

     이유 : VLAN이 늘어날수록 각각의 spanning tree 가 계속 설정되고 BPDU가 보내지게 된다.


    또한 서로 다른 VLAN을 Root Bridge를 다르게 해준다

    SW2(config)#spanning-tree vlan 11 priority 4096 

    SW2(config)#spanning-tree vlan 12 priority 16384

    SW2(config)#end

    SW2#show spanning-tree


    >>> 문제점 해결

    MSTP
    vlan 250개 < MST < SPT 1

    vlan 250개 < MST < SPT 2


    sw1(config) # spanning-tree mode mst


    sw2(config) # spanning-tree mode mst

    sw2(config) # spanning-tree mst 0 pri 4096


    sw# show spanning-tree mst 0


    mst 추가하기 ( 그룹 )

    SW1,SW2,SW3(config)#spanning-tree mst configuration 

    SW1,SW2,SW3(config-mst)#revision 1 

    SW1,SW2,SW3(config-mst)#name CCNP 

    SW1,SW2,SW3(config-mst)#instance 1 vlan 11,13 

    SW1,SW2,SW3(config-mst)#instance 2 vlan 12,14 

    SW1,SW2,SW3(config-mst)# 

    SW1,SW2,SW3(config-mst)#show pending 

    Pending MST configuration Name [CCNP] 

    Revision 1 Instances configured 


    3 Instance Vlans mapped 

    -------- --------------------------------------------------------------------- 

    0 1-10,15-4094 

    1 11,13 

    2 12,14 

    -------------------------------------------------------------------------------

    end

    !

    sw1,sw2,sw2 # show spanning-tree mst



    Spanning Tree 보호기법

    ---주로 PC와 연결된 곳에 설정하는 것이다.

    ---스위치끼리 연결된 곳에하면 장애가 발생할 위험이 있다.


    스위치에 bpdu를 무작위로 보내는 bpdu flooding 공격에 취약하다.

    따라서 생겨난게 BPDU GURAD 이다.

    BPDU GUARD

    spanning tree가 설정되지 않는 포트로 송신이 왔을 경우 해당 포트를 차단한다.

    sw(config ) # int fa0/20

    sw(config ) # spanning-tree bpduguard enable

    막힌 포트는 ( err - disable ) 상태이다.

    따라서 다시 활성화를 시키려면 아래와 같은 명령어를 사용한다.

    sw(config) # shutdown

    sw(config ) # no shutdown

    BPDU Filtter

    spanning tree가 설정된 포트가 2초마다 BDPU를 보내는데 차단하는 용도로 쓰임

    내부적으로 처리가 되고있다. (cpu점유중 ) >> 다만 걸러질뿐이다.


    But >> BPDU flooding 공격은 막지못한다. ( cpu는 처리되고 있으며 나가는 것만 막고 있기 때문에 )


    주의 % 

    스위치에 잘못 설정할 경우 blk된 포트에서 max가 지나 forwarding 상태가 되어 블락이 풀리게 된다.

    그렇게되면 bridge - loop상태에 들어갈 수 있으니 주의한다.

    따라서 이런 예외상황은 loop guard 설정을 같이 진행한다.


    BLK이 별표시가 떠있다.

    sw(config )# int fa0/20

    sw(config-if) # spanning-tree guard loop


    ------------------- ---- --- --------- -------- --------------------------------

    Fa0/20              Desg BKN*19        128.20   P2p *LOOP_Inc 

    Fa0/24              Root FWD 19        128.24   P2p 

    sw(config) # int fa0/20

    sw(config) # spanning-tree bpdufilter enable   ( 해제시 no )


    Root BLK

    기존에 Root가 변경되어버리면 포트를 자동으로 막아버리는 기능.

    sw2,sw3( config ) # int fa0/24 ( fa0/20)

    sw2,sw3(config-if) # spanning-tree guard root

    sw2,sw3# show spanning-tree vlan 1


    sw1(config ) # spanning-tree vlan 1 priority 0


    sw2 화면

    ------------------- ---- --- --------- -------- --------------------------------

    Fa0/22              Desg FWD 19        128.24   P2p 

    Fa0/24              Desg BKN*19        128.20   P2p *ROOT_Inc 


    스위치 모든 포트에 루프 가드 설정

    sw1(config) # spanning-tree loopguard default


    UDLD(Unidirectional Link Detection)

    크로스오버 케이블 구성상 TX(송신), RX(수신)


    TX, RX 한선로만 단선이 되어있으면 에러를 내지 않는다. 

    따라서 이런설정을 관리자가 해주어야 한다.

    SW2,SW3(config ) # int fa0/22

    SW2,SW3(config -if ) # udld port aggressive

    end

    !

    sw2,sw3 # show udld fa0/22



    '서버 > CISCO' 카테고리의 다른 글

    [시스코] 2계층 - SWITCH  (0) 2017.09.20
    [시스코] IP자원고갈 대책  (0) 2017.09.13
    [시스코] IP, ICMP  (0) 2017.09.11
    [시스코] TCP / UDP  (0) 2017.09.11
    [시스코] IP주소, MAC주소  (0) 2017.09.11

    댓글

Designed by Tistory.