Network/Switch

[Switch] VLAN 설계 - 케이블 없이 네트워크를 분리할 수 있는가?

넷곰 2026. 3. 20. 12:48
[Chapter 2] VLAN 설계 — 소프트웨어로 네트워크를 나누는 방법

개요

VLAN(Virtual LAN)은 하나의 물리 스위치를 논리적으로 분리하는 기술이다. 부서별 트래픽을 격리하고 브로드캐스트 도메인을 줄이는 데 사용한다. 이번 실습에서는 EVE-NG 환경에서 VLAN을 직접 설계·구성하고, 격리 동작과 L2/L3 실패 구분까지 경험했다.

WHY — VLAN이 없으면 어떤 문제가 생기나?

VLAN이 없는 환경에서는 같은 스위치에 연결된 모든 장비가 하나의 브로드캐스트 도메인에 속한다. HR팀 PC 한 대가 ARP Request를 보내면 개발팀, 서버팀 PC까지 전부 받는다. 장비가 200대라면 200대 모두가 처리해야 한다.

보안 측면에서도 문제다. VLAN 없이는 같은 스위치에 연결된 장비 간 트래픽을 L2 레벨에서 막을 방법이 없다. HR팀에서 서버팀 서버로 ping을 보내도 막을 수 없다.

그렇다고 부서마다 물리 스위치를 따로 두는 건 비용과 확장성 측면에서 현실적이지 않다. VLAN = 소프트웨어로 물리 분리 효과를 낸다. 그것이 VLAN의 존재 이유다.

HOW — VLAN은 어떻게 동작하는가?

스위치는 각 포트에 VLAN ID(1~4094)를 부여한다. 같은 VLAN ID를 가진 포트끼리만 프레임을 주고받을 수 있고, 다른 VLAN 포트로는 프레임 전달 자체를 하지 않는다.

VLAN 10 포트끼리  →  통신 가능
VLAN 20 포트끼리  →  통신 가능
VLAN 10 ↔ VLAN 20  →  L3 장비 없이는 차단

중요한 점은 MAC 테이블이 VLAN별로 완전히 분리된다는 것이다. VLAN 10의 MAC 테이블과 VLAN 20의 MAC 테이블은 별개로 관리된다. 스위치는 VLAN 경계를 넘어 프레임을 전달하지 않는다.

VLAN 종류

종류용도주의사항
Data VLAN사용자 트래픽가장 일반적
Voice VLANVoIP 전화기QoS 설정 필요
Management VLAN장비 SSH/Telnet 접근VLAN 1 절대 사용 금지
Native VLANTrunk의 untagged 트래픽양쪽 일치 필수 (Chapter 3)
Default VLANVLAN 1 — 공장 초기값건드리지 마라
왜 VLAN 1을 Management VLAN으로 쓰면 안 되나?
모든 포트의 기본값이 VLAN 1이다. CDP, STP, VTP 같은 관리 프로토콜도 VLAN 1로 흐른다. 공격자가 스위치에 케이블만 꽂아도 기본적으로 VLAN 1에 속하게 되고, 관리 프로토콜 트래픽을 수신하면서 네트워크 구조를 파악할 수 있다. Management VLAN은 반드시 별도 VLAN으로 분리해야 한다.

실습 토폴로지

[HR-PC, VLAN10]────e0/0──┐
                         │
[Dev-PC, VLAN20]───e0/1─[SW1]
                         │
[Mgmt-PC, VLAN30]──e0/2──┘
장비IP포트비고
SW1e0/0 / e0/1 / e0/2IOL L2
HR-PC (VPC2)192.168.10.10/24e0/0VLAN 10
Dev-PC (VPC3)192.168.20.10/24e0/1VLAN 20
Mgmt-PC (VPC4)192.168.30.10/24e0/2VLAN 30

확인 명령어 및 결과

VLAN 생성 및 포트 할당

VLAN 3개를 생성하고 각 포트에 할당했다. show vlan brief로 결과를 확인한다.

SW1(config)# vlan 10
SW1(config-vlan)# name HR
SW1(config)# vlan 20
SW1(config-vlan)# name Dev
SW1(config)# vlan 30
SW1(config-vlan)# name Mgmt

SW1(config)# interface e0/0
SW1(config-if)# switchport mode access
SW1(config-if)# switchport access vlan 10

SW1(config)# interface e0/1
SW1(config-if)# switchport mode access
SW1(config-if)# switchport access vlan 20

SW1(config)# interface e0/2
SW1(config-if)# switchport mode access
SW1(config-if)# switchport access vlan 30

show vlan brief 결과

VLAN 10, 20, 30에 각 포트가 정상적으로 할당됐다. VLAN 1(default)에는 미사용 포트(Et0/3)만 남아 있는 것이 올바른 상태다.

VLAN  Name              Status    Ports
----  ----------------  --------  --------------------
1     default           active    Et0/3
10    HR                active    Et0/0
20    Dev               active    Et0/1
30    Mgmt              active    Et0/2

VLAN 간 격리 확인

HR-PC에서 Dev-PC, Mgmt-PC로 ping을 시도했다. 스위치가 VLAN 경계에서 프레임 전달 자체를 차단하므로 둘 다 실패한다.

VPCS> ping 192.168.20.10
host (255.255.255.0) not reachable

VPCS> ping 192.168.30.10
host (255.255.255.0) not reachable
VLAN 간 통신을 하려면 라우터 또는 L3 스위치가 필요하다. 스위치는 L2 장비다 — VLAN 경계를 넘는 것은 스위치의 역할이 아니다.

삽질 기록

삽질 1 — Mgmt-PC IP 설계 실수

상황 토폴로지 설계 시 Mgmt-PC IP를 192.168.10.30/24으로 잡았다. HR-PC는 192.168.10.10/24.
실제 VLAN은 분리됐지만 두 PC가 같은 서브넷에 있는 상태가 됐다.
원인 VLAN과 서브넷은 별개다. VLAN을 분리해도 IP 설계를 VLAN마다 다른 서브넷으로 가져가지 않으면 나중에 L3 라우팅을 붙일 때 충돌이 발생한다.
교훈 VLAN 설계 원칙 — VLAN 하나당 서브넷 하나. 192.168.30.10/24으로 수정했다.

삽질 2 — 같은 VLAN인데 ping이 안 된다?

상황 실험으로 Dev-PC 포트(e0/1)를 VLAN 10으로 바꿔서 HR-PC와 같은 VLAN으로 만들었다.
실제 같은 VLAN인데도 HR-PC → Dev-PC ping이 실패했다.
원인 L2가 아닌 L3 문제였다. HR-PC(192.168.10.10)가 192.168.20.10으로 ping을 시도하면, "목적지가 내 서브넷(10.x) 밖이다"라고 판단하고 게이트웨이로 보내려 한다. 게이트웨이가 없으니 PC 자신이 포기한 것이다. 스위치는 막지 않았다.
교훈 "통신 안 됨" 증상을 보면 먼저 L2 문제인지 L3 문제인지 구분해야 한다. 진단 순서: show vlan brief → IP 서브넷 확인 → 게이트웨이 확인.

면접 포인트

Q. VLAN과 서브넷의 관계를 설명하라.
VLAN은 L2 브로드캐스트 도메인을 분리하는 개념이고, 서브넷은 L3 IP 주소 범위를 나누는 개념이다. 일반적으로 VLAN 하나에 서브넷 하나를 1:1로 매핑해서 사용한다. VLAN 간 통신을 하려면 라우터 또는 L3 스위치가 필요하다. 같은 VLAN이어도 서브넷이 다르면 통신이 안 되는데, 이건 스위치가 막는 게 아니라 PC가 게이트웨이를 찾지 못해 포기하는 L3 문제다.
Q. VLAN 1을 Management VLAN으로 쓰지 말아야 하는 이유는?
모든 포트의 기본값이 VLAN 1이기 때문이다. CDP, STP, VTP 같은 Cisco 관리 프로토콜도 기본적으로 VLAN 1로 흐른다. 공격자가 스위치에 연결되면 별도 설정 없이 VLAN 1에 속하게 되고, 관리 프로토콜 트래픽을 수신해서 네트워크 구조를 파악하거나 VLAN Hopping 공격의 진입점으로 활용할 수 있다. Management VLAN은 반드시 별도 VLAN으로 분리하고, 미사용 포트는 사용하지 않는 VLAN으로 격리해야 한다.
Q. 같은 VLAN인데 통신이 안 된다. 어떻게 진단하나?
먼저 L2 문제와 L3 문제를 구분해야 한다.

1단계: show vlan brief — 포트가 올바른 VLAN에 할당됐는지 확인.
2단계: IP 서브넷 확인 — 같은 VLAN이어도 서브넷이 다르면 PC가 게이트웨이로 보내려 하므로 L3 문제다.
3단계: 게이트웨이 설정 확인 — 게이트웨이가 없거나 잘못됐으면 라우팅 문제다.

스위치가 막는 L2 실패와 PC가 게이트웨이를 찾지 못하는 L3 실패는 증상이 같아 보이지만 원인이 완전히 다르다.