Catalyst 6500 Series Software Configuration Guide, 8.7
Configuring GVRP

Table Of Contents

Configuring GVRP

Understanding How GVRP Works

Default GVRP Configuration

GVRP Configuration Guidelines

Configuring GVRP on the Switch

Enabling GVRP Globally

Enabling GVRP on Individual 802.1Q Trunk Ports

Enabling GVRP Dynamic VLAN Creation

Configuring GVRP Registration

Configuring GVRP Normal Registration

Configuring GVRP Fixed Registration

Configuring GVRP Forbidden Registration

Configuring GVRP VLAN Declarations from Blocking Ports

Setting the GARP Timers

Displaying GVRP Statistics

Clearing GVRP Statistics

Disabling GVRP on Individual 802.1Q Trunk Ports

Disabling GVRP Globally


Configuring GVRP


This chapter describes how to configure the Generic Attribute Registration Protocol (GARP) VLAN Registration Protocol (GVRP) on the Catalyst 6500 series switches.


Note For complete syntax and usage information for the commands that are used in this chapter, refer to the Catalyst 6500 Series Switch Command Reference publication.


This chapter consists of these sections:

Understanding How GVRP Works

Default GVRP Configuration

GVRP Configuration Guidelines

Configuring GVRP on the Switch


Note GVRP requires supervisor engine software release 5.2 or later releases. With a Supervisor Engine 720, the minimum required software release is 8.3(1). With a Supervisor Engine 32, the minimum required software release is 8.4(1).


Understanding How GVRP Works

GVRP is a GARP application that provides IEEE 802.1Q-compliant VLAN pruning and dynamic VLAN creation on 802.1Q trunk ports.

With GVRP, the switch can exchange the VLAN configuration information with the other GVRP switches, prune the unnecessary broadcast and unknown unicast traffic, and dynamically create and manage the VLANs on the switches that are connected through the 802.1Q trunk ports.


Note GARP and GVRP are industry-standard protocols that are described in IEEE 802.1p.


Default GVRP Configuration

Table 17-1 shows the default GVRP configuration.

Table 17-1 GVRP Default Configuration 

Feature
Default Value

GVRP global enable state

Disabled

GVRP per-trunk enable state

Disabled on all ports

GVRP dynamic creation of VLANs

Disabled

GVRP registration mode

normal, with VLAN 1 set to fixed, for all ports

GVRP applicant state

normal (ports do not declare VLANs when in the STP1 blocking state)

GARP timers

Join time: 200 ms

Leave time: 600 ms

Leaveall time: 10,000 ms

1 STP = Spanning Tree Protocol


GVRP Configuration Guidelines

This section describes the guidelines for configuring GVRP:

You can configure the per-port GVRP state only on the 802.1Q-capable ports.

You must enable GVRP on both ends of an 802.1Q trunk link.

The GVRP registration mode for VLAN 1 is always fixed and is not configurable.

When VTP pruning is enabled, it runs on all the GVRP-disabled 802.1Q trunk ports.

Configuring GVRP on the Switch

These sections describe how to configure GVRP:

Enabling GVRP Globally

Enabling GVRP on Individual 802.1Q Trunk Ports

Enabling GVRP Dynamic VLAN Creation

Configuring GVRP Registration

Configuring GVRP VLAN Declarations from Blocking Ports

Setting the GARP Timers

Displaying GVRP Statistics

Clearing GVRP Statistics

Disabling GVRP on Individual 802.1Q Trunk Ports

Disabling GVRP Globally

Enabling GVRP Globally

You must enable GVRP globally before any GVRP processing occurs on the switch. Enabling GVRP globally enables GVRP to perform the VLAN pruning on the 802.1Q trunk links. The pruning occurs only on the GVRP-enabled trunks. For information on setting the per-trunk port GVRP enable state, see the "Enabling GVRP on Individual 802.1Q Trunk Ports" section.

To enable dynamic VLAN creation, you must explicitly enable dynamic VLAN creation globally on the switch. For information on enabling dynamic VLAN creation, see the "Enabling GVRP Dynamic VLAN Creation" section.

To enable GVRP globally on the switch, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable GVRP on the switch.

set gvrp enable

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to enable GVRP and verify the configuration:

Console> (enable) set gvrp enable
GVRP enabled
Console> (enable) show gvrp configuration
Global GVRP Configuration:
GVRP Feature is currently enabled on the switch.
GVRP dynamic VLAN creation is disabled.
GVRP Timers(milliseconds)
Join = 200
Leave = 600
LeaveAll = 10000

Port based GVRP Configuration:
Port                                                    GVRP Status Registration
------------------------------------------------------- ----------- ------------
2/1-2,3/1-8,7/1-24,8/1-24                               Enabled     Normal

GVRP Participants running on 3/7-8.
Console>

Enabling GVRP on Individual 802.1Q Trunk Ports


Note You can change the per-trunk GVRP configuration regardless of whether GVRP is enabled globally. However, GVRP does not function on any ports until you enable it globally. For information on configuring GVRP globally on the switch, see the "Enabling GVRP Globally" section.


There are two per-port GVRP states:

The static GVRP state that is configured in the command-line interface (CLI) and stored in NVRAM

The actual GVRP state of the ports (active GVRP participants)

You can configure the static GVRP port-state on any of the 802.1Q-capable switch ports, regardless of the global GVRP enable state or whether the port is an 802.1Q trunk. However, in order for the port to become an active GVRP participant, you must enable GVRP globally and the port must be an 802.1Q trunk port, either through CLI configuration or Dynamic Trunking Protocol (DTP) negotiation.

To enable GVRP on the individual 802.1Q-capable ports, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable GVRP on an individual 802.1Q-capable port.

set port gvrp mod/port enable

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to enable GVRP on 802.1Q-capable port 1/1:

Console> (enable) set port gvrp 1/1 enable
GVRP enabled on 1/1.
Console> (enable)

Enabling GVRP Dynamic VLAN Creation

You can enable GVRP dynamic VLAN creation only if these conditions are met:

The switch is in VTP transparent mode

All the trunk ports on the switch are 802.1Q trunks (the trunk connection to an MSFC is exempt from this restriction)

GVRP is enabled on all the trunk ports

If you enable dynamic VLAN creation, these configuration restrictions are imposed:

You cannot change the switch to VTP server or client mode

You cannot disable GVRP on a trunk port running GVRP

If any port on the switch becomes an Inter-Switch Link (ISL) trunk (either by CLI configuration or negotiated using DTP) while dynamic VLAN creation is enabled, dynamic VLAN creation is disabled automatically until the conditions for enabling dynamic VLAN creation are restored.


Note The VLANs can only be created dynamically on 802.1Q trunks in the normal registration mode.



Note Dynamic VLAN creation supports all VLAN types.


To enable GVRP dynamic VLAN creation on the switch, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable dynamic VLAN creation on the switch.

set gvrp dynamic-vlan-creation enable

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to enable dynamic VLAN creation on the switch:

Console> (enable) set gvrp dynamic-vlan-creation enable
Dynamic VLAN creation enabled.
Console> (enable) 

Configuring GVRP Registration

These sections describe how to configure GVRP registration modes on switch ports:

Configuring GVRP Normal Registration

Configuring GVRP Fixed Registration

Configuring GVRP Forbidden Registration

Configuring GVRP Normal Registration

Configuring an 802.1Q trunk port in normal registration mode allows dynamic creation (if dynamic VLAN creation is enabled), registration, and deregistration of the VLANs on the trunk port. Normal mode is the default.

To configure GVRP normal registration on an 802.1Q trunk port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure normal registration on an 802.1Q trunk port.

set gvrp registration normal mod/port

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to configure normal registration on an 802.1Q trunk port:

Console> (enable) set gvrp registration normal 1/1
Registrar Administrative Control set to normal on port 1/1.
Console> (enable)

Configuring GVRP Fixed Registration

Configuring an 802.1Q trunk port in fixed registration mode allows manual creation and registration of VLANs, prevents VLAN deregistration, and registers all the VLANs that are known on other ports on the trunk port.

To configure GVRP fixed registration on an 802.1Q trunk port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure fixed registration on an 802.1Q trunk port.

set gvrp registration fixed mod/port

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to configure fixed registration on an 802.1Q trunk port:

Console> (enable) set gvrp registration fixed 1/1
Registrar Administrative Control set to fixed on port 1/1.
Console> (enable)

Configuring GVRP Forbidden Registration

Configuring an 802.1Q trunk port in forbidden registration mode deregisters all the VLANs (except VLAN 1) and prevents any further VLAN creation or registration on the trunk port.

To configure GVRP forbidden registration on an 802.1Q trunk port, perform this task in privileged mode:

 
Task
Command

Step 1 

Configure forbidden registration on an 802.1Q trunk port.

set gvrp registration forbidden mod/port

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to configure forbidden registration on an 802.1Q trunk port:

Console> (enable) set gvrp registration forbidden 1/1
Registrar Administrative Control set to forbidden on port 1/1.
Console> (enable)

Configuring GVRP VLAN Declarations from Blocking Ports

To prevent the undesirable Spanning Tree Protocol (STP) topology reconfiguration on a port that is connected to a device that does not support Per-VLAN STP+ (PVST+), configure the GVRP active applicant state on the port. The ports in the GVRP active applicant state send GVRP VLAN declarations when they are in the STP blocking state, which prevents the STP bridge protocol data units (BPDUs) from being pruned from the other port.


Note Configuring fixed registration on the other device's port also prevents undesirable STP topology reconfiguration.


To configure an 802.1Q trunk port to send VLAN declarations when it is in the blocking state, perform this task in privileged mode:

Task
Command

Configure an 802.1Q trunk port to send VLAN declarations when it is in the blocking state.

set gvrp applicant state {normal | active} mod/port


This example shows how to configure a group of 802.1Q trunk ports to send VLAN declarations when it is in the blocking state:

Console> (enable) set gvrp applicant state active 4/2-3,4/9-10,4/12-24
Applicant was set to active on port(s) 4/2-3,4/9-10,4/12-24.
Console> (enable)

Use the normal keyword to return to the default state (active mode disabled).

Setting the GARP Timers


Note The set gvrp timer and show gvrp timer commands are aliases for the set garp timer and show garp timer commands. The aliases may be used if desired.



Note Modifying the GARP timer values affects the behavior of all the GARP applications running on the switch, not just GVRP. (For example, GMRP uses the same timers.)


You can modify the default GARP timer values on the switch.

When setting the timer values, the value for leave must be greater than three times the join value
(leave >= join * 3). The value for leaveall must be greater than the value for leave (leaveall > leave).

If you attempt to set a timer value that does not adhere to these rules, an error is returned. For example, if you set the leave timer to 600 ms and you attempt to configure the join timer to 350 ms, an error is returned. Set the leave timer to at least 1050 ms and then set the join timer to 350 ms.


Caution Set the same GARP timer values on all the Layer 2-connected devices. If the GARP timers are set differently on the Layer 2-connected devices, the GARP applications (for example, GMRP and GVRP) do not operate successfully.

To set the GARP timer values, perform this task in privileged mode:

 
Task
Command

Step 1 

Set the GARP timer values.

set garp timer {join | leave | leaveall} timer_value

Step 2 

Verify the configuration.

show garp timer

This example shows how to set the GARP timers and verify the configuration:

Console> (enable) set garp timer leaveall 10000
GMRP/GARP leaveAll timer value is set to 10000 milliseconds.
Console> (enable) set garp timer leave 600
GMRP/GARP leave timer value is set to 600 milliseconds.
Console> (enable) set garp timer join 200
GMRP/GARP join timer value is set to 200 milliseconds.
Console> (enable) show garp timer
Timer     Timer Value (milliseconds)
--------  --------------------------
Join      200 
Leave     600 
LeaveAll  10000 
Console> (enable)

Displaying GVRP Statistics

To display the GVRP statistics on the switch, perform this task:

Task
Command

Display the GVRP statistics.

show gvrp statistics [mod/port]


This example shows how to display the GVRP statistics for port 1/1:

Console> (enable) show gvrp statistics 1/1
Join Empty Received:     0
Join In Received:        0
Empty Received:          0
LeaveIn Received:        0
Leave Empty Received:    0
Leave All Received:      40
Join Empty Transmitted:  156
Join In Transmitted:     0
Empty Transmitted:       0
Leave In Transmitted:    0
Leave Empty Transmitted: 0
Leave All Transmitted:   41
VTP Message Received:    0
Console> (enable)

Clearing GVRP Statistics

To clear all the GVRP statistics on the switch, perform this task in privileged mode:

Task
Command

Clear the GVRP statistics.

clear gvrp statistics {mod/port | all}


This example shows how to clear all the GVRP statistics on the switch:

Console> (enable) clear gvrp statistics all
GVRP Statistics cleared for all ports.
Console> (enable)

Disabling GVRP on Individual 802.1Q Trunk Ports

To disable GVRP on the individual 802.1Q trunk ports, perform this task in privileged mode:

 
Task
Command

Step 1 

Disable GVRP on an individual 802.1Q trunk port.

set port gvrp disable mod/port

Step 2 

Verify the configuration.

show gvrp configuration

This example shows how to disable GVRP on 802.1Q trunk port 1/1:

Console> (enable) set gvrp disable 1/1
GVRP disabled on 1/1.
Console> (enable)

Disabling GVRP Globally

To disable GVRP globally on the switch, perform this task in privileged mode:

Task
Command

Disable GVRP on the switch.

set gvrp disable


This example shows how to disable GVRP globally on the switch:

Console> (enable) set gvrp disable
GVRP disabled
Console> (enable)