What is VTP Pruning? How to configure Cisco VTP pruning?

Edgar C Francis
6 min readNov 24, 2023

--

VTP pruning is used to improve the allocation and use of network bandwidth by reducing unnecessary traffic flood for example broadcast, multicast, and flooded unicast. Pruning makes more efficient use of trunk bandwidth.

by default, VTP pruning is disabled, when you enable VTP pruning switch still forwards VLAN unknown unicast and broadcast frames over a trunk port but only forwards if the switch on the receiving end of the trunk has ports in the same VLAN.

when you enable VTP Pruning on the VTP server all the clients in the VTP domain will automatically enable VTP Pruning. once you enable the VTP pruning by default all the VLANs are prune-eligible except VLAN 1 because it is an administrative VLAN and extended range of VLANs. which means VLAN 2 through VLAN 1005 are eligible for pruning.

How does VTP pruning work?

https://www.internetworks.in/2023/09/what-is-vtp-pruning-how-to-configure.html

as you can see in the topology here, we have 5 VTP pruned enable switches. a broadcast traffic is generated on switch 2 port which is in VLAN 10. switch 2 forwards it to the trunk and switch-1 receives the traffic and forwards this traffic to switch-4 because the VLAN 10 is only configured on switch 4 and switch 1. The rest of the switches’ flooded traffic is pruned.

let’s see the configuration: -

Topology: -

  • configure the topology as per the diagram
  • configure IP addresses on PCs
  • configure the 802.1q between switches
  • configure VTP server on a core switch and switch-1 and 2 clients
  • configure version 2, password cisco123 and the password must be hidden
  • configure VLAN 50,60,70,80 on the VTP server and make sure clients synced this information.
  • configure VTP pruning on VTP server
  • remove VLAN 80 from Pruned

configure the 802.1q between switches

CORE_switch_(config)#interface range ethernet 0/0–1
CORE_switch_(config-if-range)#switchport trunk encapsulation dot1
CORE_switch_(config-if-range)#switchport mode trunk
CORE_switch_(config-if-range)#exit

switch1(config-if-range)#interface range ethernet 0/0

switch1(config-if-range)#switchport trunk encapsulation dot1q

switch1(config-if-range)#switchport mode trunk

switch1(config-if-range)#exit

switch2(config)#interface ethernet 0/0

switch2(config-if)#switchport trunk encapsulation dot1q

switch2(config-if)#switchport mode trunk

switch2(config-if)#exit

CORE_switch_#show interfaces trunk

Port Mode Encapsulation Status Native vlan

Et0/0 on 802.1q trunking 1

Et0/1 on 802.1q trunking 1

Port Vlans allowed on trunk

Et0/0 1–4094

Et0/1 1–4094

configure VTP server on a core switch and switch-1 and 2 clients

CORE_switch_(config)#vtp domain internetworks

Changing VTP domain name from NULL to internetworks

*Sep 26 03:11:37.982: %SW_VLAN-6-VTP_DOMAIN_NAME_CHG: VTP domain name changed to internetworks.

CORE_switch_(config)#vtp version 2

CORE_switch_(config)#vtp password cisco123

Setting device VTP password to cisco123

CORE_switch_(config)#vtp mode server

Device mode already VTP Server for VLANS.

CORE_switch_(config)#exit

switch1(config)#vtp domain internetworks

Changing VTP domain name from NULL to internetworks

*Sep 26 03:12:25.415: %SW_VLAN-6-VTP_DOMAIN_NAME_CHG: VTP domain name changed to internetworks.

switch1(config)#vtp version 2

switch1(config)#vtp mode client

Setting device to VTP Client mode for VLANS.

switch1(config)#vtp password cisco123

Setting device VTP password to cisco123

switch1(config)#exit

switch2(config)#vtp domain internetworks

Changing VTP domain name from NULL to internetworks

*Sep 26 03:13:17.946: %SW_VLAN-6-VTP_DOMAIN_NAME_CHG: VTP domain name changed to internetworks.

switch2(config)#vtp mode client

Setting device to VTP Client mode for VLANS.

switch2(config)#vtp version 2

Cannot modify version in VTP client mode unless the system is in VTP version 3

switch2(config)#vtp password cisco123

Setting device VTP password to cisco123

switch2(config)#exit

CORE_switch_#show vtp status

VTP Version capable : 1 to 3

VTP version running : 2

VTP Domain Name : internetworks

VTP Pruning Mode : Disabled

VTP Traps Generation : Disabled

Device ID : aabb.cc00.0100

Configuration last modified by 0.0.0.0 at 9–26–23 03:11:46

Local updater ID is 0.0.0.0 (no valid interface found)

Feature VLAN:

— — — — — — —

VTP Operating Mode : Server

Maximum VLANs supported locally : 1005

Number of existing VLANs : 5

Configuration Revision : 1

MD5 digest : 0xB0 0x7D 0xCC 0xCF 0xDE 0xA2 0xBB 0x5F

0x8E 0x01 0x27 0x33 0xCA 0x24 0x8C 0xF5

configure VLAN 50,60,70,80 on the VTP server and make sure clients synced this information.

CORE_switch_(config)#vlan 50,60,70,80

CORE_switch_(config-vlan)#exit

CORE_switch_#show vlan brief

VLAN Name Status Ports

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — -

1 default active Et0/0, Et0/1, Et0/2, Et0/3

Et1/0, Et1/1, Et1/2, Et1/3

Et2/0, Et2/1, Et2/2, Et2/3

Et3/0, Et3/1, Et3/2, Et3/3

50 VLAN0050 active

60 VLAN0060 active

70 VLAN0070 active

80 VLAN0080 active

1002 fddi-default act/unsup

1003 trcrf-default act/unsup

1004 fddinet-default act/unsup

1005 trbrf-default act/unsup

CORE_switch_#show vtp status

VTP Version capable : 1 to 3

VTP version running : 2

VTP Domain Name : internetworks

VTP Pruning Mode : Disabled

VTP Traps Generation : Disabled

Device ID : aabb.cc00.0100

Configuration last modified by 0.0.0.0 at 9–26–23 03:40:50

Local updater ID is 0.0.0.0 (no valid interface found)

Feature VLAN:

— — — — — — —

VTP Operating Mode : Server

Maximum VLANs supported locally : 1005

Number of existing VLANs : 10

Configuration Revision : 3

MD5 digest : 0x34 0x44 0xB2 0xF5 0x7D 0xC7 0x00 0x22

0x1D 0x91 0x17 0x51 0x19 0x45 0x9E 0x64

configure VTP pruning on VTP server

CORE_switch_(config)#vtp pruning

Pruning switched on

CORE_switch_#show vtp status

VTP Version capable : 1 to 3

VTP version running : 2

VTP Domain Name : internetworks

VTP Pruning Mode : Enabled

VTP Traps Generation : Disabled

Device ID : aabb.cc00.0100

Configuration last modified by 0.0.0.0 at 9–26–23 03:45:47

Local updater ID is 0.0.0.0 (no valid interface found)

Feature VLAN:

— — — — — — —

VTP Operating Mode : Server

Maximum VLANs supported locally : 1005

Number of existing VLANs : 10

Configuration Revision : 4

MD5 digest : 0xCF 0x32 0xAF 0xCF 0xE1 0x2E 0xB5 0x62

0x15 0x6E 0xC6 0xEE 0x9C 0xF7 0x2E 0xB2

CORE_switch_#show interfaces ethernet 0/0 pruning

Port Vlans pruned for lack of request by neighbor

Et0/0 10,50,60,70,80

Port Vlan traffic requested of neighbor

Et0/0 1

switch1#show interfaces ethernet 0/0 pruning

Port Vlans pruned for lack of request by neighbor

Et0/0 10,50,60,70,80

Port Vlan traffic requested of neighbor

Et0/0 1

CORE_switch_#show interfaces ethernet 0/0 pruning

Port Vlans pruned for lack of request by neighbor

Et0/0 10,50,60,70,80

Port Vlan traffic requested of neighbor

Et0/0 1

remove VLAN 80 from Pruned

CORE_switch_(config)#interface ethernet 0/0

CORE_switch_(config-if)#switchport trunk pruning vlan ?

WORD VLAN IDs of the allowed VLANs when this port is in trunking mode

add add VLANs to the current list

except all VLANs except the following

none no VLANs

remove remove VLANs from the current list

CORE_switch_(config-if)#switchport trunk pruning vlan remove 80

CORE_switch_(config-if)#exit

CORE_switch_(config)#exit

CORE_switch_#show interfaces ethernet 0/0 pruning

Port Vlans pruned for lack of request by neighbor

Et0/0 10,50,60,70

Port Vlan traffic requested of neighbor

Et0/0 1,80

--

--

Edgar C Francis

I am a CCIE Technical Instructor/Network consultant. I am having experience ranging from operating and maintaining PCs and peripherals to network control