본문 바로가기
카테고리 없음

[네트워크 실습] VLAN(가상 랜)의 완벽한 이해와 단일/다중 스위치 실전 구축 가이드

by Lsung 2026. 8. 18.

1. VLAN(Virtual LAN)이란? 왜 쪼갤까?

VLAN은 물리적으로는 하나의 스위치(허브)에 모든 컴퓨터가 꽂혀 있지만, 논리적으로 스위치를 도끼로 쪼개듯 여러 개의 독립된 스위치로 나누어 사용하는 기술입니다.

Code
[ 물리적 상태: 1대의 스위치 ]
[포트 1] [포트 2] [포트 3] [포트 4] ...
▼ [ VLAN 기술 적용 후 ]
[ 논리적 상태: 2대의 가상 스위치 ]
- 가상 스위치 A (VLAN 10): [포트 1] [포트 2] <-- 우리끼리만 통신 가능!
- 가상 스위치 B (VLAN 20): [포트 3] [포트 4] <-- 우리끼리만 통신 가능!
 

💡 VLAN을 사용하는 진짜 이유

  1. 브로드캐스트 도메인 분할 (성능 향상): 스위치는 기본적으로 브로드캐스트 패킷을 모든 포트로 복제하여 전송(Flooding)합니다. 네트워크 규모가 커지면 이 트래픽 때문에 전체 네트워크가 느려집니다. VLAN으로 쪼개면 브로드캐스트 패킷이 해당 VLAN 내부 포트로만 제한되어 성능이 획기적으로 향상됩니다.
  2. 보안 및 트래픽 격리: 회사에서 '인사과'와 '개발과'가 같은 스위치를 쓰더라도 서로의 네트워크 트래픽을 훔쳐보거나 접근하지 못하도록 원천 차단합니다.
  3. 비용 절감: 부서가 늘어날 때마다 비싼 스위치 장비를 새로 살 필요 없이, 기존 스위치 내부 설정만으로 네트워크를 무한히 분할할 수 있습니다.

⚠️ 중요 상식: VLAN 간의 통신은 무조건 '라우터'를 거쳐야 한다!

VLAN으로 네트워크를 쪼개면, 이들은 서로 다른 네트워크 주소를 쓰는 독립된 망이 됩니다. 따라서 VLAN 10과 VLAN 20이 서로 통신하려면 물리적으로 같은 스위치에 꽂혀 있더라도 반드시 '라우터(Gateway)'를 거쳐서 통신해야 합니다.

 


2. [실습 1] 단일 스위치에서 VLAN 생성 및 포트 할당하기

가장 기본적인 실습입니다. 스위치 1대에 컴퓨터 4대를 연결하고, **VLAN 2(인사과)**와 **VLAN 3(개발과)**으로 쪼개어 통신을 격리해 보겠습니다.

Code
[ 스위치 SW1 ]
├─ Fa0/1 ~ Fa0/2 포트 ──▶ [ VLAN 2 ] (PC1, PC2 연결)
└─ Fa0/3 ~ Fa0/4 포트 ──▶ [ VLAN 3 ] (PC3, PC4 연결)

💻 스위치(SW1) VLAN 설정 스크립트

실무에서는 포트를 하나씩 설정하기보다 interface range (축약: int range) 명령어를 사용해 여러 포트를 한 번에 묶어서 설정하는 것이 효율적입니다.

Code
enable
configure terminal
hostname SW1
no ip domain-lookup
 
! 1. VLAN 2 생성 및 이름 지정
vlan 2
name vlan2
exit
 
! 2. VLAN 3 생성 및 이름 지정
vlan 3
name vlan3
exit
 
! 3. Fa0/1 ~ Fa0/2 포트를 VLAN 2에 소속시키기 (Access 모드)
interface range fa0/1-2
switchport mode access
switchport access vlan 2
exit
 
! 4. Fa0/3 ~ Fa0/4 포트를 VLAN 3에 소속시키기 (Access 모드)
interface range fa0/3-4
switchport mode access
switchport access vlan 3
end
 
! 5. 설정 확인 및 저장
show vlan brief ! VLAN 할당 상태 확인
copy running-config startup-config ! 설정 영구 저장
 

🔍 결과 확인

  • PC1(1.1.1.2) ➡️ PC2(1.1.1.3): 같은 VLAN 2에 속해 있으므로 Ping 통신 성공!
  • PC1(1.1.1.2) ➡️ PC3(1.1.1.4): 서로 다른 VLAN에 속해 있으므로 Ping 통신 실패(격리 완료)!

 


3. [실습 2] 다중 스위치 환경에서의 VLAN 구성 (Trunk 포트의 필요성)

만약 1층 스위치(SW1)와 2층 스위(SW2)가 있고, 두 스위치 모두에 VLAN 10과 VLAN 20이 존재한다면 스위치끼리는 어떻게 연결해야 할까요?

Code
[ 1층 SW1 ] ══════ (트렁크 라인: Trunk Port) ══════ [ 2층 SW2 ]
├─ VLAN 10 (인사과) ├─ VLAN 10 (인사과)
└─ VLAN 20 (개발과) └─ VLAN 20 (개발과)

 

  • 액세스(Access) 포트의 한계: 일반적인 포트는 단 하나의 VLAN 패킷만 지나갈 수 있습니다. 스위치 간 연결을 액세스 포트로 하면 VLAN 개수만큼 랜선을 여러 가닥 연결해야 해서 포트 낭비가 심해집니다.
  • 트렁크(Trunk) 포트: 단 한 가닥의 랜선(포트)으로 여러 개의 VLAN 패킷을 동시에 전송할 수 있도록 통로를 열어주는 '터널' 포트입니다. 패킷이 지나갈 때 어떤 VLAN 소속인지 이름표(Tag)를 붙여서 전송합니다.

💻 스위치 간 연결 포트(예: Fa0/24) 트렁크 설정 스크립트

Code
SW1(config)# interface fa0/24
SW1(config-if)# switchport mode trunk ! 해당 포트를 트렁크 모드로 변경

 


4. [실습 3] 라우터를 통한 VLAN 간 통신 (Inter-VLAN Routing)

VLAN 2와 VLAN 3이 서로 다른 네트워크 주소를 쓰고 있을 때, 이들이 통신할 수 있도록 라우터(R1)를 연결해 줍니다.

Code
[ R1 라우터 ]
├─ G0/0 포트 (IP: 1.1.1.1) ──▶ [ SW1의 VLAN 2 ]
└─ G0/1 포트 (IP: 2.1.1.1) ──▶ [ SW1의 VLAN 3 ]

💻 라우터(R1) 게이트웨이 활성화 스크립트

Code
enable
configure terminal
hostname R1
no ip domain-lookup
 
! VLAN 2의 게이트웨이 포트 설정
interface g0/0
ip address 1.1.1.1 255.255.255.0
no shutdown
exit
 
! VLAN 3의 게이트웨이 포트 설정
interface g0/1
ip address 2.1.1.1 255.255.255.0
no shutdown
end
 
copy run start
 

🔍 최종 통신 확인

  • PC1(VLAN 2, IP: 1.1.1.2, 게이트웨이: 1.1.1.1)에서 PC3(VLAN 3, IP: 2.1.1.3, 게이트웨이: 2.1.1.1)으로 Ping을 날려봅니다.
  • 결과: 라우터가 중간에서 서로 다른 대역의 패킷을 넘겨주어(Routing) VLAN 간 통신이 성공하게 됩니다!

 


✍️ 오늘 공부 요약 한 장 정리

  1. VLAN은 하나의 물리적 스위치를 논리적으로 쪼개어 브로드캐스트 트래픽을 차단하고 보안을 강화하는 기술이다.
  2. 스위치 포트를 특정 VLAN에 소속시킬 때는 switchport mode access와 switchport access vlan [번호] 명령어를 사용한다.
  3. 여러 포트를 한 번에 설정할 때는 interface range 명령어로 노가다(?)를 줄일 수 있다.
  4. 쪼개진 VLAN끼리 통신하기 위해서는 반드시 라우터를 거쳐야 하며, 라우터 포트가 부족할 때는 하나의 포트로 여러 VLAN을 처리하는 트렁크(Trunk) 기술을 활용한다.