
네트워크를 논리적으로 쪼개는 이유와 실무 사례: 효율과 보안을 다잡는 VLAN 설계의 모든 것
처음 VLAN을 접한 건 입사 3년차였다. 선배가 "물리적으로는 같은 스위치에 꽂혀 있지만, 이 두 장비는 서로 통신을 못 한다"고 했을 때 솔직히 이해가 안 갔다. 같은 선에 꽂혀 있는데 왜 못 통신해? 처음엔 진짜 말이 안 된다고 생각했다. 근데 지금은 VLAN 없는 네트워크 설계를 아예 상상을 못 한다. 그만큼 당연한 게 됐다. 이 글은 왜 네트워크를 논리적으로 쪼개야 하는지, 그 이유와 실무에서 마주친 사례를 솔직하게 풀어놓은 것이다.
VLAN이란 무엇인가: 사무실 칸막이 비유
VLAN은 Virtual Local Area Network다. 물리적 연결과 무관하게 논리적으로 네트워크를 분리하는 기술이다. 쉽게 말하면 오픈 플랜 사무실에 칸막이를 세우는 것과 같다.같은 층에 있어도 영업팀과 개발팀은 다른 공간이다. 영업팀 이야기가 개발팀 귀에 자동으로 다 들리면 안 되고, 개발팀 서버 접속 화면이 영업팀 눈에 보이면 곤란하다. VLAN이 딱 그 칸막이 역할을 한다. 물리 선은 공유하더라도, 논리적으로는 완전히 다른 네트워크다.802.1Q 태깅이라는 기술로 구현하는데, 이더넷 프레임에 4바이트짜리 태그를 하나 더 붙여서 "이 프레임은 VLAN 10 것"이라고 표시한다. 스위치는 이 태그를 보고 어디에 속한 프레임인지 판단하고, 해당 VLAN 내에서만 통신이 이뤄지도록 제어한다.처음 이 개념을 배울 때, 솔직히 "왜 이렇게 복잡하게 만들었지?"라는 생각이 먼저 들었다. 그냥 스위치 두 대 사면 되는 거 아닌가 싶었다. 근데 스위치를 물리적으로 두 대, 세 대로 늘리면 비용도 늘고 관리 포인트도 늘어난다. VLAN은 하나의 장비 안에서 여러 개의 독립된 네트워크를 만들어내는 방법이다. 비유하자면 건물 하나에 사무실을 여러 개 쪼개서 임대하는 것과 같다. 물리 자원은 하나인데, 논리적으로 분리된 공간을 여러 개 만드는 것이다. 이게 익숙해지면 진짜 강력한 도구라는 걸 알게 된다.
왜 쪼개야 하는가: 보안, 성능, 관리의 세 가지 이유
현장에서 VLAN을 써야 하는 이유를 세 단어로 압축하면, 보안, 성능, 관리다.보안 측면에서 보면, VLAN 분리가 없으면 같은 스위치에 연결된 장비는 ARP 브로드캐스트를 서로 주고받는다. 이 말은 악의적인 사용자가 같은 네트워크 세그먼트에 있으면 패킷을 스니핑할 수 있다는 뜻이다. 특히 사내 네트워크에 외부 손님용 Wi-Fi와 내부 서버가 같은 VLAN에 있다면, 이건 보안 사고의 씨앗이다. 실제로 이런 구성으로 운영하다가 내부 자료가 외부 접속자에게 노출된 사례를 들은 적도 있다.성능 측면에서는 브로드캐스트 도메인이 핵심이다. VLAN이 없으면 브로드캐스트 하나가 같은 스위치에 연결된 모든 장비에 전달된다. 장비가 100대면 100대 다. 브로드캐스트가 많아질수록 장비들은 자기와 관계없는 패킷 처리에 CPU를 낭비한다. VLAN으로 쪼개면 브로드캐스트 도메인이 줄어들고, 불필요한 트래픽이 감소한다.관리 측면에서는 유연성이다. 물리적으로 이동이 없어도, 소속 VLAN을 바꾸면 네트워크 설정이 바뀐다. 신규 입사자가 자리를 바꿔도 스위치 포트 VLAN만 바꿔주면 된다. 케이블을 뽑고 꽂는 일 없이.한 번은 게스트 Wi-Fi가 내부 업무망과 같은 VLAN에 물려 있는 환경을 이어받은 적이 있다. 방문객이 카페처럼 Wi-Fi에 붙어 있으면서 내부 파일 서버에 브라우저로 접근이 됐다. 아무도 그게 문제인 줄 몰랐다. 보안 점검에서 지적받고 나서야 부랴부랴 VLAN을 분리했는데, 그때 진짜 아찔했다. 보안은 문제 생기기 전에는 잘 모른다. VLAN 분리가 귀찮아서 안 하는 게 아니라, 언제 터질지 모르는 시한폭탄을 그냥 놔두는 것과 같다.
802.1Q 태그 구조: 소포에 붙이는 분류 스티커
802.1Q 태그는 기존 이더넷 프레임에 4바이트를 추가로 삽입한다. 이 스티커는 두 가지 주요 정보를 담는다. TPID(Tag Protocol Identifier, 0x8100으로 고정값)와 TCI(Tag Control Information)다. TCI 안에 PCP(Priority Code Point, QoS 우선순위 3비트), DEI(Drop Eligible Indicator 1비트), VID(VLAN Identifier 12비트)가 들어간다.VID가 12비트니까 VLAN ID는 0부터 4095까지 4096개 가능하다. 근데 0과 4095는 예약이고, 실제 사용 가능한 건 1~4094다. VLAN 1은 대부분 스위치의 기본 VLAN이라 건드리지 않는 게 관례다.이더넷 프레임에 802.1Q 태그가 삽입된 구조:
+----------+-----+------------------+------------------+----------+-----------+---------+-----+
| Preamble | SFD | Dst MAC (6B) | Src MAC (6B) | 802.1Q | EtherType | Payload | FCS |
| | | | | Tag (4B) | (2B) | | (4B)|
+----------+-----+------------------+------------------+----------+-----------+---------+-----+802.1Q Tag 4바이트 구조:
+------------------+-----+------+----------------------+
| TPID (0x8100) 2B | PCP | DEI | VID (VLAN ID) 12bit |
| | 3bit| 1bit | (0~4095, 실사용 1~4094)|
+------------------+-----+------+----------------------+
이 구조를 처음 배울 때 "4바이트가 뭐가 크냐"고 생각했다. 근데 이 4바이트가 없으면 수천 대 장비가 물린 데이터센터에서 어떤 트래픽이 어디 소속인지 구분을 못 한다. 작은 정보가 큰 역할을 한다는 게 네트워크 기술 전반에 공통되는 특징이기도 하다. 한 가지 비판을 하자면, VLAN ID가 12비트로 4096개까지밖에 안 된다는 게 클라우드 시대에 한계로 지적된다. 그래서 나온 게 VXLAN 같은 기술인데, 24비트로 약 1600만 개의 가상 네트워크를 지원한다. 802.1Q는 현장에서 여전히 표준이지만, 규모가 커질수록 한계도 같이 보인다.
Access 포트와 Trunk 포트: 일반 도로와 고속도로의 차이
VLAN을 설정할 때 포트는 두 종류로 나뉜다. Access 포트와 Trunk 포트다.Access 포트는 하나의 VLAN에만 속한다. 일반 PC나 서버를 연결하는 포트다. 태그 없이 프레임이 들어오면 스위치가 알아서 해당 VLAN 태그를 붙이고, 나갈 때는 태그를 제거해서 장비에 전달한다. 장비 입장에서는 VLAN이 있는지도 모른다. 동네 일반 도로 같은 거다. 그냥 다닌다.Trunk 포트는 여러 VLAN의 프레임이 동시에 지나다닌다. 스위치 간 연결이나 스위치-라우터 연결에 사용한다. 태그가 붙은 채로 프레임이 이동한다. 고속도로처럼 여러 목적지의 차량이 동시에 달리는 곳이다. Trunk 포트에는 Native VLAN이라는 개념도 있는데, 태그 없이 들어오는 프레임을 어느 VLAN으로 처리할지 정하는 설정이다.신입 때 Trunk 포트에 Native VLAN 설정을 빠뜨린 채로 운영한 적이 있다. 어떤 PC는 통신이 되고 어떤 PC는 안 되는 상황이 생겼다. 반나절을 삽질하다가 Native VLAN 불일치가 원인이었다는 걸 알았다. 양쪽 스위치에서 Native VLAN이 달랐던 거다. 그 이후로 Trunk 설정할 때는 Native VLAN을 명시적으로 맞추는 걸 습관으로 삼았다. 자동으로 되겠지 하고 넘기면 꼭 거기서 문제가 생긴다.
# Cisco 스위치 VLAN 설정 예제VLAN 생성
vlan 10
name Development
vlan 20
name Sales
vlan 30
name ManagementAccess 포트 설정 (PC 연결)
interface GigabitEthernet0/1
switchport mode access
switchport access vlan 10interface GigabitEthernet0/2
switchport mode access
switchport access vlan 20Trunk 포트 설정 (스위치 간 연결)
interface GigabitEthernet0/24
switchport mode trunk
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10,20,30
switchport trunk native vlan 99VLAN 확인
show vlan brief
show interfaces trunk
show mac address-table vlan 10
실무 사례 1: 개발/스테이징/운영 환경 분리
가장 자주 쓰이는 VLAN 구성이다. 같은 물리 인프라를 쓰더라도 개발, 스테이징, 운영을 각각 다른 VLAN으로 분리한다. 이렇게 하면 개발자가 실수로 운영 서버에 직접 접근하는 사고를 물리적이 아닌 네트워크 레벨에서 막을 수 있다.실제로 한 프로젝트에서 개발과 운영이 같은 VLAN에 있었다. 개발자가 테스트 목적으로 배포 스크립트를 돌렸는데, IP를 잘못 적어서 운영 서버에 배포가 된 사건이 있었다. 서비스가 30분 가까이 다운됐고, 그 사건 이후로 VLAN 분리와 ACL을 같이 걸었다. 사람이 실수를 안 하는 건 불가능하니까, 네트워크가 방어선을 쳐야 한다.이 사례에서 중요한 포인트는 "사람을 믿지 말고 구조를 믿어라"는 것이다. 아무리 경험 많은 엔지니어도 실수한다. IP 하나 잘못 치는 건 순식간이다. VLAN 분리와 ACL이 없었다면 그 실수가 그대로 사고로 이어진다. 기술적 통제가 있으면 실수가 사고까지 번지기 전에 막힌다. VLAN은 단순한 네트워크 나누기가 아니라, 사고를 예방하는 안전장치다.
실무 사례 2: 게스트 Wi-Fi와 내부망 분리
카페 같은 공간이나 방문객이 많은 사무실에서 반드시 적용해야 하는 구성이다. 게스트 Wi-Fi와 내부 업무망을 같은 VLAN에 두면, 게스트가 내부 파일 서버나 프린터에 접근할 수 있는 상황이 생긴다.게스트 VLAN은 인터넷만 접속 가능하도록 ACL을 걸고, 내부망으로의 라우팅을 차단한다. 이 구성 없이 운영하는 곳을 보면 솔직히 아찔하다. 보안 감사 한 번 받으면 바로 지적되는 항목이기도 하다.이 구성은 규모가 작은 사무실일수록 더 잘 빠뜨린다. "우리 회사엔 딱히 중요한 자료도 없으니까"라고 넘기는 경우가 많다. 근데 내부 네트워크에 있는 프린터, NAS, 개인 PC들이 노출되는 것 자체가 문제다. 방문자가 악의를 가지고 있지 않아도, 감염된 노트북 하나가 내부망에 붙으면 그게 바로 침투 경로가 된다. 게스트 VLAN 분리는 선택이 아니라 기본값이어야 한다.
현장에서 느낀 장점: 논리로 물리를 지배하는 쾌감
VLAN의 가장 큰 장점은 유연성이다. 조직 개편이 있어서 팀이 통합되거나 분리될 때, 물리 케이블을 손댈 필요 없이 VLAN 설정만 바꾸면 된다. 10년 전에는 네트워크 팀에 "팀 이동하는데 네트워크 설정 바꿔주세요" 연락하면 며칠씩 걸렸다. 제대로 된 VLAN 설계가 되어 있으면 이걸 몇 분 안에 처리할 수 있다.보안 이벤트 대응도 빠르다. 특정 VLAN을 격리하거나 차단하는 게 포트 하나씩 건드리는 것보다 훨씬 빠르고 깔끔하다. 침해사고 대응 훈련에서 감염된 가상 장비를 격리하는 시나리오를 해봤는데, VLAN 차단으로 10초 만에 처리했다. 포트 하나씩 수동으로 내리려면 장비가 몇 대만 돼도 몇 분은 걸린다. 그 몇 분이 사고 대응에서는 엄청난 차이다.
현장에서 느낀 단점: 잘못 설계하면 나중에 손댈 수가 없다
VLAN의 함정은 초기 설계가 엉터리면 나중에 고치기가 극단적으로 어렵다는 것이다. VLAN ID를 대충 붙이고, 문서화도 안 하고, 나중에 Trunk 포트에 어떤 VLAN이 허용되는지도 모르는 상태로 운영하다 보면, 장애가 날 때 뭘 건드려야 할지 아무도 모르는 상황이 온다.내가 이어받은 인프라 중 VLAN 1에 모든 서버가 다 붙어있고, VLAN 10이 뭔지 VLAN 20이 뭔지 문서가 없는 경우가 있었다. 설계자는 이미 퇴사했고. 그 정리하는 데 한 달 넘게 걸렸다. 트래픽 캡처 떠가면서 하나씩 추적했다. 그 고생이 너무 생생해서, 지금은 VLAN 하나 만들 때마다 스프레드시트에 기록한다. VLAN ID, 용도, 연결 장비 목록, 허용 Trunk 포트 전부 다. 귀찮아도 이게 나중에 나를 살린다.
마무리: 논리적으로 쪼개는 것이 곧 통제하는 것
VLAN을 처음 배울 때는 그냥 "네트워크 나누는 기술" 정도로만 알았다. 근데 현장에서 쓰다 보면, 이게 단순한 기술이 아니라 네트워크에 질서를 부여하는 철학이라는 걸 느낀다. 무엇을 어디서 통신하게 하고, 무엇을 차단하고, 어디까지 접근을 허용할 것인가. 이 모든 의사결정이 VLAN 설계 안에 담긴다.잘 설계된 VLAN 구조는 조직이 성장해도 흔들리지 않는 뼈대가 된다. 반대로 엉성하게 만들어진 VLAN은 기술 부채가 되어 나중에 몇 배의 비용을 요구한다. 논리로 물리를 지배하는 것, 그게 VLAN 설계의 핵심이고, 10년 동안 배운 가장 중요한 교훈 중 하나다.
출처 및 참고 경로
- Cisco 기술 백서: "Understanding and Configuring VLANs" - cisco.com
- IEEE 표준 위원회: "802.1Q - Bridges and Bridged Networks" - ieee.org
- NIST Special Publication 800-123: "Guide to General Server Security" - nist.gov
'IT적응기' 카테고리의 다른 글
| L2 스위치 가이드 매니지드-언매니지드 스위치 차이 (4) | 2026.04.07 |
|---|---|
| STP(Spanning Tree Protocol): 네트워크 루프(Loop) 사고 방지법 (0) | 2026.04.07 |
| 스위칭 원리: Learning, Flooding, Forwarding 3단계 프로세스 (0) | 2026.04.06 |
| 이더넷 프레임 데이터가 포장되는 방식을 이해하기 (0) | 2026.04.06 |
| L2 계층 완전 정복 : MAC 주소의 왜 세상에 하나뿐인 주소가 필요한가? (0) | 2026.04.06 |