스위치(Switch) - VTP(Vlan Trunking Protocol)

Network/Switch 2015. 12. 14. 22:47

VTP를 이해기하기전에 VLAN의 개념부터 정리해보자

 

<VLAN?>

VLAN이란 논리적으로 분할된 스위치 네트워크를 말한다. 서로 다른 VLAN은 브로드캐스트 도메인을 분할하는데, VLAN에 의해 분할된 네트워크 영역도 라우터나 L3스위치를 통해서 통신해야 한다.

 


<트렁킹?>

트렁크란 복수개의 VLAN 프레임을 전송할 수 있는 링크를 말한다. 특정 포트를 트렁크 포트로 동작시키는 것을 트렁킹이라고 한다.

그렇다면 트렁킹 프로토콜이란? 하나의 포트(인터페이스)에 여러개의 VLAN이 묶여 통신하는데 각 VLAN별로 이름을 붙여주는 방식의 차이를 말한다.

 

1. 802.1Q 트렁킹

IEEE 802.1Q에 정의된 표준 트렁킹 프로토콜이다. 이더넷 프레임의 출발지 주소 다음에 다음 표와같이 4바이트 길이의 802.1Q태그를 추가하여 VLAN번호와 기타 정보를 표시한다.



이더타입 : 현재 프레임이 802.1Q 프레임이라는 것을 표시하며, 이 필드를 TPID(tag protocol identifier)라고도 한다.

우선순위 : 프레임의 우선순위를 표시한다. 0~7 사이를 갖으며, 값이 클수록 우선순위가 높다.

CFI : 이 비트가 1로 설정되면 토큰링 프레임이 인캡슐레이션된 것임을 표시

VLAN번호 : 프레임의 VLAN번호를 표시한다. 필드의 길이가 12비트이므로, 802.1Q 트렁킹 방식을 사용하면 4096개의 VLAN이 지원된다.

※ 네이티브 VLAN : 802.1Q 방식의 트렁크 에서만 사용되는 개념이다. 802.1Q는 네이티브 VLAN을 이용하여 인캡슐레이션되지 않은 프레임도 송수신한다. 네이티브 VLAN이란 무엇일까? VLAN 번호를 표시하지 않는 VLAN이다. (기본 디폴트 VLAN은 1이다.)

802.1Q 지정하기) SW1(config-if)# switchport trunk encapsulation dot1q

 

2. ISL

시스코에서 개발한 트렁킹 인캡슐레이션 방식이다. 802.1Q과 달리 확장 VLAN을 지원하지 못한다. ISL은 이더넷 프레임은 변경하지 않고, 프레임 앞에 26바이트의 ISL 헤더를 추가한다. FCS 다음에 별도로 4바이트 길이의 ISL FCS를 추가한다.



ISL 헤더

① DA : 이 프레임이 ISL 프레임 이라는 것을 나타탬(40bit)

② Type : 인탭슐레이션된 프레임의 종류를 표시한다. 0000은 이더넷, 0001은 토큰링, 0010은 FDDI, 0011은 ATM (4bit)

③ User : 이더넷 프레임의 우선순위를 표시한다(4bit)

④ SA : 출발지 스위치의 맥주소를 표시(48bit)

⑤ LEN : 프리임의 길이를 표시(16bit)

⑥ SNAP : SNAP을 표시(16bit)

⑦ HAS : 출발지 주소중 상위 3바이트 즉, 제조회사 코드 또는 OUI를 표시(24bit)

⑧ VLAN 번호 : 15비트가 할당되어 있으며 1024개의 VLAN 번호를 지원한다.

⑨ BDPU : BPDU정보를 표시

ISL 지정하기) SW1(config-if)# switchport trunk encapsulation ISL

 


<스위치 포트의 DTP 모드>

DTP(dynamic trunking protocol)란 시스코 스위치에서 상대 스위치와 트렁크와 관련된 사항을 협상할 때 사용되는 프로토콜이다. DTP에 의해 결정되는 것은 트렁크 포트 전환여부와 트렁크 포트로 동작시 인캡슐레이션 방식이다.

1. 액세스 : 상대 포트와 상관없이 자신은 액세스 포트로 동작

SW1(config-if)# switchport mode access

 

2. 트렁크 : 상대포트와 상관없이 자신은 트렁크 포트로 동작

SW1(config-if)# switchport trunk encapsulation ISL or dot1q

 

3. 트렁크 포트가 DTP 프레임을 보내지 않게 설정하기 (자동 협상기능을 중지시키는 방법)

SW1(config-if)# switchport mode trunk 

SW1(config-if)# switchport nonegotiate

 


<VTP>

스위치들 간에 VLAN정보를 서로 주고받아 스위치들이 가지고 있는 VLAN정보를 항상 일치시켜 주기위한 프로토콜이다. VTP서버에서 한 번만 VLAN정보를 설정하면 VTP 서버는 다른 스위치와의 트렁크 링크를 통해서 VLAN 정보를 자동으로 업데이트한다.

동작원리는 스위치에서 VLAN을 추가, 삭제, 수정을 한다. 결과적으로 VLAN 설정정보가 변경되고 새로운 VLAN정보를 다른 스위치에게 전송해야 한다.

스위치는 VTP 설정 번호를 기본값+1해서 다른 스위치에게 전송한다.

VTP정보를 수신한 스위치는 자신의 VTP설정 번호와 수신한 번호를 비교후, 더 높으면 그 새로운 정보로 대체하고, 낮으면 무시한다.

 

<VTP간에 주고받는 메시지 3가지>

① Summary Advertisement : VTP서버가 자기에게 연결되어 있는 스위치들에게 5분마다 한 번씩 전달하는 메시지. 자신이 관리하는 VTP도메인의 Revision 넘버를 보낸다. 각 스위치는 Revision 넘버를 보고 자신들의 VLAN정보가 최신인지 아닌지를 판단한다.

VTP메인서버가 보내는 것

 

② Subset Advertisement : VLAN의 구성이 변경되었을 때나 VTP 클라이언트로부터 Advertisement Request 메시지를 받았을 때 전송된다. 실제 VLAN 정보가 들어있다. VTP메인서버가 보내는 것

 

③ Advertisement Request : 클라이언트가 VTP서버에게 Summary Advertisement와 Subset Advertisement를 요청하는 용도로 사용. VTP서버로부터 자신이 갖고 있는 Revision 넘버보다 더 높은 Revision넘버가 있는 Summary Advertisement 메시지를 받았을 때, Request메시지를 보내서 VTP서버로부터 Subset Advertisement를 받는다. 스위치가 새로 리셋되었을 경우 Advertisement Request 메시지를 VTP서버에게 보낸다.

 


<VTP 모드 3가지>

① VTP 서버 모드 : VLAN 생성, 삭제, 이름 변경, VTP 도메인 안에 있는 나머지 스위치들에게 VTP 도메인 이름과 VLAN 구성, Configuration Revision 넘버를 전달해 줄 수 있다. VTP 서버는 VTP 도메인 내의 모든 VLAN에 대한 정보를 NVRAM에 관리하며, 꺼졌다 켜지더라도 VLAN정보를 모두 가지고 있다.

 

② VTP 클라이언트 모드 : VLAN 생성, 삭제, 이름 변경이 불가능. VTP서버가 전달해준 VLAN 정보를 받고, 또 받은 정보를 자기와 연결된 다른쪽 스위치에 전달하는 것만 가능하다. VTP 클라이언트는 전원이 꺼지면 NVRAM에 저장하지 않아, VLAN의 모든 정보를 잃게된다. VTP서버로부터 정보를 얻어와야 함.

 

③ VTP 트랜스페어런트 모드 : 서버로부터 메시지를 받아 자신의 VLAN을 업데이트하거나 자신이 업데이트한 정보를 다른 스위치에게 전달하지 않는다.

직접 VLAN을 만들고 삭제가 가능하며, 자기만 정보를 알면 되기 때문에 이러한 정보를 다른 스위치들에게 알리지 않는다. 대신, 서버로부터 들어온 메시지를 자기를 통해 연결된 다른 스위치쪽으로 전달해 주거나 자기와 연결된 다른 스위치쪽에서 서버쪽으로 가는 VTP메시지를 전달해 주는 역할만 한다. 자신의 VLAN정보를 NVRAM에 저장해놓는다.

※ VTP 모드 설정 하는 명령어

SW1(config)# vtp mode client/transparent/server

 

<실습>

※ GNS3로 실습하였으며 종단장치의 라우터는 PC대용으로 ping을 확인하기 위해 사용하였고, 위의 라우터는 L3스위치라고 생각하면 된다.



각 종단장치에 속하는 라우터들의 구성을 볼 필요가 없다. 왜냐? 단순히 ping을 확인하기 위한 PC대용으로 사용하기 때문에

R1~R4의 구성을 보면서 설명하겠다.

 

R1)
interface FastEthernet1/0
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

interface FastEthernet1/1
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

interface FastEthernet1/2
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

 

interface FastEthernet1/10
 switchport access vlan 11

interface FastEthernet1/11
 switchport access vlan 13

 

R2)

interface FastEthernet1/0
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

interface FastEthernet1/1
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

interface FastEthernet1/2
 switchport trunk native vlan 99
 switchport trunk allowed vlan 1,11,13,1002-1005
 switchport mode trunk

interface FastEthernet1/10
 switchport access vlan 11

interface FastEthernet1/11
 switchport access vlan 13

 

R3 ~ R4의 구성도 이와 같다.

다음은 show vtp status를 했을때 각각의 vtp정보를 보여준다.

 

R1#sh vtp status 
VTP Version                     : 2
Configuration Revision          : 2
Maximum VLANs supported locally : 68
Number of existing VLANs        : 7
VTP Operating Mode              : Server
VTP Domain Name                 : 
VTP Pruning Mode                : Disabled
VTP V2 Mode                     : Disabled
VTP Traps Generation            : Disabled

 

R2#sh vtp status
VTP Version                     : 2
Configuration Revision          : 2
Maximum VLANs supported locally : 68
Number of existing VLANs        : 7
VTP Operating Mode              : Client
VTP Domain Name                 : 
VTP Pruning Mode                : Disabled
VTP V2 Mode                     : Disabled
VTP Traps Generation            : Disabled

 

R3#sh vtp status
VTP Version                     : 2
Configuration Revision          : 2
Maximum VLANs supported locally : 68
Number of existing VLANs        : 7
VTP Operating Mode              : Client
VTP Domain Name                 : 
VTP Pruning Mode                : Disabled
VTP V2 Mode                     : Disabled
VTP Traps Generation            : Disabled

 

R4#sh vtp status
VTP Version                     : 2
Configuration Revision          : 0
Maximum VLANs supported locally : 68
Number of existing VLANs        : 7
VTP Operating Mode              : Transparent
VTP Domain Name                 : 
VTP Pruning Mode                : Disabled
VTP V2 Mode                     : Disabled
VTP Traps Generation            : Disabled

 

transparent모드에서는 Revision넘버가 0인것을 알 수있다.

그렇다면 만약 여기서 R1에서 vlan을 새로 추가한다거나 Revision넘버가 1이 증가하여 3으로되면 주위에있는 R2와 R3은 같이 Revision넘버가 올라가면서 그 정보를 학습하게된다.

posted by 경원구