들어가며
VTP는 중앙의 서버 스위치에서 VLAN을 생성, 수정, 삭제하면 네트워크 내 모든 스위치가 자동으로 동기화되는 편리한 기능을 제공합니다. 마치 DTP처럼 자동화를 통해 관리자의 업무를 줄여주는 것이 목적입니다.
이번 글에서는 VTP의 동작 원리와 각 모드의 특징을 살펴보고, VTP가 왜 위험한지, 그리고 안전하게 VLAN을 관리하는 방법에 대해 알아보겠습니다.
1. VTP 개요
VTP란?
VTP(VLAN Trunking Protocol)는 Cisco 스위치 간에 VLAN 정보를 자동으로 동기화하는 Layer 2 프로토콜입니다. VTP Server에서 VLAN을 생성, 수정, 삭제하면 네트워크 내 모든 VTP Client 스위치가 자동으로 해당 정보를 수신하여 VLAN 데이터베이스를 업데이트합니다.
VTP의 목적
대규모 네트워크에서 수십 대의 스위치를 관리할 때, 각 스위치마다 동일한 VLAN을 반복적으로 설정하는 것은 비효율적입니다. VTP를 사용하면 중앙에서 VLAN을 관리하고 자동으로 모든 스위치에 배포할 수 있어, 관리의 편의성이 크게 향상됩니다.
VTP의 장점:
- VLAN 관리의 중앙 집중화
- 네트워크 전체의 VLAN 일관성 유지
- 관리자의 반복 작업 감소
- VLAN 설정 오류 가능성 감소
VTP의 제한사항:
VTP는 VLAN 정보(VLAN ID, 이름 등)만 동기화합니다. 각 포트에 VLAN을 할당하는 작업은 여전히 각 스위치에서 수동으로 설정해야 합니다. 예를 들어, VTP를 통해 VLAN 10이 모든 스위치에 생성되더라도, FastEthernet 0/1 포트를 VLAN 10에 할당하는 작업은 각 스위치에서 개별적으로 수행해야 합니다.
2. VTP의 치명적인 위험 요소
Revision Number의 작동 원리
VTP는 Revision Number(리비전 번호)를 사용하여 VLAN 데이터베이스의 버전을 관리합니다. VLAN을 추가, 수정, 삭제할 때마다 리비전 번호가 1씩 증가하며, 스위치는 더 높은 리비전 번호를 가진 VTP 광고를 수신하면 자신의 VLAN 데이터베이스를 해당 정보로 덮어씁니다.
정상적인 동작:
- Server 스위치에서 VLAN 10 생성 → Revision 1
- Server 스위치에서 VLAN 20 생성 → Revision 2
- Client 스위치들이 Revision 2 정보를 수신하고 동기화
위험한 시나리오
VTP의 가장 큰 위험은 더 높은 리비전 번호를 가진 스위치가 네트워크에 연결될 때 발생합니다.
실제 장애 시나리오:
- 운영 네트워크의 스위치들이 Revision 50으로 정상 운영 중
- 테스트 환경에서 사용하던 스위치(Revision 100, VLAN 정보는 거의 없음)를 운영 네트워크에 연결
- 운영 스위치들이 Revision 100이 더 높다고 판단하고 테스트 스위치의 VLAN 정보로 동기화
- 운영 중인 모든 VLAN이 삭제되는 대규모 장애 발생
- 네트워크 전체가 마비되고 긴급 복구 작업 필요
장애의 심각성:
이러한 장애는 단 몇 초 만에 발생하며, 수십 대의 스위치에 동시에 영향을 미칩니다. 특히 금융기관, 병원, 제조업체 등 네트워크 가용성이 중요한 환경에서는 치명적인 결과를 초래할 수 있습니다.
VTP 도메인과 DTP의 상호작용
VTP가 정상적으로 동작하려면 VTP 도메인 이름이 양쪽 스위치에서 동일해야 합니다. DTP를 통해 트렁크를 자동으로 형성할 때, VTP 도메인 이름이 일치하지 않으면 트렁크는 형성되지만 VLAN 정보는 동기화되지 않습니다.
3. VTP 동작 모드

VTP는 세 가지 동작 모드를 제공하며, 각 모드는 VLAN 정보를 관리하고 동기화하는 방식이 다릅니다.
VTP Server
VTP Server는 VLAN 정보를 생성, 수정, 삭제할 수 있는 관리 권한을 가진 모드입니다.
vtp mode server
주요 기능:
- VLAN을 추가, 수정, 삭제 가능
- VLAN 정보를 VTP 광고를 통해 다른 스위치에 전파
- 더 높은 리비전 번호를 가진 다른 Server로부터 VLAN 정보를 수신하면 자신의 데이터베이스도 업데이트
특징:
- 여러 대의 Server가 존재할 수 있음
- 모든 Server는 동등한 권한을 가지며, 리비전 번호가 높은 쪽이 우선
VLAN 생성 예시:
SW1(config)# vlan 20
SW1(config-vlan)# name Sales
SW1(config-vlan)# exit
VTP Client
VTP Client는 VTP Server로부터 VLAN 정보를 수신하여 동기화하는 읽기 전용 모드입니다.
vtp mode client
주요 기능:
- VLAN을 추가, 수정, 삭제 불가
- 가장 높은 리비전 번호를 가진 Server로부터 VLAN 정보를 수신
- 수신한 VTP 광고를 다른 스위치로 전달 (중계 역할)
제한 사항:
Client 모드에서는 VLAN 생성 명령어가 거부됩니다.
SW2(config)# vlan 30
% VTP VLAN configuration not allowed when device is in CLIENT mode.
특징:
Client는 VLAN 정보를 수신만 하고 자체적으로 생성할 수 없습니다. 모든 VLAN 관리는 Server에서만 수행됩니다.
VTP Transparent
VTP Transparent는 VTP 도메인에 참여하지 않으며, 자체적으로 VLAN을 관리하는 독립 모드입니다.
vtp mode transparent
주요 기능:
- VTP 도메인에 참여하지 않음
- VLAN 정보를 학습하거나 광고하지 않음
- VTP 메시지를 수신하면 그대로 전달만 함 (중계 역할)
- 자체 로컬 VLAN 데이터베이스에서 VLAN을 자유롭게 추가, 수정, 삭제 가능
특징:
- 독립적으로 VLAN 관리
- VTP 광고는 통과시키지만 내용은 무시
- 가장 안전한 모드로 평가됨
VLAN 생성 예시:
SW3(config)# vlan 40
SW3(config-vlan)# name Engineering
SW3(config-vlan)# exit
Transparent 모드에서는 아무런 제약 없이 VLAN을 생성할 수 있습니다.
4. VTP Transparent 공존 예시
VTP 네트워크에서 일부 스위치만 Transparent 모드로 설정하여 독립적으로 운영할 수 있습니다.
네트워크 구성 예시

동작 방식:
- SERVER에서 VLAN 10, 20 생성 (Revision 2)
- TRANSPARENT 스위치는 VTP 광고를 수신하지만 무시하고 통과시킴
- CLIENT 스위치들은 VTP 광고를 수신하여 VLAN 10, 20 동기화
- TRANSPARENT 스위치에서는 수동으로 필요한 VLAN만 설정
- TRANSPARENT 스위치는 자신만의 독립적인 VLAN 데이터베이스 유지
활용 사례:
- 특정 스위치만 별도의 VLAN 구조가 필요한 경우
- VTP 도메인의 영향을 받지 않아야 하는 스위치
- 네트워크 분리가 필요한 보안 구역
5. VTP 설정 및 관리
VTP 도메인 및 모드 설정
VTP 도메인 설정:
SW1(config)# vtp domain Flackbox
Changing VTP domain name from NULL to Flackbox
VTP 도메인 이름은 대소문자를 구분하며, 동일한 도메인의 스위치끼리만 VLAN 정보를 동기화합니다.
Server 모드 설정:
SW1(config)# vtp mode server
Setting device to VTP Server mode
Client 모드 설정:
SW2(config)# vtp mode client
Setting device to VTP Client mode
Transparent 모드 설정:
SW3(config)# vtp mode transparent
Setting device to VTP Transparent mode
VLAN 생성
Server 또는 Transparent에서만 가능:
SW1(config)# vlan 20
SW1(config-vlan)# name Sales
SW1(config-vlan)# vlan 30
SW1(config-vlan)# name Engineering
SW1(config-vlan)# exit
각 VLAN을 생성할 때마다 리비전 번호가 증가합니다.
VTP 상태 확인
show vtp status 명령어:
SW1# show vtp status
VTP Version capable : 1 to 3
VTP version running : 2
VTP Domain Name : Flackbox
VTP Pruning Mode : Disabled
VTP Traps Generation : Disabled
Device ID : 0023.ab12.cd34
Configuration last modified by 192.168.1.1 at 11-6-25 10:30:15
Feature VLAN:
--------------
VTP Operating Mode : Server
Maximum VLANs supported locally : 1005
Number of existing VLANs : 8
Configuration Revision : 6
MD5 digest : 0x7D 0x5A 0x3F...
중요 정보:
- Configuration Revision: 리비전 번호 (높을수록 최신)
- VTP Operating Mode: 현재 동작 모드
- VTP Domain Name: 도메인 이름
- Configuration last modified: 마지막 수정 시간과 수정한 스위치 IP
VLAN 정보 확인
SW1# show vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/1, Fa0/2, Fa0/3
10 Management active
20 Sales active Fa0/10, Fa0/11
30 Engineering active Fa0/20, Fa0/21
6. VTP 보안 고려사항
VTP 패스워드 설정
VTP 도메인에 패스워드를 설정하여 무단 스위치가 VLAN 정보를 변경하지 못하도록 보호할 수 있습니다.
SW1(config)# vtp password SecurePass123
Setting device VTP password to SecurePass123
패스워드가 설정되면 VTP 광고는 MD5 해시로 암호화되며, 동일한 패스워드를 가진 스위치만 VTP 정보를 교환할 수 있습니다.
VTP Pruning
VTP Pruning은 불필요한 브로드캐스트 트래픽을 줄이기 위한 기능입니다.
SW1(config)# vtp pruning
Pruning switched on
VTP Pruning이 활성화되면 특정 VLAN이 존재하지 않는 트렁크로는 해당 VLAN의 트래픽을 전송하지 않아 대역폭을 절약할 수 있습니다.
마무리 및 정리
VTP는 대규모 네트워크에서 VLAN 관리를 자동화하기 위해 설계된 프로토콜이지만, 리비전 번호 메커니즘으로 인한 치명적인 위험 때문에 현대 네트워크 환경에서는 사용을 권장하지 않습니다. 단 한 번의 실수로 전체 네트워크의 VLAN이 삭제될 수 있으며, 이는 심각한 서비스 장애로 이어질 수 있습니다.
핵심 요점:
- VTP 사용 지양: 가능하면 VTP를 사용하지 않는 것이 가장 안전
- Transparent 모드 사용: 모든 스위치를 Transparent 모드로 설정하고 수동으로 VLAN 관리
- 리비전 번호 주의: 새 스위치 추가 시 반드시 리비전 번호 초기화
- 현대적 자동화 도구 활용: Ansible, Puppet 등을 사용한 안전한 자동화
- 변경 관리 프로세스 준수: 모든 VLAN 변경 사항을 문서화하고 백업 유지
'Network Concepts' 카테고리의 다른 글
| [Network] IGP - 내부 게이트웨이 프로토콜 (RIP, EIGRP, OSPF) (0) | 2025.11.09 |
|---|---|
| [Network] 라우팅과 라우팅 프로토콜의 기초 (0) | 2025.11.07 |
| [Network] DTP - 동적 트렁킹 프로토콜 (0) | 2025.11.06 |
| [Network] VLAN의 개념과 액세스(Access) 포트, 트렁크(Trunk) 포트 (0) | 2025.11.04 |
| [Network] DHCP - 동적 호스트 구성 프로토콜 (0) | 2025.11.02 |
