VLAN의 정의
Virtual LAN (Local Area Network)의 약자로, 물리적 환경에 관계없이 논리적으로 네트워크를 분리할 수 있는 기술을 말한다. 스위치와 연결된 모든 장비들은 하나의 Broadcast Domain에 포함되는데, 연결된 장비가 많아질 수록 Broadcast Domain의 범위가 넓어지므로 라우터를 이용해 물리적으로 네트워크를 구분해야 한다. 하지만, VLAN을 이용하면 물리 환경에 관계없이 논리적으로 네트워크를 분리하여 Broadcast Domain을 줄일 수 있다.
1) Static VLAN
일반적인 VLAN 할당 방식으로, Switch의 각 포트를 특정 VLAN에 직접 배정해주는 방식이다.
SW(config)# switchport access vlan [number]
2) Dynamic VLAN
VQP (VLAN Query Protocol) 이라는 Cisco 사에서 개발한 프로토콜을 사용하여, VMPS (VLAN Mangement Policy Server) 를 통해 MAC 주소를 기반으로 VLAN을 동적으로 배정하는 방식이다. 새로 접속한 장비의 MAC 주소를 Learning 한 Switch는 VMPS 서버에게 쿼리하고, 해당 MAC 주소에 대응하는 VLAN 정보를 VMPS 클라이언트에게 전달한다.
SW(config)# switchport access dynamic
Primary VMPS Server가 DOWN 될 가능성에 대비하기 위해 Back up VMPS Server를 구성하며, 실질적으로 VLAN 정보를 저장하고 있는 TFTP Server를 통해 MAC 주소에 대응하는 VLAN 정보를 VMPS Client 에게 전달한다.
VLAN의 장점
1. 네트워크의 보안 강화
장비가 동일한 VLAN에 속한 경우, Router를 거치지 않고도 통신할 수 있어 상대적으로 데이터를 훔쳐보기 쉽지만 다른 VLAN으로 구분했을 경우에는 Router를 통해야만 통신이 가능하므로 Router의 다양한 보안 정책을 활용하여 보안을 강화할 수 있다.
2. 스위치 네트워크에서 Load Balancing 가능
VLAN을 사용하지 않을 때는 STP에 의해서 이중화된 구간 중 한 Port가 차단되면 하나의 경로로만 통신이 가능하므로 트래픽에 부담이 가지만, VLAN을 사용하여 이중화된 구간의 경로별로 VLAN을 생성한다면 Load Balancing이 가능해진다.
사용 가능한 VLAN 번호의 범위
1002 ~ 1005를 제외하고 1~4094 값의 VLAN ID를 사용할 수 있다.
VLAN 포트의 종류
1. Access port (UnTagging port)
하나의 포트에 1개의 VLAN에만 속하며, 해당 포트는 자신이 속한 VLAN 네트워크의 Frame만 전송할 수 있다.
2. Trunk port (Tagging port)
하나의 포트에 여러 개의 VLAN Frame이 흘러다닐 수 있다.
다수의 VLAN이 존재하는 경우, VLAN 마다 별도의 Link가 필요하여 Link가 낭비되는 문제점이 발생할 수 있는데 Trunk port를 사용하면 하나의 포트로 여러 VLAN Frame이 지나다닐 수 있다.
show interface switchport 명령어로 각 인터페이스별로 설정된 Mode 정보를 확인할 수 있으며, show interface 인터페이스명 switchport 명령어로 인터페이스를 지정하여 특정 인터페이스의 Mode 정보만을 확인할 수도 있다.
첫번째 Switch의 f0/1 인터페이스는 PC와 연결된 포트로 하나의 VLAN만 지나다니므로 Trunking 모드가 OFF 되어있으며, Access 모드로 설정되어 있음을 확인할 수 있다.
show interface trunk 명령어로 TRUNK 모드로 설정된 인터페이스들의 정보를 확인할 수 있다. show interface 인터페이스 trunk 명령어로 특정 인터페이스의 정보만을 확인할 수도 있다.
첫번째 Switch의 f0/23 인터페이스는 두번째 Switch와 연결된 포트로 여러 개의 VLAN이 지나다니므로 Trunking 모드가 ON 되어있으며, Trunk 모드로 설정되어 있음을 확인할 수 있다. 또한, IEEE 802.1Q로 캡슐화되어있음을 확인할 수 있다.
Trunk 모드의 Encapsulation 방식을 변경하고 싶다면 아래와 같은 명령어를 사용하면 된다. Trunk 모드는 native vlan을사용하는 ieee 802.1q와 isl, 상대측 모드에 맞추는 negotiate 3가지가 존재하며, 상대측과 동일한 모드를 사용해야 통신 가능하다.
SW(config)# switchport trunk encapsulation dot1q|isl|negotiate
VLAN Tagging 방식
여러 VLAN이 Trunk port 위를 지나다닐 때, VLAN을 구별하기 위해 스위치에서 Tag를 붙여서 프레임을 전달한다.
A 스위치에서 VLAN 100의 프레임을 B 스위치로 전송할 때, A 스위치는 Tag를 붙인 프레임을 B 스위치로 전달한다. Tag가 붙은 프레임을 수신한 B 스위치는 UnTag 하여 해당 프레임이 VLAN 100임을 확인한 후, VLAN 100에 속하는 장비에게 프레임을 전달해준다.
1. ISL (Inter Switch Link, Cisco 전용)
ISL Header와 ISL CRC를 추가한 외부 캡슐화 방식을 사용한다.
2. IEEE 802.1Q (표준)
Ethernet Frame 내부에 VLAN 태그 정보를 추가하는 방식을 사용한다.
VLAN 태그는 TPID (Tag Protocol Identifier) 와 TCI (Tag Control Information) 으로 구분된다.
(1) TPID
출발지 주소 필드 바로 다음에 위치한 필드로 VLAN 태그가 있음을 알리는 식별자이다. 0x8100 값이 set 되어 있다면 VLAN Tagged Frame이 존재한다는 의미이다.
(2) PCP (Priority Code Point)
0 ~ 7 값을 부여할 수 있고, 우선순위에 따라 서비스 등급을 매핑하여 높은 서비스 등급을 가질 수록 우수한 처리를 제공한다.
(3) CFI (Canoncial Format Identifier)
Ethernet은 0, Token Ring은 1 값을 부여한다.
(4) VID (VLAN Identifier)
4094개의 VLAN ID를 사용할 수 있다.
Native VLAN이란?
허브와 스위치를 혼용하여 사용하는 환경에서 상호 간의 통신 연결을 위해 만들어진 VLAN이다.
스위치에서 Tag가 붙은 VLAN 프레임을 허브로 전달하면 허브는 VLAN을 인식하지 못하여 Tag가 붙은 프레임을 그대로 호스트에 전달하게 되고, 호스트 PC는 VLAN 프레임을 인식하지 못하는 문제가 발생한다. 허브에서 Tag가 없는 프레임을 스위치로 전달하면 스위치는 해당 프레임을 drop 시켜 허브와 스위치간의 통신이 불가능하다. 이러한 문제를 해결하기 위해 Tag가 없는 프레임은 모두 default VLAN 1번으로 간주하여 통신이 가능하도록한다.
공부하면서 정리한 내용을 글로 작성하였습니다.
혹시나 잘못된 내용이 있다면 댓글로 알려주시면 감사하겠습니다 :)
'Network > Network Theory' 카테고리의 다른 글
[Network / 네트워크] Hub, Bridge, Switch, Router (0) | 2022.12.30 |
---|---|
[Network / 네트워크] IPv4, IPv6의 통신 방식 (0) | 2022.12.30 |
[Network / 네트워크] IEEE (Institute of Electrical and Electronic Engineers) 802.X 표준이란? (0) | 2022.12.21 |
[Network / 네트워크] Encapsulation 캡슐화 & Decapsulation 역캡슐화 (0) | 2022.12.21 |
[Network / 네트워크] OSI 7 Layer, TCP/IP 4 Layer (0) | 2022.12.21 |