네트워크
VLAN의 목적과 NATIVE VLAN, 통신 과정
peanutwalnut
2025. 7. 14. 20:13
VLAN(Virtual LAN)의 주요 목적은 크게 다음과 같습니다:
- 브로드캐스트 도메인 분리
- 물리적으로는 같은 스위치에 연결된 포트라도 서로 다른 VLAN에 할당하면, 그들끼리는 브로드캐스트나 ARP 요청을 주고받지 않습니다. 이를 통해 불필요한 브로드캐스트 트래픽을 줄이고, 네트워크 성능을 최적화할 수 있습니다.
- 보안 격리
- 서로 다른 부서나 업무 그룹을 물리적으로 같은 장비 위에 두더라도 VLAN 단위로 논리적 분리를 하면, 한 VLAN의 장비에서 발생한 트래픽이 다른 VLAN으로 섞여 들어올 수 없어 보안성이 높아집니다.
- 유연한 네트워크 설계 및 관리
- 물리적인 위치(스위치, 포트 위치)에 관계없이 논리적으로 같은 VLAN에 묶어 관리할 수 있어, 네트워크 변경·확장 시 장비 교체 없이 설정만으로 쉽게 대응할 수 있습니다.
- 스위치 간 LAN 확장(Trunking)
- VLAN의 가장 중요한 기능 중 하나는, “작은 가상 스위치”를 IEEE 802.1Q 태깅(Trunk) 기법으로 여러 물리적 스위치에 걸쳐 확장하는 것입니다.
- 각 물리 스위치의 트렁크 포트에 802.1Q 태그를 달아 서로 연결하면, 동일 VLAN ID를 가진 포트들이 여러 스위치에 걸쳐 마치 하나의 LAN처럼 동작합니다.
- 즉, 물리 스위치가 분리되어 있어도 논리적으로 하나의 LAN을 확장해 사용할 수 있게 해 줍니다.
- VLAN의 가장 중요한 기능 중 하나는, “작은 가상 스위치”를 IEEE 802.1Q 태깅(Trunk) 기법으로 여러 물리적 스위치에 걸쳐 확장하는 것입니다.
VLAN의 설정 방법은 포트 VLAN이나 태그 VLAN 으로 한다.
네이티브 VLAN이란 IEEE 802.1Q 트렁크링크에서 태그 없이(untagged) 전송되는 프레임이 속하는 VLAN을 말합니다. 주요 특징은 다음과 같습니다:
- 태그 없는 프레임 처리
802.1Q 트렁크 포트에서는 기본적으로 모든 VLAN 프레임에 4바이트 태그가 붙어 전송됩니다. 그러나 태그가 없는 이더넷 프레임이 들어오면, 스위치는 이를 ‘네이티브 VLAN’의 트래픽으로 간주해 해당 VLAN으로 전송합니다. - 기본 VLAN ID
네이티브 VLAN의 기본값은 VLAN 1이며, 보통 변경이 가능합니다. 변경 시 양쪽 스위치의 트렁크 포트에서 동일한 네이티브 VLAN ID를 설정해야 정상 동작합니다. - 레거시 장비 호환성
허브나 VLAN 미지원 장비가 트렁크에 연결되어 있을 때, 이들 장비는 태그를 제거하고 프레임을 처리하므로 네이티브 VLAN을 통해 통신 호환성을 확보할 수 있습니다. - 보안 고려사항
네이티브 VLAN이 잘못 설정되거나 변경되지 않으면, 태그 없는 트래픽이 의도치 않은 VLAN으로 유입되어 VLAN 호핑(VLAN hopping) 공격에 취약해질 수 있으므로, 보안을 위해서는 트렁크에서 네이티브 VLAN을 별도의 VLAN으로 분리하고, 액세스 포트에서는 네이티브 VLAN을 사용하지 않는 것이 권장됩니다.
네트워크 구성 예시
- VLAN 10
- SW1, SW2, SW3 간 물리적 연결:
- SW1 포트 Gi0/48 ↔ SW2 포트 Gi0/48 (트렁크)
- SW2 포트 Gi0/47 ↔ SW3 포트 Gi0/47 (트렁크)
- 호스트:
- A(192.168.10.10/24) — SW1 Fa0/1 (액세스, VLAN 10)
- B(192.168.10.20/24) — SW3 Fa0/1 (액세스, VLAN 10)
1단계: ARP 요청 발생 (브로드캐스트)
- 호스트 A가 호스트 B의 MAC 주소를 모를 때,
- A → 브로드캐스트: Who has 192.168.10.20? Tell 192.168.10.10
- A의 프레임은 SW1 Fa0/1에 들어오면, 스위치는 해당 포트를 VLAN 10 액세스 포트로 인식
2단계: 태깅 및 트렁크 전달
- SW1은 트렁크 포트(Gi0/48) 로 프레임을 전달
- 802.1Q 태그를 추가하여:
-
csharp코드 복사[Ethernet Header | VLAN Tag(vlan-id=10) | Payload(ARP Req) | FCS]
3단계: 중간 스위치의 처리
- SW2 트렁크 Gi0/48으로 들어온 태그드 프레임 수신
- VLAN ID=10으로 학습/포워딩 결정
- 목적지 MAC 테이블에 B의 MAC이 아직 없으면, 트렁크 Gi0/47 및 해당 VLAN의 다른 액세스 포트로 브로드캐스트 복제
4단계: 최종 액세스 포트 전달 및 응답
- SW3 트렁크 Gi0/47으로 들어온 태그드 프레임 수신
- VLAN ID=10 액세스 포트(Fa0/1)에 태그 제거(untag) 후 호스트 B에 전달
- B는 ARP 요청을 받아 자신의 MAC을 응답(A → B unicast ARP Reply)
- 이때 응답 프레임도 마찬가지로 SW3 → SW2 → SW1을 태그드 트렁크로 거쳐 전달