본문으로 바로가기

이더체널(Etherchannel)


이더체널는 스위치간에 여러개의 포트를 논리적인 하나의 포트로 구성하여

대역폭 확장과 이중화 링크구현 기능을 수행한다.

예를 들어 스위치 F0/1~F0/4 포트를 이더체널로 구성하면, 400M 대역폭을 제공하는
논리적인 포트를 구성할 수 있다. 또한, F0/1 포트가 장애가 발생되면, 300M 대역폭을 사용할 수 있기 때문에
이중화 구현도 가능하다.

 

이더채널은 액세스와 트렁크 포트에서 모두 가능한데

액세스 모드로 구성할경우, speed, duplex-mode, vlan-id가 동일해야 하며

트렁크 모드로 구성할 경우, trunk mode와 vlan-id, native vlan이 동일해야한다.

 

 

 

1)트렁크 설정을 미리 해두면 마지막 파란색 명령어로 이더채널 구성이 끝난다.  

트렁크가 되어있으므로 맨마지막줄만 넣으면 설정된다.

 

@SW1,SW2

 

int port-channel 12

switchport trunk encapsulation dot1q

switchport mode trunk

 

int range fa0/23 - 24

channel-group 12 mode desirable​>>> 트렁크를 먼저 설정해두고 이한줄의 명령어를 입력하면 실 장비에서 설정이 완료된다.

@SW2,SW3

int port-channel 23

 

switchport mode access

switchport access vlan 11

 

int range fa0/21-22

channel-group 23 mode active

!

 

-이더채널은 대역폭을 확장하는 것​

-Speed, duplex-mode, vlan-id가 동일해야 한다.

-trunk, access에서도 사용 가능.

 

옵션

active : 무조건 LACP를 사용,

auto : 상대 스위치가 Pagp를 사용할 경우만 가능

desirable: 무조건 PAgp를 사용.

passive : 상대 스위치 포트가 LACP를 사용했을때만 사용

 

 

 

 

양측 스위치에서 이더채널이 끝나면 show ehterchannel summary 명령어를 사용한다.

SW2#sh etherchannel 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: 2
Number of aggregators: 2

Group Port-channel Protocol Ports
------+-------------+-----------+----------------------------------------------

12 Po12(SU) PAgP Fa0/23(P) Fa0/24(P) >>>>>>>>>>>>U, 즉 사용중이다라는 의미이다.
23 Po23(SU) LACP Fa0/21(P) Fa0/22(P)

 

 

 

SW2#sh int trunk
Port Mode Encapsulation Status Native vlan
Fa0/23 on 802.1q trunking 1
Fa0/24 on 802.1q trunking 1
Po12 on 802.1q trunking 1

Port Vlans allowed on trunk
Fa0/23 1-1005
Fa0/24 1-1005
Po12 1-1005

Port Vlans allowed and active in management domain
Fa0/23 1,11
Fa0/24 1,11
Po12 1,11

Port Vlans in spanning tree forwarding state and not pruned
Fa0/23 1,11
Fa0/24 1,11
Po12 1,11

 

 

 

 

 

SW2#sh vlan brief

VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/10, Fa0/11, Fa0/12
Fa0/13, Fa0/14, Fa0/15, Fa0/16
Fa0/17, Fa0/18, Fa0/19, Fa0/20
Gig0/1, Gig0/2
11 VLAN0011 active Fa0/21, Fa0/22, Po23
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active

​SW2#sh spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32769
Address 0009.7C56.5720
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 0009.7C56.5720
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20

Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po12 Desg FWD 9 128.27 Shr

VLAN0011
Spanning tree enabled protocol ieee
Root ID Priority 32779
Address 0009.7C56.5720
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 32779 (priority 32768 sys-id-ext 11)
Address 0009.7C56.5720
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 20

Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po23 Desg FWD 9 128.28 Shr
Po12 Desg FWD 9 128.27 Shr


 

 

STP를 이용한 네트워크 보호 기술

 

BPDU Guard

포트를 통해서 BPDU를 수신했을때 해당 포트를 자동으로 셧다운 시키는 기능을 말한다. 이렇게 셧다운되면 관리자가

shutdown 명령어를 사용한 후 다시 no shutdown 명령어를 사용해야만 포트가 살아난다.

 

BPDU 가드는 PC나 서버 등 종단장치가 접속된 포트가 BPDU를 수신했을 때 해당 포트를 차단한다. 종단장치가 접속된 포트가

BPDU를 수신했다는 것은 일반 사용자들이 무단으로 스위치에 개인의 스위치나 허브를 접속했다던지 , STP 관련 해킹 공격을 받고

있음을 의미하는 경우가 많다.

 

실제로는 실무에서 스위치간에 BPDP가드를 설정하지 않는다. 또한 block포트 이외에 bpdu 가드를 설정하면 아무런 변화가 없다

 

기본 토폴로지

 

 

BPDU 가드 동작시키기

SW3(config)#int fa0/20

SW3(config-if)#sp

SW3(config-if)#sp

SW3(config-if)#span

SW3(config-if)#spanning-tree bp

SW3(config-if)#spanning-tree bpduguard en

SW3(config-if)#spanning-tree bpduguard enable --> bpdu를 동작시키는 명령어

SW3(config-if)#%SPANTREE-2-BLOCK_BPDUGUARD: Received BPDU on port FastEthernet0/20 with BPDU Guard enabled. Disabling port.


%PM-4-ERR_DISABLE: bpduguard error detected on 0/20, putting 0/20 in err-disable state



%LINK-5-CHANGED: Interface FastEthernet0/20, changed state to administratively down


%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/20, changed state to down

 

-----> 바로 다운 됨을 알 수 있다.

 

err-disabled에 의한  포트 비활성화가 됨을 알수있다.

SW3#show int f0/20

FastEthernet0/20 is down, line protocol is down (err-disabled)

 

show interface status err-disabled 명령어를 사용하면 에러가 발생된 원인을 알 수 있다. 패킷트레이서 지원 안됨

SW3# show interfaces status error-disabled

 

port     name                 status                 Reason            Err-disavled vlans

Fa0/20                          err-disabled         bpduguard

 

이때 SW3의 Fa0/20 포트에서 shutdown한다음 no shutdown시키면 다시 살아난다.

show run으로 bpdu가 설정 확인가능하다

interface FastEthernet0/20

spanning-tree bpduguard enable

 

 

BPDU Filter
BPDP 필터는 특정포트로 BPDU를 보내거나 받지 않게 하는 기능을 말한다.
BPDU를 수신하여 스위치 부하 현상을 방지하기 위해서 사용되거나, 또는 스위
치 포트에 연결된 서버에게 불필요한 BPDU를 전송하지 않음으로써 부하 현상을 방지하기 위해서 사용된다.

 

 

ex)

int f0/23

spanning-free bpdufilter enable

 

만약에 차단포트에 적용시키면 어떻게 될까?

int f0/20

spanning-tree bpdufiller ena

 

SW3은 f0/20 포트를 통하여 송수신을 하지 않는다. 따라서 SW2가 BPDU를 수신을 못받으므로, SW3의 f0/20번포트가 dp가 된다. 그렇게 되면 루프가 발생하게 된다.

EX)

 

SW3# show spanning-tree vlan 1

 

interface    Role    sts    cost    prio.Nbr    Type

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

Fa0/20       Altn   BLk     3019

 

이렇게 표시 된다고 합니다.

 

 

CPU 사용률 확인

sw3 #show process cpu

CPU utilization for five seconds: 4%/0%/ one minute: 6%; five minutes : 5%

 

---> cpu 사용률 이 굉장이 낮다.

 

 

BPDU 필터링 디버깅 활성화

SW3# debug spanning-tree events

 

SW3# int f0/20

SW3 spanning-tree bpdufiler enable

 

 

SW3#

STP : VLAN0001 Fa0/20 -> listening

STP : VLAN0001 Fa0/20 -> learning

STP : VLAN0001 Fa0/20 -> forwarding

 

SW3#
SW3#show spanning-tree vlan 1

Spanning tree enabled protocol ieee
~ 중간 생략 ~
Interface Role Sts Cost Prio.Nbr Type
---------------- ------ ----- --------- --------- --------------------------------
Fa0/20 Desg FWD 19 128.26 P2p

 

 

SW3 F0/20 포트에 설정한 BPDU 필터 삭제

SW3(config)#int fa0/20
SW3(config-if)#no spanning-tree bpdufilter enable

 

 

 

Root Guard
루트 가드는 차단상태에 있는 포트가 상대포트에서 BPDU를 밪지 못했을 때 전송포트로 변경되는 것을 방지하는 기능을 말한다.

 다시 BPDU를 수신하지 시작하면 자동으로 정상적인 차단상태로 변경된다. 기본적으로 50초 동안 BPDU를 수신하지 못하면

SW3의 Fa0/20의 block port를 dp로 변경하게된다. 그러면 루프가 발생되는데

이러한 상황을 방지하려면 BPDU를 수신못받게 되어도 차단상태를 전송상태로 변경하지 않게 하는것을 루프 가드(loop grard)라고 한다. 설정하려면 spanning-tree guard loop 명령어를 사용한다. 한마디로 루프가 발생되는현상을 막아준다.

 

SW3(config)#int fa0/20
SW3(config-if)#spanning-tree guard loop

실수로 BPDU 필터링을 설정했다면

SW2(config)#int fa0/20
SW2(config-if)#spanning-tree bpdufilter enable

 

03:37:32: %SPANTREE-2-LOOPGUARD_BLOCK: Loop guard blocking port FastEthernet0/20
on VLAN0001.  ----> 루프 가드가 동작한다.

 


SW3#
SW3#show spanning-tree vlan 1---> 루프 차단 상태 확인 자동으로 blk됨
VLAN0001
Spanning tree enabled protocol ieee
~ 중간 생략 ~
Interface Role Sts Cost Prio.Nbr Type
---------------- ------ ----- --------- --------- --------------------------------
Fa0/20 Desg BKN*19 128.22 P2p *LOOP_Inc

 

필터링 해제

 

SW2(config)#int fa0/20


SW2(config-if)#no spanning-tree bpdufilter enable

 

UDLD

 

unidirectional link detection는 스위치간에 단방향 링크가 생겼을때 해당포트를 셧다운 시킨다.

단방향링크는 접속된 두 장비중 하나가 상대방이 보내는 트래픽을 받지 못하는 경우에 발생된다.

 

UDLD는 STP가 제대로 동작하지 않는 것을 방지 한다는 점에서 루프 가드와 비슷하지만

UDLD는 케이블링이 잘못되었을때 동작한다. 또한 포트단위로 동작하고 루프가드는 vlan별로 동작한다.

 

SW3은 f0/20 포트를 통하여 SW2가 보낸 BPDU를 수신하지 못하고, F0/20포트를 DP로 만든다, 결국에 차단포트가 없어지기 때문에

SW3에서 루프가 발생한다.

 

UDLD는 주기적으로 송신 포트를 통하여 UDLD 패킷을 전송하고, 이 패킷을 수신한 상대 포트는 이것을 다시 자신의 송신 포트로 다시 보내어 링크가 동작중인것을 확인한다.

 

UDLD는 정상모드와(normal mode)와 적극모드(aggressive mode)라는 두가지 모드가 있다. 정상모드는 광케이블만 볼수있지만

적극모드는 광케이블과 UTP케이블상태도 확인가능하다.

 

인터페이스 설정모드에서 UDLD 활성화 시키기

 

SW2(config-if)# int f0/20

SW2(config-if)#udld port

 

 

 

SW3(config-if)# int f0/20

SW3(config-if)#udld port

인터페이스 설정모드에서 UDLD 적극모드 활성화시키기

SW2(config-if)# int f0/20

SW2(config-if)#udld port aggressive

 

 

 

SW3(config-if)# int f0/20

SW3(config-if)#udld port aggressive

@@@@@LAN Switching 구축 실습 "VTP, PVST, RSTP, Portfast, stp 보안, 이더채널"@@@@@