가상랜(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일 경우 액세스 포트로 설정된다.

+ Recent posts