분류 전체보기

VTP는 '가상랜'을 싣고...

- VTP (VLAN Trunk Protocol) 설정하기 -

그림. 정샘 아이콘
강의는 재미와 유익을 주어야 한다는 생각을 가지고 "재미있으면서 유익한" 글을 써보려는 시도로 작성해 본 글입니다. 이 글을 읽고 있는 여러분께 조금이라도 도움이 되었다면 질문이나 오타나 오류를 발견했을 때 서슴없이 댓글을 달아 알려주세요.

VTP는 2계층 트렁크 프레임을 사용하여 하나의 도메인에서 VLAN의 추가, 삭제, 이름 변경을 스위치간 자동으로 전달하여 VLAN 설정의 일치성을 유지합니다. VTP 메시지는 시스코 전용 ISL이나 IEEE 802.1Q 프로토콜 프레임으로 캡슐화되고 다른 장비로 트렁크 링크를 지나 다닙니다.

VTP는 다음과 같은 장점을 가집니다.

  • 네트워크를 통한 VLAN 설정의 일치
  • VLAN의 정확한 추적과 모니터링
  • 네트워크에 추가되는 VLAN의 동적인 보고
  • 새 VLAN을 추가할 때 자동 설정

VTP는 트렁크 포트를 통해 다음을 광고합니다.

  • 관리 도메인(management domain)
  • 설정 교정 번호(configuration revision number)
  • 알고 잇는 VLAN과 특정 매개변수

VTP 모드

  • VTP Server mode
  • VTP Client mode
  • VTP transparent mode

VTP Server (VTP 서버 모드)

VLAN의 만들기, 수정하기, 지우기가 가능합니다. VTP 서버는 같은 VTP 도메인에 있는 다른 스위치로 VLAN 설정을 광고하고 트렁크 포트를 통해 받은 VTP 광고를 바탕으로 다른 스위치와 함께 VLAN 설정을 맞춥니다.

VTP Client (VTP 클라이언트 모드)

VLAN 정보에 대한 추가, 삭제, 변경을 할 수 없습니다. 오로지 VTP 서버로부터 받은 광고에 의해 VLAN 정보를 유지할 뿐입니다. 심지어는 그렇게 설정된 VLAN 정보조차 저장하지 않습니다. 이 모드는 메모리가 부족하여 VTP 서버의 기능을 할 수 없는 스위치에 적합한 모드입니다. VTP 클라이언트는 수신한 VLAN 정보를 다시 모든 트렁크 포트를 통해 전달합니다.

VTP Transparent (VTP 투명 모드)

VTP에 참여하지 않으며 수신된 VLAN 정보를 전달하기만 하고 자신만의 독자적인 VLAN 데이터베이스를 유지합니다.

VTP의 작동

VTP는 스위치간에 VTP 광고를 트렁크 포트를 이용합니다. 이때 이 광고 프레임은 모든 이웃한 스위치가 수신할 수 있도록 멀티캐스트로 전송합니다. 각 광고는 설정 교정 번호가 포함되어 있어서 0부터 시작하여 변화가 있을 때마다 1씩 증가합니다. 관리 도메인의 설정 교정번호는 2,147,483,648까지 증가후 0으로 되돌아 갑니다.

VTP 광고는 다음 2가지 유형이 있습니다.

  • 클라이언트가 동작시 필요한 정보
  • 서버의 응답

VTP 메시지는 다음 3가지 유형이 있습니다.

  • 요약 광고(summary advertisement) - 서버의 요약 광고. VTP 설정 교정 번호 광고.
  • 광고 요청(advertisement request) - 클라이언트가 VLAN 정보를 요청.
  • 부분 광고(subset advertisement) - 서버의 부분 광고 응답. VLAN에 대한 세부적인 정보 포함.

디폴트로 서버와 클라이언트 카탈리스트 스위치들은 5분 간격으로 요약 광고를 전송하여 자신들이 가지고 있는 설정 교정 번호를 이웃 스위치들에게 알립니다. 이웃한 서버나 클라이언트들은 자신의 설정 교정 번호와 비교하여 더 높은 교정 번호를 가진 요약 광고를 확인하면 VLAN 정보에 대한 부분 광고를 요청합니다.

VTP 설정

VTP 모드 설정

Switch(config)# vtp mode { server | client | transparent }

VTP 도메인 설정

Switch(config)# vtp domain DOMAIN-NAME
Switch(config)# vtp password PASSWORD

VTP 설정 확인

Switch# show vtp status

VTP 가지치기(Pruning)

스위치는 기본적으로 트렁크 링크로 모든 브로드캐스트와 멀티캐스트, 알려지지 않은 패킷 등 모든 트래픽을 전송합니다. VTP 프루닝은 불필요한 트래픽의 전송을 줄임으로써 네트워크의 대역폭을 효율적으로 사용하기 위한 기능입니다.

디폴트로 프루닝은 비활성되어 있으며 프루닝을 활성 상태로 만들면 스위치에 특정 VLAN에 가용한 장비가 없을 경우 해당 VLAN을 트렁크 포트로 전송하지 않게 됩니다. 서버에서 다음 명령으로 프루닝을 설정할 수 있습니다.

Switch(config)# vtp pruning

특정 VLAN을 프루닝이 불가능하게 하기 위해서는 다음 명령을 입력합니다.

Switch(config)# interface fastethernet 0/24
Switch(config-if)# switchport trunk pruning vlan remove VLAN-ID

VLAN 설정 한 걸음씩 따라하기 (2) - 트렁크 포트 설정하기

다음 조건을 만족하도록 설정하세요.

그림. 가상랜과 트렁크 설정

그림. 가상랜과 트렁크 설정

  • PC가 연결된 포트는 access mode로 지정
  • 스위치와 스위치 간 연결 포트는 trunk mode로 지정
  • VLAN 10, VLAN 20 만들고 스위치간 같은 VLAN끼리 트래픽 전달 확인

스위치1 설정하기

VLAN 설정

Switch1> enable
Switch1# configure terminal
Switch1(config)# vlan 10
Switch1(config)# name TEST1
Switch1(config-vlan)# vlan 20
Switch1(config-vlan)# name TEST2
Switch1(config-vlan)# end
Switch1# show vlan brief

인터페이스 vlan에 추가하기

Switch1# configure terminal
Switch1(config)# interface range fastethernet 0/1-10
Switch1(config-range)# Switchport mode access
Switch1(config-range)# Switchport access vlan 10
Switch1(config-range)# interface range fastethernet 0/11-20
Switch1(config-range)# Switchport mode access
Switch1(config-range)# Switchport access vlan 20
Switch1(config-range)# end
Switch1# show vlan brief

설정저장

Switch1# copy running-config startup-config

트렁크 포트 설정

Switch1# configure terminal
Switch1(config)# interface fastethernet 0/24
Switch1(config-if)# switchport mode trunk
Switch1(config-if)# end
Switch1# show interfaces trunk

스위치2 설정하기

VLAN 설정

Switch2> enable
Switch2# configure terminal
Switch2(config)# vlan 10
Switch2(config)# name TEST1
Switch2(config-vlan)# vlan 20
Switch2(config-vlan)# name TEST2
Switch2(config-vlan)# end
Switch2# show vlan brief

인터페이스 vlan에 추가하기

Switch2# configure terminal
Switch2(config)# interface fastethernet 0/1
Switch2(config-if)# Switchport mode access
Switch2(config-if)# Switchport access vlan 10
Switch2(config-if)# interface fastethernet 0/2
Switch2(config-if)# Switchport mode access
Switch2(config-if)# Switchport access vlan 20
Switch2(config-if)# end
Switch2# show vlan brief

설정저장

Switch2# copy running-config startup-config

트렁크 포트 설정

Switch2# configure terminal
Switch2(config)# interface fastethernet 0/24
Switch2(config-if)# switchport mode trunk
Switch2(config-if)# end
Switch2# show interfaces trunk

다음 조건에 맞도록 설정하세요.

조건.

  1. 스위치의 포트 fa0/1, fa0/2, fa0/11, fa0/12에 각각 PC 4대를 연결하세요.
  2. VLAN을 2개 추가하고 각각 VLAN ID를 10과 20으로 지정하세요.
  3. VLAN 10에 fa0/1~fa0/10, VLAN 20에 fa0/11~fa0/20를 추가하세요.
  4. PC에 192.168.0.1 ~ 4까지 IP를 설정하고 각각 ping 테스트를 해보세요.

그림. 스위치와 PC 연결

그림. 스위치와 PC 연결


풀이

VLAN 설정

Switch> enable
Switch# configure terminal
Switch(config)# vlan 10
Switch(config)# name TEST1
Switch(config-vlan)# vlan 20
Switch(config-vlan)# name TEST2
Switch(config-vlan)# end
Switch# show vlan brief

인터페이스 vlan에 추가하기

Switch# configure terminal
Switch(config)# interface range fastethernet 0/1-10
Switch(config-range)# switchport mode access
Switch(config-range)# switchport access vlan 10
Switch(config-range)# interface range fastethernet 0/11-20
Switch(config-range)# switchport mode access
Switch(config-range)# switchport access vlan 20
Switch(config-range)# end
Switch# show vlan brief

설정저장

Switch# copy running-config startup-config

가상랜(VLAN) 설정하기

2009. 5. 6. 03:19

가상랜(VLAN) 설정하기

강의는 재미와 유익을 주어야 한다는 생각을 가지고 "재미있으면서 유익한" 글을 써보려는 시도로 작성해 본 글입니다. 이 글을 읽고 있는 여러분께 조금이라도 도움이 되었다면 질문이나 오타나 오류를 발견했을 때 서슴없이 댓글을 달아 알려주세요.

VLAN의 개념

스위치의 모든 인터페이스는 동일 브로드캐스트 도메인에 포함되어 있으나 VLAN을 적용할 경우 스위치의 일부 인터페이스를 하나의 브로드캐스트 도메인으로 구성하고, 다른 인터페이스를 또다른 브로드캐스트 도메인으로 구성하여 여러 개의 브로드캐스트 도메인을 만들 수 있다. 이렇게 스위치에 의해 만들어진 브로드캐스트 도메인을 VLAN이라고 한다.

VLAN을 사용하는 일반적 이유

  • 사용자를 물리적인 위치 대신 작업 그룹별로 묶는 유연한 설계를 제공한다.
  • 더 작은 LAN(브로드캐스트 도메인)으로 분리해 VLAN의 각 호스트에서 일어나는 오버헤드를 줄인다.
  • VLAN을 하나의 액세스 스위치로 제한함으로써 STP에 대한 작업 부담을 줄인다.
  • 별도의 VLAN으로 나누어 중요한 데이터를 처리하는 호스트를 분리하여 보안을 강화한다.
  • IP 전화기의 트래픽과 PC의 트래픽을 분리한다.

트렁킹

여러 대의 스위치가 서로 연결되어 있는 네트워크에서 VLAN을 사용할 때 스위치는 서로 VLAN 정보를 주고 받아야 하며, 스위치간 연결된 포트간 세크먼트를 VLAN 트렁킹(VLAN trunking)을 사용하여 해결한다. VLAN 트렁킹이 만들어지면 스위치는 VLAN 태깅(VLAN tagging)이라는 과정을 이용한다. VLAN 태깅 과정에서 스위치는 VLAN ID 필드를 이용하여 VLAN 정보를 교환한다.

ISL(Inter-Switch Link)

시스코 전용 트렁킹 프로토콜이다. 원래의 이더넷 프레임을 캡슐화하기 때문에 원래의 이더넷 프레임은 변경하지 않은 채로 그대로 남는다.

IEEE 802.1Q

IEEE에서 만든 트렁킹 프로토콜로 원래의 프레임 이더넷 헤더에 4byte의 VLAN 헤더를 추가한다. 캡슐화되는 ISL과 달리 프레임에는 원래의 출발지 및 목적지 MAC 주소가 그대로 들어있다.

가상랜(VLAN)을 설정해보자.

앞서 배운대로 가상랜(VLAN)은 하나의 스위치에 가상으로 별개의 스위치가 여러 개 있는 것과 같은 효과를 주는 기능입니다. 그럼 왜 스위치를 가상으로 여러 조각으로 나눠야할까요? 그건 바로 브로드캐스팅이라고 하는 녀석 때문입니다. 스위치는 충돌 도메인(colision domain)을 막아서 스위치 포트로 프레임 데이터가 홍수처럼 흘러넘치는 것을 막아줍니다.

가상랜 만들기
VLAN ID 10을 만들고 MARKETING이란 이름을 붙인다.

Switch# configure termianl
Switch(config)# vlan 10
Switch(config-vlan)# name MARKETING
Switch(config-vlan)# end
Switch# show vlan brief

만들어진 VLAN ID 10에 스위치 포트 1/0을 access 모드로 설정하여 포함시킨다.

Switch# configure terminal
Switch(config)# interface fastethernet 0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
Switch(config-if)# end
Switch# show vlan brief

트렁킹(Trunking) : 스위치와 스위치 사이에서 여러 개의 VLAN 전달하기

만일 트렁킹이 지원되지 않는다면 스위치에 만들어진 VLAN의 갯 수만큼 스위치끼리 링크가 필요할 것입니다. 하지만 트렁킹을 통해 여러 VLAN이 전달되어 스위치의 포트를 아낄 수 있도록 합니다. 트렁킹 프로토콜은 각 프레임 마다 ID를 붙여서 각 VLAN을 구분합니다. VLAN을 만들 때 VLAN ID를 사용했던 것이 기억나죠? 이 VLAN ID가 바로 트렁킹 프로토콜에서 VLAN을 구분하는 용도로 사용되는 겁니다. 이렇게 VLAN에 ID를 붙여서 구분하는 방법을 프레임 태깅(Frame Tagging)이라고 합니다. 이더넷에서 사용하는 가장 대표적인 프레임 태깅 기술은 다음과 같습니다.

  • ISL(Inter-switch link) - 시스코 전용 트렁킹 프로토콜. 카탈리스트 1700과 같이 예전 스위치 모델에서만 지원합니다.
  • IEEE 802.1Q - IEEE 표준 트렁킹 프로토콜. 대부분의 카탈리스트 스위치 모델에서 지원합니다.

트렁크 포트 설정하기

Switch(config)# interface fastethernet 0/24
Switch(config-if)# switchport mode trunk
Switch(config-if)# end
Switch# show interfaces trunk

DTP(Dynamic Trunk Protocol) : 트렁크 자동 협상하기

시스코 스위치는 ISL이나 802.1Q 중에서 어떤 트렁킹을 사용할 것인지 직접 설정할 수 있습니다. 기본적으로 스위치는 DTP를 사용해 트렁크의 다른 쪽에 있는 스위치와 협상해서 어떤 종류의 트렁킹을 사용할 것인지를 결정합니다. 인터페이스에 특정 트렁킹을 지원하기 위해 switchport trunk encapsulation {dot1q | isl | negotiate} 인터페이스 하위 명령을 사용합니다. 하지만 2960을 포함하여 최근에 나온 시스코 스위치는 IEEE 802.1Q 트렁킹만을 지원하므로 트렁킹은 무조건 switchport trunk encapsulation dot1q 입니다.

그리고 관리 모드의 설정 값은 인터페이스에서 트렁킹의 사용 여부를 나타내며 인터페이스의 관리 모드(administrative mode)를 사용해 트렁킹의 사용 여부를 결정합니다. switchport mode 인터페이스 하위 명령으로 설정합니다.

표. switchport mode 명령어의 트렁크 설정
인터페이스 하위 명령어 옵션 명령 설명
access 트렁킹 사용을 막고, 포트가 항상 access 포트로 사용되게 한다.
trunk 항상 트렁킹 포트로 사용한다.
dynamic desirable 협상 메시지를 보내고 응답하며, 협상을 통해 트렁킹 사용 여부를 동적으로 선택한다. 만약 이웃 포트가 trunk, desirable, auto 모드로 설정되어 있다면 트렁크 포트로 설정된다. access일 경우 액세스 포트로 설정된다.
dynamic auto 트렁크 협상 메시지를 수신하며, 협상 메시지에 반응해 트렁킹의 사용 여부를 선택한다. 만약 이웃 포트가 trunk, desirable 모드라면 트렁크 포트로 설정된다. 패스트와 기가비트 이더넷 포트에서 디폴트 모드이다. access나 auto일 경우 액세스 포트로 설정된다.

RSTP(Rapid Spanning Tree Protocol) IEEE 802.1w

RSTP는 네트워크 토폴로지가 변화할 때, STP가 30초 또는 50초정도 걸리는 스패닝 트리의 컨버전스 타입(수렴 시간)을 빠르게 하기 위해 설계되었다. RSTP는 대체(Aternative) 포트와 백업(Backup) 포트의 역할을 추가하고 폐기(discarding), 학습(Learning), 전송(Forwarding)으로 포트 상태를 정의한다.

RSTP가 루트 브리치를 선택하고, 루트 포트와 지정 포트를 결정하는 방식은 STP와 동일하다. 즉 BID가 낮은 스위치가 루트 브리치가 되고, 포트 역할을 결정할 때 BPDU내의 루트 브리지 BID, 경로 비용(path cost), 브리지의 BID, 포트 ID를 차례로 비교하여 가장 낮은 값을 갖는 포트가 루트(root) 포트와 지정(designated) 포트로 선택된다.

RSTP 링크의 종류

  • 에지 방식(Edge)
  • 점대점 방식(Point-to-point)
  • 링크 공유 방식(Shared Link)

그림1. RSTP 포트의 종류

그림1. RSTP 포트의 종류

① 에지 링크(edge link)는 PC나 서버 등 BPDU를 발생시키지 않는 종단 장치(end system)가 접속된 포트를 말한다. 카탈리스크 스위치에서는 포트 패스트(portfast)를 설정해야만 에지 링크로 동작한다. 해당 포트에 포트 패스트를 설정하지 않을 경우 종단 장치의 동작 상태에 따라 공유(shared)나 점대점(point-to-point)로 동작한다.

② 포트 패스트가 설정되지 않은 포트에 연결된 PC는 공유 링크로 동작한다.

② 점대점 링크(point-to-point link)는 전이중 방식(full duplex)으로 동작하는 링크이다.

③ STP로 동작하면서 전이중 링크는 점대점 피어(point-to-point peer)로 동작한다.

④ RSTP로 동작하는 스위치는 점대점 링크로 동작한다.

⑤ 공유 링크(shared link)는 반이중 방식(half duplex)로 동작하는 링크이다. 만약 RSTP가 동작하는 스위치가 반이중 방식으로 설정되어 있다면 공유 링크라도 spanning-tree link-type 명령을 사용하여 점대점 링크로 바꿀 수 있다. 이는 RSTP가 에지 링크나 점대점 링크에서만 수렴시간을 줄이기 때문에 스위치와 스위치 사이에 허브가 연결되어 있을 경우 유용하게 사용할 수 있다. 하지만 최근의 네트워크에서는 허브를 사용하지 않기 때문에 실제로 문제가 되지 않는다.

Switch3# configure terminal
Switch3(config)# spanning-tree mode papid-pvst

Switch2# cofigure terminal
Switch2(config)# spanning-tree mode rapid-pvst
Switch2(config)# interface fastethernet 0/1
Switch2(config-if)# spanning-tree portpast
Switch2(config-if)# ^Z
Switch2# show spanning-tree vlan 1

Switch#show spanning-tree interface fastEthernet 0/1 portfast
VLAN0001 enabled
Switch2#show spanning-tree vlan 1
VLAN0001
  Spanning tree enabled protocol rstp
  Root ID    Priority 32769
             Address 0004.9ADA.34D9
             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 0004.9ADA.34D9
             Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
             Aging Time 20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- ----------------------------
Fa0/1            Desg FWD 19        128.1    Edge Shr
Fa0/2            Desg FWD 19        128.2    Shr
Fa0/3            Desg FWD 19        128.3    P2p Peer(STP)
Fa0/4            Desg FWD 19        128.4    Shr
Fa0/5            Desg FWD 19        128.5    P2p

Switch2#

그림2. RSTP 포트 종류 실습

그림2. RSTP 포트 종류 실습

※ Cisco Packet Tracer 5.1로 테스트해본 결과 위의 결과와는 다른 출력을 보여주는데, 포트 타입은 STP 형식으로 출력되며 포트 패스트가 지정된 포트도 P2p로 표시됩니다. 시뮬의 한계인가 봅니다.^^; 기회가 되는대로 dynamips에서도 테스트해서 올리도록 하겠습니다.

Switch#show spanning-tree interface fastEthernet 0/1 portfast
VLAN0001 enabled
Switch2#show spanning-tree vlan 1
VLAN0001
  Spanning tree enabled protocol rstp
  Root ID    Priority 32769
             Address 0004.9ADA.34D9
             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 0004.9ADA.34D9
             Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
             Aging Time 20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- ----------------------------
Fa0/1            Desg FWD 19        128.1    P2p
Fa0/2            Desg FWD 19        128.2    P2p
Fa0/3            Desg FWD 19        128.3    P2p
Fa0/4            Desg FWD 19        128.4    Shr
Fa0/5            Desg FWD 19        128.5    P2p

Switch2#

RSTP의 포트 상태

RSTP는 포트의 상태를 차단(discarding), 학습(learning), 전송(forwarding) 상태로 구분한다. 데이터 프레임의 스위칭은 전송 상태에서 가능해진다.

표. RSTP와 STP의 포트 상태 비교
STP(802.1d) RSTP(802.1w) BPDU 수신 BPDU 송신 MAC 주소 학습 데이터 프레임 전달
차단(Blocking) 포기(Discarding) 가능. 송신 못함. 학습 안됨. 전달 안됨.
청취(Listening) 포기(Discarding) 가능. 송신 못함.(*) 학습 안됨. 전달 안됨.
학습(Learning) 학습(Learning) 가능. 가능. 학습 가능. 전달 안됨.
전송(Forwarding) 전송(Forwarding) 가능. 가능. 학습 가능. 전달 가능.
비활성(Disabled) 포기(Discarding) 수신 못함. 송신 못함. 학습 안됨. 전달 안됨.

(*) STP는 청취 상태부터 BPDU 송신 가능.

RSTP의 포트 역할

RSTP의 포트 역할은 루트 포트(RP; Root Port), 지정 포트(DP; Designated Port), 대체 포트(AP; Alternate Port), 백업 포트(BP; Backup Port), 비활성 포트(Disabled Port)로 구분한다.

표. RSTP와 STP의 포트 역할 비교
RSTP STP 설명
루트 포트(RP) 루트 포트(RP) STP의 루트 포트와 동일하다. 특정 스위치에서 루트 브리지 방향으로 데이터 프레임이 전송되는 유일한 포트이다. 루트 스위치가 아닌 스위치를 대상으로 한 개의 루트 포트가 선택되며 스위치는 이 포트를 통해서 수신된 모든 BPDU 중에서 최상의 BPDU를 청취한다.
지정 포트(DP) 지정 포트(DP) STP의 지정 포트와 동일하다. 특정 세그먼트에서 루트 브리치 방향으로 데이터 프레임이 전송되는 유일한 포트이다. 최상의 BPDU를 광고하는 포트이다.
대체 포트(AP) - 차선의 BPDU를 광고하는 포트로 루트 포트가 다운되면 그 역할을 이어받는 포트이다. 대체 포트는 RSTP에서 비활성 포트이므로 차단 상태에 있다.
백업 포트(BP) - DP가 아닌 포트 중에서 동일한 세그먼트에 연결되어 있는 또 다른 포트다. 지정 포트가 다운되면 그 역할을 이어받는다. 백업 포트는 허브와 복수 개의 링크로 접속할 때 생긴다. 비활성 포트이므로 차단 상태에 있다.
비활성(disabled) 비활성(disabled) 관리자에 의해 다운되거나 다른 이유로 작동 불가능 상태인 포트다.

RSTP 컨버전스(수렴)

그림3. RSTP 포트 역할

그림3. RSTP 포트 역할

그림4. RSTP 포트 역할 실습

그림4. RSTP 포트 역할 실습

참고자료
Easy & Complete LAN 스위칭
Cisco Networking Academy Program CCNA 3 and 4 Companion Guide
CCNA ICND2 Official Exam Ceritification Guide

+ Recent posts