Catalyst 2940 Switch Software Configuration Guide: Cisco IOS Release 12.1 (22) EA2 November 2004
Catalyst 2940 Switch Software Configuration Guide: Cisco IOS Release 12.1 (22) EA2 November 2004
Catalyst 2940 Switch Software Configuration Guide: Cisco IOS Release 12.1 (22) EA2 November 2004
Corporate Headquarters
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
http://www.cisco.com
Tel: 408 526-4000
800 553-NETS (6387)
Fax: 408 526-4100
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT
SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE
OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB’s public
domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS” WITH
ALL FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF
DEALING, USAGE, OR TRADE PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING,
WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO
OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
CCSP, the Cisco Square Bridge logo, Cisco Unity, Follow Me Browsing, FormShare, and StackWise are trademarks of Cisco Systems, Inc.; Changing the Way We Work,
Live, Play, and Learn, and iQuick Study are service marks of Cisco Systems, Inc.; and Aironet, ASIST, BPX, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, Cisco,
the Cisco Certified Internetwork Expert logo, Cisco IOS, Cisco Press, Cisco Systems, Cisco Systems Capital, the Cisco Systems logo, Empowering the Internet Generation,
Enterprise/Solver, EtherChannel, EtherFast, EtherSwitch, Fast Step, GigaDrive, GigaStack, HomeLink, Internet Quotient, IOS, IP/TV, iQ Expertise, the iQ logo, iQ Net
Readiness Scorecard, LightStream, Linksys, MeetingPlace, MGX, the Networkers logo, Networking Academy, Network Registrar, Packet, PIX, Post-Routing, Pre-Routing,
ProConnect, RateMUX, Registrar, ScriptShare, SlideCast, SMARTnet, StrataView Plus, SwitchProbe, TeleRouter, The Fastest Way to Increase Your Internet Quotient,
TransPath, and VCO are registered trademarks of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries.
All other trademarks mentioned in this document or Website are the property of their respective owners. The use of the word partner does not imply a partnership relationship
between Cisco and any other company. (0406R)
Preface xix
Audience xix
Purpose xix
Conventions xx
Related Publications xx
Features 1-1
Ease of Use and Ease of Deployment 1-1
Performance 1-2
Manageability 1-3
Redundancy 1-3
VLAN Support 1-4
Security 1-4
Quality of Service and Class of Service 1-5
Monitoring 1-5
Management Options 1-6
Management Options 1-6
Management Interface Options 1-6
Advantages of Using Network Assistant and Clustering Switches 1-7
Limiting Syslog Messages Sent to the History Table and to SNMP 22-10
Configuring UNIX Syslog Servers 22-10
Logging Messages to a UNIX Syslog Daemon 22-11
Configuring the UNIX System Logging Facility 22-11
Displaying the Logging Configuration 22-12
INDEX
Audience
This guide is for the networking professional managing the Catalyst 2940 switch, hereafter referred to
as the switch. Before using this guide, you should have experience working with the Cisco IOS and be
familiar with the concepts and terminology of Ethernet and local area networking.
Purpose
This guide provides the information you need to configure software features on your switch.
Use this guide with other documents for information about these topics:
• Requirements—This guide assumes that you have met the hardware and software requirements and
cluster compatibility requirements described in the release notes.
• Start-up information—This guide assumes that you have assigned switch IP information and
passwords by using the browser setup program described in the switch hardware installation guide.
• Embedded device manager and Network Assistant graphical user interfaces (GUIs)—This guide
does not provide detailed information on the GUIs. However, the concepts in this guide are
applicable to the GUI user. For information about the device manager, see the switch online help.
For information about Network Assistant, see the Getting Started with Cisco Network Assistant,
available on Cisco.com
• Cluster configuration—For information about planning for, creating, and maintaining switch
clusters, see the Getting Started with Cisco Network Assistant, available on Cisco.com. For
information about the clustering-related command-line interface (CLI) commands, see the
command reference for this release.
• CLI command information—This guide provides an overview for using the CLI. For complete
syntax and usage information about the commands that have been specifically created or changed
for the switches, see the command reference for this release.
This guide provides procedures for using the commands that have been created or changed for use with
the switch. It does not provide detailed information about these commands. For detailed information
about these commands, see the command reference for this release.
This guide does not repeat the concepts and CLI procedures provided in the standard Cisco IOS
Release 12.1 documentation. For information about the standard Cisco IOS Release 12.1commands, see
the Cisco IOS documentation set available from the Cisco.com home page at Service and Support >
Technical Documents. On the Cisco Product Documentation home page, select Release 12.1 from the Cisco
IOS Software drop-down list.
This guide does not describe system messages you might encounter or how to install your switch. For
this information, see the system message guide for this release and to the hardware installation guide.
Conventions
This publication uses these conventions to convey instructions and information:
Command descriptions use these conventions:
• Commands and keywords are in boldface text.
• Arguments for which you supply values are in italic.
• Square brackets ([ ]) mean optional elements.
• Braces ({ }) group required choices, and vertical bars ( | ) separate the alternative elements.
• Braces and vertical bars within square brackets ([{ | }]) mean a required choice within an optional
element.
Interactive examples use these conventions:
• Terminal sessions and system displays are in screen font.
• Information you enter is in boldface screen font.
• Nonprinting characters, such as passwords or tabs, are in angle brackets (< >).
Notes, cautions, and timesavers use these conventions and symbols:
Note Means reader take note. Notes contain helpful suggestions or references to materials not contained in
this manual.
Caution Means reader be careful. In this situation, you might do something that could result equipment damage
or loss of data.
Timesaver Means the following will help you solve a problem. The tips information might not be troubleshooting
or even an action, but could be useful information.
Related Publications
These documents provide complete information about the switch and are available from this Cisco.com
site:
http://www.cisco.com/univercd/cc/td/doc/product/lan/cat2940/index.htm
You can order printed copies of documents with a DOC-xxxxxx= number from the Cisco.com sites and
from the telephone numbers listed in the “Obtaining Documentation” section on page xxi.
• Release Notes for the Catalyst 2940 Switch (not orderable but available on Cisco.com)
Note Switch requirements and procedures for initial configurations and software upgrades tend to change and
therefore appear only in the release notes. Before installing, configuring, or upgrading the switch, see
the release notes on Cisco.com for the latest information.
Obtaining Documentation
Cisco documentation and additional literature are available on Cisco.com. Cisco also provides several
ways to obtain technical assistance and other technical resources. These sections explain how to obtain
technical information from Cisco Systems.
Cisco.com
You can access the most current Cisco documentation at this URL:
http://www.cisco.com/univercd/home/home.htm
You can access the Cisco website at this URL:
http://www.cisco.com
You can access international Cisco websites at this URL:
http://www.cisco.com/public/countries_languages.shtml
Ordering Documentation
You can find instructions for ordering documentation at this URL:
http://www.cisco.com/univercd/cc/td/doc/es_inpck/pdi.htm
Documentation Feedback
You can send comments about technical documentation to bug-doc@cisco.com.
You can submit comments by using the response card (if present) behind the front cover of your
document or by writing to the following address:
Cisco Systems
Attn: Customer Document Ordering
170 West Tasman Drive
San Jose, CA 95134-9883
We appreciate your comments.
provides recommended solutions. If your issue is not resolved using the recommended resources, your
service request will be assigned to a Cisco TAC engineer. The TAC Service Request Tool is located at
this URL:
http://www.cisco.com/techsupport/servicerequest
For S1 or S2 service requests or if you do not have Internet access, contact the Cisco TAC by telephone.
(S1 or S2 service requests are those in which your production network is down or severely degraded.)
Cisco TAC engineers are assigned immediately to S1 and S2 service requests to help keep your business
operations running smoothly.
To open a service request by telephone, use one of the following numbers:
Asia-Pacific: +61 2 8446 7411 (Australia: 1 800 805 227)
EMEA: +32 2 704 55 55
USA: 1 800 553 2447
For a complete list of Cisco TAC contacts, go to this URL:
http://www.cisco.com/techsupport/contacts
• Cisco Press publishes a wide range of general networking, training and certification titles. Both new
and experienced users will benefit from these publications. For current Cisco Press titles and other
information, go to Cisco Press at this URL:
http://www.ciscopress.com
• Packet magazine is the Cisco Systems technical user magazine for maximizing Internet and
networking investments. Each quarter, Packet delivers coverage of the latest industry trends,
technology breakthroughs, and Cisco products and solutions, as well as network deployment and
troubleshooting tips, configuration examples, customer case studies, certification and training
information, and links to scores of in-depth online resources. You can access Packet magazine at this
URL:
http://www.cisco.com/packet
• iQ Magazine is the quarterly publication from Cisco Systems designed to help growing companies
learn how they can use technology to increase revenue, streamline their business, and expand
services. The publication identifies the challenges facing these companies and the technologies to
help solve them, using real-world case studies and business strategies to help readers make sound
technology investment decisions. You can access iQ Magazine at this URL:
http://www.cisco.com/go/iqmagazine
• Internet Protocol Journal is a quarterly journal published by Cisco Systems for engineering
professionals involved in designing, developing, and operating public and private internets and
intranets. You can access the Internet Protocol Journal at this URL:
http://www.cisco.com/ipj
• World-class networking training is available from Cisco. You can view current offerings at
this URL:
http://www.cisco.com/en/US/learning/index.html
This chapter provides these topics about the Catalyst 2940 switch software:
• Features, page 1-1
• Management Options, page 1-6
• Network Configuration Examples, page 1-8
• Where to Go Next, page 1-12
Note In this document, IP refers to IP version 4 (IPv4). Layer 3 IP version 6 (IPv6) packets are treated as
non-IP packets.
Features
This section describes the features supported in this release:
– Automated configuration wizards that prompt you to provide only the minimum required
information to configure complex features such as QoS priorities for video traffic, priority
levels for data applications, and security.
– Downloading an image to a switch by using TFTP.
– Applying actions to multiple ports and multiple switches at the same time, such as VLAN and
QoS settings, inventory and statistic reports, link- and switch-level monitoring and
troubleshooting, and multiple switch software upgrades.
– Viewing a topology of interconnected devices to identify existing switch clusters and eligible
switches that can join a cluster and to identify link information between switches.
– Monitoring real-time status of a switch or multiple switches from the LEDs on the front-panel
images. The system, redundant power system (RPS), and port LED colors on the images are
similar to those used on the physical LEDs.
• Switch clustering technology used with Network Assistant for
– Unified configuration, monitoring, authentication, and software upgrade of multiple switches
(see the release notes for a list of eligible cluster members).
– Automatic discovery of candidate switches and creation of clusters of up to 16 switches that can
be managed through a single IP address.
– Extended discovery of cluster candidates that are not directly connected to the command switch.
• Hot Standby Router Protocol (HSRP) for command-switch redundancy. The redundant command
switches used for HSRP must have compatible software releases.
Note For the Network Assistant software and browser requirements, and for more information about
clustering, see the Getting Started with Cisco Network Assistant, available on Cisco.com. For
clustering requirements, including supported Cisco IOS releases, see the release notes for this
release.
Performance
• Autosensing of speed on the 10/100 and 10/100/1000 ports and autonegotiation of duplex mode on
the 10/100 ports for optimizing bandwidth
• Automatic medium-dependent interface crossover (Auto-MDIX) capability on 10/100 and
10/100/1000 Mbps interfaces that enables the interface to automatically detect the required cable
connection type (straight-through or crossover) and configure the connection appropriately
• Fast EtherChannel for enhanced fault tolerance and increased bandwidth between switches, routers,
and servers
• Per-port broadcast storm control for preventing faulty end stations from degrading overall system
performance with broadcast storms
• Port Aggregation Protocol (PAgP) and Link Aggregation Control Protocol (LACP) for automatic
creation of EtherChannel links
• Internet Group Management Protocol (IGMP) snooping for IGMP versions 1, 2, and 3 to limit
flooding of IP multicast traffic
• IGMP report suppression for sending only one IGMP report per multicast router query to the
multicast devices (supported only for IGMPv1 or IGMPv2 queries)
• Multicast VLAN registration (MVR) to continuously send multicast streams in a multicast VLAN
while isolating the streams from subscriber VLANs for bandwidth and security reasons
• IGMP filtering for controlling the set of multicast groups to which hosts on a switch port can belong
• IGMP throttling for configuring the action when the maximum number of entries is in the IGMP
forwarding table
• Dynamic address learning for enhanced security
• Protected port (Private VLAN Edge) option for restricting the forwarding of traffic to designated
ports on the same switch
Manageability
• Address Resolution Protocol (ARP) for identifying a switch through its IP address and its
corresponding MAC address
• Cisco Discovery Protocol (CDP) versions 1 and 2 for network topology discovery and mapping
between the switch and other Cisco devices on the network
• Network Time Protocol (NTP) for providing a consistent timestamp to all switches from an external
source
• Directed unicast requests to a TFTP server for obtaining software upgrades from a TFTP server
• Default configuration storage in flash memory to ensure that the switch can be connected to a
network and can forward traffic with minimal user intervention
• In-band management access through the embedded device manager over a Netscape Navigator or
Internet Explorer session or through the Network Assistant application.
• In-band command-line interface (CLI) management using Telnet connections
• In-band management access through up to 5 simultaneous, encrypted Secure Shell (SSH)
connections for multiple CLI-based sessions over the network (only available in the cryptographic
software image)
• In-band management access through SNMP versions 1, 2c, and 3 get-and-set requests
• Out-of-band management access through the switch console port to a directly-attached terminal or
to a remote terminal through a serial connection and a modem
Note For additional descriptions of the management interfaces, see the “Management Options”
section on page 1-6.
Redundancy
• HSRP for command-switch redundancy
• UniDirectional Link Detection (UDLD) on all Ethernet ports for detecting and disabling
unidirectional links on fiber-optic interfaces caused by incorrect fiber-optic wiring or port faults.
• IEEE 802.1D Spanning Tree Protocol (STP) for redundant backbone connections and loop-free
networks. STP has these features:
– Up to ten spanning-tree instances supported
– Per-VLAN spanning-tree plus (PVST+) for balancing load across LANs
– Rapid PVST+ for balancing load across VLANs
– UplinkFast and BackboneFast for fast convergence after a spanning-tree topology change and
for achieving load balancing between redundant uplinks, including Gigabit uplinks
• IEEE 802.1s Multiple Spanning Tree Protocol (MSTP) for grouping VLANs into a spanning-tree
instance and for providing multiple forwarding paths for data traffic and load balancing and rapid
per-VLAN Spanning-Tree plus (rapid-PVST+) based on the IEEE 802.1w Rapid Spanning Tree
Protocol (RSTP) for rapid convergence of the spanning tree by immediately transitioning root and
designated ports to the forwarding state
• Optional spanning-tree features available in the PVST+, rapid PVST+, and MSTP modes:
– Port Fast for eliminating the forwarding delay by enabling a port to immediately transition from
the blocking state to the forwarding state
– BPDU guard for shutting down Port Fast-enabled ports that receive BPDUs
– BPDU filtering for preventing a Port Fast-enabled port from sending or receiving BPDUs
• Root guard for preventing switches outside the network core from becoming the spanning-tree root
– Loop guard for preventing alternate or root ports from becoming designated ports because of a
failure that leads to a unidirectional link
VLAN Support
• The switch supports ten active port-based VLANs for assigning users to VLANs associated with
appropriate network resources, traffic patterns, and bandwidth
• Support for VLAN IDs in the full 1 to 4094 range allowed by the IEEE 802.1Q standard
• IEEE 802.1Q trunking protocol on all ports for network moves, adds, and changes; management and
control of broadcast and multicast traffic; and network security by establishing VLAN groups for
high-security users and network resources
• VLAN Membership Policy Server (VMPS) for dynamic VLAN membership
• VLAN Trunking Protocol (VTP) for reducing network traffic by restricting flooded traffic to links
destined for stations receiving the traffic.
• Dynamic Trunking Protocol (DTP) for negotiating trunking on a link between two devices and for
negotiating the type of trunking encapsulation (802.1Q) to be used
• Voice VLAN for creating subnets for voice traffic from Cisco IP Phones
• VLAN 1 minimization to reduce the risk of spanning-tree loops or storms by allowing VLAN 1 to
be disabled on any individual VLAN trunk link. With this feature enabled, no user traffic is sent or
received. The switch CPU continues to send and receive control protocol frames
Security
• Bridge protocol data unit (BPDU) guard for shutting down a Port Fast-configured port when an
invalid configuration occurs
• Protected port option for restricting the forwarding of traffic to designated ports on the same switch
• Password-protected access (read-only and read-write access) to management interfaces (device
manager, Network Assistant, and the CLI) for protection against unauthorized configuration
changes
• Port security option for limiting and identifying MAC addresses of the stations allowed to access
the port
• Port security aging to set the aging time for secure addresses on a port
• Multilevel security for a choice of security level, notification, and resulting actions
• RADIUS and TACACS+ support that requires network administrators to login with a user name and
password before they can access a switch
• IEEE 802.1x port-based authentication to prevent unauthorized devices from gaining access to the
network
• 802.1x accounting to track network usage
• 802.1x with guest VLAN to provide limited services to clients that might not be 802.1x-compliant
• 802.1x with dynamic VLAN assignment for restricting 802.1x-authenticated users to a
specified VLAN
• Access control lists (ACLs) for defining security policies on management interfaces, which can be
a management VLAN or any traffic that is going directly to the CPU, such as SNMP, Telnet, or web
traffic.
For instructions about applying ACLs to management interfaces, see the “Configuring IP Services”
section of the Cisco IOS IP and IP Routing Configuration Guide, Cisco IOS Release 12.1 and to the
Cisco IOS IP and IP Routing Command Reference, Cisco IOS Release 12.1.
Monitoring
• Switch LEDs that provide visual port and switch status
• Switched Port Analyzer (SPAN) for traffic monitoring on any port or VLAN
• SPAN support of Intrusion Detection Systems (IDSs) to monitor, repel, and report network security
violations
• MAC address notification for tracking the MAC addresses that the switch has learned or removed
• Syslog facility for logging system messages about authentication or authorization errors, resource
issues, and time-out events
• Layer 2 traceroute to identify the physical path that a packet takes from a source device to a
destination device
Management Options
The switch is designed for plug-and-play operation: you only need to assign basic IP information to the
switch and connect it to the other devices in your network. If you have specific network needs, you can
configure and monitor the switch—on an individual basis or as part of a switch cluster—through its
various management interfaces.
This section discusses these topics:
• Management Interface Options, page 1-6
• Advantages of Using Network Assistant and Clustering Switches, page 1-7
Management Options
The switches are designed for plug-and-play operation: you can install the switch in your network
without any configuration. To manage the switch remotely, you only need to assign basic IP information
to the switch and connect it to the other devices in your network. If you have specific network needs,
you can configure and monitor the switch—on an individual basis or as part of a switch cluster—through
its various management interfaces.
Note For information about assigning an IP address by using the browser-based Express Setup program, see
the getting started guide. For information about assigning an IP address by using the CLI-based setup
program, see the hardware installation guide.
• SNMP—SNMP provides a means to monitor and control the switch and switch cluster members.
You can manage switch configuration settings, performance, and security and collect statistics by
using SNMP management applications such as CiscoWorks2000 LAN Management Suite (LMS)
and HP OpenView.
You can manage the switch from an SNMP-compatible management station that is running
platforms such as HP OpenView or SunNet Manager. The switch supports a comprehensive set of
MIB extensions and four RMON groups.
For more information about using SNMP, see Chapter 23, “Configuring SNMP.”
Note For the Network Assistant software and browser requirements, and for more information about
clustering, see the Getting Started with Cisco Network Assistant, available on Cisco.com. For clustering
requirements, including supported Cisco IOS releases, see the release notes for this release.
Bandwidth alone is not the only consideration when designing your network. As your network traffic
profiles evolve, consider providing network services that can support applications such as voice and data
integration and security.
Table 1-2 describes some network demands and how you can meet them.
Note An external power supply is required for the Cisco Aironet access point.
Cisco 1700
Catalyst 2940
Server
111388
You optimize network performance by placing workstations on the same logical segment (VLAN) as the
servers they access most often. This in turn reduces access point processing and improves performance
and throughput.
Workstations are connected directly to the 10/100 switch ports for their own 10- or 100-Mbps access to
network resources (such as web and mail servers). When a workstation is configured for full-duplex
operation, it receives up to 200 Mbps of dedicated bandwidth from the switch. The Cisco Aironet
Wireless Access Point provides network connectivity for mobile users. Although the wireless access
provides less bandwidth, it allows users to have network connectivity regardless of their location in the
office.
A server is connected to the Gigabit ports on the switch, allowing 1-Gbps throughput to users when
needed. When the switch and server ports are configured for full-duplex operation, the links provide
2 Gbps of bandwidth. For networks that do not require Gigabit performance from a server, connect the
server to a Fast Ethernet or Fast EtherChannel switch port.
Connecting a router to a Fast Ethernet switch port provides multiple, simultaneous access to the Internet
through one line.
Note An external power supply is required for IP phones and the Cisco Aironet access point.
Servers
Cisco 1700 or
Cisco 2600 router
CallManager
Catalyst 6500
Core M
Si 100-Mbps
(200-Mbps full-duplex
Fast EtherChannel)
Si
Catalyst 4500
Wiring Closet
IP IP
Aironet
Single workstations Single workstations AccessPoint Single workstations Cisco IP Phones
The workgroups are created by clustering all the Catalyst switches except the Catalyst 4500 switch.
Using Network Assistant and Cisco switch clustering technology, you can group the switches into
multiple clusters, as shown, or into a single cluster. You can manage a cluster through the IP address of
its active and standby command switches, regardless of the geographic location of the cluster members.
Workgroups that require fiber connectivity can be connected to the network by the Catalyst 2940-8TF-S
with its fixed 100-FX uplink. Multiple 100-FX links can be aggregated to a Catalyst 3550-24FX or
Catalyst 4500. As an alternative, a Catalyst 2940-8TF with a 1000Base-SX SFP can be used to provide
Gigabit connectivity to a Catalyst 3550-12G or Catalyst 4500.
This network uses VLANs to segment the network logically into well-defined broadcast groups and for
security management. You can configure up to four VLANs on the Catalyst 2940 switch. Data and
multimedia traffic are configured on the same VLAN. Voice traffic from the Cisco IP Phones are
configured on separate voice VLAN IDs (VVIDs), or you can combine voice, multimedia, and data on
a single VLAN. For any switch port connected to Cisco IP Phones, 802.1p or 802.1Q QoS gives
forwarding priority to voice traffic over data traffic.
Grouping servers in a centralized location provides benefits such as security and easier maintenance.
The Gigabit connections to a server farm provide the workgroups full access to the network resources
(such as a call-processing server running Cisco CallManager software, a DHCP server, or an IP/TV
multicast server).
Cisco IP Phones are connected—using standard straight-through, twisted-pair cable with
RJ-45 connectors—to the 10/100 inline-power ports on the Catalyst 4500 switches and to the
10/100 ports on the Catalyst 2940 switches. These multiservice switch ports automatically detect any IP
phones that are connected. Cisco CallManager controls call processing, routing, and IP phone features
and configuration. Users with workstations running Cisco SoftPhone software can place, receive, and
control calls from their PCs. Using Cisco IP Phones, Cisco CallManager software, and Cisco SoftPhone
software integrates telephony and IP networks, and the IP network supports both voice and data.
Each 10/100 inline-power port on the Catalyst 4500 switches provides –48 VDC power to the Cisco IP
Phone. The IP phone can receive redundant power when it is also connected to an AC power source.
IP phones not connected to an inline power switch receive power from an AC power source.
Note An external power supply is required for IP phones and the Cisco Aironet access point.
WAN IP telephony
network or
PSTN
Cisco
CallManager
Core Cisco 7200 V
M or 7500 router
Cisco access
gateway
Servers
Catalyst 1 Gbps
6500 (2 Gbps
Catalyst 2950, 2900 XL,
full duplex)
3500 XL, and 3550 Catalyst 3550-PWR
GigaStack cluster GigaStack cluster
Wiring Closet
111390
IP IP
Aironet
Single workstations Single workstations AccessPoint Single workstations Cisco IP Phones
Where to Go Next
Before configuring the switch, review these sections for start-up information:
• Chapter 2, “Using the Command-Line Interface”
• Chapter 3, “Assigning the Switch IP Address and Default Gateway”
This chapter describes the Cisco IOS command-line interface (CLI) that you can use to configure your
Catalyst 2940 switches. It contains these sections:
• Cisco IOS Command Modes, page 2-1
• Getting Help, page 2-3
• Abbreviating Commands, page 2-3
• Using no and default Forms of Commands, page 2-3
• Understanding CLI Messages, page 2-4
• Using Command History, page 2-4
• Using Editing Features, page 2-5
• Searching and Filtering Output of show and more Commands, page 2-8
• Accessing the CLI, page 2-8
Table 2-1 describes the main command modes, how to access each one, the prompt you see in that mode, and
how to exit the mode. The examples in the table use the host name Switch.
Getting Help
You can enter a question mark (?) at the system prompt to display a list of commands available for each
command mode. You can also obtain a list of associated keywords and arguments for any command, as
shown in Table 2-2.
Command Purpose
help Obtain a brief description of the help system in any command mode.
abbreviated-command-entry? Obtain a list of commands that begin with a particular character string.
For example:
Switch# di?
dir disable disconnect
abbreviated-command-entry<Tab> Complete a partial command name.
For example:
Switch# sh conf<tab>
Switch# show configuration
Abbreviating Commands
You have to enter only enough characters for the switch to recognize the command as unique. This
example shows how to enter the show configuration privileged EXEC command:
Switch# show conf
Configuration commands can also have a default form. The default form of a command returns the
command setting to its default. Most commands are disabled by default, so the default form is the same
as the no form. However, some commands are enabled by default and have variables set to certain default
values. In these cases, the default command enables the command and sets variables to their default
values.
Recalling Commands
To recall commands from the history buffer, perform one of the actions listed in Table 2-4:
Action1 Result
Press Ctrl-P or the up arrow key. Recall commands in the history buffer, beginning with the most recent command.
Repeat the key sequence to recall successively older commands.
Press Ctrl-N or the down arrow key. Return to more recent commands in the history buffer after recalling commands
with Ctrl-P or the up arrow key. Repeat the key sequence to recall successively
more recent commands.
show history While in privileged EXEC mode, list the last several commands that you just
entered. The number of commands that appear is determined by the setting of the
terminal history global configuration command and history line configuration
command.
1. The arrow keys function only on ANSI-compatible terminals such as VT100s.
To reconfigure a specific line to have enhanced editing mode, enter this command in line configuration
mode:
Switch(config-line)# editing
To globally disable enhanced editing mode, enter this command in line configuration mode:
Switch(config-line)# no editing
Note The arrow keys function only on ANSI-compatible terminals such as VT100s.
In this example, the access-list global configuration command entry extends beyond one line. When the
cursor first reaches the end of the line, the line is shifted ten spaces to the left and redisplayed. The dollar
sign ($) shows that the line has been scrolled to the left. Each time the cursor reaches the end of the line,
the line is again shifted ten spaces to the left.
Switch(config)# access-list 101 permit tcp 131.108.2.5 255.255.255.0 131.108.1
Switch(config)# $ 101 permit tcp 131.108.2.5 255.255.255.0 131.108.1.20 255.25
Switch(config)# $t tcp 131.108.2.5 255.255.255.0 131.108.1.20 255.255.255.0 eq
Switch(config)# $108.2.5 255.255.255.0 131.108.1.20 255.255.255.0 eq 45
After you complete the entry, press Ctrl-A to check the complete syntax before pressing the Return key
to execute the command. The dollar sign ($) appears at the end of the line to show that the line has been
scrolled to the right:
Switch(config)# access-list 101 permit tcp 131.108.2.5 255.255.255.0 131.108.1$
The software assumes you have a terminal screen that is 80 columns wide. If you have a width other than
that, use the terminal width privileged EXEC command to set the width of your terminal.
Use line wrapping with the command history feature to recall and modify previous complex command
entries. For information about recalling previous command entries, see the “Editing Commands through
Keystrokes” section on page 2-6.
This chapter describes how to create the initial switch configuration (for example, assign the switch IP
address and default gateway information) for the Catalyst 2940 switch by using a variety of automatic
and manual methods.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release and the Cisco IOS IP and IP Routing Command Reference, Release 12.1.
The boot loader also provides trap-door access into the system if the operating system has problems
serious enough that it cannot be used. The trap-door mechanism provides enough access to the system
so that if it is necessary, you can format the flash file system, re-install the operating system software
image by using the XMODEM Protocol, recover from a lost or forgotten password, and finally restart
the operating system. For more information, see the “Recovering from Corrupted Software” section on
page 26-2 and the “Recovering from Lost or Forgotten Passwords” section on page 26-2.
Before you can assign switch information, make sure you have connected a PC or terminal to the console
port, and configured the PC or terminal-emulation software baud rate and character format to match
these of the switch console port:
• Baud rate default is 9600.
• Data bits default is 8.
• Stop bits default is 1.
• Parity settings default is none.
Note If you are using Express Setup, do not connect any devices to the switch before starting Express Setup.
Note If you are using DHCP, do not respond to any of the questions in the setup program until the switch
receives the dynamically assigned IP address and reads the configuration file.
Figure 3-1 shows the sequence of messages that are exchanged between the DHCP client and the DHCP
server.
DHCPDISCOVER (broadcast)
Switch A DHCPOFFER (unicast) DHCP server
DHCPREQUEST (broadcast)
DHCPACK (unicast)
51807
The client, Switch A, broadcasts a DHCPDISCOVER message to locate a DHCP server. The DHCP
server offers configuration parameters (such as an IP address, subnet mask, gateway IP address, DNS IP
address, a lease for the IP address, and so forth) to the client in a DHCPOFFER unicast message.
In a DHCPREQUEST broadcast message, the client returns a formal request for the offered
configuration information to the DHCP server. The formal request is broadcast so that all other DHCP
servers that received the DHCPDISCOVER broadcast message from the client can reclaim the IP
addresses that they offered to the client.
The DHCP server confirms that the IP address has been allocated to the client by returning a DHCPACK
unicast message to the client. With this message, the client and server are bound, and the client uses
configuration information received from the server. The amount of information the switch receives
depends on how you configure the DHCP server. For more information, see the “DHCP Server
Configuration Guidelines” section on page 3-5.
If the configuration parameters sent to the client in the DHCPOFFER unicast message are invalid (a
configuration error exists), the client returns a DHCPDECLINE broadcast message to the DHCP server.
The DHCP server sends the client a DHCPNAK denial broadcast message, which means that the offered
configuration parameters have not been assigned, that an error has occurred during the negotiation of the
parameters, or that the client has been slow in responding to the DHCPOFFER message (the DHCP
server assigned the parameters to another client).
A DHCP client might receive offers from multiple DHCP or BOOTP servers and can accept any of the
offers; however, the client usually accepts the first offer it receives. The offer from the DHCP server is
not a guarantee that the IP address is allocated to the client; however, the server usually reserves the
address until the client has had a chance to formally request the address. If the switch accepts replies
from a BOOTP server and configures itself, the switch broadcasts, instead of unicasts, TFTP requests to
obtain the switch configuration file.
On interface 20.0.0.1
router(config-if)# ip helper-address 10.0.0.1
10.0.0.2
10.0.0.1 20.0.0.1
49068
DHCP server TFTP server DNS server
Note The switch broadcasts TFTP server requests if the TFTP server is not obtained from the DHCP replies,
if all attempts to read the configuration file through unicast transmissions fail, or if the TFTP server
name cannot be resolved to an IP address.
Example Configuration
Figure 3-3 shows a sample network for retrieving IP information by using DHCP-based autoconfiguration.
Cisco router
10.0.0.10
111394
DHCP server DNS server TFTP server
(tftpserver)
Table 3-2 shows the configuration of the reserved leases on the DHCP server.
The TFTP server base directory is set to /tftpserver/work/. This directory contains the network-confg file
used in the two-file read method. This file contains the host name to be assigned to the switch based on
its IP address. The base directory also contains a configuration file for each switch (switcha-confg,
switchb-confg, and so forth) as shown in this display:
prompt> cd /tftpserver/work/
prompt> ls
network-confg
switcha-confg
switchb-confg
switchc-confg
switchd-confg
prompt> cat network-confg
ip host switch1 10.0.0.21
ip host switch2 10.0.0.22
ip host switch3 10.0.0.23
ip host switch4 10.0.0.24
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface vlan vlan-id Enter interface configuration mode, and enter the VLAN to which the IP
information is assigned. The range is 1 to 4094.
Step 3 ip address ip-address subnet-mask Enter the IP address and subnet mask.
Step 4 exit Return to global configuration mode.
Command Purpose
Step 5 ip default-gateway ip-address Enter the IP address of the next-hop router interface that is directly
connected to the switch where a default gateway is being configured. The
default gateway receives IP packets with unresolved destination IP
addresses from the switch.
Once the default gateway is configured, the switch has connectivity to the
remote networks with which a host needs to communicate.
Note When your switch is configured to route with IP, it does not need
to have a default gateway set.
Step 6 end Return to privileged EXEC mode.
Step 7 show interfaces vlan vlan-id Verify the configured IP address.
Step 8 show ip redirects Verify the configured default gateway.
Step 9 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove the switch IP address, use the no ip address interface configuration command. If you are
removing the address through a Telnet session, your connection to the switch will be lost. To remove the
default gateway address, use the no ip default-gateway global configuration command.
For information on setting the switch system name, protecting access to privileged EXEC commands,
and setting time and calendar services, see Chapter 5, “Administering the Switch.”
This chapter provides an overview of the concepts and of the procedures used to create and manage
Catalyst 2940 switch clusters.
You can create and manage switch clusters by using the Network Assistant application, the
command-line interface (CLI), or SNMP. Configuring switch clusters is more easily done from Network
Assistant than through the CLI or SNMP. For complete procedures about using Network Assistant to
configure switch clusters, see Getting Started with Cisco Network Assistant, available on Cisco.com. For
the CLI cluster commands, see the switch command reference. This chapter consists of these sections:
This chapter consists of these sections:
• Understanding Switch Clusters, page 4-1
• Using the CLI to Manage Switch Clusters, page 4-3
• Using SNMP to Manage Switch Clusters, page 4-4
Clustering Overview
A switch cluster is a set of up to 16 connected, cluster-capable Catalyst switches that are managed as a
single entity. The switches in the cluster use the switch clustering technology so that you can configure
and troubleshoot a group of different Catalyst desktop switch platforms through a single IP address.
Using switch clusters simplifies the management of multiple switches, regardless of their physical
location and platform families. Clustering also provides redundancy through standby cluster command
switches.
In a switch cluster, 1 switch must be the cluster command switch and up to 15 other switches can be
cluster member switches. The total number of switches in a cluster cannot exceed 16 switches. The
cluster command switch is the single point of access used to configure, manage, and monitor the cluster
member switches. Cluster members can belong to only one cluster at a time.
For more information about switch clustering, including cluster-planning considerations, see Getting
Started with Cisco Network Assistant, available on Cisco.com. For a list of Catalyst switches eligible for
switch clustering, including which ones can be cluster command switches and which ones can only be
cluster member switches, and the required software versions, see the Release Notes for Cisco Network
Assistant, available on Cisco.com.
Note Standby cluster command switches must be the same type of switches as the cluster command switch.
For example, if the cluster command switch is a Catalyst 2940 switch, the standby cluster command
switches must also be Catalyst 2940 switches.
If you do not know the member-switch number, enter the show cluster members privileged EXEC
command on the command switch. For more information about the rcommand command and all other
cluster commands, see the switch command reference.
The Telnet session accesses the member-switch CLI at the same privilege level as on the command
switch. The CLI commands then operate as usual. For instructions on configuring the switch for a Telnet
session, see the “Disabling Password Recovery” section on page 6-5.
Note Catalyst 1900, 2900 XL (4-MB), and 2820 switches are not supported in Network Assistant. The
switches appear as unknown members in the Network Assistant Front Panel and Topology views.
Command-switch privilege levels map to the Catalyst 1900 and Catalyst 2820 member switches running
standard and Enterprise Edition Software as follows:
• If the command-switch privilege level is 1 to 14, the member switch is accessed at privilege level 1.
• If the command-switch privilege level is 15, the member switch is accessed at privilege level 15.
Note The Catalyst 1900 and Catalyst 2820 CLI is available only on switches running Enterprise Edition
Software.
For more information about the Catalyst 1900 and Catalyst 2820 switches, see the installation and
configuration guides for those switches.
Note When a cluster standby group is configured, the command switch can change without your knowledge.
Use the first read-write and read-only community strings to communicate with the command switch if
there is a cluster standby group configured for the cluster.
If the member switch does not have an IP address, the command switch redirects traps from the member
switch to the management station, as shown in Figure 4-1. If a member switch has its own IP address
and community strings, the member switch can send traps directly to the management station, without
going through the command switch.
If a member switch has its own IP address and community strings, they can be used in addition to the
access provided by the command switch. For more information about SNMP and community strings, see
Chapter 23, “Configuring SNMP.”
33020
This chapter describes how to perform one-time operations to administer your Catalyst 2940 switch.
This chapter consists of these sections:
• Managing the System Time and Date, page 5-1
• Configuring a System Name and Prompt, page 5-15
• Creating a Banner, page 5-18
• Managing the MAC Address Table, page 5-20
• Managing the ARP Table, page 5-26
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Configuration Fundamentals Command Reference for Cisco IOS, Release 12.1.
Switch A
Local
workgroup
servers
Switch E
Workstations
Switch F
101349
Workstations
If the network is isolated from the Internet, Cisco’s implementation of NTP allows a device to act as
though it is synchronized through NTP, when in fact it has determined the time by using other means.
Other devices then synchronize to that device through NTP.
When multiple sources of time are available, NTP is always considered to be more authoritative. NTP
time overrides the time set by any other method.
Several manufacturers include NTP software for their host systems, and a publicly available version for
systems running UNIX and its various derivatives is also available. This software allows host systems to
be time-synchronized as well.
Configuring NTP
The switch does not have a hardware-supported clock, and it cannot function as an NTP master clock to
which peers synchronize themselves when an external NTP source is not available. The switch also has
no hardware support for a calendar. As a result, the ntp update-calendar and the ntp master global
configuration commands are not available.
NTP is enabled on all interfaces by default. All interfaces receive NTP packets.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ntp authenticate Enable the NTP authentication feature, which is disabled by
default.
Command Purpose
Step 3 ntp authentication-key number md5 value Define the authentication keys. By default, none are defined.
• For number, specify a key number. The range is 1 to
4294967295.
• md5 specifies that message authentication support is provided
by using the message digest algorithm 5 (MD5).
• For value, enter an arbitrary string of up to eight characters for
the key.
The switch does not synchronize to a device unless both have one
of these authentication keys, and the key number is specified by the
ntp trusted-key key-number command.
Step 4 ntp trusted-key key-number Specify one or more key numbers (defined in Step 3) that a peer
NTP device must provide in its NTP packets for this switch to
synchronize to it.
By default, no trusted keys are defined.
For key-number, specify the key defined in Step 3.
This command provides protection against accidentally
synchronizing the switch to a device that is not trusted.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable NTP authentication, use the no ntp authenticate global configuration command. To remove
an authentication key, use the no ntp authentication-key number global configuration command. To
disable authentication of the identity of a device, use the no ntp trusted-key key-number global
configuration command.
This example shows how to configure the switch to synchronize only to devices providing authentication
key 42 in the device’s NTP packets:
Switch(config)# ntp authenticate
Switch(config)# ntp authentication-key 42 md5 aNiceKey
Switch(config)# ntp trusted-key 42
Beginning in privileged EXEC mode, follow these steps to form an NTP association with another device:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ntp peer ip-address [version number] Configure the switch system clock to synchronize a peer or to be
[key keyid] [source interface] [prefer] synchronized by a peer (peer association).
or or
ntp server ip-address [version number] Configure the switch system clock to be synchronized by a time server
[key keyid] [source interface] [prefer] (server association).
No peer or server associations are defined by default.
• For ip-address in a peer association, specify either the IP address of
the peer providing, or being provided, the clock synchronization. For
a server association, specify the IP address of the time server
providing the clock synchronization.
• (Optional) For number, specify the NTP version number. The range is
1 to 3. By default, version 3 is selected.
• (Optional) For keyid, enter the authentication key defined with the
ntp authentication-key global configuration command.
• (Optional) For interface, specify the interface from which to pick the
IP source address. By default, the source IP address is taken from the
outgoing interface.
• (Optional) Enter the prefer keyword to make this peer or server the
preferred one that provides synchronization. This keyword reduces
switching back and forth between peers and servers.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
You need to configure only one end of an association; the other device can automatically establish the
association. If you are using the default NTP version (version 3) and NTP synchronization does not
occur, try using NTP version 2. Many NTP servers on the Internet run version 2.
To remove a peer or server association, use the no ntp peer ip-address or the no ntp server ip-address
global configuration command.
This example shows how to configure the switch to synchronize its system clock with the clock of the
peer at IP address 172.16.22.44 using NTP version 2:
Switch(config)# ntp server 172.16.22.44 version 2
The switch can send or receive NTP broadcast packets on an interface-by-interface basis if there is an NTP
broadcast server, such as a router, broadcasting time information on the network. The switch can send NTP
broadcast packets to a peer so that the peer can synchronize to it. The switch can also receive NTP broadcast
packets to synchronize its own clock. This section has procedures for both sending and receiving NTP
broadcast packets.
Beginning in privileged EXEC mode, follow these steps to configure the switch to send NTP broadcast
packets to peers so that they can synchronize their clock to the switch:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to send NTP broadcast packets, and enter
interface configuration mode.
Step 3 ntp broadcast [version number] [key keyid] Enable the interface to send NTP broadcast packets to a peer.
[destination-address] By default, this feature is disabled on all interfaces.
• (Optional) For number, specify the NTP version number. The
range is 1 to 3. If you do not specify a version, version 3 is used.
• (Optional) For keyid, specify the authentication key to use when
sending packets to the peer.
• (Optional) For destination-address, specify the IP address of the
peer that is synchronizing its clock to this switch.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Step 7 Configure the connected peers to receive NTP broadcast packets as
described in the next procedure.
To disable the interface from sending NTP broadcast packets, use the no ntp broadcast interface
configuration command.
This example shows how to configure a port to send NTP version 2 packets:
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# ntp broadcast version 2
Beginning in privileged EXEC mode, follow these steps to configure the switch to receive NTP broadcast
packets from connected peers:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to receive NTP broadcast packets, and enter interface
configuration mode.
Step 3 ntp broadcast client Enable the interface to receive NTP broadcast packets.
By default, no interfaces receive NTP broadcast packets.
Step 4 exit Return to global configuration mode.
Command Purpose
Step 5 ntp broadcastdelay microseconds (Optional) Change the estimated round-trip delay between the switch and
the NTP broadcast server.
The default is 3000 microseconds; the range is 1 to 999999.
Step 6 end Return to privileged EXEC mode.
Step 7 show running-config Verify your entries.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable an interface from receiving NTP broadcast packets, use the no ntp broadcast client interface
configuration command. To change the estimated round-trip delay to the default, use the no ntp
broadcastdelay global configuration command.
This example shows how to configure a port to receive NTP broadcast packets:
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# ntp broadcast client
Beginning in privileged EXEC mode, follow these steps to control access to NTP services by using
access lists:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ntp access-group {query-only | Create an access group, and apply a basic IP access list.
serve-only | serve | peer}
The keywords have these meanings:
access-list-number
• query-only—Allows only NTP control queries.
• serve-only—Allows only time requests.
• serve—Allows time requests and NTP control queries, but does not
allow the switch to synchronize to the remote device.
• peer—Allows time requests and NTP control queries and allows the
switch to synchronize to the remote device.
For access-list-number, enter a standard IP access list number from 1
to 99.
Command Purpose
Step 3 access-list access-list-number permit Create the access list.
source [source-wildcard]
• For access-list-number, enter the number specified in Step 2.
• Enter the permit keyword to permit access if the conditions are
matched.
• For source, enter the IP address of the device that is permitted access
to the switch.
• (Optional) For source-wildcard, enter the wildcard bits to be applied
to the source.
Note When creating an access list, remember that, by default, the end
of the access list contains an implicit deny statement for
everything if it did not find a match before reaching the end.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
The access group keywords are scanned in this order, from least restrictive to most restrictive:
1. peer—Allows time requests and NTP control queries and allows the switch to synchronize itself to
a device whose address passes the access list criteria.
2. serve—Allows time requests and NTP control queries, but does not allow the switch to synchronize
itself to a device whose address passes the access list criteria.
3. serve-only—Allows only time requests from a device whose address passes the access list criteria.
4. query-only—Allows only NTP control queries from a device whose address passes the access list
criteria.
If the source IP address matches the access lists for more than one access type, the first type is granted.
If no access groups are specified, all access types are granted to all devices. If any access groups are
specified, only the specified access types are granted.
To remove access control to the switch NTP services, use the no ntp access-group {query-only |
serve-only | serve | peer} global configuration command.
This example shows how to configure the switch to allow itself to synchronize to a peer from access
list 99. However, the switch restricts access to allow only time requests from access list 42:
Switch# configure terminal
Switch(config)# ntp access-group peer 99
Switch(config)# ntp access-group serve-only 42
Switch(config)# access-list 99 permit 172.20.130.5
Switch(config)# access list 42 permit 172.20.130.6
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and specify the interface to disable.
Step 3 ntp disable Disable NTP packets from being received on the interface.
By default, all interfaces receive NTP packets.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To re-enable receipt of NTP packets on an interface, use the no ntp disable interface configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ntp source type number Specify the interface type and number from which the IP source address
is taken.
By default, the source address is determined by the outgoing interface.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The specified interface is used for the source address for all packets sent to all destinations. If a source address
is to be used for a specific association, use the source keyword in the ntp peer or ntp server global
configuration command as described in the “Configuring NTP Associations” section on page 5-5.
Command Purpose
Step 1 clock set hh:mm:ss day month year Manually set the system clock using one of these formats.
or • For hh:mm:ss, specify the time in hours (24-hour format), minutes,
clock set hh:mm:ss month day year and seconds. The time specified is relative to the configured time
zone.
• For day, specify the day by date in the month.
• For month, specify the month by name.
• For year, specify the year (no abbreviation).
Step 2 show running-config Verify your entries.
Step 3 copy running-config startup-config (Optional) Save your entries in the configuration file.
This example shows how to manually set the system clock to 1:32 p.m. on July 23, 2001:
Switch# clock set 13:32:00 23 July 2001
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 clock timezone zone hours-offset Set the time zone.
[minutes-offset]
The switch keeps internal time in universal time coordinated (UTC), so
this command is used only for display purposes and when the time is
manually set.
• For zone, enter the name of the time zone to be displayed when
standard time is in effect. The default is UTC.
• For hours-offset, enter the hours offset from UTC.
• (Optional) For minutes-offset, enter the minutes offset from UTC.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The minutes-offset variable in the clock timezone global configuration command is available for those
cases where a local time zone is a percentage of an hour different from UTC. For example, the time zone
for some sections of Atlantic Canada (AST) is UTC-3.5, where the 3 means 3 hours and .5 means 50
percent. In this case, the necessary command is clock timezone AST -3 30.
To set the time to UTC, use the no clock timezone global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 clock summer-time zone recurring Configure summer time to start and end on the specified days every year.
[week day month hh:mm week day month Summer time is disabled by default. If you specify clock summer-time
hh:mm [offset]] zone recurring without parameters, the summer time rules default to the
United States rules.
• For zone, specify the name of the time zone (for example, PDT) to be
displayed when summer time is in effect.
• (Optional) For week, specify the week of the month (1 to 5 or last).
• (Optional) For day, specify the day of the week (Sunday, Monday...).
• (Optional) For month, specify the month (January, February...).
• (Optional) For hh:mm, specify the time (24-hour format) in hours and
minutes.
• (Optional) For offset, specify the number of minutes to add during
summer time. The default is 60.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The first part of the clock summer-time global configuration command specifies when summer time
begins, and the second part specifies when it ends. All times are relative to the local time zone. The start
time is relative to standard time. The end time is relative to summer time. If the starting month is after
the ending month, the system assumes that you are in the southern hemisphere.
This example shows how to specify that summer time starts on the first Sunday in April at 02:00 and
ends on the last Sunday in October at 02:00:
Switch(config)# clock summer-time PDT recurring 1 Sunday April 2:00 last Sunday October
2:00
Beginning in privileged EXEC mode, follow these steps if summer time in your area does not follow a
recurring pattern (configure the exact date and time of the next summer time events):
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 clock summer-time zone date [month Configure summer time to start on the first date and end on the second
date year hh:mm month date year hh:mm date.
[offset]]
Summer time is disabled by default.
or
• For zone, specify the name of the time zone (for example, PDT) to be
clock summer-time zone date [date displayed when summer time is in effect.
month year hh:mm date month year • (Optional) For week, specify the week of the month (1 to 5 or last).
hh:mm [offset]]
• (Optional) For day, specify the day of the week (Sunday, Monday...).
• (Optional) For month, specify the month (January, February...).
• (Optional) For hh:mm, specify the time (24-hour format) in hours and
minutes.
• (Optional) For offset, specify the number of minutes to add during
summer time. The default is 60.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The first part of the clock summer-time global configuration command specifies when summer time
begins, and the second part specifies when it ends. All times are relative to the local time zone. The start
time is relative to standard time. The end time is relative to summer time. If the starting month is after
the ending month, the system assumes that you are in the southern hemisphere.
To disable summer time, use the no clock summer-time global configuration command.
This example shows how to set summer time to start on October 12, 2000, at 02:00, and end on April 26,
2001, at 02:00:
Switch(config)# clock summer-time pdt date 12 October 2000 2:00 26 April 2001 2:00
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Configuration Fundamentals Command Reference for Cisco IOS Release 12.1 and the Cisco IOS IP and
IP Routing Command Reference for Cisco IOS Release 12.1.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 hostname name Manually configure a system name.
The default setting is switch.
The name must follow the rules for ARPANET host names. They must start
with a letter, end with a letter or digit, and have as interior characters only
letters, digits, and hyphens. Names can be up to 63 characters.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
When you set the system name, it is also used as the system prompt. You can override the prompt setting
by using the prompt global configuration command.
To return to the default hostname, use the no hostname global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 prompt string Configure the command-line prompt to override the setting from the
hostname command.
The default prompt is either switch or the name defined with the
hostname global configuration command, followed by an angle
bracket (>) for user EXEC mode or a pound sign (#) for privileged EXEC
mode.
The prompt can consist of all printing characters and escape sequences.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default prompt, use the no prompt [string] global configuration command.
Understanding DNS
The DNS protocol controls the Domain Name System (DNS), a distributed database with which you can
map host names to IP addresses. When you configure DNS on your switch, you can substitute the host
name for the IP address with all IP commands, such as ping, telnet, connect, and related Telnet support
operations.
IP defines a hierarchical naming scheme that allows a device to be identified by its location or domain.
Domain names are pieced together with periods (.) as the delimiting characters. For example, Cisco
Systems is a commercial organization that IP identifies by a com domain name, so its domain name is
cisco.com. A specific device in this domain, for example, the File Transfer Protocol (FTP) system is
identified as ftp.cisco.com.
To keep track of domain names, IP has defined the concept of a domain name server, which holds a cache
(or database) of names mapped to IP addresses. To map domain names to IP addresses, you must first
identify the host names, specify the name server that is present on your network, and enable the DNS.
This section contains this configuration information:
• Default DNS Configuration, page 5-17
• Setting Up DNS, page 5-17
• Displaying the DNS Configuration, page 5-18
Setting Up DNS
Beginning in privileged EXEC mode, follow these steps to set up your switch to use the DNS:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip domain-name name Define a default domain name that the software uses to complete unqualified
host names (names without a dotted-decimal domain name).
Do not include the initial period that separates an unqualified name from the
domain name.
At boot time, no domain name is configured; however, if the switch
configuration comes from a BOOTP or DHCP server, then the default domain
name might be set by the BOOTP or DHCP server (if the servers were
configured with this information).
Step 3 ip name-server server-address1 Specify the address of one or more name servers to use for name and address
[server-address2 ... resolution.
server-address6]
You can specify up to six name servers. Separate each server address with a
space. The first server specified is the primary server. The switch sends DNS
queries to the primary server first. If that query fails, the backup servers are
queried.
Step 4 ip domain-lookup (Optional) Enable DNS-based host name-to-address translation on your switch.
This feature is enabled by default.
If your network devices require connectivity with devices in networks for which
you do not control name assignment, you can dynamically assign device names
that uniquely identify your devices by using the global Internet naming scheme
(DNS).
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config (Optional) Save your entries in the configuration file.
startup-config
If you use the switch IP address as its hostname, the IP address is used and no DNS query occurs. If you
configure a hostname that contains no periods (.), a period followed by the default domain name is
appended to the hostname before the DNS query is made to map the name to an IP address. The default
domain name is the value set by the ip domain-name global configuration command. If there is a
period (.) in the hostname, the software looks up the IP address without appending any default domain
name to the hostname.
To remove a domain name, use the no ip domain-name name global configuration command. To remove
a name server address, use the no ip name-server server-address global configuration command. To
disable DNS on the switch, use the no ip domain-lookup global configuration command.
Creating a Banner
You can configure a message-of-the-day (MOTD) and a login banner. The MOTD banner displays on all
connected terminals at login and is useful for sending messages that affect all network users (such as
impending system shutdowns).
The login banner also displays on all connected terminals. It appears after the MOTD banner and before
the login prompts.
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Configuration Fundamentals Command Reference for Cisco IOS, Release 12.1.
Beginning in privileged EXEC mode, follow these steps to configure a MOTD login banner:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 banner motd c message c Specify the message of the day.
For c, enter the delimiting character of your choice, for example, a
pound sign (#), and press the Return key. The delimiting character
signifies the beginning and end of the banner text. Characters after the
ending delimiter are discarded.
For message, enter a banner message up to 255 characters. You cannot
use the delimiting character in the message.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete the MOTD banner, use the no banner motd global configuration command.
This example shows how to configure a MOTD banner for the switch by using the pound sign (#) symbol
as the beginning and ending delimiter:
Switch(config)# banner motd #
This is a secure site. Only authorized users are allowed.
For access, contact technical support.
#
Switch(config)#
This example shows the banner displayed from the previous configuration:
Unix> telnet 172.2.5.4
Trying 172.2.5.4...
Connected to 172.2.5.4.
Escape character is '^]'.
Password:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 banner login c message c Specify the login message.
For c, enter the delimiting character of your choice, for example, a pound
sign (#), and press the Return key. The delimiting character signifies the
beginning and end of the banner text. Characters after the ending delimiter
are discarded.
For message, enter a login message up to 255 characters. You cannot use the
delimiting character in the message.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete the login banner, use the no banner login global configuration command.
This example shows how to configure a login banner for the switch by using the dollar sign ($) symbol
as the beginning and ending delimiter:
Switch(config)# banner login $
Access for authorized users only. Please enter your username and password.
$
Switch(config)#
Note For complete syntax and usage information for the commands used in this section, see the command
reference for this release.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 mac address-table aging-time [0 | Set the length of time that a dynamic entry remains in the MAC
10-1000000] address table after the entry is used or updated.
The range is 10 to 1000000 seconds. The default is 300. You can also
enter 0, which disables aging. Static address entries are never aged
or removed from the table.
Step 3 end Return to privileged EXEC mode.
Step 4 show mac address-table aging-time Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default value, use the no mac address-table aging-time global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server host host-addr {traps | informs} {version {1 Specify the recipient of the trap message.
| 2c | 3}} community-string notification-type • For host-addr, specify the name or address of the
NMS.
• Specify traps (the default) to send SNMP traps
to the host. Specify informs to send SNMP
informs to the host.
• Specify the SNMP version to support. Version 1,
the default, is not available with informs.
• For community-string, specify the string to send
with the notification operation. Though you can
set this string by using the snmp-server host
command, we recommend that you define this
string by using the snmp-server community
command before using the snmp-server host
command.
• For notification-type, use the mac-notification
keyword.
Step 3 snmp-server enable traps mac-notification Enable the switch to send MAC address traps to the
NMS.
Step 4 mac address-table notification Enable the MAC address notification feature.
Command Purpose
Step 5 mac address-table notification [interval value] | Enter the trap interval time and the history table size.
[history-size value]
• (Optional) For interval value, specify the
notification trap interval in seconds between
each set of traps that are generated to the NMS.
The range is 0 to 2147483647 seconds; the
default is 1 second.
• (Optional) For history-size value, specify the
maximum number of entries in the MAC
notification history table. The range is 0 to 500;
the default is 1.
Step 6 interface interface-id Enter interface configuration mode, and specify the
interface on which to enable the SNMP MAC
address notification trap.
Step 7 snmp trap mac-notification {added | removed} Enable the MAC address notification trap.
• Enable the MAC notification trap whenever a
MAC address is added on this interface.
• Enable the MAC notification trap whenever a
MAC address is removed from this interface.
Step 8 end Return to privileged EXEC mode.
Step 9 show mac address-table notification interface Verify your entries.
show running-config
Step 10 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the switch from sending MAC address notification traps, use the no snmp-server enable
traps mac-notification global configuration command. To disable the MAC address notification traps
on a specific interface, use the no snmp trap mac-notification {added | removed} interface
configuration command. To disable the MAC address notification feature, use the no mac address-table
notification global configuration command.
This example shows how to specify 172.20.10.10 as the NMS, enable the switch to send MAC address
notification traps to the NMS, enable the MAC address notification feature, set the interval time to
60 seconds, set the history-size to 100 entries, and enable traps whenever a MAC address is added on the
specified port.
Switch(config)# snmp-server host 172.20.10.10 traps private
Switch(config)# snmp-server enable traps mac-notification
Switch(config)# mac address-table notification
Switch(config)# mac address-table notification interval 60
Switch(config)# mac address-table notification history-size 100
Switch(config)# interface fastethernet0/4
Switch(config-if)# snmp trap mac-notification added
You can verify the previous commands by entering the show mac address-table notification interface
and the show mac address-table notification privileged EXEC commands.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 mac address-table static mac-addr Add a static address to the MAC address table.
vlan vlan-id interface interface-id
• For mac-addr, specify the destination MAC address (unicast or
multicast) to add to the address table. Packets with this destination
address received in the specified VLAN are forwarded to the
specified interface.
• For vlan-id, specify the VLAN for which the packet with the
specified MAC address is received. Valid VLAN IDs are 1 to 4094.
• For interface-id, specify the interface to which the received packet is
forwarded. Valid interfaces include physical ports and port channels.
For interface-id, specify the interface to which the received packet is
forwarded. Valid interfaces include physical ports or port channels.
For static multicast addresses, you can enter multiple interface IDs.
For static unicast addresses, you can enter only one interface at a
time, but you can enter the command multiple times with the same
MAC address and VLAN ID.
Step 3 end Return to privileged EXEC mode.
Step 4 show mac address-table static Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove static entries from the address table, use the no mac address-table static mac-addr vlan
vlan-id [interface interface-id] global configuration command.
This example shows how to add the static address c2f3.220a.12f4 to the MAC address table. When a
packet is received in VLAN 4 with this MAC address as its destination address, the packets is forwarded
to the specified interface:
Switch(config)# mac address-table static c2f3.220a.12f4 vlan 4 interface
gigabitethernet0/1
Command Description
show mac address-table address Displays MAC address table information for the specified MAC address.
show mac address-table aging-time Displays the aging time in all VLANs or the specified VLAN.
show mac address-table count Displays the number of addresses present in all VLANs or the specified VLAN.
show mac address-table dynamic Displays dynamic MAC address table entries only.
show mac address-table interface Displays the MAC address table information for the specified interface.
show mac address-table multicast Displays the Layer 2 multicast entries for all VLANs or the specified VLAN.
show mac address-table static Displays static MAC address table entries only.
show mac address-table vlan Displays the MAC address table information for the specified VLAN.
This chapter describes how to configure switch-based authentication on the Catalyst 2940 switch. This
chapter consists of these sections:
• Preventing Unauthorized Access to Your Switch, page 6-1
• Protecting Access to Privileged EXEC Commands, page 6-2
• Controlling Switch Access with TACACS+, page 6-10
• Controlling Switch Access with RADIUS, page 6-17
• Configuring the Switch for Local Authentication and Authorization, page 6-32
• Configuring the Switch for Secure Shell, page 6-33
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Security Command Reference for Cisco IOS Release 12.1.
This section describes how to control access to the configuration file and privileged EXEC commands.
It contains this configuration information:
• Default Password and Privilege Level Configuration, page 6-2
• Setting or Changing a Static Enable Password, page 6-3
• Protecting Enable and Enable Secret Passwords with Encryption, page 6-4
• Disabling Password Recovery, page 6-5
• Setting a Telnet Password for a Terminal Line, page 6-6
• Configuring Username and Password Pairs, page 6-7
• Configuring Multiple Privilege Levels, page 6-8
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 enable password password Define a new password or change an existing password for access to
privileged EXEC mode.
By default, no password is defined.
For password, specify a string from 1 to 25 alphanumeric characters. The
string cannot start with a number, is case sensitive, and allows spaces but
ignores leading spaces. It can contain the question mark (?) character if
you precede the question mark with the key combination Crtl-v when you
create the password; for example, to create the password abc?123, do this:
Enter abc.
Enter Crtl-v.
Enter ?123.
When the system prompts you to enter the enable password, you need not
precede the question mark with the Ctrl-v; you can simply enter abc?123
at the password prompt.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The enable password is not encrypted and can be read in the switch
configuration file.
To remove the password, use the no enable password global configuration command.
This example shows how to change the enable password to l1u2c3k4y5. The password is not encrypted
and provides access to level 15 (traditional privileged EXEC mode access):
Switch(config)# enable password l1u2c3k4y5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 enable password [level level] {password | Define a new password or change an existing password for
encryption-type encrypted-password} access to privileged EXEC mode.
or or
enable secret [level level] {password | Define a secret password, which is saved using a
encryption-type encrypted-password} nonreversible encryption method.
• (Optional) For level, the range is from 0 to 15. Level 1 is
normal user EXEC mode privileges. The default level is
15 (privileged EXEC mode privileges).
• For password, specify a string from 1 to 25
alphanumeric characters. The string cannot start with a
number, is case sensitive, and allows spaces but ignores
leading spaces. By default, no password is defined.
• (Optional) For encryption-type, only type 5, a Cisco
proprietary encryption algorithm, is available. If you
specify an encryption type, you must provide an
encrypted password—an encrypted password you copy
from another Catalyst2940 switch configuration.
Note If you specify an encryption type and then enter a
clear text password, you can not re-enter privileged
EXEC mode. You cannot recover a lost encrypted
password by any method.
Step 3 service password-encryption (Optional) Encrypt the password when the password is
defined or when the configuration is written.
Encryption prevents the password from being readable in the
configuration file.
Step 4 end Return to privileged EXEC mode.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
If both the enable and enable secret passwords are defined, users must enter the enable secret password.
Use the level keyword to define a password for a specific privilege level. After you specify the level and
set a password, give the password only to users who need to have access at this level. Use the privilege
level global configuration command to specify commands accessible at various levels. For more
information, see the “Configuring Multiple Privilege Levels” section on page 6-8.
If you enable password encryption, it applies to all passwords including username passwords,
authentication key passwords, the privileged command password, and console and virtual terminal line
passwords.
To remove a password and level, use the no enable password [level level] or no enable secret [level
level] global configuration command. To disable password encryption, use the no service
password-encryption global configuration command.
This example shows how to configure the encrypted password $1$FaD0$Xyti5Rkls3LoyxzS8 for
privilege level 2:
Switch(config)# enable secret level 2 5 $1$FaD0$Xyti5Rkls3LoyxzS8
Note If you disable password recovery, we recommend that you keep a backup copy of the configuration file
on a secure server in case the end user interrupts the boot process and sets the system back to default
values. Do not keep a backup copy of the configuration file on the switch. If the switch is operating in
VTP transparent mode, we recommend that you also keep a backup copy of the VLAN database file on
a secure server. When the switch is returned to the default system configuration, you can download the
saved files to the switch by using the Xmodem protocol. For more information, see the “Recovering from
Lost or Forgotten Passwords” section on page 26-2.
Beginning in privileged EXEC mode, follow these steps to disable password recovery:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no service password-recovery Disable password recovery.
This setting is saved in an area of the flash memory that is accessible by
the boot loader and the software image, but it is not part of the file system
and is not accessible by any user.
Step 3 end Return to privileged EXEC mode.
Step 4 show version Verify the configuration by checking the last few lines of the display.
To re-enable password recovery, use the service password-recovery global configuration command.
Note Disabling password recovery will not work if you have set the switch to boot manually by using the boot
manual global configuration command. This command produces the boot loader prompt (switch:) after
the switch is power cycled.
Command Purpose
Step 1 Attach a PC or workstation with emulation software to the switch console
port.
The default data characteristics of the console port are 9600, 8, 1, no
parity. You might need to press the Return key several times to see the
command-line prompt.
Step 2 enable password password Enter privileged EXEC mode.
Step 3 configure terminal Enter global configuration mode.
Step 4 line vty 0 15 Configure the number of Telnet sessions (lines), and enter line
configuration mode.
There are 16 possible sessions on a command-capable switch. The 0
and 15 mean that you are configuring all 16 possible Telnet sessions.
Step 5 password password Enter a Telnet password for the line or lines.
For password, specify a string from 1 to 25 alphanumeric characters. The
string cannot start with a number, is case sensitive, and allows spaces but
ignores leading spaces. By default, no password is defined.
Step 6 end Return to privileged EXEC mode.
Command Purpose
Step 7 show running-config Verify your entries.
The password is listed under the command line vty 0 15.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 username name [privilege level] Enter the username, privilege level, and password for each user.
{password encryption-type password} • For name, specify the user ID as one word. Spaces and quotation
marks are not allowed.
• (Optional) For level, specify the privilege level the user has after
gaining access. The range is 0 to 15. Level 15 gives privileged EXEC
mode access. Level 1 gives user EXEC mode access.
• For encryption-type, enter 0 to specify that an unencrypted password
will follow. Enter 7 to specify that a hidden password will follow.
• For password, specify the password the user must enter to gain access
to the switch. The password must be from 1 to 25 characters, can
contain embedded spaces, and must be the last option specified in the
username command.
Step 3 line console 0 Enter line configuration mode, and configure the console port (line 0) or
the VTY lines (line 0 to 15).
or
line vty 0 15
Step 4 login local Enable local password checking at login time. Authentication is based on
the username specified in Step 2.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable username authentication for a specific user, use the no username name global configuration
command. To disable password checking and allow connections without a password, use the no login
line configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 privilege mode level level command Set the privilege level for a command.
• For mode, enter configure for global configuration mode, exec for
EXEC mode, interface for interface configuration mode, or line for
line configuration mode.
• For level, the range is from 0 to 15. Level 1 is for normal user EXEC
mode privileges. Level 15 is the level of access permitted by the
enable password.
• For command, specify the command to which you want to restrict
access.
Step 3 enable password level level password Specify the enable password for the privilege level.
• For level, the range is from 0 to 15. Level 1 is for normal user EXEC
mode privileges.
• For password, specify a string from 1 to 25 alphanumeric characters.
The string cannot start with a number, is case sensitive, and allows
spaces but ignores leading spaces. By default, no password is
defined.
Step 4 end Return to privileged EXEC mode.
Command Purpose
Step 5 show running-config Verify your entries.
or The first command displays the password and access level configuration.
The second command displays the privilege level configuration.
show privilege
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
When you set a command to a privilege level, all commands whose syntax is a subset of that command
are also set to that level. For example, if you set the show ip traffic command to level 15, the show
commands and show ip commands are automatically set to privilege level 15 unless you set them
individually to different levels.
To return to the default privilege for a given command, use the no privilege mode level level command
global configuration command.
This example shows how to set the configure command to privilege level 14 and define SecretPswd14
as the password users must enter to use level 14 commands:
Switch(config)# privilege exec level 14 configure
Switch(config)# enable password level 14 SecretPswd14
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 line vty line Select the virtual terminal line on which to restrict access.
Step 3 privilege level level Change the default privilege level for the line.
For level, the range is from 0 to 15. Level 1 is for normal user EXEC mode
privileges. Level 15 is the level of access permitted by the enable
password.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
or The first command displays the password and access level configuration.
The second command displays the privilege level configuration.
show privilege
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Users can override the privilege level you set using the privilege level line configuration command by
logging in to the line and enabling a different privilege level. They can lower the privilege level by using
the disable command. If users know the password to a higher privilege level, they can use that password
to enable the higher privilege level. You might specify a high level or privilege level for your console
line to restrict line usage.
To return to the default line privilege level, use the no privilege level line configuration command.
Command Purpose
Step 1 enable level Log in to a specified privilege level.
For level, the range is 0 to 15.
Step 2 disable level Exit to a specified privilege level.
For level, the range is 0 to 15.
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Security Command Reference for Cisco IOS Release 12.1.
Understanding TACACS+
TACACS+ is a security application that provides centralized validation of users attempting to gain access
to your switch. TACACS+ services are maintained in a database on a TACACS+ daemon typically
running on a UNIX or Windows NT workstation. You should have access to and should configure a
TACACS+ server before the configuring TACACS+ features on your switch.
TACACS+ provides for separate and modular authentication, authorization, and accounting facilities.
TACACS+ allows for a single access control server (the TACACS+ daemon) to provide each
service—authentication, authorization, and accounting—independently. Each service can be tied into its
own database to take advantage of other services available on that server or on the network, depending
on the capabilities of the daemon.
The goal of TACACS+ is to provide a method for managing multiple network access points from a single
management service. Your switch can be a network access server along with other Cisco routers and
access servers. A network access server provides connections to a single user, to a network or
subnetwork, and to interconnected networks as shown in Figure 6-1.
UNIX workstation
(TACACS+ Catalyst 6500
server 1) series switch
171.20.10.7
UNIX workstation
(TACACS+
server 2)
171.20.10.8
101230
Create a login authentication method list.
Apply the list to the terminal lines.
Create an authorization and accounting
Workstations method list as required. Workstations
TACACS+, administered through the AAA security services, can provide these services:
• Authentication—Provides complete control of authentication through login and password dialog,
challenge and response, and messaging support.
The authentication facility can conduct a dialog with the user (for example, after a username and
password are provided, to challenge a user with several questions, such as home address, mother’s
maiden name, service type, and social security number). The TACACS+ authentication service can
also send messages to user screens. For example, a message could notify users that their passwords
must be changed because of the company’s password aging policy.
• Authorization—Provides fine-grained control over user capabilities for the duration of the user’s
session, including but not limited to setting autocommands, access control, session duration, or
protocol support. You can also enforce restrictions on what commands a user can execute with the
TACACS+ authorization feature.
• Accounting—Collects and sends information used for billing, auditing, and reporting to the
TACACS+ daemon. Network managers can use the accounting facility to track user activity for a
security audit or to provide information for user billing. Accounting records include user identities,
start and stop times, executed commands (such as PPP), number of packets, and number of bytes.
The TACACS+ protocol provides authentication between the switch and the TACACS+ daemon, and it
ensures confidentiality because all protocol exchanges between the switch and the TACACS+ daemon
are encrypted.
You need a system running the TACACS+ daemon software to use TACACS+ on your switch.
TACACS+ Operation
When a user attempts a simple ASCII login by authenticating to a switch by using TACACS+, this
process occurs:
1. When the connection is established, the switch contacts the TACACS+ daemon to obtain a username
prompt to show to the user. The user enters a username, and the switch then contacts the TACACS+
daemon to obtain a password prompt. The switch displays the password prompt to the user, the user
enters a password, and the password is then sent to the TACACS+ daemon.
TACACS+ allows a dialog between the daemon and the user until the daemon receives enough
information to authenticate the user. The daemon prompts for a username and password
combination, but can include other items, such as the user’s mother’s maiden name.
2. The switch eventually receives one of these responses from the TACACS+ daemon:
– ACCEPT—The user is authenticated and service can begin. If the switch is configured to
require authorization, authorization begins at this time.
– REJECT—The user is not authenticated. The user can be denied access or is prompted to retry
the login sequence, depending on the TACACS+ daemon.
– ERROR—An error occurred at some time during authentication with the daemon or in the
network connection between the daemon and the switch. If an ERROR response is received, the
switch typically tries to use an alternative method for authenticating the user.
– CONTINUE—The user is prompted for additional authentication information.
After authentication, the user undergoes an additional authorization phase if authorization has been
enabled on the switch. Users must first successfully complete TACACS+ authentication before
proceeding to TACACS+ authorization.
3. If TACACS+ authorization is required, the TACACS+ daemon is again contacted, and it returns an
ACCEPT or REJECT authorization response. If an ACCEPT response is returned, the response
contains data in the form of attributes that direct the EXEC or NETWORK session for that user,
determining the services that the user can access:
– Telnet, Secure Shell (SSH), rlogin, or privileged EXEC services
– Connection parameters, including the host or client IP address, access list, and user timeouts
Configuring TACACS+
This section describes how to configure your switch to support TACACS+. At a minimum, you must
identify the host or hosts maintaining the TACACS+ daemon and define the method lists for TACACS+
authentication. You can optionally define method lists for TACACS+ authorization and accounting. A
method list defines the sequence and methods to be used to authenticate, to authorize, or to keep accounts
on a user. You can use method lists to designate one or more security protocols to be used, thus ensuring
a backup system if the initial method fails. The software uses the first method listed to authenticate, to
authorize, or to keep accounts on users; if that method does not respond, the software selects the next
method in the list. This process continues until there is successful communication with a listed method
or the method list is exhausted.
Note Although TACACS+ configuration is performed through the CLI, the TACACS+ server authenticates
HTTP connections that have been configured with a privilege level of 15.
Identifying the TACACS+ Server Host and Setting the Authentication Key
You can configure the switch to use a single server or AAA server groups to group existing server hosts
for authentication. You can group servers to select a subset of the configured server hosts and use them
for a particular service. The server group is used with a global server-host list and contains the list of IP
addresses of the selected server hosts.
Beginning in privileged EXEC mode, follow these steps to identify the IP host or host maintaining
TACACS+ server and optionally set the encryption key:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 tacacs-server host hostname [port Identify the IP host or hosts maintaining a TACACS+ server. Enter this
integer] [timeout integer] [key string] command multiple times to create a list of preferred hosts. The software
searches for hosts in the order in which you specify them.
• For hostname, specify the name or IP address of the host.
• (Optional) For port integer, specify a server port number. The default
is port 49. The range is 1 to 65535.
• (Optional) For timeout integer, specify a time in seconds the switch
waits for a response from the daemon before it times out and declares
an error. The default is 5 seconds. The range is 1 to 1000 seconds.
• (Optional) For key string, specify the encryption key for encrypting
and decrypting all traffic between the switch and the TACACS+
daemon. You must configure the same key on the TACACS+ daemon
for encryption to be successful.
Step 3 aaa new-model Enable AAA.
Command Purpose
Step 4 aaa group server tacacs+ group-name (Optional) Define the AAA server-group with a group name.
This command puts the switch in a server group subconfiguration mode.
Step 5 server ip-address (Optional) Associate a particular TACACS+ server with the defined server
group. Repeat this step for each TACACS+ server in the AAA server
group.
Each server in the group must be previously defined in Step 2.
Step 6 end Return to privileged EXEC mode.
Step 7 show tacacs Verify your entries.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove the specified TACACS+ server name or address, use the no tacacs-server host hostname
global configuration command. To remove a server group from the configuration list, use the no aaa
group server tacacs+ group-name global configuration command. To remove the IP address of a
TACACS+ server, use the no server ip-address server group subconfiguration command.
Beginning in privileged EXEC mode, follow these steps to configure login authentication:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa new-model Enable AAA.
Step 3 aaa authentication login {default | Create a login authentication method list.
list-name} method1 [method2...]
• To create a default list that is used when a named list is not specified
in the login authentication command, use the default keyword
followed by the methods that are to be used in default situations. The
default method list is automatically applied to all interfaces.
• For list-name, specify a character string to name the list you are
creating.
• For method1..., specify the actual method the authentication
algorithm tries. The additional methods of authentication are used
only if the previous method returns an error, not if it fails.
Select one of these methods:
• enable—Use the enable password for authentication. Before you can
use this authentication method, you must define an enable password
by using the enable password global configuration command.
• group tacacs+—Uses TACACS+ authentication. Before you can use
this authentication method, you must configure the TACACS+ server.
For more information, see the “Identifying the TACACS+ Server Host
and Setting the Authentication Key” section on page 6-13.
• line—Use the line password for authentication. Before you can use
this authentication method, you must define a line password. Use the
password password line configuration command.
• local—Use the local username database for authentication. You must
enter username information in the database. Use the username
password global configuration command.
• local-case—Use a case-sensitive local username database for
authentication. You must enter username information in the database
by using the username name password global configuration
command.
• none—Do not use any authentication for login.
Step 4 line [console | tty | vty] line-number Enter line configuration mode, and configure the lines to which you want
[ending-line-number] to apply the authentication list.
Step 5 login authentication {default | Apply the authentication list to a line or set of lines.
list-name} • If you specify default, use the default list created with the aaa
authentication login command.
• For list-name, specify the list created with the aaa authentication
login command.
Step 6 end Return to privileged EXEC mode.
Step 7 show running-config Verify your entries.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable AAA, use the no aaa new-model global configuration command. To disable AAA
authentication, use the no aaa authentication login {default | list-name} method1 [method2...] global
configuration command. To either disable TACACS+ authentication for logins or to return to the default
value, use the no login authentication {default | list-name} line configuration command.
Configuring TACACS+ Authorization for Privileged EXEC Access and Network Services
AAA authorization limits the services available to a user. When AAA authorization is enabled, the
switch uses information retrieved from the user’s profile, which is located either in the local user
database or on the security server, to configure the user’s session. The user is granted access to a
requested service only if the information in the user profile allows it.
You can use the aaa authorization global configuration command with the tacacs+ keyword to set
parameters that restrict a user’s network access to privileged EXEC mode.
The aaa authorization exec tacacs+ local command sets these authorization parameters:
• Use TACACS+ for privileged EXEC access authorization if authentication was performed by using
TACACS+.
• Use the local database if authentication was not performed by using TACACS+.
Note Authorization is bypassed for authenticated users who log in through the CLI even if authorization has
been configured.
Beginning in privileged EXEC mode, follow these steps to specify TACACS+ authorization for
privileged EXEC access and network services:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa authorization network tacacs+ Configure the switch for user TACACS+ authorization for all
network-related service requests.
Step 3 aaa authorization exec tacacs+ Configure the switch for user TACACS+ authorization to determine if the
user has privileged EXEC access.
The exec keyword might return user profile information (such as
autocommand information).
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable authorization, use the no aaa authorization {network | exec} method1 global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa accounting network start-stop Enable TACACS+ accounting for all network-related service requests.
tacacs+
Step 3 aaa accounting exec start-stop tacacs+ Enable TACACS+ accounting to send a start-record accounting notice at
the beginning of a privileged EXEC process and a stop-record at the end.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable accounting, use the no aaa accounting {network | exec} {start-stop} method1... global
configuration command.
Note For complete syntax and usage information for the commands used in this section, see the Cisco IOS
Security Command Reference for Cisco IOS Release 12.1.
Understanding RADIUS
RADIUS is a distributed client/server system that secures networks against unauthorized access.
RADIUS clients run on supported Cisco routers and switches. Clients send authentication requests to a
central RADIUS server, which contains all user authentication and network service access information.
The RADIUS host is normally a multiuser system running RADIUS server software from Cisco (Cisco
Secure Access Control Server version 3.0), Livingston, Merit, Microsoft, or another software provider.
For more information, see the RADIUS server documentation.
Use RADIUS in these network environments that require access security:
• Networks with multiple-vendor access servers, each supporting RADIUS. For example, access
servers from several vendors use a single RADIUS server-based security database. In an IP-based
network with multiple vendors’ access servers, dial-in users are authenticated through a RADIUS
server that has been customized to work with the Kerberos security system.
• Turnkey network security environments in which applications support the RADIUS protocol, such
as in an access environment that uses a smart card access control system. In one case, RADIUS has
been used with Enigma’s security cards to validates users and to grant access to network resources.
• Networks already using RADIUS. You can add a Cisco switch containing a RADIUS client to the
network. This might be the first step when you make a transition to a TACACS+ server. See
Figure 6-2 on page 6-19.
• Network in which the user must only access a single service. Using RADIUS, you can control user
access to a single host, to a single utility such as Telnet, or to the network through a protocol such
as IEEE 802.1X. For more information about this protocol, see Chapter 7, “Configuring 802.1x
Port-Based Authentication.”
• Networks that require resource accounting. You can use RADIUS accounting independently of
RADIUS authentication or authorization. The RADIUS accounting functions allow data to be sent
at the start and end of services, showing the amount of resources (such as time, packets, bytes, and
so forth) used during the session. An Internet service provider might use a freeware-based version
of RADIUS access control and accounting software to meet special security and billing needs.
RADIUS is not suitable in these network security situations:
• Multiprotocol access environments. RADIUS does not support AppleTalk Remote Access (ARA),
NetBIOS Frame Control Protocol (NBFCP), NetWare Asynchronous Services Interface (NASI), or
X.25 PAD connections.
• Switch-to-switch or router-to-router situations. RADIUS does not provide two-way authentication.
RADIUS can be used to authenticate from one device to a non-Cisco device if the non-Cisco device
requires authentication.
• Networks using a variety of services. RADIUS generally binds a user to one service model.
R1 RADIUS
server
R2 RADIUS
server
T1 TACACS+
server
Remote T2 TACACS+
PC server
86891
Workstation
RADIUS Operation
When a user attempts to log in and authenticate to a switch that is access controlled by a RADIUS server,
these events occur:
1. The user is prompted to enter a username and password.
2. The username and encrypted password are sent over the network to the RADIUS server.
3. The user receives one of these responses from the RADIUS server:
a. ACCEPT—The user is authenticated.
b. REJECT—The user is either not authenticated and is prompted to re-enter the username and
password, or access is denied.
c. CHALLENGE—A challenge requires additional data from the user.
d. CHALLENGE PASSWORD—A response requests the user to select a new password.
The ACCEPT or REJECT response is bundled with additional data that is used for privileged EXEC or
network authorization. Users must first successfully complete RADIUS authentication before
proceeding to RADIUS authorization, if it is enabled. The additional data included with the ACCEPT or
REJECT packets includes these items:
• Telnet, SSH, rlogin, or privileged EXEC services
• Connection parameters, including the host or client IP address, access list, and user timeouts
Configuring RADIUS
This section describes how to configure your switch to support RADIUS. At a minimum, you must
identify the host or hosts that run the RADIUS server software and define the method lists for RADIUS
authentication. You can optionally define method lists for RADIUS authorization and accounting.
A method list defines the sequence and methods to be used to authenticate, to authorize, or to keep
accounts on a user. You can use method lists to designate one or more security protocols to be used (such
as TACACS+ or local username lookup), thus ensuring a backup system if the initial method fails. The
software uses the first method listed to authenticate, to authorize, or to keep accounts on users; if that
method does not respond, the software selects the next method in the list. This process continues until
there is successful communication with a listed method or the method list is exhausted.
You should have access to and should configure a RADIUS server before configuring RADIUS features
on your switch.
This section contains this configuration information:
• Default RADIUS Configuration, page 6-20
• Identifying the RADIUS Server Host, page 6-20 (required)
• Configuring RADIUS Login Authentication, page 6-23 (required)
• Defining AAA Server Groups, page 6-25 (optional)
• Configuring RADIUS Authorization for User Privileged Access and Network Services, page 6-27
(optional)
• Starting RADIUS Accounting, page 6-28 (optional)
• Configuring Settings for All RADIUS Servers, page 6-29 (optional)
• Configuring the Switch to Use Vendor-Specific RADIUS Attributes, page 6-29 (optional)
• Configuring the Switch for Vendor-Proprietary RADIUS Server Communication, page 6-30
(optional)
You identify RADIUS security servers by their host name or IP address, host name and specific UDP
port numbers, or their IP address and specific UDP port numbers. The combination of the IP address and
the UDP port number creates a unique identifier, allowing different ports to be individually defined as
RADIUS hosts providing a specific AAA service. This unique identifier enables RADIUS requests to be
sent to multiple UDP ports on a server at the same IP address.
If two different host entries on the same RADIUS server are configured for the same service—for
example, accounting—the second host entry configured acts as a fail-over backup to the first one. Using
this example, if the first host entry fails to provide accounting services, the switch tries the second host
entry configured on the same device for accounting services. (The RADIUS host entries are tried in the
order that they are configured.)
A RADIUS server and the switch use a shared secret text string to encrypt passwords and exchange
responses. To configure RADIUS to use the AAA security commands, you must specify the host running
the RADIUS server daemon and a secret text (key) string that it shares with the switch.
The timeout, retransmission, and encryption key values can be configured globally for all RADIUS
servers, on a per-server basis, or in some combination of global and per-server settings. To apply these
settings globally to all RADIUS servers communicating with the switch, use the three unique global
configuration commands: radius-server timeout, radius-server retransmit, and radius-server key. To
apply these values on a specific RADIUS server, use the radius-server host global configuration
command.
Note If you configure both global and per-server functions (timeout, retransmission, and key commands) on
the switch, the per-server timer, retransmission, and key value commands override global timer,
retransmission, and key value commands. For information on configuring these settings on all RADIUS
servers, see the “Configuring Settings for All RADIUS Servers” section on page 6-29.
You can configure the switch to use AAA server groups to group existing server hosts for authentication.
For more information, see the “Defining AAA Server Groups” section on page 6-25.
Beginning in privileged EXEC mode, follow these steps to configure per-server RADIUS server
communication. This procedure is required.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server host {hostname | Specify the IP address or host name of the remote RADIUS server host.
ip-address} [auth-port port-number]
• (Optional) For auth-port port-number, specify the UDP destination
[acct-port port-number] [timeout
port for authentication requests.
seconds] [retransmit retries] [key
string] • (Optional) For acct-port port-number, specify the UDP destination
port for accounting requests.
• (Optional) For timeout seconds, specify the time interval that the
switch waits for the RADIUS server to reply before resending. The
range is 1 to 1000. This setting overrides the radius-server timeout
global configuration command setting. If no timeout is set with the
radius-server host command, the setting of the radius-server
timeout command is used.
• (Optional) For retransmit retries, specify the number of times a
RADIUS request is resent to a server if that server is not responding
or responding slowly. The range is 1 to 1000. If no retransmit value is
set with the radius-server host command, the setting of the
radius-server retransmit global configuration command is used.
• (Optional) For key string, specify the authentication and encryption
key used between the switch and the RADIUS daemon running on the
RADIUS server.
Note The key is a text string that must match the encryption key used
on the RADIUS server. Always configure the key as the last item
in the radius-server host command. Leading spaces are ignored,
but spaces within and at the end of the key are used. If you use
spaces in your key, do not enclose the key in quotation marks
unless the quotation marks are part of the key.
To configure the switch to recognize more than one host entry associated
with a single IP address, enter this command as many times as necessary,
making sure that each UDP port number is different. The switch software
searches for hosts in the order in which you specify them. Set the timeout,
retransmit, and encryption key values to use with the specific RADIUS
host.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove the specified RADIUS server, use the no radius-server host hostname | ip-address global
configuration command.
This example shows how to configure one RADIUS server to be used for authentication and another to
be used for accounting:
Switch(config)# radius-server host 172.29.36.49 auth-port 1612 key rad1
Switch(config)# radius-server host 172.20.36.50 acct-port 1618 key rad2
This example shows how to configure host1 as the RADIUS server and to use the default ports for both
authentication and accounting:
Switch(config)# radius-server host host1
Note You also need to configure some settings on the RADIUS server. These settings include the IP address
of the switch and the key string to be shared by both the server and the switch. For more information,
see the RADIUS server documentation.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa new-model Enable AAA.
Command Purpose
Step 3 aaa authentication login {default | Create a login authentication method list.
list-name} method1 [method2...]
• To create a default list that is used when a named list is not specified
in the login authentication command, use the default keyword
followed by the methods that are to be used in default situations. The
default method list is automatically applied to all interfaces.
• For list-name, specify a character string to name the list you are
creating.
• For method1..., specify the actual method the authentication
algorithm tries. The additional methods of authentication are used
only if the previous method returns an error, not if it fails.
Select one of these methods:
– enable—Use the enable password for authentication. Before you
can use this authentication method, you must define an enable
password by using the enable password global configuration
command.
– group radius—Use RADIUS authentication. Before you can use
this authentication method, you must configure the RADIUS
server. For more information, see the “Identifying the RADIUS
Server Host” section on page 6-20.
– line—Use the line password for authentication. Before you can
use this authentication method, you must define a line password.
Use the password password line configuration command.
– local—Use the local username database for authentication. You
must enter username information in the database. Use the
username name password global configuration command.
– local-case—Use a case-sensitive local username database for
authentication. You must enter username information in the
database by using the username password global configuration
command.
– none—Do not use any authentication for login.
Step 4 line [console | tty | vty] line-number Enter line configuration mode, and configure the lines to which you want
[ending-line-number] to apply the authentication list.
Step 5 login authentication {default | Apply the authentication list to a line or set of lines.
list-name}
• If you specify default, use the default list created with the aaa
authentication login command.
• For list-name, specify the list created with the aaa authentication
login command.
Step 6 end Return to privileged EXEC mode.
Step 7 show running-config Verify your entries.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable AAA, use the no aaa new-model global configuration command. To disable AAA
authentication, use the no aaa authentication login {default | list-name} method1 [method2...] global
configuration command. To either disable RADIUS authentication for logins or to return to the default
value, use the no login authentication {default | list-name} line configuration command.
Beginning in privileged EXEC mode, follow these steps to define the AAA server group and associate a
particular RADIUS server with it:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server host {hostname | Specify the IP address or host name of the remote RADIUS server host.
ip-address} [auth-port port-number]
• (Optional) For auth-port port-number, specify the UDP destination
[acct-port port-number] [timeout
port for authentication requests.
seconds] [retransmit retries] [key
string] • (Optional) For acct-port port-number, specify the UDP destination
port for accounting requests.
• (Optional) For timeout seconds, specify the time interval that the
switch waits for the RADIUS server to reply before resending. The
range is 1 to 1000. This setting overrides the radius-server timeout
global configuration command setting. If no timeout is set with the
radius-server host command, the setting of the radius-server
timeout command is used.
• (Optional) For retransmit retries, specify the number of times a
RADIUS request is resent to a server if that server is not responding
or responding slowly. The range is 1 to 1000. If no retransmit value is
set with the radius-server host command, the setting of the
radius-server retransmit global configuration command is used.
• (Optional) For key string, specify the authentication and encryption
key used between the switch and the RADIUS daemon running on the
RADIUS server.
Note The key is a text string that must match the encryption key used
on the RADIUS server. Always configure the key as the last item
in the radius-server host command. Leading spaces are ignored,
but spaces within and at the end of the key are used. If you use
spaces in your key, do not enclose the key in quotation marks
unless the quotation marks are part of the key.
To configure the switch to recognize more than one host entry associated
with a single IP address, enter this command as many times as necessary,
making sure that each UDP port number is different. The switch software
searches for hosts in the order in which you specify them. Set the timeout,
retransmit, and encryption key values to use with the specific RADIUS
host.
Step 3 aaa new-model Enable AAA.
Step 4 aaa group server radius group-name Define the AAA server-group with a group name.
This command puts the switch in a server group configuration mode.
Step 5 server ip-address Associate a particular RADIUS server with the defined server group.
Repeat this step for each RADIUS server in the AAA server group.
Each server in the group must be previously defined in Step 2.
Step 6 end Return to privileged EXEC mode.
Step 7 show running-config Verify your entries.
Command Purpose
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
Step 9 Enable RADIUS login authentication. See the “Configuring RADIUS
Login Authentication” section on page 6-23.
To remove the specified RADIUS server, use the no radius-server host hostname | ip-address global
configuration command. To remove a server group from the configuration list, use the no aaa group
server radius group-name global configuration command. To remove the IP address of a RADIUS
server, use the no server ip-address server group configuration command.
In this example, the switch is configured to recognize two different RADIUS group servers (group1 and
group2). Group1 has two different host entries on the same RADIUS server configured for the same
services. The second host entry acts as a fail-over backup to the first entry.
Switch(config)# radius-server host 172.20.0.1 auth-port 1000 acct-port 1001
Switch(config)# radius-server host 172.10.0.1 auth-port 1645 acct-port 1646
Switch(config)# aaa new-model
Switch(config)# aaa group server radius group1
Switch(config-sg-radius)# server 172.20.0.1 auth-port 1000 acct-port 1001
Switch(config-sg-radius)# exit
Switch(config)# aaa group server radius group2
Switch(config-sg-radius)# server 172.20.0.1 auth-port 2000 acct-port 2001
Switch(config-sg-radius)# exit
Configuring RADIUS Authorization for User Privileged Access and Network Services
AAA authorization limits the services available to a user. When AAA authorization is enabled, the
switch uses information retrieved from the user’s profile, which is in the local user database or on the
security server, to configure the user’s session. The user is granted access to a requested service only if
the information in the user profile allows it.
You can use the aaa authorization global configuration command with the radius keyword to set
parameters that restrict a user’s network access to privileged EXEC mode.
The aaa authorization exec radius local command sets these authorization parameters:
• Use RADIUS for privileged EXEC access authorization if authentication was performed by using
RADIUS.
• Use the local database if authentication was not performed by using RADIUS.
Note Authorization is bypassed for authenticated users who log in through the CLI even if authorization has
been configured.
Beginning in privileged EXEC mode, follow these steps to specify RADIUS authorization for privileged
EXEC access and network services:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa authorization network radius Configure the switch for user RADIUS authorization for all
network-related service requests.
Step 3 aaa authorization exec radius Configure the switch for user RADIUS authorization to determine if the
user has privileged EXEC access.
The exec keyword might return user profile information (such as
autocommand information).
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable authorization, use the no aaa authorization {network | exec} method1 global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa accounting network start-stop Enable RADIUS accounting for all network-related service requests.
radius
Step 3 aaa accounting exec start-stop radius Enable RADIUS accounting to send a start-record accounting notice at
the beginning of a privileged EXEC process and a stop-record at the end.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable accounting, use the no aaa accounting {network | exec} {start-stop} method1... global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server key string Specify the shared secret text string used between the switch and all
RADIUS servers.
Note The key is a text string that must match the encryption key used on
the RADIUS server. Leading spaces are ignored, but spaces within
and at the end of the key are used. If you use spaces in your key, do
not enclose the key in quotation marks unless the quotation marks
are part of the key.
Step 3 radius-server retransmit retries Specify the number of times the switch sends each RADIUS request to the
server before giving up. The default is 3; the range 1 to 1000.
Step 4 radius-server timeout seconds Specify the number of seconds a switch waits for a reply to a RADIUS
request before resending the request. The default is 5 seconds; the range is
1 to 1000.
Step 5 radius-server deadtime minutes Specify the number of minutes a RADIUS server, which is not responding
to authentication requests, to be skipped, thus avoiding the wait for the
request to timeout before trying the next configured server. The default is
0; the range is 1 to 1440 minutes.
Step 6 end Return to privileged EXEC mode.
Step 7 show running-config Verify your settings.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default setting for the retransmit, timeout, and deadtime, use the no forms of these
commands.
Protocol is a value of the Cisco protocol attribute for a particular type of authorization. Attribute and
value are an appropriate attribute-value (AV) pair defined in the Cisco TACACS+ specification, and sep
is = for mandatory attributes and is * for optional attributes. The full set of features available for
TACACS+ authorization can then be used for RADIUS.
For example, this AV pair activates Cisco’s multiple named ip address pools feature during IP
authorization (during PPP’s IPCP address assignment):
cisco-avpair= ”ip:addr-pool=first“
This example shows how to provide a user logging in from a switch with immediate access to privileged
EXEC commands:
cisco-avpair= ”shell:priv-lvl=15“
This example shows how to specify an authorized VLAN in the RADIUS server database:
cisco-avpair= ”tunnel-type(#64)=VLAN(13)”
cisco-avpair= ”tunnel-medium-type(#65)=802 media(6)”
cisco-avpair= ”tunnel-private-group-ID(#81)=vlanid”
Other vendors have their own unique vendor-IDs, options, and associated VSAs. For more information
about vendor-IDs and VSAs, see RFC 2138, “Remote Authentication Dial-In User Service (RADIUS).”
Beginning in privileged EXEC mode, follow these steps to configure the switch to recognize and use
VSAs:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server vsa send [accounting | Enable the switch to recognize and use VSAs as defined by RADIUS IETF
authentication] attribute 26.
• (Optional) Use the accounting keyword to limit the set of recognized
vendor-specific attributes to only accounting attributes.
• (Optional) Use the authentication keyword to limit the set of
recognized vendor-specific attributes to only authentication attributes.
If you enter this command without keywords, both accounting and
authentication vendor-specific attributes are used.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your settings.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
For a complete list of RADIUS attributes or more information about vendor-specific attribute 26, see the
“RADIUS Attributes” appendix in the Cisco IOS Security Configuration Guide for Cisco IOS Release
12.1.
Beginning in privileged EXEC mode, follow these steps to specify a vendor-proprietary RADIUS server
host and a shared secret text string:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server host {hostname | ip-address} non-standard Specify the IP address or host name of the remote
RADIUS server host and identify that it is using a
vendor-proprietary implementation of RADIUS.
Step 3 radius-server key string Specify the shared secret text string used between the
switch and the vendor-proprietary RADIUS server.
The switch and the RADIUS server use this text
string to encrypt passwords and exchange responses.
Note The key is a text string that must match the
encryption key used on the RADIUS server.
Leading spaces are ignored, but spaces within
and at the end of the key are used. If you use
spaces in your key, do not enclose the key in
quotation marks unless the quotation marks
are part of the key.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your settings.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete the vendor-proprietary RADIUS host, use the no radius-server host {hostname | ip-address}
non-standard global configuration command. To disable the key, use the no radius-server key global
configuration command.
This example shows how to specify a vendor-proprietary RADIUS host and to use a secret key of rad124
between the switch and the server:
Switch(config)# radius-server host 172.20.30.15 nonstandard
Switch(config)# radius-server key rad124
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa new-model Enable AAA.
Step 3 aaa authentication login default local Set the login authentication to use the local username database. The
default keyword applies the local user database authentication to all
interfaces.
Step 4 aaa authorization exec local Configure user AAA authorization to determine if the user is allowed to
run an EXEC shell by checking the local database.
Step 5 aaa authorization network local Configure user AAA authorization for all network-related service
requests.
Step 6 username name [privilege level] Enter the local database, and establish a username-based authentication
{password encryption-type password} system.
Repeat this command for each user.
• For name, specify the user ID as one word. Spaces and quotation
marks are not allowed.
• (Optional) For level, specify the privilege level the user has after
gaining access. The range is 0 to 15. Level 15 gives privileged EXEC
mode access. Level 0 gives user EXEC mode access.
• For encryption-type, enter 0 to specify that an unencrypted password
follows. Enter 7 to specify that a hidden password follows.
• For password, specify the password the user must enter to gain access
to the switch. The password must be from 1 to 25 characters, can
contain embedded spaces, and must be the last option specified in the
username command.
Step 7 end Return to privileged EXEC mode.
Step 8 show running-config Verify your entries.
Step 9 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable AAA, use the no aaa new-model global configuration command. To disable authorization,
use the no aaa authorization {network | exec} method1 global configuration command.
Note For complete syntax and usage information for the commands used in this section, see the command
reference for this release and the command reference for Cisco IOS Release 12.2 at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/index.htm.
Understanding SSH
SSH is a protocol that provides a secure, remote connection to a device. SSH provides more security for
remote connections than Telnet does by providing strong encryption when a device is authenticated. This
software release supports SSH version 1 (SSHv1) and SSH version 2 (SSHv2).
This section consists of these topics:
• SSH Servers, Integrated Clients, and Supported Versions, page 6-33
• Limitations, page 6-34
Limitations
These limitations apply to SSH:
• The switch supports Rivest, Shamir, and Adelman (RSA) authentication.
• SSH supports only the execution-shell application.
• The SSH server and the SSH client are supported only on DES (56-bit) and 3DES (168-bit) data
encryption software.
• The switch does not support the Advanced Encryption Standard (AES) symmetric encryption
algorithm.
Configuring SSH
This section has this configuration information:
• Configuration Guidelines, page 6-34
• Cryptographic Software Image Guidelines, page 6-35
• Setting Up the Switch to Run SSH, page 6-35 (required)
• Configuring the SSH Server, page 6-36 (required only if you are configuring the switch as an SSH
server)
Configuration Guidelines
Follow these guidelines when configuring the switch as an SSH server or SSH client:
• An RSA key pair generated by a SSHv1 server can be used by an SSHv2 server, and the reverse.
• If you get CLI error messages after entering the crypto key generate rsa global configuration
command, an RSA key pair has not been generated. Reconfigure the host name and domain, and then
enter the crypto key generate rsa command. For more information, see the “Setting Up the Switch
to Run SSH” section on page 6-35.
• When generating the RSA key pair, the message “No host name specified” might appear. If it does,
you must configure a host name by using the hostname global configuration command.
• When generating the RSA key pair, the message “No domain specified” might appear. If it does, you
must configure an IP domain name by using the ip domain-name global configuration command.
• When configuring the local authentication and authorization authentication method, make sure that
AAA is disabled on the console.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 hostname hostname Configure a host name for your switch.
Step 3 ip domain-name domain_name Configure a host domain for your switch.
Step 4 crypto key generate rsa Enable the SSH server for local and remote authentication on the switch
and generate an RSA key pair.
We recommend that a minimum modulus size of 1024 bits.
When you generate RSA keys, you are prompted to enter a modulus
length. A longer modulus length might be more secure, but it takes longer
to generate and to use.
Step 5 end Return to privileged EXEC mode.
Step 6 show ip ssh Show the version and configuration information for your SSH server.
or
show ssh Show the status of the SSH server on the switch.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete the RSA key pair, use the crypto key zeroize rsa global configuration command. After the
RSA key pair is deleted, the SSH server is automatically disabled.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip ssh version [1 | 2] (Optional) Configure the switch to run SSH version 1 or SSH version 2.
• 1—Configure the switch to run SSH version 1.
• 2—Configure the switch to run SSH version 2.
If you do not enter this command or do not specify a keyword, the SSH
server selects the latest SSH version supported by the SSH client. For
example, if the SSH client sports SSHv1 and SSHv2, the SSH server
selects SSHv2.
Step 3 ip ssh {timeout seconds | Configure the SSH control parameters:
authentication-retries number}
• Specify the time-out value in seconds; the default is 120 seconds. The
range is 0 to 120 seconds. This parameter applies to the SSH
negotiation phase. After the connection is established, the switch uses
the default time-out values of the CLI-based sessions.
By default, up to five simultaneous, encrypted SSH connections for
multiple CLI-based sessions over the network are available (session 0
to session 4). After the execution shell starts, the CLI-based session
time-out value returns to the default of 10 minutes.
• Specify the number of times that a client can re-authenticate to the
server. The default is 3; the range is 0 to 5.
Repeat this step when configuring both parameters.
Step 4 end Return to privileged EXEC mode.
Step 5 show ip ssh Display the version and configuration information for your SSH server.
or
show ssh Display the status of the SSH server connections on the switch.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default SSH control parameters, use the no ip ssh {timeout | authentication-retries}
global configuration command.
Table 6-2 Commands for Displaying the SSH Server Configuration and Status
Command Purpose
show ip ssh Shows the version and configuration information for the SSH server.
show ssh Shows the status of the SSH server.
For more information about these commands, see the “Secure Shell Commands” section in the “Other
Security Features” chapter of the Cisco IOS Security Command Reference, Cisco IOS Release 12.2, at
this URL:
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_r/fothercr/
srfssh.htm.
This chapter describes how to configure IEEE 802.1x port-based authentication on the Catalyst 2940
switch to prevent unauthorized devices (clients) from gaining access to the network.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Device Roles
With 802.1x port-based authentication, the devices in the network have specific roles as shown in
Figure 7-1.
Authentication
server
(RADIUS)
Workstations
(clients)
101229
• Client—the device (workstation) that requests access to the LAN and switch services and responds
to requests from the switch.The workstation must be running 802.1x-compliant client software such
as that offered in the Microsoft Windows XP operating system. (The client is the supplicant in the
IEEE 802.1x specification.)
Note To resolve Windows XP network connectivity and 802.1x authentication issues, read the
Microsoft Knowledge Base article at this URL:
http://support.microsoft.com/support/kb/articles/Q303/5/97.ASP
• Authentication server—performs the actual authentication of the client. The authentication server
validates the identity of the client and notifies the switch whether or not the client is authorized to
access the LAN and switch services. Because the switch acts as the proxy, the authentication service
is transparent to the client. In this release, the RADIUS security system with Extensible
Authentication Protocol (EAP) extensions is the only supported authentication server. It is available
in Cisco Secure Access Control Server Version 3.0 or later. RADIUS operates in a client/server
model in which secure authentication information is exchanged between the RADIUS server and
one or more RADIUS clients.
• Switch (edge switch or wireless access point)—controls the physical access to the network based on
the authentication status of the client. The switch acts as an intermediary (proxy) between the client
and the authentication server, requesting identity information from the client, verifying that
information with the authentication server, and relaying a response to the client. The switch includes
the RADIUS client, which is responsible for encapsulating and decapsulating the EAP frames and
interacting with the authentication server.
When the switch receives EAPOL frames and relays them to the authentication server, the Ethernet
header is stripped and the remaining EAP frame is re-encapsulated in the RADIUS format. The EAP
frames are not modified during encapsulation, and the authentication server must support EAP
within the native frame format. When the switch receives frames from the authentication server, the
server’s frame header is removed, leaving the EAP frame, which is then encapsulated for Ethernet
and sent to the client.
The devices that can act as intermediaries include the Catalyst 3750, Catalyst 3560, Catalyst 3550,
Catalyst 2970, Catalyst 2955, Catalyst 2950, Catalyst 2940 switches, or a wireless access point.
These devices must be running software that supports the RADIUS client and 802.1x.
Note If 802.1x is not enabled or supported on the network access device, any EAPOL frames from the client
are dropped. If the client does not receive an EAP-request/identity frame after three attempts to start
authentication, the client sends frames as if the port is in the authorized state. A port in the authorized
state effectively means that the client has been successfully authenticated. For more information, see the
“Ports in Authorized and Unauthorized States” section on page 7-4.
When the client supplies its identity, the switch begins its role as the intermediary, passing EAP frames
between the client and the authentication server until authentication succeeds or fails. If the
authentication succeeds, the switch port becomes authorized. For more information, see the “Ports in
Authorized and Unauthorized States” section on page 7-4.
The specific exchange of EAP frames depends on the authentication method being used. Figure 7-2
shows a message exchange initiated by the client using the One-Time-Password (OTP) authentication
method with a RADIUS server.
Authentication
Client server
(RADIUS)
EAPOL-Start
EAP-Request/Identity
EAP-Response/Identity RADIUS Access-Request
EAP-Request/OTP RADIUS Access-Challenge
EAP-Response/OTP RADIUS Access-Request
EAP-Success RADIUS Access-Accept
Port Authorized
EAPOL-Logoff
101228
Port Unauthorized
• auto—enables 802.1x authentication and causes the port to begin in the unauthorized state, allowing
only EAPOL frames to be sent and received through the port. The authentication process begins
when the link state of the port transitions from down to up or when an EAPOL-start frame is
received. The switch requests the identity of the client and begins relaying authentication messages
between the client and the authentication server. Each client attempting to access the network is
uniquely identified by the switch by using the client’s MAC address.
If the client is successfully authenticated (receives an Accept frame from the authentication server), the
port state changes to authorized, and all frames from the authenticated client are allowed through the
port. If the authentication fails, the port remains in the unauthorized state, but authentication can be
retried. If the authentication server cannot be reached, the switch can resend the request. If no response
is received from the server after the specified number of attempts, authentication fails, and network
access is not granted.
When a client logs off, it sends an EAPOL-logoff message, causing the switch port to transition to the
unauthorized state.
If the link state of a port transitions from up to down, or if an EAPOL-logoff frame is received, the port
returns to the unauthorized state.
802.1x Accounting
The IEEE 802.1x standard defines how users are authorized and authenticated for network access but
does not keep track of network usage. 802.1x accounting is disabled by default. You can enable 802.1x
accounting to monitor this activity on 802.1x-enabled ports:
• User successfully authenticates.
• User logs off.
• Link-down occurs.
• Re-authentication successfully occurs.
• Re-authentication fails.
The switch does not log 802.1x accounting information. Instead, it sends this information to the
RADIUS server, which must be configured to log accounting messages.
Authentication
server
Access point (RADIUS)
Wireless clients
101227
Using 802.1x with Port Security
You can configure an 802.1x port with port security in either single-host or multiple-hosts mode. (You
must also configure port security on the port by using the switchport port-security interface
configuration command.) When you enable port security and 802.1x on a port, 802.1x authenticates the
port, and port security manages network access for all MAC addresses, including that of the client. You
can then limit the number or group of clients that can access the network through an 802.1x port.
These are some examples of the interaction between 802.1x and port security on the switch:
• When a client is authenticated, and the port security table is not full, the client’s MAC address is
added to the port security list of secure hosts. The port then proceeds to come up normally.
When a client is authenticated and manually configured for port security, it is guaranteed an entry
in the secure host table (unless port security static aging has been enabled).
A security violation occurs if the client is authenticated, but port security table is full. This can
happen if the maximum number of secure hosts has been statically configured, or if the client ages
out of the secure host table. If the client’s address is aged out, its place in the secure host table can
be taken by another host.
The port security violation modes determine the action for security violations. For more
information, see the “Security Violations” section on page 17-5.
• When an 802.1x client logs off, the port transitions back to an unauthenticated state, and all dynamic
entries in the secure host table are cleared, including the entry for the client. Normal authentication
then takes place.
• If the port is administratively shut down, the port becomes unauthenticated, and all dynamic entries
are removed from the secure host table.
• Port security and a voice VLAN can be configured simultaneously on an 802.1x port that is in either
single-host or multiple-hosts mode. Port security applies to both the voice VLAN identifier (VVID)
and the port VLAN identifier (PVID).
• When an 802.1x client address is manually removed from the port security table, we recommend
that you re-authenticate the client by entering the dot1x re-authenticate privileged EXEC
command.
For more information about enabling port security on your switch, see the “Configuring Port Security”
section on page 17-4.
The 802.1x with VLAN assignment feature is not supported on trunk ports, dynamic ports, or with
dynamic-access port assignment through a VLAN Membership Policy Server (VMPS).
To configure VLAN assignment you need to perform these tasks:
• Enable AAA authorization.
• Enable 802.1x (the VLAN assignment feature is automatically enabled when you configure 802.1x
on an access port).
• Assign vendor-specific tunnel attributes in the RADIUS server. The RADIUS server must return
these attributes to the switch:
– [64] Tunnel-Type = VLAN
– [65] Tunnel-Medium-Type = 802
– [81] Tunnel-Private-Group-ID = VLAN name or VLAN ID
Attribute [64] must contain the value VLAN (type 13). Attribute [65] must contain the value 802
(type 6). Attribute [81] specifies the VLAN name or VLAN ID assigned to the 802.1x-authenticated
user.
For examples of tunnel attributes, see the “Configuring the Switch to Use Vendor-Specific RADIUS
Attributes” section on page 6-29.
• You can configure any VLAN, except an RSPAN VLAN or a voice VLAN, as an 802.1x guest
VLAN. The guest VLAN feature is not supported on trunk ports; it is supported only on access ports.
• When 802.1x is enabled on a port, you cannot configure a port VLAN that is equal to a voice VLAN.
• The 802.1x with VLAN assignment feature is not supported on trunk ports, dynamic ports, or with
dynamic-access port assignment through a VMPS.
• Before globally enabling 802.1x on a switch by entering the dot1x system-auth-control global
configuration command, remove the EtherChannel configuration from the interfaces on
which 802.1x and EtherChannel are configured.
• If you are using a device running the Cisco Access Control Server (ACS) application for 802.1x
authentication with EAP-Transparent LAN Services (TLS) and EAP-MD5 and your switch is
running Cisco IOS Release 12.1(14)EA1, make sure that the device is running ACS Version 3.2.1 or
later.
• After you configure a guest VLAN for an 802.1x port to which a DHCP client is connected, you
might need to get a host IP address from a DHCP server. You can also change the settings for
restarting the 802.1x authentication process on the switch before the DHCP process on the client
times out and tries to get a host IP address from the DHCP server. Decrease the settings for the
802.1x authentication process (802.1x quiet period and switch-to-client transmission time).
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa new-model Enable AAA.
Command Purpose
Step 3 aaa authentication dot1x {default} Create an 802.1x authentication method list.
method1
To create a default list that is used when a named list is not specified in
the authentication command, use the default keyword followed by the
method that is to be used in default situations. The default method list is
automatically applied to all ports.
For method1, enter the group radius keyword to use the list of all
RADIUS servers for authentication.
Note Though other keywords are visible in the command-line help
string, only the default and group radius keywords are
supported.
Step 4 dot1x system-auth-control Enable 802.1x authentication globally on the switch.
Step 5 aaa authorization network {default} (Optional) Configure the switch for user RADIUS authorization for all
group radius network-related service requests, such as VLAN assignment.
Step 6 interface interface-id Specify the interface connected to the client to be enabled for 802.1x
authentication, and enter interface configuration mode.
Step 7 dot1x port-control auto Enable 802.1x authentication on the interface.
For feature interaction information, see the “802.1x Configuration
Guidelines” section on page 7-10.
Step 8 end Return to privileged EXEC mode.
Step 9 show dot1x Verify your entries.
Check the Status column in the 802.1x Port Summary section of the
display. An enabled status means the port-control value is set either to
auto or to force-unauthorized.
Step 10 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable AAA, use the no aaa new-model global configuration command. To disable 802.1x AAA
authentication, use the no aaa authentication dot1x {default | list-name} global configuration
command. To disable 802.1x AAA authorization, use the no aaa authorization global configuration
command. To disable 802.1x authentication on the switch, use the no dot1x system-auth-control global
configuration command.
This example shows how to enable AAA and 802.1x on a port:
Switch# configure terminal
Switch(config)# aaa new-model
Switch(config)# aaa authentication dot1x default group radius
Switch(config)# dot1x system-auth-control
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# dot1x port-control auto
Switch(config-if)# end
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 radius-server host {hostname | Configure the RADIUS server parameters on the switch.
ip-address} auth-port port-number key
For hostname | ip-address, specify the host name or IP address of the
string
remote RADIUS server.
For auth-port port-number, specify the UDP destination port for
authentication requests. The default is 1812.
For key string, specify the authentication and encryption key used
between the switch and the RADIUS daemon running on the RADIUS
server. The key is a text string that must match the encryption key used on
the RADIUS server.
Note Always configure the key as the last item in the radius-server
host command syntax because leading spaces are ignored, but
spaces within and at the end of the key are used. If you use spaces
in the key, do not enclose the key in quotation marks unless the
quotation marks are part of the key. This key must match the
encryption used on the RADIUS daemon.
To delete the specified RADIUS server, use the no radius-server host {hostname | ip-address} global
configuration command.
This example shows how to specify the server with IP address 172.20.39.46 as the RADIUS server, to
use port 1612 as the authorization port, and to set the encryption key to rad123, matching the key on the
RADIUS server:
Switch(config)# radius-server host 172.l20.39.46 auth-port 1612 key rad123
You can globally configure the timeout, retransmission, and encryption key values for all RADIUS
servers by using the radius-server host global configuration command. If you want to configure these
options on a per-server basis, use the radius-server timeout, radius-server retransmit, and the
radius-server key global configuration commands. For more information, see the “Configuring Settings
for All RADIUS Servers” section on page 6-29.
You also need to configure some settings on the RADIUS server. These settings include the IP address
of the switch and the key string to be shared by both the server and the switch. For more information,
see the RADIUS server documentation.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode.
Step 3 dot1x reauthentication Enable periodic re-authentication of the client, which is disabled by
default.
Step 4 dot1x timeout reauth-period seconds Set the number of seconds between re-authentication attempts.
The range is 1 to 65535; the default is 3600 seconds.
This command affects the behavior of the switch only if periodic
re-authentication is enabled.
Step 5 end Return to privileged EXEC mode.
Step 6 show dot1x interface interface-id Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode.
Step 3 dot1x timeout quiet-period seconds Set the number of seconds that the switch remains in the quiet state
following a failed authentication exchange with the client.
The range is 1 to 65535 seconds; the default is 60.
Step 4 end Return to privileged EXEC mode.
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default quiet time, use the no dot1x timeout quiet-period interface configuration
command.
This example shows how to set the quiet time on the switch to 30 seconds:
Switch(config-if)# dot1x timeout quiet-period 30
Note You should change the default value of this command only to adjust for unusual circumstances such as
unreliable links or specific behavioral problems with certain clients and authentication servers.
Beginning in privileged EXEC mode, follow these steps to change the amount of time that the switch
waits for client notification. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode.
Command Purpose
Step 3 dot1x timeout tx-period seconds Set the number of seconds that the switch waits for a response to an
EAP-request/identity frame from the client before resending the request.
The range is 15 to 65535 seconds; the default is 30.
Step 4 end Return to privileged EXEC mode.
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default retransmission time, use the no dot1x timeout tx-period interface configuration
command.
This example shows how to set 60 as the number of seconds that the switch waits for a response to an
EAP-request/identity frame from the client before resending the request:
Switch(config-if)# dot1x timeout tx-period 60
Note You should change the default value of this command only to adjust for unusual circumstances such as
unreliable links or specific behavioral problems with certain clients and authentication servers.
Beginning in privileged EXEC mode, follow these steps to set the switch-to-client frame-retransmission
number. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode.
Step 3 dot1x max-req count Set the number of times that the switch sends an EAP-request/identity
frame to the client before restarting the authentication process. The range
is 1 to 10; the default is 2.
Step 4 end Return to privileged EXEC mode.
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default retransmission number, use the no dot1x max-req interface configuration
command.
This example shows how to set 5 as the number of times that the switch sends an EAP-request/identity
request before restarting the authentication process:
Switch(config-if)# dot1x max-req 5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to which multiple hosts are indirectly attached, and
enter interface configuration mode.
Step 3 dot1x host-mode multi-host Allow multiple hosts (clients) on an 802.1x-authorized port.
Make sure that the dot1x port-control interface configuration command
set is set to auto for the specified interface.
Step 4 end Return to privileged EXEC mode.
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable multiple hosts on the port, use the no dot1x host-mode multi-host interface configuration
command.
This example shows how to enable a port to allow multiple hosts:
Switch(config)# interface fastethernet0/1
Switch(config-if)# dot1x port-control auto
Switch(config-if)# dot1x host-mode multi-host
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode. For the supported interface types, see the “802.1x Configuration
Guidelines” section on page 7-10.
Step 3 dot1x guest-vlan vlan-id Specify an active VLAN as an 802.1x guest VLAN. The range is 1 to
4094.
You can configure any active VLAN except an RSPAN VLAN or a voice
VLAN as an 802.1x guest VLAN.
Step 4 end Return to privileged EXEC mode.
Command Purpose
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable and remove the guest VLAN, use the no dot1x guest-vlan interface configuration command.
The port returns to the unauthorized state.
This example shows how to enable VLAN 9 as an 802.1x guest VLAN on a port:
Switch(config)# interface fastethernet0/1
Switch(config-if)# dot1x guest-vlan 9
This example shows how to set 3 as the quiet time on the switch, to set 15 as the number of seconds that
the switch waits for a response to an EAP-request/identity frame from the client before resending the
request, and to enable VLAN 2 as an 802.1x guest VLAN when an 802.1x port is connected to a DHCP
client:
Switch(config-if)# dot1x timeout quiet-period 3
Switch(config-if)# dot1x timeout tx-period 15
Switch(config-if)# dot1x guest-vlan 2
You can enable optional guest VLAN behavior by using the dot1x guest-vlan supplicant global
configuration command. When enabled, the switch does not maintain the EAPOL packet history and
allows clients that fail authentication access to the guest VLAN, regardless of whether EAPOL packets
had been detected on the interface.
Beginning in privileged EXEC mode, follow these steps to enable the optional guest VLAN behavior
and to configure a guest VLAN. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 dot1x guest-vlan supplicant Enable the optional guest VLAN behavior globally on the switch.
Step 3 interface interface-id Specify the port to be configured, and enter interface configuration mode.
For the supported port types, see the “802.1x Configuration Guidelines”
section on page 7-10.
Step 4 dot1x guest-vlan vlan-id Specify an active VLAN as an 802.1x guest VLAN. The range is 1 to
4094.
You can configure any active VLAN except an RSPAN VLAN or a voice
VLAN as an 802.1x guest VLAN.
Step 5 end Return to privileged EXEC mode.
Step 6 show dot1x interface interface-id Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the optional guest VLAN behavior, use the no dot1x guest-vlan supplicant global
configuration command. To remove the guest VLAN, use the no dot1x guest-vlan interface
configuration command. The port returns to the unauthorized state.
This example shows how enable the optional guest VLAN behavior and to specify VLAN 5 as an 802.1x
guest VLAN:
Switch(config)# dot1x guest-vlan supplicant
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# dot1x guest-vlan 5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be configured, and enter interface configuration
mode.
Step 3 dot1x default Reset the configurable 802.1x parameters to the default values.
Step 4 end Return to privileged EXEC mode.
Step 5 show dot1x interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Beginning in privileged EXEC mode, follow these steps to configure 802.1x port-based authentication:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 aaa new-model Enable AAA.
Step 3 aaa authentication dot1x {default} Create an 802.1x authentication method list.
method1 [method2...] To create a default list that is used when a named list is not specified in
the authentication command, use the default keyword followed by the
methods that are to be used in default situations. The default method list
is automatically applied to all ports.
Enter at least one of these keywords:
• group radius—Use the list of all RADIUS servers for authentication.
• none—Use no authentication. The client is automatically
authenticated by the switch without using the information supplied by
the client.
Step 4 dot1x system-auth-control Enable 802.1x authentication globally on the switch.
Step 5 aaa authorization network {default} (Optional) Configure the switch for user RADIUS authorization for all
group radius network-related service requests, such as per-user ACLs or VLAN
assignment.
Note For per-user ACLs, single-host mode must be configured. This
setting is the default.
Step 6 interface interface-id Specify the port connected to the client that is to be enabled for 802.1x
authentication, and enter interface configuration mode.
Step 7 dot1x port-control auto Enable 802.1x authentication on the port.
For feature interaction information, see the “802.1x Configuration
Guidelines” section on page 7-10.
Step 8 end Return to privileged EXEC mode.
Step 9 show dot1x Verify your entries.
Step 10 copy running-config startup-config (Optional) Save your entries in the configuration file.
When the stop message is not sent successfully, this message appears:
00:09:55: %RADIUS-3-NOACCOUNTINGRESPONSE: Accounting message Start for session
172.20.50.145 sam 11/06/03 07:01:16 11000002 failed to receive Accounting Response.
Note You must configure the RADIUS server to perform accounting tasks, such as logging start, stop, and
interim-update messages and time stamps. To turn on these functions, enable logging of
“Update/Watchdog packets from this AAA client” in your RADIUS server Network Configuration tab.
Next, enable “CVS RADIUS Accounting” in your RADIUS server System Configuration tab.
Beginning in privileged EXEC mode, follow these steps to configure 802.1x accounting after AAA is
enabled on your switch. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the port to be configured, and enter interface configuration mode.
Step 3 aaa accounting dot1x default Enable 802.1x accounting using the list of all RADIUS servers.
start-stop group radius
Step 4 aaa accounting system default (Optional) Enables system accounting (using the list of all RADIUS
start-stop group radius servers) and generates system accounting reload event messages when the
switch reloads.
Step 5 end Return to privileged EXEc mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Saves your entries in the configuration file.
Use the show radius statistics privileged EXEC command to display the number of RADIUS messages
that do not receive the accounting response message.
This example shows how to configure 802.1x accounting. The first command configures the RADIUS
server, specifying 1813 as the UDP port for accounting:
Switch(config)# radius-server host 172.120.39.46 auth-port 1812 acct-port 1813 key rad123
Switch(config)# aaa accounting dot1x default start-stop group radius
Switch(config)# aaa accounting system default start-stop group radius
This chapter describes the types of interfaces on a Catalyst 2940 switch and how to configure them. The
chapter has these sections:
• Understanding Interface Types, page 8-1
• Using the Interface Command, page 8-4
• Configuring Ethernet Interfaces, page 8-8
• Monitoring and Maintaining the Interfaces, page 8-14
Note For complete syntax and usage information for the commands used in this chapter, see the switch
command reference for this release and the online Cisco IOS Interface Command Reference for Cisco
IOS Release 12.1.
Note The physical switch ports can be 10/100 Ethernet ports, 100BASE-FX ports, or small form-factor
pluggable (SFP)-module ports. For more information, see the switch hardware installation guide.
Access Ports
An access port belongs to and carries the traffic of only one VLAN (unless it is configured as a voice
VLAN port). Traffic is received and sent in native formats with no VLAN tagging. Traffic arriving on
an access port is assumed to belong to the VLAN assigned to the port. If an access port receives
an 802.1p- or 802.1Q-tagged packet for the VLAN assigned to the port, the packet is forwarded. If the
port receives an 802.1p- or 802.1Q-tagged packet for another VLAN, the packet is dropped, the source
address is not learned, and the frame is counted in the No destination statistic.
The Catalyst 2940 switch does not support ISL-tagged packets. If the switch receives an ISL-tagged
packet, the packet is flooded in the native VLAN of the port on which it was received because the MAC
destination address in the ISL-tagged packet is a multicast address.
Two types of access ports are supported:
• Static access ports are manually assigned to a VLAN.
• VLAN membership of dynamic access ports is learned through incoming packets. By default, a
dynamic access port is a member of no VLAN, and forwarding to and from the port is enabled only
when the VLAN membership of the port is discovered. Dynamic access ports on the switch are
assigned to a VLAN by a VLAN Membership Policy Server (VMPS). The VMPS can be a
Catalyst 6000 series switch; the Catalyst 2940 switch does not support the function of a VMPS.
You can also configure an access port with an attached Cisco IP Phone to use one VLAN for voice traffic
and another VLAN for data traffic from a device attached to the phone. From more information about
voice VLAN ports, see Chapter 15, “Configuring Voice VLAN.”
Trunk Ports
A trunk port carries the traffic of multiple VLANs and by default is a member of all VLANs in the VLAN
database. Only IEEE 802.1Q trunk ports are supported. An IEEE 802.1Q trunk port supports
simultaneous tagged and untagged traffic. An 802.1Q trunk port is assigned a default Port VLAN ID
(PVID), and all untagged traffic travels on the port default PVID. All untagged traffic and tagged traffic
with a NULL VLAN ID are assumed to belong to the port default PVID. A packet with a VLAN ID equal
to the outgoing port default PVID is sent untagged. All other traffic is sent with a VLAN tag.
Although by default, a trunk port is a member of every VLAN known to the VTP, you can limit VLAN
membership by configuring an allowed list of VLANs for each trunk port. The list of allowed VLANs
does not affect any other port but the associated trunk port. By default, all possible VLANs (VLAN ID 1
to 4094 are in the allowed list. A trunk port can only become a member of a VLAN if VTP knows of the
VLAN and the VLAN is in the enabled state. If VTP learns of a new, enabled VLAN and the VLAN is
in the allowed list for a trunk port, the trunk port automatically becomes a member of that VLAN and
traffic is forwarded to and from the trunk port for that VLAN. If VTP learns of a new, enabled VLAN
that is not in the allowed list for a trunk port, the port does not become a member of the VLAN, and no
traffic for the VLAN is forwarded to or from the port.
For more information about trunk ports, see Chapter 13, “Configuring VLANs.”
Port-Based VLANs
A VLAN is a switched network that is logically segmented by function, team, or application, without
regard to the physical location of the users. For more information about VLANs, see Chapter 13,
“Configuring VLANs.” Packets received on a port are forwarded only to ports that belong to the same
VLAN as the receiving port. Network devices in different VLANs cannot communicate with one another
without a Layer 3 device to route traffic between the VLANs.
VLAN partitions provide hard firewalls for traffic in the VLAN, and each VLAN has its own MAC
address table. A VLAN comes into existence when a local port is configured to be associated with the
VLAN, when the VLAN Trunking Protocol (VTP) learns of its existence from a neighbor on a trunk, or
when a user creates a VLAN.
To configure normal-range VLANs (VLAN IDs 1 to 1005), use the vlan vlan-id global configuration
command to enter config-vlan mode or the vlan database privileged EXEC command to enter VLAN
configuration mode. The VLAN configurations for VLAN IDs 1 to 1005 are saved in the VLAN
database. To configure extended-range VLANs (VLAN IDs 1006 to 4094), you must use config-vlan
mode with VTP mode set to transparent. Extended-range VLANs are not added to the VLAN database.
When VTP mode is transparent, the VTP and VLAN configuration is saved in the switch running
configuration, and you can save it in the switch startup configuration file by entering the copy
running-config startup-config privileged EXEC command.
Add ports to a VLAN by using the switchport interface configuration commands:
• Identify the interface.
• For a trunk port, set trunk characteristics, and if desired, define the VLANs to which it can belong.
• For an access port, set and define the VLAN to which it belongs.
Connecting Interfaces
Devices within a single VLAN can communicate directly through any switch. Ports in different VLANs
cannot exchange data without going through a routing device or routed interface.
With a standard Layer 2 switch, ports in different VLANs have to exchange information through a router.
In the configuration shown in Figure 8-1, when Host A in VLAN 20 sends data to Host B in VLAN 30,
it must go from Host A to the switch, to the router, back to the switch, and then to Host B.
Cisco router
Switch
Host A Host B
46647
VLAN 20 VLAN 30
Step 1 Enter the configure terminal command at the privileged EXEC prompt:
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#
Step 2 Enter the interface global configuration command. Identify the interface type and the number of the
connector. In this example, Gigabit Ethernet interface 0/1 is selected:
Switch(config)# interface gigabitethernet0/1
Switch(config-if)#
Note You do not need to add a space between the interface type and interface number. For example,
in the preceding line, you can specify either gigabitethernet 0/1, gigabitethernet0/1, gi 0/1, or
gi0/1.
Step 3 Follow each interface command with the interface configuration commands your particular interface
requires. The commands you enter define the protocols and applications that will run on the interface.
The commands are collected and applied to the interface when you enter another interface command or
enter end to return to privileged EXEC mode.
You can also configure a range of interfaces by using the interface range or interface range macro
global configuration commands. Interfaces configured in a range must be the same type and must be
configured with the same feature options.
Step 4 After you configure an interface, verify its status by using the show privileged EXEC commands listed
in the “Monitoring and Maintaining the Interfaces” section on page 8-14.
Enter the show interfaces privileged EXEC command to see a list of all interfaces on or configured for
the switch. A report is provided for each interface that the device supports or for the specified interface.
Beginning in privileged EXEC mode, follow these steps to configure a range of interfaces with the
same parameters:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface range {port-range | macro Enter interface-range configuration mode by entering the range of
macro_name} interfaces (VLANs or physical ports) to be configured.
• You can use the interface range command to configure up to five
port ranges or a previously defined macro.
• The macro variable is explained in the “Configuring and Using
Interface-Range Macros” section on page 8-7.
• Each comma-separated port-range must consist of the same port
type. You do not need to enter spaces before or after the comma.
• When you define a range, the space between the first port and the
hyphen is required.
Step 3 You can now use the normal configuration commands to apply the
configuration parameters to all interfaces in the range.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces [interface-id] Verify the configuration of the interfaces in the range.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
When using the interface range global configuration command, note these guidelines:
• Valid entries for port-range:
– vlan vlan-ID - vlan-ID, where VLAN ID is from 1 to 4094
– fastethernet slot/{first port} - {last port}, where slot is 0
– gigabitethernet slot/{first port} - {last port}, where slot is 0
– port-channel port-channel-number - port-channel-number, where port-channel-number is
from 1 to 6
• You must add a space between the interface numbers and the hyphen when using the
interface range command. For example, the command interface range fastethernet0/1 - 5 is a
valid range; the command interface range fastethernet0/1-5 is not a valid range.
• The interface range command works only with VLAN interfaces that have been configured with
the interface vlan command (the show running-config privileged EXEC command output shows
the configured VLAN interfaces). VLAN interfaces that do not appear by using the show
running-config command cannot be used with the interface range command.
• All interfaces in a range must be the same type; that is, all Fast Ethernet ports, all Gigabit Ethernet
ports, all EtherChannel ports, or VLAN interfaces.
This example shows how to use the interface range global configuration command to set the speed on
Fast Ethernet interfaces 0/1 to 0/5 to 100 Mbps:
Switch# configure terminal
Switch(config)# interface range fastethernet0/1 - 5
Switch(config-if-range)# speed 100
This example shows how to use a comma to add different interface type strings to the range to enable all
Fast Ethernet interfaces in the range 0/1 to 0/3 and Gigabit Ethernet interface 0/1:
Switch# configure terminal
Switch(config)# interface range fastethernet0/1 - 3, gigabitethernet0/1
Switch(config-if-range)# no shutdown
If you enter multiple configuration commands while you are in interface-range mode, each command is
executed as it is entered. The commands are not batched together and executed after you exit
interface-range mode. If you exit interface-range configuration mode while the commands are being
executed, some commands might not be executed on all interfaces in the range. Wait until the command
prompt reappears before exiting interface-range configuration mode.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 define interface-range macro_name Define the interface-range macro, and save it in NVRAM.
interface-range
• The macro_name is a 32-character maximum character string.
• A macro can contain up to five comma-separated interface ranges.
You do not need to enter spaces before or after the comma.
• Each interface-range must consist of the same port type.
Step 3 interface range macro macro_name Select the interface range to be configured by using the values saved
in the interface-range macro called macro_name.
You can now use the normal configuration commands to apply the
configuration to all interfaces in the defined macro.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config | include define Show the defined interface-range macro configuration.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Use the no define interface-range macro_name global configuration command to delete a macro.
When using the define interface-range global configuration command, note these guidelines:
• Valid entries for interface-range:
– vlan vlan-ID - vlan-ID, where VLAN ID is from 1 to 4094
– fastethernet slot/{first port} - {last port}, where slot is 0
– gigabitethernet slot/{first port} - {last port}, where slot is 0
– longreachethernet slot/{first port} - {last port}, where slot is 0
– port-channel port-channel-number - port-channel-number, where port-channel-number is
from 1 to 6.
• You must add a space between the interface numbers and the hyphen when entering an
interface-range. For example, fastethernet 0/1 - 5 is a valid range; fastethernet 0/1-5 is not a valid
range.
• The VLAN interfaces must have been configured with the interface vlan command. The show
running-config privileged EXEC command output shows the configured VLAN interfaces. VLAN
interfaces that do not appear by using the show running-config command cannot be used as
interface-ranges.
• All interfaces in a range must be the same type; that is, all Fast Ethernet ports, all Gigabit Ethernet
ports, all EtherChannel ports, or all VLANs, but you can combine multiple interface types in a
macro.
This example shows how to define an interface-range macro named enet_list to select Fast Ethernet
ports 1 to 4 and to verify the macro configuration:
Switch# configure terminal
Switch(config)# define interface-range enet_list fastethernet0/1 - 4
Switch(config)# end
Switch# show running-config | include define
define interface-range enet_list FastEthernet0/1 - 4
This example shows how to enter interface range configuration mode for the interface-range macro
enet_list:
Switch# configure terminal
Switch(config)# interface range macro enet_list
Switch(config-if-range)#
This example shows how to delete the interface-range macro enet_list and to verify that it has been
deleted.
Switch# configure terminal
Switch(config)# no define interface-range enet_list
Switch# show run | include define
These sections describe the default interface configuration and the optional features that you can
configure on most physical interfaces:
• Default Ethernet Interface Configuration, page 8-9
• Configuring Interface Speed and Duplex Mode, page 8-10
• Configuring Auto-MDIX on an Interface, page 8-11
• Configuring IEEE 802.3z Flow Control on Gigabit Ethernet Ports, page 8-12
• Adding a Description for an Interface, page 8-14
Configuration Guidelines
When configuring an interface speed and duplex mode, note these guidelines:
• Ethernet ports set to 1000 Mbps should always be set to full duplex.
• A Gigabit Ethernet port that does not match the settings of an attached device can lose connectivity
and does not generate statistics.
• If both ends of the line support autonegotiation, we highly recommend the default setting of
autonegotiation.
• When connecting an interface to a 100BASE-T device that does not autonegotiate, set the speed to
a non-auto value (for example, nonegotiate) and set the duplex mode to full or half to match the
device. The speed value and duplex mode must be explicitly set.
• When connecting an interface to a Gigabit Ethernet device that does not autonegotiate, disable
autonegotiation on the switch and set the duplex and flow control parameters to be compatible with
the remote device.
• 100BASE-FX ports operate only at 100 Mbps and in full-duplex mode.
• 10/100/1000 ports can operate at 10 or 100 Mbps in either half- or full-duplex mode. The ports can
operate at 1000 Mbps only in full-duplex mode.
• Fiber-optic SFP-module ports operate only at 1000 Mbps in full-duplex mode.
• When Spanning Tree Protocol (STP) is enabled and a port is reconfigured, the switch can take up to
30 seconds to check for loops. The port LED is amber while STP reconfigures.
Caution Changing the interface speed and duplex mode configuration might shut down and re-enable the
interface during the reconfiguration.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode and the physical interface
identification.
Step 3 speed {10 | 100 | 1000 | auto [10 | 100 | Enter the appropriate speed parameter for the interface, or enter auto.
1000 ]} Note The 1000 keyword is available only for 10/100/1000 Mbps
ports. 100BASE-FX ports operate only at 100 Mbps.
If you use the 10, 100, or 1000 keywords with the auto keyword, the
port only autonegotiates at the specified speeds.
Step 4 duplex {auto | full | half} Enter the duplex parameter for the interface.
Step 5 end Return to privileged EXEC mode.
Step 6 show interfaces interface-id Display the interface speed and duplex mode configuration.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Use the no speed and no duplex interface configuration commands to return the interface to the default
speed and duplex settings (autonegotiate). To return all interface settings to the defaults, use the default
interface interface-id interface configuration command.
This example shows how to set the interface speed to 10 Mbps and the duplex mode to half on a port:
Switch# configure terminal
Switch(config)# interface fastethernet0/3
Switch(config-if)# speed 10
Switch(config-if)# duplex half
Switch(config)# end
Table 8-2 shows the link states that results from Auto-MDIX settings and correct and incorrect cabling.
Local Side Auto-MDIX Remote Side Auto-MDIX With Correct Cabling With Incorrect Cabling
On On Link up Link up
On Off Link up Link up
Off On Link up Link up
Off Off Link up Link down
Beginning in privileged EXEC mode, follow these steps to configure Auto-MDIX on an interface:
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 interface interface-id Enter interface configuration mode for the physical interface to be
configured.
Step 3 speed auto Configure the interface to autonegotiate speed with the connected device.
Step 4 duplex auto Configure the interface to autonegotiate duplex mode with the connected
device.
Step 5 mdix auto Enable Auto-MDIX on the interface.
Step 6 end Return to privileged EXEC mode.
Step 7 show controllers ethernet-controller Verify the operational state of the Auto-MDIX feature on the interface.
interface-id phy 32
Note This command is supported, even though the phy 32 keyword is not
visible in the command-line help string.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
Flow control can be implemented in two forms, symmetric and asymmetric. The symmetric
implementation is suitable for point-to-point links, and asymmetric is suitable for hub-to-end node
connections, where it is desirable for the hub to pause the end system, but not vice-versa. You use the
flowcontrol interface configuration command to set the interface’s ability to receive and send pause
frames to on, off, or desired. The default flow control state for Gigabit Ethernet ports is receive off and
send desired.
These rules apply to flow control settings on the device:
• receive on (or desired) and send on: Flow control operates in both directions; both the local and the
remote devices can send pause frames to show link congestion.
• receive on (or desired) and send desired: The port can receive pause frames and can send pause
frames if the attached device supports flow control.
• receive on (or desired) and send off: The port cannot send pause frames but can operate with an
attached device that is required to or can send pause frames; the port can receive pause frames.
• receive off and send on: The port sends pause frames if the remote device supports flow control but
cannot receive pause frames from the remote device.
• receive off and send desired: The port cannot receive pause frames but can send pause frames if the
attached device supports flow control.
• receive off and send off: Flow control does not operate in either direction. In case of congestion, no
indication is given to the link partner, and no pause frames are sent or received by either device.
Note For details about the command settings and the resulting flow control resolution on local and remote
ports, see the flowcontrol interface configuration command in the command reference for this release.
Beginning in privileged EXEC mode, follow these steps to configure flow control on an interface:
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 interface interface-id Enter interface configuration mode and the physical interface to
be configured.
Step 3 flowcontrol {receive | send} {on | off | desired} Configure the flow control mode for the port.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id Verify the interface flow control settings.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable flow control, use the flowcontrol receive off and flowcontrol send off interface configuration
commands.
This example shows how to turn off all flow control on a port and to display the results:
Switch# configure terminal
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# flowcontrol receive off
Switch(config-if)# flowcontrol send off
Switch(config-if)# end
Switch# show running-config
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 interface interface-id Enter interface configuration mode, and enter the interface for which
you are adding a description.
Step 3 description string Add a description (up to 240 characters) for an interface.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id description Verify your entry.
or
show running-config
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Command Purpose
show interfaces [interface-id] Display the status and configuration of all interfaces or a specific
interface.
show interfaces [interface-id] capabilities [module Display the capabilities of an interface. The module number is always
{module-number}] 0. If you enter an interface ID, the module keyword is not visible.
show interfaces interface-id status [err-disabled] Display interface status or a list of interfaces in error-disabled state.
show interfaces [interface-id] switchport Display administrative and operational status of switching
(nonrouting) ports.
show interfaces [interface-id] description Display the description configured on an interface or all interfaces and
the interface status.
show ip interface [interface-id] Display the usability status of all interfaces configured for IP or the
specified interface.
show interfaces transceiver properties (Optional) Display speed and duplex settings on the interface.
show running-config interface [interface-id] Display the running configuration in RAM for the interface.
show version Display the hardware configuration, software version, the names and
sources of configuration files, and the boot images.
show controllers ethernet-controller interface-id Verify the operational stat of the Auto-MDIX feature on the interface.
phy 32
For examples of the output from these commands, see the command reference for this release and to the
Cisco IOS Interface Command Reference for Cisco IOS Release 12.1.
Command Purpose
clear counters [interface-id] Clear interface counters.
clear interface interface-id Reset the hardware logic on an interface.
clear line [number | console 0 | vty number] Reset the hardware logic on an asynchronous serial line.
To clear the interface counters shown by the show interfaces privileged EXEC command, use the clear
counters privileged EXEC command. The clear counters command clears all current interface counters
from the interface unless optional arguments are specified to clear only a specific interface type from a
specific interface number.
Note The clear counters privileged EXEC command does not clear counters retrieved by using Simple
Network Management Protocol (SNMP), but only those seen with the show interfaces privileged EXEC
command output.
This example shows how to clear and reset the counters on a port:
Switch# clear counters fastethernet0/5
Clear "show interface" counters on this interface [confirm] y
Switch#
*Sep 30 08:42:55: %CLEAR-5-COUNTERS: Clear counter on interface FastEthernet0/5
by vty1 (171.69.115.10)
Use the clear interface or clear line privileged EXEC command to clear and reset an interface or serial
line. Under most circumstances, you do not need to clear the hardware logic on interfaces or serial lines.
This example shows how to clear and reset a port:
Switch# clear interface fastethernet0/5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface {vlan vlan-id} | {{fastethernet | gigabitethernet} Select the interface to be configured.
interface-id} | {port-channel port-channel-number}
Step 3 shutdown Shut down an interface.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entry.
To verify that an interface is disabled, enter the show interfaces privileged EXEC command. A disabled
interface appears as administratively down in the show interfaces command output.
This chapter describes how to configure and apply Smartports macros on the Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Cisco also provides a collection of pretested, Cisco-recommended baseline configuration templates for
Catalyst switches. The online reference guide templates provide the CLI commands that you can use to
create Smartports macros based on the usage of the port. You can use the configuration templates to
create Smartports macros to build and deploy Cisco-recommended network designs and configurations.
For more information about Cisco-recommended configuration templates, see this Smartports website:
http://www.cisco.com/go/smartports
• When creating a macro, all CLI commands should be in the same configuration mode.
• When creating a macro that requires the assignment of unique values, use the parameter value
keywords to designate values specific to the interface. Keyword matching is case sensitive. All
matching occurrences of the keyword are replaced with the corresponding value. Any full match of
a keyword, even if it is part of a larger string, is considered a match and is replaced by the
corresponding value.
• Macro names are case sensitive. For example, the commands macro name Sample-Macro and
macro name sample-macro will result in two separate macros.
• Some macros might contain keywords that require a parameter value. You can use the macro global
apply macro-name ? global configuration command or the macro apply macro-name ? interface
configuration command to display a list of any required values in the macro. If you apply a macro
without entering the keyword values, the commands are invalid and are not applied.
• When a macro is applied globally to a switch or to a switch interface, all existing configuration on
the interface is retained. This is helpful when applying an incremental configuration.
• If you modify a macro definition by adding or deleting commands, the changes are not reflected on
the interface where the original macro was applied. You need to reapply the updated macro on the
interface to apply the new or changed commands.
• You can use the macro global trace macro-name global configuration command or the macro trace
macro-name interface configuration command to apply and debug a macro to find any syntax or
configuration errors. If a command fails because of a syntax error or a configuration error, the macro
continues to apply the remaining commands.
• Some CLI commands are specific to certain interface types. If a macro is applied to an interface that
does not accept the configuration, the macro will fail the syntax check or the configuration check,
and the switch will return an error message.
• Applying a macro to an interface range is the same as applying a macro to a single interface. When
you use an interface range, the macro is applied sequentially to each interface within the range. If a
macro command fails on one interface, it is still applied to the remaining interfaces.
• When you apply a macro to a switch or a switch interface, the macro name is automatically added
to the switch or interface. You can display the applied commands and macro names by using the
show running-config user EXEC command.
There are Cisco-default Smartports macros embedded in the switch software. You can display these
macros and the commands they contain by using the show parser macro user EXEC command.
Follow these guidelines when you apply a Cisco-default Smartports macro on an interface:
• Display all macros on the switch by using the show parser macro user EXEC command. Display
the contents of a specific macro by using the show parser macro macro-name user EXEC
command.
• Keywords that begin with $ mean that a unique parameter value is required. Append the
Cisco-default macro with the required values by using the parameter value keywords.
The Cisco-default macros use the $ character to help identify required keywords. There is no
restriction on using the $ character to define keywords when you create a macro.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 macro name macro-name Create a macro definition, and enter a macro name. A macro definition
can contain up to 3000 characters.
Enter the macro commands with one command per line. Use the @
character to end the macro. Use the # character at the beginning of a line
to enter comment text within the macro.
(Optional) You can define keywords within a macro by using a help
string to specify the keywords. Enter # macro keywords word to define
the keywords that are available for use with the macro. Separated by a
space, you can enter up to three help string keywords in a macro.
Macro names are case sensitive. For example, the commands macro
name Sample-Macro and macro name sample-macro will result in
two separate macros.
We recommend that you do not use the exit or end commands or change
the command mode by using interface interface-id in a macro. This
could cause any commands following exit, end, or interface
interface-id to execute in a different command mode. For best results,
all commands in a macro should be in the same configuration mode.
Step 3 end Return to privileged EXEC mode.
Step 4 show parser macro name macro-name Verify that the macro was created.
The no form of the macro name global configuration command only deletes the macro definition. It
does not affect the configuration of those interfaces on which the macro is already applied.
This example shows how to create a macro that defines the switchport access VLAN and the number of
secure MAC addresses and also includes two help string keywords by using # macro keywords:
Switch(config)# macro name test
switchport access vlan $VLANID
switchport port-security maximum $MAX
#macro keywords $VLANID $MAX
@
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 macro global {apply | trace} Apply each individual command defined in the macro to the switch by
macro-name [parameter {value}] entering macro global apply macro-name. Specify macro global trace
[parameter {value}] [parameter macro-name to apply and debug a macro to find any syntax or
{value}] configuration errors.
(Optional) Specify unique parameter values that are specific to the
switch. You can enter up to three keyword-value pairs. Parameter
keyword matching is case sensitive. All matching occurrences of the
keyword are replaced with the corresponding value.
Some macros might contain keywords that require a parameter value.
You can use the macro global apply macro-name ? command to display
a list of any required values in the macro. If you apply a macro without
entering the keyword values, the commands are invalid and are not
applied.
Step 3 macro global description text (Optional) Enter a description about the macro that is applied to the
switch.
Step 4 interface interface-id (Optional) Enter interface configuration mode, and specify the interface
on which to apply the macro.
Step 5 default interface interface-id (Optional) Clear all configuration from the specified interface.
Step 6 macro {apply | trace} macro-name Apply each individual command defined in the macro to the interface by
[parameter {value}] [parameter entering macro apply macro-name. Specify macro trace macro-name
{value}] [parameter {value}] to apply and debug a macro to find any syntax or configuration errors.
(Optional) Specify unique parameter values that are specific to the
interface. You can enter up to three keyword-value pairs. Parameter
keyword matching is case sensitive. All matching occurrences of the
keyword are replaced with the corresponding value.
Some macros might contain keywords that require a parameter value.
You can use the macro apply macro-name ? command to display a list
of any required values in the macro. If you apply a macro without
entering the keyword values, the commands are invalid and are not
applied.
Step 7 macro description text (Optional) Enter a description about the macro that is applied to the
interface.
Step 8 end Return to privileged EXEC mode.
Step 9 show parser macro description Verify that the macro is applied to the interface.
[interface interface-id]
Step 10 copy running-config startup-config (Optional) Save your entries in the configuration file.
You can delete a global macro-applied configuration on a switch only by entering the no version of each
command that is in the macro. You can delete a macro-applied configuration on an interface by entering
the default interface interface-id interface configuration command.
This example shows how to apply the user-created macro called snmp, to set the host name address to
test-server and to set the IP precedence value to 7:
Switch(config)# macro global apply snmp ADDRESS test-server VALUE 7
This example shows how to debug the user-created macro called snmp by using the macro global trace
global configuration command to find any syntax or configuration errors in the macro when it is applied
to the switch.
Switch(config)# macro global trace snmp VALUE 7
Applying command...‘snmp-server enable traps port-security’
Applying command...‘snmp-server enable traps linkup’
Applying command...‘snmp-server enable traps linkdown’
Applying command...‘snmp-server host’
%Error Unknown error.
Applying command...‘snmp-server ip precedence 7’
This example shows how to apply the user-created macro called desktop-config and to verify the
configuration.
Switch(config)# interface fastethernet0/2
Switch(config-if)# macro apply desktop-config
Switch(config-if)# end
Switch# show parser macro description
Interface Macro Description
--------------------------------------------------------------
Gi0/2 desktop-config
--------------------------------------------------------------
This example shows how to apply the user-created macro called desktop-config and to replace all
occurrences of VLAN 1 with VLAN 25:
Switch(config-if)# macro apply desktop-config vlan 25
Command Purpose
Step 1 show parser macro Display the Cisco-default Smartports macros embedded in the switch
software.
Step 2 show parser macro macro-name Display the specific macro that you want to apply.
Step 3 configure terminal Enter global configuration mode.
Step 4 macro global {apply | trace} Append the Cisco-default macro with the required values by using the
macro-name [parameter {value}] parameter value keywords and apply the macro to the switch.
[parameter {value}] [parameter Keywords that begin with $ mean that a unique parameter value is
{value}] required.
You can use the macro global apply macro-name ? command to display
a list of any required values in the macro. If you apply a macro without
entering the keyword values, the commands are invalid and are not
applied.
Step 5 interface interface-id (Optional) Enter interface configuration mode, and specify the interface
on which to apply the macro.
Command Purpose
Step 6 default interface interface-id (Optional) Clear all configuration from the specified interface.
Step 7 macro {apply | trace} macro-name Append the Cisco-default macro with the required values by using the
[parameter {value}] [parameter parameter value keywords, and apply the macro to the interface.
{value}] [parameter {value}] Keywords that begin with $ mean that a unique parameter value is
required.
You can use the macro apply macro-name ? command to display a list
of any required values in the macro. If you apply a macro without
entering the keyword values, the commands are invalid and are not
applied.
Step 8 end Return to privileged EXEC mode.
Step 9 show running-config interface Verify that the macro is applied to an interface.
interface-id
Step 10 copy running-config startup-config (Optional) Save your entries in the configuration file.
You can delete a global macro-applied configuration on a switch only by entering the no version of each
command that is in the macro. You can delete a macro-applied configuration on an interface by entering
the default interface interface-id interface configuration command.
This example shows how to display the cisco-desktop macro, how to apply the macro, and to set the
access VLAN ID to 25 on an interface:
Switch# show parser macro cisco-desktop
--------------------------------------------------------------
Macro name : cisco-desktop
Macro type : default
Command Purpose
show parser macro Displays all configured macros.
show parser macro name macro-name Displays a specific macro.
show parser macro brief Displays the configured macro names.
show parser macro description [interface Displays the macro description for all interfaces or for a specified
interface-id] interface.
This chapter describes how to configure the Spanning Tree Protocol (STP) on port-based VLANs on
your Catalyst 2940 switch. The switch uses the per-VLAN spanning-tree plus (PVST+) protocol based
on the IEEE 802.1D standard and Cisco proprietary extensions, or it can use the rapid per-VLAN
spanning-tree plus (rapid-PVST+) protocol based on the IEEE 802.1w standard.
For information about the Multiple Spanning Tree Protocol (MSTP) and how to map multiple VLANs
to the same spanning-tree instance, see Chapter 11, “Configuring MSTP.”
For information about other spanning-tree features such as Port Fast, UplinkFast, root guard, and so
forth, see Chapter 12, “Configuring Optional Spanning-Tree Features.”
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
STP Overview
STP is a Layer 2 link management protocol that provides path redundancy while preventing loops in the
network. For a Layer 2 Ethernet network to function properly, only one active path can exist between
any two stations. Multiple active paths among end stations cause loops in the network. If a loop exists
in the network, end stations might receive duplicate messages. Switches might also learn end-station
MAC addresses on multiple Layer 2 interfaces. These conditions result in an unstable network.
Spanning-tree operation is transparent to end stations, which cannot detect whether they are connected
to a single LAN segment or a switched LAN of multiple segments.
The STP uses a spanning-tree algorithm to select one switch of a redundantly connected network as the
root of the spanning tree. The algorithm calculates the best loop-free path through a switched Layer 2
network by assigning a role to each port based on the role of the port in the active topology:
• Root—A forwarding port elected for the spanning-tree topology
• Designated—A forwarding port elected for every switched LAN segment
• Alternate—A blocked port providing an alternate path to the root port in the spanning tree
• Backup—A blocked port in a loopback configuration
Switches that have ports with these assigned roles are called root or designated switches.
Spanning tree forces redundant data paths into a standby (blocked) state. If a network segment in the
spanning tree fails and a redundant path exists, the spanning-tree algorithm recalculates the
spanning-tree topology and activates the standby path. Switches send and receive spanning-tree frames,
called bridge protocol data units (BPDUs), at regular intervals. The switches do not forward these frames
but use them to construct a loop-free path. BPDUs contain information about the sending switch and its
ports, including switch and MAC addresses, switch priority, port priority, and path cost. Spanning tree
uses this information to elect the root switch and root port for the switched network and the root port and
designated port for each switched segment.
When two interfaces on a switch are part of a loop, the spanning-tree port priority and path cost settings
determine which interface is put in the forwarding state and which is put in the blocking state. The
spanning-tree port priority value represents the location of an interface in the network topology and how
well it is located to pass traffic. The path cost value represents the media speed.
When the switches in a network are powered up, each functions as the root switch. Each switch sends a
configuration BPDU through all of its ports. The BPDUs communicate and compute the spanning-tree
topology. Each configuration BPDU contains this information:
• The unique bridge ID of the switch that the sending switch identifies as the root switch
• The spanning-tree path cost to the root
• The bridge ID of the sending switch
• Message age
• The identifier of the sending interface
• Values for the hello, forward-delay, and max-age protocol timers
When a switch receives a configuration BPDU that contains superior information (lower bridge ID,
lower path cost, and so forth), it stores the information for that port. If this BPDU is received on the root
port of the switch, the switch also forwards it with an updated message to all attached LANs for which
it is the designated switch.
If a switch receives a configuration BPDU that contains inferior information to that currently stored for
that port, it discards the BPDU. If the switch is a designated switch for the LAN from which the inferior
BPDU was received, it sends that LAN a BPDU containing the up-to-date information stored for that
port. In this way, inferior information is discarded, and superior information is propagated on the
network.
A BPDU exchange results in these actions:
• One switch in the network is elected as the root switch (the logical center of the spanning-tree
topology in a switched network).
For each VLAN, the switch with the highest switch priority (the lowest numerical priority value) is
elected as the root switch. If all switches are configured with the default priority (32768), the switch
with the lowest MAC address in the VLAN becomes the root switch. The switch priority value
occupies the most significant bits of the bridge ID, as shown in Table 10-1 on page 10-4.
• A root port is selected for each switch (except the root switch). This port provides the best path
(lowest cost) when the switch forwards packets to the root switch.
• The shortest distance to the root switch is calculated for each switch based on the path cost.
• A designated switch for each LAN segment is selected. The designated switch incurs the lowest path
cost when forwarding packets from that LAN to the root switch. The port through which the
designated switch is attached to the LAN is called the designated port.
• Interfaces included in the spanning-tree instance are selected. Root ports and designated ports are
put in the forwarding state.
• All paths that are not needed to reach the root switch from anywhere in the switched network are
placed in the spanning-tree blocking mode.
Catalyst 2940 switches support the 802.1t spanning-tree extensions in all releases of software. The result
is that fewer MAC addresses are reserved for the switch, and a larger range of VLAN IDs can be
supported, all while maintaining the uniqueness of the bridge ID. As shown in Table 10-1, the two bytes
previously used for the switch priority are reallocated into a 4-bit priority value and a 12-bit extended
system ID value equal to the VLAN ID.
Switch Priority Value Extended System ID (Set Equal to the VLAN ID)
Bit 16 Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1
32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1
Spanning tree uses the extended system ID, the switch priority, and the allocated spanning-tree MAC
address to make the bridge ID unique for each VLAN. With earlier releases, spanning tree used one MAC
address per VLAN to make the bridge ID unique for each VLAN.
Support for the extended system ID affects how you manually configure the root switch, the secondary
root switch, and the switch priority of a VLAN. For example, when you change the switch priority value,
you change the probability that the switch will be elected as the root switch. Configuring a higher value
decreases the probability; a lower value increases the probability. For more information, see the
“Configuring the Root Switch” section on page 10-14, the “Configuring a Secondary Root Switch”
section on page 10-16, and the “Configuring the Switch Priority of a VLAN” section on page 10-19.
Power-on
initialization
Blocking
state
Listening Disabled
state state
Learning
state
Forwarding
43569
state
When you power up the switch, spanning tree is enabled by default, and every interface in the switch,
VLAN, or network goes through the blocking state and the transitory states of listening and learning.
Spanning tree stabilizes each interface at the forwarding or blocking state.
When the spanning-tree algorithm places a Layer 2 interface in the forwarding state, this process occurs:
1. The interface is in the listening state while spanning tree waits for protocol information to transition
the interface to the blocking state.
2. While spanning tree waits the forward-delay timer to expire, it moves the interface to the learning
state and resets the forward-delay timer.
3. In the learning state, the interface continues to block frame forwarding as the switch learns
end-station location information for the forwarding database.
4. When the forward-delay timer expires, spanning tree moves the interface to the forwarding state,
where both learning and frame forwarding are enabled.
Blocking State
A Layer 2 interface in the blocking state does not participate in frame forwarding. After initialization, a
BPDU is sent to each interface in the switch. A switch initially functions as the root until it exchanges
BPDUs with other switches. This exchange establishes which switch in the network is the root or root
switch. If there is only one switch in the network, no exchange occurs, the forward-delay timer expires,
and the interfaces move to the listening state. An interface always enters the blocking state after switch
initialization.
An interface in the blocking state performs as follows:
• Discards frames received on the port
• Discards frames switched from another interface for forwarding
• Does not learn addresses
• Receives BPDUs
Listening State
The listening state is the first state a Layer 2 interface enters after the blocking state. The interface enters
this state when the spanning tree determines that the interface should participate in frame forwarding.
An interface in the listening state performs as follows:
• Discards frames received on the port
• Discards frames switched from another interface for forwarding
• Does not learn addresses
• Receives BPDUs
Learning State
A Layer 2 interface in the learning state prepares to participate in frame forwarding. The interface enters
the learning state from the listening state.
An interface in the learning state performs as follows:
• Discards frames received on the port
• Discards frames switched from another interface for forwarding
• Learns addresses
• Receives BPDUs
Forwarding State
A Layer 2 interface in the forwarding state forwards frames. The interface enters the forwarding state
from the learning state.
An interface in the forwarding state performs as follows:
• Receives and forwards frames received on the port
• Forwards frames switched from another port
• Learns addresses
• Receives BPDUs
Disabled State
A Layer 2 interface in the disabled state does not participate in frame forwarding or in the spanning tree.
An interface in the disabled state is nonoperational.
A disabled interface performs as follows:
• Discards frames received on the port
• Discards frames switched from another interface for forwarding
• Does not learn addresses
• Does not receive BPDUs
DP
DP DP
A D
DP RP
RP RP DP
86475
B C
RP = Root Port
DP = Designated Port
When the spanning-tree topology is calculated based on default parameters, the path between source and
destination end stations in a switched network might not be ideal. For instance, connecting higher-speed
links to an interface that has a higher number than the root port can cause a root-port change. The goal
is to make the fastest link the root port.
For example, assume that one port on Switch B is a Gigabit Ethernet link and that another port on
Switch B (a 10/100 link) is the root port. Network traffic might be more efficient over the Gigabit
Ethernet link. By changing the spanning-tree port priority on the Gigabit Ethernet interface to a higher
priority (lower numerical value) than the root port, the Gigabit Ethernet interface becomes the new root
port.
Active link
101226
Blocked link
Workstations
You can also create redundant links between switches by using EtherChannel groups. For more
information, see Chapter 25, “Configuring EtherChannels.”
In a mixed MSTP and PVST+ network, the common spanning-tree (CST) root must be inside the MST
backbone, and a PVST+ switch cannot connect to multiple MST regions.
When a network contains switches running rapid PVST+ and switches running PVST+, we recommend
that the rapid-PVST+ switches and PVST+ switches be configured for different spanning-tree instances.
In the rapid-PVST+ spanning-tree instances, the root switch must be a rapid-PVST+ switch. In the
PVST+ instances, the root switch must be a PVST+ switch. The PVST+ switches should be at the edge
of the network.
If 12 instances of spanning tree are already in use, you can disable spanning tree on one of the VLANs
and then enable it on the VLAN where you want it to run. Use the no spanning-tree vlan vlan-id global
configuration command to disable spanning tree on a specific VLAN, and use the spanning-tree vlan
vlan-id global configuration command to enable spanning tree on the desired VLAN.
Caution Switches that are not running spanning tree still forward BPDUs that they receive so that the other
switches on the VLAN that have a running spanning-tree instance can break loops. Therefore, spanning
tree must be running on enough switches to break all the loops in the network; for example, at least one
switch on each loop in the VLAN must be running spanning tree. It is not absolutely necessary to run
spanning tree on all switches in the VLAN; however, if you are running spanning tree only on a minimal
set of switches, an incautious change to the network that introduces another loop into the VLAN can
result in a broadcast storm.
Note If you have already used all available spanning-tree instances on your switch, adding another VLAN
anywhere in the VTP domain creates a VLAN that is not running spanning tree on that switch. If you
have the default allowed list on the trunk ports of that switch, the new VLAN is carried on all trunk ports.
Depending on the topology of the network, this could create a loop in the new VLAN that will not be
broken, particularly if there are several adjacent switches that have all run out of spanning-tree instances.
You can prevent this possibility by setting up allowed lists on the trunk ports of switches that have used
up their allocation of spanning-tree instances. Setting up allowed lists is not necessary in many cases and
can make it more labor-intensive to add another VLAN to the network.
Spanning-tree commands determine the configuration of VLAN spanning-tree instances. You create a
spanning-tree instance when you assign an interface to a VLAN. The spanning-tree instance is removed
when the last interface is moved to another VLAN. You can configure switch and port parameters before
a spanning-tree instance is created; these parameters are applied when the spanning-tree instance is
created.
The switch supports PVST+, rapid PVST+, and MSTP, but only one version can be active at any time.
(For example, all VLANs run PVST+, all VLANs run rapid PVST+, or all VLANs run MSTP.) For
information about the different spanning-tree modes and how they interoperate, see the “Spanning-Tree
Interoperability and Backward Compatibility” section on page 10-10.
For configuration guidelines about UplinkFast and BackboneFast, see the “Optional Spanning-Tree
Configuration Guidelines” section on page 12-10.
Beginning in privileged EXEC mode, follow these steps to change the spanning-tree mode. If you want
to enable a mode that is different from the default mode, this procedure is required.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mode {pvst | mst | Configure a spanning-tree mode.
rapid-pvst}
• Select pvst to enable PVST+ (the default setting).
• Select mst to enable MSTP (and RSTP). For more configuration
steps, see Chapter 11, “Configuring MSTP.”
• Select rapid-pvst to enable rapid PVST+.
Step 3 interface interface-id (Recommended for rapid-PVST+ mode only) Specify an interface to
configure, and enter interface configuration mode. Valid interfaces
include physical ports, VLANs, and port channels. Valid VLAN IDs are
1 to 4094. The port-channel range is 1 to 6.
Step 4 spanning-tree link-type point-to-point (Recommended for rapid-PVST+ mode only) Specify that the link type
for this port is point-to-point.
If you connect this port (local port) to a remote port through a
point-to-point link and the local port becomes a designated port, the
switch negotiates with the remote port and rapidly transitions the local
port to the forwarding state.
Step 5 end Return to privileged EXEC mode.
Step 6 clear spanning-tree detected-protocols (Recommended for rapid-PVST+ mode only) If any port on the switch
is connected to a port on a legacy 802.1D switch, restart the protocol
migration process on the entire switch.
This step is optional if the designated switch determines that this switch
is running rapid PVST+.
Step 7 show spanning-tree summary Verify your entries.
and
show spanning-tree interface
interface-id
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree mode global configuration command. To return
the port to its default setting, use the no spanning-tree link-type interface configuration command.
Caution When spanning tree is disabled and loops are present in the topology, excessive traffic and indefinite
packet duplication can drastically reduce network performance.
Beginning in privileged EXEC mode, follow these steps to disable spanning tree on a per-VLAN basis.
This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no spanning-tree vlan vlan-id Disable spanning tree on a per-VLAN basis.
For vlan-id, you can specify a single VLAN identified by VLAN ID
number, a range of VLANs separated by a hyphen, or a series of VLANs
separated by a comma. The range is 1 to 4094.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree vlan vlan-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To re-enable spanning tree, use the spanning-tree vlan vlan-id global configuration command.
Note The spanning-tree vlan vlan-id root global configuration command fails if the value necessary to be the
root switch is less than 1.
With the extended system ID, if all network devices in VLAN 20 have the default priority of 32768,
entering the spanning-tree vlan 20 root primary command on the switch sets the switch priority to
24576, which causes this switch to become the root switch for VLAN 20.
Note If your network consists of switches that both do and do not support the extended system ID, it is unlikely
that the switch with the extended system ID support will become the root switch. The extended system
ID increases the switch priority value every time the VLAN number is greater than the priority of the
connected switches running older software.
Note The root switch for each spanning-tree instance should be a backbone or distribution switch. Do not
configure an access switch as the spanning-tree primary root.
Use the diameter keyword to specify the Layer 2 network diameter (that is, the maximum number of
switch hops between any two end stations in the Layer 2 network). When you specify the network
diameter, the switch automatically sets an optimal hello time, forward-delay time, and maximum-age
time for a network of that diameter, which can significantly reduce the convergence time. You can use
the hello keyword to override the automatically calculated hello time.
Note After configuring the switch as the root switch, we recommend that you avoid manually configuring the
hello time, forward-delay time, and maximum-age time by using the spanning-tree vlan vlan-id
hello-time, spanning-tree vlan vlan-id forward-time, and the spanning-tree vlan vlan-id max-age
global configuration commands.
Beginning in privileged EXEC mode, follow these steps to configure a switch to become the root for the
specified VLAN. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id root primary Configure a switch to become the root for the specified VLAN.
[diameter net-diameter [hello-time seconds]]
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a
hyphen, or a series of VLANs separated by a comma. The
range is 1 to 4094.
• (Optional) For diameter net-diameter, specify the
maximum number of switches between any two end
stations. The range is 2 to 7.
• (Optional) For hello-time seconds, specify the interval in
seconds between the generation of configuration messages
by the root switch. The range is 1 to 10 seconds; the
default is 2 seconds.
Note When you enter this command without the optional
keywords, the switch recalculates the forward-time,
hello-time, max-age, and priority settings. If you had
previously configured these parameters, the switch
recalculates them.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree detail Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id root global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id root secondary Configure a switch to become the secondary root for the specified
[diameter net-diameter [hello-time VLAN.
seconds]] • For vlan-id, you can specify a single VLAN identified by VLAN
ID number, a range of VLANs separated by a hyphen, or a series
of VLANs separated by a comma. The range is 1 to 4094.
• (Optional) For diameter net-diameter, specify the maximum
number of switches between any two end stations. The range is
2 to 7.
• (Optional) For hello-time seconds, specify the interval in
seconds between the generation of configuration messages by
the root switch. The range is 1 to 10 seconds; the default is 2
seconds.
Use the same network diameter and hello-time values that you used
when configuring the primary root switch. See the “Configuring the
Root Switch” section on page 10-14.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree detail Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id root global
configuration command.
Beginning in privileged EXEC mode, follow these steps to configure the port priority of an interface.
This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface
configuration mode.
Valid interfaces include physical interfaces and
port-channel logical interfaces (port-channel
port-channel-number).
Step 3 spanning-tree port-priority priority Configure the port priority for an interface.
For priority, the range is 0 to 240 in increments of 16. The
default is 128. The lower the number, the higher the
priority.
Valid priority values are 0, 16, 32, 48, 64, 80, 96, 112, 128,
144, 160, 176, 192, 208, 224, and 240. All other values are
rejected.
Step 4 spanning-tree vlan vlan-id port-priority priority Configure the VLAN port priority for an interface.
• For vlan-id, you can specify a single VLAN identified
by VLAN ID number, a range of VLANs separated by
a hyphen, or a series of VLANs separated by a
comma.The range is 1 to 4094.
For priority, the range is 0 to 240 in increments of 16.
The default is 128. The lower the number, the higher
the priority.
Valid priority values are 0, 16, 32, 48, 64, 80, 96, 112,
128, 144, 160, 176, 192, 208, 224, and 240. All other
values are rejected.
Step 5 end Return to privileged EXEC mode.
Step 6 show spanning-tree interface interface-id Verify your entries.
or
show spanning-tree vlan vlan-id
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note The show spanning-tree interface interface-id privileged EXEC command displays information only
if the port is in a link-up operative state. Otherwise, you can use the show running-config interface
privileged EXEC command to confirm the configuration.
To return the interface to its default setting, use the no spanning-tree [vlan vlan-id] port-priority
interface configuration command. For information on how to configure load sharing on trunk ports by
using spanning-tree port priorities, see the “Load Sharing Using STP” section on page 13-21.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface
configuration mode. Valid interfaces include physical interfaces
and port-channel logical interfaces (port-channel
port-channel-number).
Step 3 spanning-tree cost cost Configure the cost for an interface.
If a loop occurs, spanning tree uses the path cost when selecting
an interface to place into the forwarding state. A lower path cost
represents higher-speed transmission.
For cost, the range is 1 to 200000000; the default value is derived
from the media speed of the interface.
Step 4 spanning-tree vlan vlan-id cost cost Configure the cost for a VLAN.
If a loop occurs, spanning tree uses the path cost when selecting
an interface to place into the forwarding state. A lower path cost
represents higher-speed transmission.
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a hyphen,
or a series of VLANs separated by a comma. The range is 1
to 4094.
• For cost, the range is 1 to 200000000; the default value is
derived from the media speed of the interface.
Step 5 end Return to privileged EXEC mode.
Step 6 show spanning-tree interface interface-id Verify your entries.
or
show spanning-tree vlan vlan-id
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note The show spanning-tree interface interface-id privileged EXEC command displays information only
for ports that are in a link-up operative state. Otherwise, you can use the show running-config privileged
EXEC command to confirm the configuration.
To return the interface to its default setting, use the no spanning-tree [vlan vlan-id] cost interface
configuration command. For information on how to configure load sharing on trunk ports by using
spanning-tree path costs, see the “Load Sharing Using STP” section on page 13-21.
Note Exercise care when using this command. For most situations, we recommend that you use the
spanning-tree vlan vlan-id root primary and the spanning-tree vlan vlan-id root secondary global
configuration commands to modify the switch priority.
Beginning in privileged EXEC mode, follow these steps to configure the switch priority of a VLAN. This
procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id priority priority Configure the switch priority of a VLAN.
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a
hyphen, or a series of VLANs separated by a comma. The
range is 1 to 4094.
• For priority, the range is 0 to 61440 in increments of
4096; the default is 32768. The lower the number, the
more likely the switch will be chosen as the root switch.
Valid priority values are 4096, 8192, 12288, 16384,
20480, 24576, 28672, 32768, 36864, 40960, 45056,
49152, 53248, 57344, and 61440. All other values are
rejected.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree vlan vlan-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id priority global
configuration command.
Variable Description
Hello timer Determines how often the switch broadcasts hello messages to other switches.
Forward-delay timer Determines how long each of the listening and learning states last before the interface begins
forwarding.
Maximum-age timer Determines the amount of time the switch stores protocol information received on an interface.
Note Exercise care when using this command. For most situations, we recommend that you use the
spanning-tree vlan vlan-id root primary and the spanning-tree vlan vlan-id root secondary global
configuration commands to modify the hello time.
Beginning in privileged EXEC mode, follow these steps to configure the hello time of a VLAN. This
procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id hello-time seconds Configure the hello time of a VLAN. The hello time is the
interval between the generation of configuration messages by
the root switch. These messages mean that the switch is alive.
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a
hyphen, or a series of VLANs separated by a comma. The
range is 1 to 4094.
• For seconds, the range is 1 to 10; the default is 2.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree vlan vlan-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id hello-time global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id forward-time Configure the forward time of a VLAN. The forward delay is the
seconds number of seconds a port waits before changing from its
spanning-tree learning and listening states to the forwarding state.
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a hyphen,
or a series of VLANs separated by a comma. The range is 1 to
4094.
• For seconds, the range is 4 to 30; the default is 15.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree vlan vlan-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id forward-time global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree vlan vlan-id max-age seconds Configure the maximum-aging time of a VLAN. The
maximum-aging time is the number of seconds a switch waits
without receiving spanning-tree configuration messages before
attempting a reconfiguration.
• For vlan-id, you can specify a single VLAN identified by
VLAN ID number, a range of VLANs separated by a
hyphen, or a series of VLANs separated by a comma. The
range is 1 to 4094.
• For seconds, the range is 6 to 40; the default is 20.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree vlan vlan-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree vlan vlan-id max-age global
configuration command.
Command Purpose
show spanning-tree active Displays spanning-tree information on active interfaces only.
show spanning-tree detail Displays a detailed summary of interface information.
show spanning-tree interface interface-id Displays spanning-tree information for the specified interface.
show spanning-tree summary [totals] Displays a summary of port states or displays the total lines of the STP state
section.
You can clear spanning-tree counters by using the clear spanning-tree [interface interface-id]
privileged EXEC command.
For information about other keywords for the show spanning-tree privileged EXEC command, see the
command reference for this release.
This chapter describes how to configure the Cisco implementation of the IEEE 802.1s Multiple STP
(MSTP) on your Catalyst 2940 switch.
Note The multiple spanning-tree (MST) implementation is a pre-standard implementation. It is based on the
draft version of the IEEE standard.
The MSTP enables multiple VLANs to be mapped to the same spanning-tree instance, thereby reducing
the number of spanning-tree instances needed to support a large number of VLANs. The MSTP provides
for multiple forwarding paths for data traffic and enables load balancing. It improves the fault tolerance
of the network because a failure in one instance (forwarding path) does not affect other instances
(forwarding paths). The most common initial deployment of MSTP is in the backbone and distribution
layers of a Layer 2 switched network. This deployment provides the highly available network required
in a service-provider environmentt.
When the switch is in the MST mode, the Rapid Spanning Tree Protocol (RSTP), which is based on
IEEE 802.1w, is automatically enabled. The RSTP provides rapid convergence of the spanning tree
through explicit handshaking that eliminates the IEEE 802.1D forwarding delay and quickly transitions
root ports and designated ports to the forwarding state.
Both MSTP and RSTP improve the spanning-tree operation and maintain backward-compatibility with
equipment that is based on the (original) 802.1D spanning tree, with existing Cisco-proprietary Multiple
Instance STP (MISTP) and with existing Cisco per-VLAN spanning-tree plus (PVST+) and rapid
per-VLAN spanning-tree plus (rapid PVST+). For information about PVST+ and rapid PVST+, see
Chapter 10, “Configuring STP.” For information about other spanning-tree features such as Port Fast,
UplinkFast, root guard, and so forth, see Chapter 12, “Configuring Optional Spanning-Tree Features.”
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding MSTP
MSTP, which uses RSTP for rapid convergence, enables VLANs to be grouped into a spanning-tree
instance, with each instance having a spanning-tree topology independent of other spanning-tree
instances. This architecture provides multiple forwarding paths for data traffic, enables load balancing,
and reduces the number of spanning-tree instances required to support a large number of VLANs.
These sections describe how the MSTP works:
• Multiple Spanning-Tree Regions, page 11-2
• IST, CIST, and CST, page 11-2
• Hop Count, page 11-4
• Boundary Ports, page 11-5
• Interoperability with 802.1D STP, page 11-5
For configuration information, see the “Configuring MSTP Features” section on page 11-11.
All MST instances within the same region share the same protocol timers, but each MST instance
has its own topology parameters, such as root switch ID, root path cost, and so forth. By default, all
VLANs are assigned to the IST.
An MST instance is local to the region; for example, MST instance 1 in region A is independent of
MST instance 1 in region B, even if regions A and B are interconnected.
• A common and internal spanning tree (CIST), which is a collection of the ISTs in each MST region,
and the common spanning tree (CST) that interconnects the MST regions and single spanning trees.
The spanning tree computed in a region appears as a subtree in the CST that encompasses the entire
switched domain. The CIST is formed as a result of the spanning-tree algorithm running between
switches that support the 802.1w, 802.1s and 802.1D protocols. The CIST inside an MST region is
the same as the CST outside a region.
For more information, see the “Operations Within an MST Region” section on page 11-3 and the
“Operations Between MST Regions” section on page 11-3.
Figure 11-1 MST Regions, IST Masters, and the CST Root
A IST master
and CST root
D
Legacy 802.1D
MST Region 1
B
IST master C IST master
74009
Figure 11-1 does not show additional MST instances for each region. Note that the topology of MST
instances can be different from that of the IST for the same region.
Only the CST instance sends and receives BPDUs, and MST instances add their spanning-tree
information into the BPDUs to interact with neighboring switches and compute the final spanning-tree
topology. Because of this, the spanning-tree parameters related to BPDU transmission (for example,
hello time, forward time, max-age, and max-hops) are configured only on the CST instance but affect all
MST instances. Parameters related to the spanning-tree topology (for example, switch priority, port
VLAN cost, port VLAN priority) can be configured on both the CST instance and the MST instance.
MSTP switches use version 3 RSTP BPDUs or 802.1D STP BPDUs to communicate with legacy 802.1D
switches. MSTP switches use MSTP BPDUs to communicate with MSTP switches.
Hop Count
The IST and MST instances do not use the message-age and maximum-age information in the
configuration BPDU to compute the spanning-tree topology. Instead, they use the path cost to the root
and a hop-count mechanism similar to the IP time-to-live (TTL) mechanism.
By using the spanning-tree mst max-hops global configuration command, you can configure the
maximum hops inside the region and apply it to the IST and all MST instances in that region. The hop
count achieves the same result as the message-age information (determines when to trigger a
reconfiguration). The root switch of the instance always sends a BPDU (or M-record) with a cost of 0
and the hop count set to the maximum value. When a switch receives this BPDU, it decrements the
received remaining hop count by one and propagates this value as the remaining hop count in the BPDUs
it generates. When the count reaches zero, the switch discards the BPDU and ages the information held
for the port.
The message-age and maximum-age information in the RSTP portion of the BPDU remain the same
throughout the region, and the same values are propagated by the region’s designated ports at the
boundary.
Boundary Ports
A boundary port is a port that connects an MST region to a single spanning-tree region running RSTP,
to a single spanning-tree region running PVST+ or rapid PVST+, or to another MST region with a
different MST configuration. A boundary port also connects to a LAN, the designated switch of which
is either a single spanning-tree switch or a switch with a different MST configuration.
At the boundary, the roles of the MST ports do not matter, and their state is forced to be the same as the
IST port state (MST ports at the boundary are in the forwarding state only when the IST port is
forwarding). An IST port at the boundary can have any port role except a backup port role.
On a shared boundary link, the MST ports wait in the blocking state for the forward-delay time to expire
before transitioning to the learning state. The MST ports wait another forward-delay time before
transitioning to the forwarding state.
If the boundary port is on a point-to-point link and it is the IST root port, the MST ports transition to the
forwarding state as soon as the IST port transitions to the forwarding state.
If the IST port is a designated port on a point-to-point link and if the IST port transitions to the
forwarding state because of an agreement received from its peer port, the MST ports also immediately
transition to the forwarding state.
If a boundary port transitions to the forwarding state in an IST instance, it is forwarding in all MST
instances, and a topology change is triggered. If a boundary port with the IST root or designated port
role receives a topology change notice external to the MST cloud, the MSTP switch triggers a topology
change in the IST instance and in all the MST instances active on that port.
Understanding RSTP
The RSTP takes advantage of point-to-point wiring and provides rapid convergence of the spanning tree.
Reconfiguration of the spanning tree can occur in less than 1 second (in contrast to 50 seconds with the
default settings in the 802.1D spanning tree), which is critical for networks carrying delay-sensitive
traffic such as voice and video.
These section describes how the RSTP works:
• Port Roles and the Active Topology, page 11-6
• Rapid Convergence, page 11-7
• Synchronization of Port Roles, page 11-8
• Bridge Protocol Data Unit Format and Processing, page 11-9
For configuration information, see the “Configuring MSTP Features” section on page 11-11.
To be consistent with Cisco STP implementations, this guide documents the port state as blocking
instead of discarding. Designated ports start in the listening state.
Rapid Convergence
The RSTP provides for rapid recovery of connectivity following the failure of a switch, a switch port, or
a LAN. It provides rapid convergence for edge ports, new root ports, and ports connected through
point-to-point links as follows:
• Edge ports—If you configure a port as an edge port on an RSTP switch by using the spanning-tree
portfast interface configuration command, the edge port immediately transitions to the forwarding
state. An edge port is the same as a Port Fast-enabled port, and you should enable it only on ports
that connect to a single end station.
• Root ports—If the RSTP selects a new root port, it blocks the old root port and immediately
transitions the new root port to the forwarding state.
• Point-to-point links—If you connect a port to another port through a point-to-point link and the local
port becomes a designated port, it negotiates a rapid transition with the other port by using the
proposal-agreement handshake to ensure a loop-free topology.
As shown in Figure 11-2, Switch A is connected to Switch B through a point-to-point link, and all
of the ports are in the blocking state. Assume that the priority of Switch A is a smaller numerical
value than the priority of Switch B. Switch A sends a proposal message (a configuration BPDU) with
the proposal flag set) to Switch B, proposing itself as the designated switch.
After receiving the proposal message, Switch B selects as its new root port the port from which the
proposal message was received, forces all nonedge ports to the blocking state, and sends an
agreement message (a BPDU with the agreement flag set) through its new root port.
After receiving Switch B’s agreement message, Switch A also immediately transitions its designated
port to the forwarding state. No loops in the network are formed because Switch B blocked all of its
nonedge ports and because there is a point-to-point link between Switches A and B.
When Switch C is connected to Switch B, a similar set of handshaking messages are exchanged.
Switch C selects the port connected to Switch B as its root port, and both ends immediately
transition to the forwarding state. With each iteration of this handshaking process, one more switch
joins the active topology. As the network converges, this proposal-agreement handshaking
progresses from the root toward the leaves of the spanning tree.
The switch determines the link type from the port duplex mode: a full-duplex port is considered to
have a point-to-point connection; a half-duplex port is considered to have a shared connection. You
can override the default setting that is determined by the duplex setting by using the spanning-tree
link-type interface configuration command.
Designated
Root Agreement switch
F F
DP RP
Designated
Root switch Proposal Switch C
F F
DP RP
Designated
Root switch Agreement
F F F F
DP RP DP RP
DP = designated port
74007
RP = root port
F = forwarding
4. Agreement 1. Proposal
5. Forward
Edge port
2. Block 3. Block
9. Forward 11. Forward
Root port
74008
Designated port
Bit Function
0 Topology change (TC)
1 Proposal
2–3: Port role:
00 Unknown
01 Alternate port
10 Root port
11 Designated port
4 Learning
5 Forwarding
6 Agreement
7 Topology change acknowledgement (TCA)
The sending switch sets the proposal flag in the RSTP BPDU to propose itself as the designated switch
on that LAN. The port role in the proposal message is always set to the designated port.
The sending switch sets the agreement flag in the RSTP BPDU to accept the previous proposal. The port
role in the agreement message is always set to the root port.
The RSTP does not have a separate topology change notification (TCN) BPDU. It uses the topology
change (TC) flag to show the topology changes. However, for interoperability with 802.1D switches, the
RSTP switch processes and generates TCN BPDUs.
The learning and forwarding flags are set according to the state of the sending port.
Topology Changes
This section describes the differences between the RSTP and the 802.1D in handling spanning-tree
topology changes.
• Detection—Unlike 802.1D in which any transition between the blocking and the forwarding state
causes a topology change, only transitions from the blocking to the forwarding state cause a
topology change with RSTP (only an increase in connectivity is considered a topology change).
State changes on an edge port do not cause a topology change. When an RSTP switch detects a
topology change, it flushes the learned information on all of its nonedge ports except on those from
which it received the TC notification.
• Notification—Unlike 802.1D, which uses TCN BPDUs, the RSTP does not use them. However, for
802.1D interoperability, an RSTP switch processes and generates TCN BPDUs.
• Acknowledgement—When an RSTP switch receives a TCN message on a designated port from an
802.1D switch, it replies with an 802.1D configuration BPDU with the TCA bit set. However, if the
TC-while timer (the same as the topology-change timer in 802.1D) is active on a root port connected
to an 802.1D switch and a configuration BPDU with the TCA bit set is received, the TC-while timer
is reset.
This behavior is only required to support 802.1D switches. The RSTP BPDUs never have the TCA
bit set.
For information about the supported number of spanning-tree instances, see the “Supported
Spanning-Tree Instances” section on page 10-9.
of the MST regions must contain the CST root, and all of the other MST regions must have a better
path to the root contained within the MST cloud than a path through the PVST+ or rapid-PVST+
cloud. You might have to manually configure the switches in the clouds.
• Partitioning the network into a large number of regions is not recommended. However, if this
situation is unavoidable, we recommend that you partition the switched LAN into smaller LANs
interconnected by routers or non-Layer 2 devices.
• For configuration guidelines about UplinkFast and BackboneFast, see the “Optional Spanning-Tree
Configuration Guidelines” section on page 12-10.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst configuration Enter MST configuration mode.
Step 3 instance instance-id vlan vlan-range Map VLANs to an MST instance.
• For instance-id, you can specify a single instance, a range of
instances separated by a hyphen, or a series of instances separated by
a comma. The range is 1 to 15.
• For vlan vlan-range, the range is 1 to 4094.
When you map VLANs to an MST instance, the mapping is incremental,
and the VLANs specified in the command are added to or removed from
the VLANs that were previously mapped.
To specify a VLAN range, use a hyphen; for example, instance 1 vlan
1-63 maps VLANs 1 through 63 to MST instance 1.
To specify a VLAN series, use a comma; for example, instance 1 vlan 10,
20, 30 maps VLANs 10, 20, and 30 to MST instance 1.
Step 4 name name Specify the configuration name. The name string has a maximum length
of 32 characters and is case sensitive.
Step 5 revision version Specify the configuration revision number. The range is 0 to 65535.
Step 6 show pending Verify your configuration by displaying the pending configuration.
Step 7 exit Apply all changes, and return to global configuration mode.
Command Purpose
Step 8 spanning-tree mode mst Enable MSTP. RSTP is also enabled.
You cannot run both MSTP and PVST+ or both MSTP and rapid PVST+
at the same time.
Step 9 end Return to privileged EXEC mode.
Step 10 show running-config Verify your entries.
Step 11 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default MST region configuration, use the no spanning-tree mst configuration global
configuration command. To return to the default VLAN-to-instance map, use the no instance instance-id
[vlan vlan-range] MST configuration command. To return to the default name, use the no name MST
configuration command. To return to the default revision number, use the no revision MST configuration
command. To re-enable PVST+, use the no spanning-tree mode or the spanning-tree mode pvst global
configuration command.
This example shows how to enter MST configuration mode, map VLANs 10 to 20 to MST instance 1,
name the region region1, set the configuration revision to 1, display the pending configuration, apply the
changes, and return to global configuration mode:
Switch(config)# spanning-tree mst configuration
Switch(config-mst)# instance 1 vlan 10-20
Switch(config-mst)# name region1
Switch(config-mst)# revision 1
Switch(config-mst)# show pending
Pending MST configuration
Name [region1]
Revision 1
Instance Vlans Mapped
-------- ---------------------
0 1-9,21-4094
1 10-20
-------------------------------
Switch(config-mst)# exit
Switch(config)#
If any root switch for the specified instance has a switch priority lower than 24576, the switch sets its
own priority to 4096 less than the lowest switch priority. (4096 is the value of the least-significant bit of
a 4-bit switch priority value as shown in Table 10-1 on page 10-4.)
Note Catalyst 2940 switches running software earlier than Cisco IOS Release 12.1(20)EA2 do not support the
MSTP.
If your network consists of switches that both do and do not support the extended system ID, it is unlikely
that the switch with the extended system ID support will become the root switch. The extended system
ID increases the switch priority value every time the VLAN number is greater than the priority of the
connected switches running older software.
The root switch for each spanning-tree instance should be a backbone or distribution switch. Do not
configure an access switch as the spanning-tree primary root.
Use the diameter keyword, which is available only for MST instance 0, to specify the Layer 2 network
diameter (that is, the maximum number of switch hops between any two end stations in the Layer 2
network). When you specify the network diameter, the switch automatically sets an optimal hello time,
forward-delay time, and maximum-age time for a network of that diameter, which can significantly
reduce the convergence time. You can use the hello keyword to override the automatically calculated
hello time.
Note After configuring the switch as the root switch, we recommend that you avoid manually configuring the
hello time, forward-delay time, and maximum-age time by using the spanning-tree mst hello-time,
spanning-tree mst forward-time, and the spanning-tree mst max-age global configuration commands
after configuring the switch as the root switch.
Beginning in privileged EXEC mode, follow these steps to configure a switch as the root switch. This
procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst instance-id root primary Configure a switch as the root switch.
[diameter net-diameter [hello-time seconds]] • For instance-id, you can specify a single instance, a range
of instances separated by a hyphen, or a series of instances
separated by a comma. The range is 0 to 15.
• (Optional) For diameter net-diameter, specify the
maximum number of switches between any two end
stations. The range is 2 to 7. This keyword is available
only for MST instance 0.
• (Optional) For hello-time seconds, specify the interval in
seconds between the generation of configuration messages
by the root switch. The range is 1 to 10 seconds; the
default is 2 seconds.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst instance-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst instance-id root global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst instance-id root Configure a switch as the secondary root switch.
secondary [diameter net-diameter
• For instance-id, you can specify a single instance, a range of
[hello-time seconds]]
instances separated by a hyphen, or a series of instances
separated by a comma. The range is 0 to 15.
• (Optional) For diameter net-diameter, specify the maximum
number of switches between any two end stations. The range is 2
to 7. This keyword is available only for MST instance 0.
• (Optional) For hello-time seconds, specify the interval in
seconds between the generation of configuration messages by
the root switch. The range is 1 to 10 seconds; the default
is 2 seconds.
Use the same network diameter and hello-time values that you used
when configuring the primary root switch. See the “Configuring the
Root Switch” section on page 11-14.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst instance-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst instance-id root global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface
configuration mode.
Valid interfaces include physical ports and port channels.
Valid port-channel numbers are 1 to 6.
Step 3 spanning-tree mst instance-id port-priority priority Configure the port priority for an MST instance.
• For instance-id, you can specify a single instance, a
range of instances separated by a hyphen, or a series of
instances separated by a comma. The range is 0 to 15.
• For priority, the range is 0 to 240 in increments of 16.
The default is 128. The lower the number, the higher
the priority.
Valid priority values are 0, 16, 32, 48, 64, 80, 96, 112,
128, 144, 160, 176, 192, 208, 224, and 240. All other
values are rejected.
Step 4 end Return to privileged EXEC mode.
Step 5 show spanning-tree mst interface interface-id Verify your entries.
or
show spanning-tree mst instance-id
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note The show spanning-tree mst interface interface-id privileged EXEC command displays information
only if the port is in a link-up operative state. Otherwise, you can use the show running-config interface
privileged EXEC command to confirm the configuration.
To return the interface to its default setting, use the no spanning-tree mst instance-id port-priority
interface configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface
configuration mode. Valid interfaces include physical ports and
port channels. Valid port-channel numbers are 1 to 6.
Step 3 spanning-tree mst instance-id cost cost Configure the cost for an MST instance.
If a loop occurs, the MSTP uses the path cost when selecting an
interface to place into the forwarding state. A lower path cost
represents higher-speed transmission.
• For instance-id, you can specify a single instance, a range of
instances separated by a hyphen, or a series of instances
separated by a comma. The range is 0 to 15.
• For cost, the range is 1 to 200000000; the default value is
derived from the media speed of the interface.
Step 4 end Return to privileged EXEC mode.
Step 5 show spanning-tree mst interface interface-id Verify your entries.
or
show spanning-tree mst instance-id
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note The show spanning-tree mst interface interface-id privileged EXEC command displays information
only for ports that are in a link-up operative state. Otherwise, you can use the show running-config
privileged EXEC command to confirm the configuration.
To return the interface to its default setting, use the no spanning-tree mst instance-id cost interface
configuration command.
Note Exercise care when using this command. For most situations, we recommend that you use the
spanning-tree mst instance-id root primary and the spanning-tree mst instance-id root secondary
global configuration commands to modify the switch priority.
Beginning in privileged EXEC mode, follow these steps to configure the switch priority. This procedure
is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst instance-id priority priority Configure the switch priority for an MST instance.
• For instance-id, you can specify a single instance, a
range of instances separated by a hyphen, or a series of
instances separated by a comma. The range is 0 to 15.
• For priority, the range is 0 to 61440 in increments of
4096; the default is 32768. The lower the number, the
more likely the switch will be chosen as the root switch.
Valid priority values are 0, 4096, 8192, 12288, 16384,
20480, 24576, 28672, 32768, 36864, 40960, 45056,
49152, 53248, 57344, and 61440. All other values are
rejected.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst instance-id Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst instance-id priority global
configuration command.
Note Exercise care when using this command. For most situations, we recommend that you use the
spanning-tree mst instance-id root primary and the spanning-tree mst instance-id root secondary
global configuration commands to modify the hello time.
Beginning in privileged EXEC mode, follow these steps to configure the hello time for all MST
instances. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst hello-time seconds Configure the hello time for all MST instances. The hello time
is the interval between the generation of configuration
messages by the root switch. These messages mean that the
switch is alive.
For seconds, the range is 1 to 10; the default is 2.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst hello-time global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst forward-time seconds Configure the forward time for all MST instances. The forward
delay is the number of seconds a port waits before changing from
its spanning-tree learning and listening states to the forwarding
state.
For seconds, the range is 4 to 30; the default is 15.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst forward-time global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst max-age seconds Configure the maximum-aging time for all MST instances. The
maximum-aging time is the number of seconds a switch waits
without receiving spanning-tree configuration messages before
attempting a reconfiguration.
For seconds, the range is 6 to 40; the default is 20.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst max-age global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree mst max-hops hop-count Specify the number of hops in a region before the BPDU is
discarded, and the information held for a port is aged.
For hop-count, the range is 1 to 40; the default is 20.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree mst Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree mst max-hops global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to configure, and enter interface
configuration mode. Valid interfaces include physical ports,
VLANs, and port channels. Valid VLAN IDs are 1 to 4094.
Valid port-channel numbers are 1 to 6.
Step 3 spanning-tree link-type point-to-point Specify that the link type of a port is point-to-point.
Step 4 end Return to privileged EXEC mode.
Step 5 show spanning-tree mst interface interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no spanning-tree link-type interface configuration
command.
Command Purpose
show spanning-tree mst configuration Displays the MST region configuration.
show spanning-tree mst instance-id Displays MST information for the specified instance.
show spanning-tree mst interface interface-id Displays MST information for the specified interface. Valid interfaces
include physical ports, VLANs, and port channels. Valid VLAN IDs are 1
to 4094. The valid port-channel range is 1 to 6.
For information about other keywords for the show spanning-tree privileged EXEC command, see the
command reference for this release.
This chapter describes how to configure optional spanning-tree features on your Catalyst 2940 switch.
You can configure all of these features when your switch is running the per-VLAN spanning-tree plus
(PVST+). You can configure only the noted features when your switch is running the Multiple Spanning
Tree Protocol (MSTP) or the rapid per-VLAN spanning-tree plus (rapid-PVST+) protocol.
For information on configuring the PVST+ and rapid PVST+, see Chapter 10, “Configuring STP.” For
information about the Multiple Spanning Tree Protocol (MSTP) and how to map multiple VLANs to the
same spanning-tree instance, see Chapter 11, “Configuring MSTP.”
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Note Because the purpose of Port Fast is to minimize the time ports must wait for spanning-tree to converge,
it is effective only when used on ports connected to end stations. If you enable Port Fast on a port
connecting to another switch, you risk creating a spanning-tree loop.
You can enable this feature by using the spanning-tree portfast interface configuration or the
spanning-tree portfast default global configuration command.
Server
Port
Port Fast-enabled port
Fast-enabled
ports
101225
Workstations Workstations
You can enable the BPDU guard feature for the entire switch or for an interface.
Caution Enabling BPDU filtering on an interface is the same as disabling spanning tree on it and can result in
spanning-tree loops.
You can enable the BPDU filtering feature for the entire switch or for an interface.
Understanding UplinkFast
Switches in hierarchical networks can be grouped into backbone switches, distribution switches, and
access switches. Figure 12-2 shows a complex network where distribution switches and access switches
each have at least one redundant link that spanning tree blocks to prevent loops.
Backbone switches
Root bridge
Distribution switches
101231
Active link Access switches
Blocked link
If a switch looses connectivity, it begins using the alternate paths as soon as the spanning tree selects a
new root port. By enabling UplinkFast with the spanning-tree uplinkfast global configuration
command, you can accelerate the choice of a new root port when a link or switch fails or when the
spanning tree reconfigures itself. The root port transitions to the forwarding state immediately without
going through the listening and learning states, as it would with the normal spanning-tree procedures.
When the spanning tree reconfigures the new root port, other interfaces flood the network with multicast
packets, one for each address that was learned on the interface. You can limit these bursts of multicast
traffic by reducing the max-update-rate parameter (the default for this parameter is 150 packets per
second). However, if you enter zero, station-learning frames are not generated, so the spanning-tree
topology converges more slowly after a loss of connectivity.
Note UplinkFast is most useful in wiring-closet switches at the access or edge of the network. It is not
appropriate for backbone devices. This feature might not be useful for other types of applications.
UplinkFast provides fast convergence after a direct link failure and achieves load balancing between
redundant Layer 2 links using uplink groups. An uplink group is a set of Layer 2 interfaces (per VLAN),
only one of which is forwarding at any given time. Specifically, an uplink group consists of the root port
(which is forwarding) and a set of blocked ports, except for self-looping ports. The uplink group provides
an alternate path in case the currently forwarding link fails.
Figure 12-3 shows an example topology with no link failures. Switch A, the root switch, is connected
directly to Switch B over link L1 and to Switch C over link L2. The Layer 2 interface on Switch C that
is connected directly to Switch B is in a blocking state.
Switch A
(Root) Switch B
L1
L2 L3
Blocked port
43575
Switch C
If Switch C detects a link failure on the currently active link L2 on the root port (a direct link failure),
UplinkFast unblocks the blocked port on Switch C and transitions it to the forwarding state without
going through the listening and learning states, as shown in Figure 12-4. This change takes
approximately 1 to 5 seconds.
Switch A
(Root) Switch B
L1
L2 L3
Link failure
UplinkFast transitions port
directly to forwarding state.
43576
Switch C
Understanding BackboneFast
BackboneFast detects indirect failures in the core of the backbone. BackboneFast is a complementary
technology to the UplinkFast feature, which responds to failures on links directly connected to access
switches. BackboneFast optimizes the maximum-age timer, which determines the amount of time the
switch stores protocol information received on an interface. When a switch receives an inferior BPDU
from the designated port of another switch, the BPDU is a signal that the other switch might have lost
its path to the root, and BackboneFast tries to find an alternate path to the root.
BackboneFast, which is enabled by using the spanning-tree backbonefast global configuration
command, starts when a root port or blocked port on a switch receives inferior BPDUs from its
designated switch. An inferior BPDU identifies a switch that declares itself as both the root bridge and
the designated switch. When a switch receives an inferior BPDU, it means that a link to which the switch
is not directly connected (an indirect link) has failed (that is, the designated bridge has lost its connection
to the root switch). Under spanning-tree rules, the switch ignores inferior BPDUs for the configured
maximum aging time specified by the spanning-tree vlan vlan-id max-age global configuration
command.
The switch tries to determine if it has an alternate path to the root switch. If the inferior BPDU arrives
on a blocked port, the root port and other blocked ports on the switch become alternate paths to the root
switch. (Self-looped ports are not considered alternate paths to the root switch.) If the inferior BPDU
arrives on the root port, all blocked ports become alternate paths to the root switch. If the inferior BPDU
arrives on the root port and there are no blocked ports, the switch assumes that it has lost connectivity
to the root switch, causes the maximum aging time on the root port to expire, and becomes the root
switch according to normal spanning-tree rules.
If the switch has alternate paths to the root switch, it uses these alternate paths to send a root link query
(RLQ) request. The switch sends the RLQ request on all alternate paths to the root switch and waits for
an RLQ reply from other switches in the network.
If the switch determines that it still has an alternate path to the root, it expires the maximum aging time
on the port that received the inferior BPDU. If all the alternate paths to the root switch indicate that the
switch has lost connectivity to the root switch, the switch expires the maximum aging time on the port
that received the RLQ reply. If one or more alternate paths can still connect to the root switch, the switch
makes all ports on which it received an inferior BPDU its designated ports and moves them from the
blocking state (if they were in the blocking state), through the listening and learning states, and into the
forwarding state.
Figure 12-5 shows an example topology with no link failures. Switch A, the root switch, connects
directly to Switch B over link L1 and to Switch C over link L2. The Layer 2 interface on Switch C that
connects directly to Switch B is in the blocking state.
Switch A
(Root) Switch B
L1
L2 L3
Blocked port
44963
Switch C
If link L1 fails as shown in Figure 12-6, Switch C cannot detect this failure because it is not connected
directly to link L1. However, because Switch B is directly connected to the root switch over L1, it detects
the failure, elects itself the root, and begins sending BPDUs to Switch C, identifying itself as the root.
When Switch C receives the inferior BPDUs from Switch B, Switch C assumes that an indirect failure
has occurred. At that point, BackboneFast allows the blocked port on Switch C to move immediately to
the listening state without waiting for the maximum aging time for the port to expire. BackboneFast then
transitions the Layer 2 interface on Switch C to the forwarding state, providing a path from Switch B to
Switch A. This switchover takes approximately 30 seconds, twice the Forward Delay time if the default
Forward Delay time of 15 seconds is set. Figure 12-6 shows how BackboneFast reconfigures the
topology to account for the failure of link L1.
Switch A
(Root) Switch B
L1
Link failure
L2 L3
44964
Switch C
If a new switch is introduced into a shared-medium topology as shown in Figure 12-7, BackboneFast is
not activated because the inferior BPDUs did not come from the recognized designated bridge
(Switch B). The new switch begins sending inferior BPDUs that indicate it is the root switch. However,
the other switches ignore these inferior BPDUs, and the new switch learns that Switch B is the
designated bridge to Switch A, the root switch.
Switch A
(Root)
Switch C Switch B
(Designated bridge)
Blocked port
Added switch
44965
If the switch detects a misconfiguration on the other device, EtherChannel guard places the switch
interfaces in the error-disabled state, and this error message appears:
PM-4-ERR_DISABLE: Channel-misconfig error detected on [chars], putting [chars] in
err-disable state.
You can enable this feature by using the spanning-tree etherchannel guard misconfig global
configuration command.
Potential
spanning-tree root without
root guard enabled
Desired
root switch
43578
in the path to the root.
Caution Use Port Fast only when connecting a single end station to an access or trunk port. Enabling this feature
on a port connected to a switch or hub could prevent spanning tree from detecting and disabling loops
in your network, which could cause broadcast storms and address-learning problems.
If you enable the voice VLAN feature, the Port Fast feature is automatically enabled. When you disable
voice VLAN, the Port Fast feature is not automatically disabled. For more information, see Chapter 15,
“Configuring Voice VLAN.”
You can enable this feature if your switch is running PVST+, rapid PVST+, or MSTP.
Beginning in privileged EXEC mode, follow these steps to enable Port Fast. This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface
configuration mode.
Step 3 spanning-tree portfast [trunk] Enable Port Fast on an access port connected to a single
workstation or server. By specifying the trunk keyword, you can
enable Port Fast on a trunk port.
Note To enable Port Fast on trunk ports, you must use the
spanning-tree portfast trunk interface configuration
command. The spanning-tree portfast command will
not work on trunk ports.
Note You can use the spanning-tree portfast default global configuration command to globally enable the
Port Fast feature on all nontrunking ports.
To disable the Port Fast feature, use the spanning-tree portfast disable interface configuration
command.
Caution Configure Port Fast only on ports that connect to end stations; otherwise, an accidental topology loop
could cause a data packet loop and disrupt switch and network operation.
You can also use the spanning-tree bpduguard enable interface configuration command to enable
BPDU guard on any port without also enabling the Port Fast feature. When the port receives a BPDU, it
is put in the error-disabled state.
You can enable the BPDU guard feature if your switch is running PVST+, rapid PVST+, or MSTP.
Beginning in privileged EXEC mode, follow these steps to globally enable the BPDU guard feature. This
procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree portfast bpduguard default Globally enable BPDU guard.
By default, BPDU guard is disabled.
Step 3 interface interface-id Specify the interface connected to an end station, and enter
interface configuration mode.
Step 4 spanning-tree portfast Enable the Port Fast feature.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable BPDU guard, use the no spanning-tree portfast bpduguard default global configuration
command.
You can override the setting of the no spanning-tree portfast bpduguard default global configuration
command by using the spanning-tree bpduguard enable interface configuration command.
Caution Configure Port Fast only on ports that connect to end stations; otherwise, an accidental topology loop
could cause a data packet loop and disrupt switch and network operation.
You can also use the spanning-tree bpdufilter enable interface configuration command to enable
BPDU filtering on any port without also enabling the Port Fast feature. This command prevents the port
from sending or receiving BPDUs.
Caution Enabling BPDU filtering on an interface is the same as disabling spanning tree on it and can result in
spanning-tree loops.
You can enable the BPDU filtering feature if your switch is running PVST+, rapid PVST+, or MSTP.
Beginning in privileged EXEC mode, follow these steps to globally enable the BPDU filtering feature.
This procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree portfast bpdufilter default Globally enable BPDU filtering.
By default, BPDU filtering is disabled.
Step 3 interface interface-id Specify the interface connected to an end station, and enter
interface configuration mode.
Step 4 spanning-tree portfast Enable the Port Fast feature.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable BPDU filtering, use the no spanning-tree portfast bpdufilter default global configuration
command.
You can override the setting of the no spanning-tree portfast bpdufilter default global configuration
command by using the spanning-tree bpdufilter enable interface configuration command.
Note When you enable UplinkFast, it affects all VLANs on the switch. You cannot configure UplinkFast on
an individual VLAN.
You can enable the UplinkFast feature for rapid PVST+ or for the MSTP, but the feature remains disabled
(inactive) until you change the spanning-tree mode to PVST+.
Beginning in privileged EXEC mode, follow these steps to enable UplinkFast. This procedure is
optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree uplinkfast [max-update-rate Enable UplinkFast.
pkts-per-second]
(Optional) For pkts-per-second, the range is 0 to 32000 packets per
second; the default is 150.
If you set the rate to 0, station-learning frames are not generated,
and the spanning-tree topology converges more slowly after a loss
of connectivity.
Step 3 end Return to privileged EXEC mode.
Command Purpose
Step 4 show spanning-tree summary Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
When UplinkFast is enabled, the switch priority of all VLANs is set to 49152. If you change the path
cost to a value less than 3000 and you enable UplinkFast or UplinkFast is already enabled, the path cost
of all interfaces and VLAN trunks is increased by 3000 (if you change the path cost to 3000 or above,
the path cost is not altered). The changes to the switch priority and the path cost reduces the chance that
the switch will become the root switch.
When UplinkFast is disabled, the switch priorities of all VLANs and path costs of all interfaces are set
to default values if you did not modify them from their defaults.
To return the update packet rate to the default setting, use the no spanning-tree uplinkfast
max-update-rate global configuration command. To disable UplinkFast, use the no spanning-tree
uplinkfast command.
Enabling BackboneFast
You can enable BackboneFast to detect indirect link failures and to start the spanning-tree
reconfiguration sooner.
Note If you use BackboneFast, you must enable it on all switches in the network. BackboneFast is not
supported on Token Ring VLANs. This feature is supported for use with third-party switches.
You can enable the BackboneFast feature for rapid PVST+ or for the MSTP, but the feature remains
disabled (inactive) until you change the spanning-tree mode to PVST+.
Beginning in privileged EXEC mode, follow these steps to enable BackboneFast. This procedure is
optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree backbonefast Enable BackboneFast.
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree summary Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the BackboneFast feature, use the no spanning-tree backbonefast global configuration
command.
Beginning in privileged EXEC mode, follow these steps to enable EtherChannel guard. This procedure
is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 spanning-tree etherchannel guard Enable EtherChannel guard.
misconfig
Step 3 end Return to privileged EXEC mode.
Step 4 show spanning-tree summary Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the EtherChannel guard feature, use the no spanning-tree etherchannel guard misconfig
global configuration command.
You can use the show interfaces status err-disabled privileged EXEC command to show which switch
ports are disabled because of an EtherChannel misconfiguration. On the remote device, you can enter
the show etherchannel summary privileged EXEC command to verify the EtherChannel configuration.
After the configuration is corrected, enter the shutdown and no shutdown interface configuration
commands on the port-channel interfaces that were misconfigured.
Note You cannot enable both root guard and loop guard at the same time.
You can enable this feature if your switch is running PVST+, rapid PVST+, or MSTP.
Beginning in privileged EXEC mode, follow these steps to enable root guard on an interface. This
procedure is optional.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify an interface to configure, and enter interface configuration mode.
Step 3 spanning-tree guard root Enable root guard on the interface.
By default, root guard is disabled on all interfaces.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable root guard, use the no spanning-tree guard interface configuration command.
Note You cannot enable both loop guard and root guard at the same time.
You can enable this feature if your switch is running PVST+, rapid PVST+, or MSTP.
Beginning in privileged EXEC mode, follow these steps to enable loop guard. This procedure is optional.
Command Purpose
Step 1 show spanning-tree active Determine which ports are alternate or root ports.
or
show spanning-tree mst
Step 2 configure terminal Enter global configuration mode.
Step 3 spanning-tree loopguard default Enable loop guard.
By default, loop guard is disabled.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To globally disable loop guard, use the no spanning-tree loopguard default global configuration
command. You can override the setting of the no spanning-tree loopguard default global configuration
command by using the spanning-tree guard loop interface configuration command.
Command Purpose
show spanning-tree active Displays spanning-tree information on active interfaces only.
show spanning-tree detail Displays a detailed summary of interface information.
show spanning-tree interface interface-id Displays spanning-tree information for the specified interface.
show spanning-tree mst interface interface-id Displays MST information for the specified interface.
show spanning-tree summary [totals] Displays a summary of port states or displays the total lines of the
spanning-tree state section.
You can clear spanning-tree counters by using the clear spanning-tree [interface interface-id]
privileged EXEC command.
For information about other keywords for the show spanning-tree privileged EXEC command, see the
command reference for this release.
This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and
extended-range VLANs (VLAN IDs 1006 to 4094) on your Catalyst 2940 switch. It includes information
about VLAN modes and the VLAN Membership Policy Server (VMPS).
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding VLANs
A VLAN is a switched network that is logically segmented by function, project team, or application,
without regard to the physical locations of the users. VLANs have the same attributes as physical LANs,
but you can group end stations even if they are not physically located on the same LAN segment. Any
switch port can belong to a VLAN, and unicast, broadcast, and multicast packets are forwarded and
flooded only to end stations in the VLAN. Each VLAN is considered a logical network, and packets
destined for stations that do not belong to the VLAN must be forwarded through a router or bridge as
shown in Figure 13-1. Because a VLAN is considered a separate logical network, it contains its own MIB
information and can support its own implementation of spanning tree. See Chapter 10, “Configuring
STP” and Chapter 11, “Configuring MSTP.”
Note Before you create VLANs, you must decide whether to use VLAN Trunking Protocol (VTP) to maintain
global VLAN configuration for your network. For more information on VTP, see Chapter 14,
“Configuring VTP.”
Figure 13-1 shows an example of VLANs segmented into logically defined networks.
Cisco router
Floor 3
Fast
Ethernet
Floor 2
Floor 1
16751
VLANs are often associated with IP subnetworks. For example, all the end stations in a particular IP
subnet belong to the same VLAN. Interface VLAN membership on the switch is assigned manually on
an interface-by-interface basis. When you assign switch interfaces to VLANs by using this method, it is
known as interface-based, or static, VLAN membership.
Supported VLANs
Catalyst 2940 switches support 12 VLANs. VLANs are identified with a number from 1 to 4094. VLAN
IDs 1002 through 1005 are reserved for Token Ring and FDDI VLANs. VTP only learns normal-range
VLANs, with VLAN IDs 1 to 1005; VLAN IDs greater than 1005 are extended-range VLANs and are
not stored in the VLAN database. The switch must be in VTP transparent mode when you create VLAN
IDs from 1006 to 4094.
The switch supports per-VLAN spanning-tree plus (PVST+) with a maximum of 10 spanning-tree
instances. One spanning-tree instance is allowed per VLAN. See the “Normal-Range VLAN
Configuration Guidelines” section on page 13-5 for more information about the number of spanning-tree
instances and the number of VLANs. The switch supports IEEE 802.1Q trunking for sending VLAN
traffic over Ethernet ports.
For more detailed definitions of the modes and their functions, see Table 13-4 on page 13-15.
When a port belongs to a VLAN, the switch learns and manages the addresses associated with the port
on a per-VLAN basis. For more information, see the “Managing the MAC Address Table” section on
page 5-20.
Note When the switch is in VTP transparent mode, you can also create extended-range VLANs (VLANs with
IDs from 1006 to 4094), but these VLANs are not saved in the VLAN database. See the “Configuring
Extended-Range VLANs” section on page 13-11.
Configurations for VLAN IDs 1 to 1005 are written to the file vlan.dat (VLAN database), and you can
display them by entering the show vlan privileged EXEC command. The vlan.dat file is stored in Flash
memory.
Caution You can cause inconsistency in the VLAN database if you attempt to manually delete the vlan.dat file.
If you want to modify the VLAN configuration, use the commands described in these sections and in the
command reference for this release. To change the VTP configuration, see Chapter 14, “Configuring
VTP.”
You use the interface configuration mode to define the port membership mode and to add and remove
ports from VLANs. The results of these commands are written to the running-configuration file, and you
can display the file by entering the show running-config privileged EXEC command.
You can set these parameters when you create a new normal-range VLAN or modify an existing VLAN
in the VLAN database:
• VLAN ID
• VLAN name
• VLAN type (Ethernet, Fiber Distributed Data Interface [FDDI], FDDI network entity title [NET],
TrBRF, or TrCRF, Token Ring, Token Ring-Net)
• VLAN state (active or suspended)
• Maximum transmission unit (MTU) for the VLAN
• Security Association Identifier (SAID)
• Bridge identification number for TrBRF VLANs
• Ring number for FDDI and TrCRF VLANs
• Parent VLAN number for TrCRF VLANs
• Spanning Tree Protocol (STP) type for TrCRF VLANs
• VLAN number to use when translating from one VLAN type to another
Note This section does not provide configuration details for most of these parameters. For complete
information on the commands and parameters that control VLAN configuration, see the command
reference for this release.
This section includes information about these topics about normal-range VLANs:
• Token Ring VLANs, page 13-5
• Normal-Range VLAN Configuration Guidelines, page 13-5
• VLAN Configuration Mode Options, page 13-6
• Saving VLAN Configuration, page 13-7
• Default Ethernet VLAN Configuration, page 13-7
• Creating or Modifying an Ethernet VLAN, page 13-8
• Deleting a VLAN, page 13-9
• Assigning Static-Access Ports to a VLAN, page 13-10
are several adjacent switches that all have run out of spanning-tree instances. You can prevent this
possibility by setting allowed lists on the trunk ports of switches that have used up their allocation
of spanning-tree instances.
If the number of VLANs on the switch exceeds the number of supported spanning tree instances, we
recommend that you configure the IEEE 802.1S Multiple STP (MSTP) on your switch to map
multiple VLANs to a single STP instance. For more information about MSTP, see Chapter 11,
“Configuring MSTP.”
Caution If the VLAN database configuration is used at startup and the startup configuration file contains
extended-range VLAN configuration, this information is lost when the system boots up.
Note The switch supports Ethernet interfaces exclusively. Because FDDI and Token Ring VLANs are not
locally supported, you only configure FDDI and Token Ring media-specific characteristics for VTP
global advertisements to other switches.
Note When the switch is in VTP transparent mode, you can assign VLAN IDs greater than 1006, but they are
not added to the VLAN database. See the “Configuring Extended-Range VLANs” section on
page 13-11.
For the list of default parameters that are assigned when you add a VLAN, see the “Configuring
Normal-Range VLANs” section on page 13-4.
Beginning in privileged EXEC mode, follow these steps to use config-vlan mode to create or modify an
Ethernet VLAN:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vlan vlan-id Enter a VLAN ID, and enter config-vlan mode. Enter a new VLAN ID
to create a VLAN, or enter an existing VLAN ID to modify a VLAN.
Note The available VLAN ID range for this command is 1 to 4094.
For information about adding VLAN IDs greater than 1005
(extended-range VLANs), see the “Configuring
Extended-Range VLANs” section on page 13-11.
Step 3 name vlan-name (Optional) Enter a name for the VLAN. If no name is entered, the default
is to append the vlan-id with leading zeros to the word VLAN. For
example, VLAN0004 is a default VLAN name for VLAN 4.
Step 4 mtu mtu-size (Optional) Change the MTU size (or other VLAN characteristic).
Step 5 end Return to privileged EXEC mode.
Step 6 show vlan {name vlan-name | id vlan-id} Verify your entries.
Step 7 copy running-config startup config (Optional) If the switch is in VTP transparent mode, the VLAN
configuration is saved in the running configuration file as well as in the
VLAN database. This saves the configuration in the switch startup
configuration file.
To return the VLAN name to the default settings, use the no vlan name, or no vlan mtu config-vlan
commands.
This example shows how to use config-vlan mode to create Ethernet VLAN 20, name it test20, and add
it to the VLAN database:
Switch# configure terminal
Switch(config)# vlan 20
Switch(config-vlan)# name test20
Switch(config-vlan)# end
Beginning in privileged EXEC mode, follow these steps to use VLAN configuration mode to create or
modify an Ethernet VLAN:
Command Purpose
Step 1 vlan database Enter VLAN database configuration mode.
Step 2 vlan vlan-id name vlan-name Add an Ethernet VLAN by assigning a number to it. The range is 1 to
1001; do not enter leading zeros.
If no name is entered, the default is to append the vlan-id with leading
zeros to the word VLAN. For example, VLAN0004 is a default VLAN
name for VLAN 4.
Step 3 vlan vlan-id mtu mtu-size (Optional) To modify a VLAN, identify the VLAN and change a
characteristic, such as the MTU size.
Step 4 exit Update the VLAN database, propagate it throughout the administrative
domain, and return to privileged EXEC mode.
Step 5 show vlan {name vlan-name | id vlan-id} Verify your entries.
Step 6 copy running-config startup config (Optional) If the switch is in VTP transparent mode, the VLAN
configuration is saved in the running configuration file as well as in the
VLAN database. This saves the configuration in the switch startup
configuration file.
To return the VLAN name to the default settings, use the no vlan vlan-id name VLAN configuration
command.
This example shows how to use VLAN database configuration mode to create Ethernet VLAN 20, name
it test20, and add it to the VLAN database:
Switch# vlan database
Switch(vlan)# vlan 20 name test20
Switch(vlan)# exit
APPLY completed.
Exiting....
Switch#
Deleting a VLAN
When you delete a VLAN from a switch that is in VTP server mode, the VLAN is removed from the
VLAN database for all switches in the VTP domain. When you delete a VLAN from a switch that is in
VTP transparent mode, the VLAN is deleted only on that specific switch.
You cannot delete the default VLANs for the different media types: Ethernet VLAN 1 and FDDI or
Token Ring VLANs 1002 to 1005.
Caution When you delete a VLAN, any ports assigned to that VLAN become inactive. They remain associated
with the VLAN (and thus inactive) until you assign them to a new VLAN.
Beginning in privileged EXEC mode, follow these steps to delete a VLAN on the switch by using global
configuration mode:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no vlan vlan-id Remove the VLAN by entering the VLAN ID.
Step 3 end Return to privileged EXEC mode.
Step 4 show vlan brief Verify the VLAN removal.
Step 5 copy running-config startup config (Optional) If the switch is in VTP transparent mode, the VLAN
configuration is saved in the running configuration file as well as in
the VLAN database. This saves the configuration in the switch startup
configuration file.
To delete a VLAN in VLAN database configuration mode, use the vlan database privileged EXEC
command to enter VLAN database configuration mode and the no vlan vlan-id VLAN configuration
command.
Note If you assign an interface to a VLAN that does not exist, the new VLAN is created. (See the “Creating
or Modifying an Ethernet VLAN” section on page 13-8.)
Beginning in privileged EXEC mode, follow these steps to assign a port to a VLAN in the VLAN
database:
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 interface interface-id Enter the interface to be added to the VLAN.
Step 3 switchport mode access Define the VLAN membership mode for the port (Layer 2 access
port).
Step 4 switchport access vlan vlan-id Assign the port to a VLAN. Valid VLAN IDs are 1 to 4094.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config interface interface-id Verify the VLAN membership mode of the interface.
Command Purpose
Step 7 show interfaces interface-id switchport Verify your entries in the Administrative Mode and the Access Mode
VLAN fields of the display.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return an interface to its default configuration, use the default interface interface-id interface
configuration command.
This example shows how to configure a port as an access port in VLAN 2:
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 2
Switch(config-if)# end
Switch#
Note Although the switch supports 4094 VLAN IDs, see the “Supported VLANs” section on page 13-2 for
the actual number of VLANs supported.
Beginning in privileged EXEC mode, follow these steps to create an extended-range VLAN:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp mode transparent Configure the switch for VTP transparent mode, disabling VTP.
Step 3 vlan vlan-id Enter an extended-range VLAN ID and enter config-vlan mode. The
range is 1006 to 4094.
Step 4 mtu mtu-size (Optional) Modify the VLAN by changing the MTU size.
Note Although all commands appear in the CLI help in config-vlan
mode, only the mtu mtu-size command is supported for
extended-range VLANs.
Step 5 end Return to privileged EXEC mode.
Step 6 show vlan id vlan-id Verify that the VLAN has been created.
Step 7 copy running-config startup config Save your entries in the switch startup configuration file. To save
extended-range VLAN configurations, you need to save the VTP
transparent mode configuration and the extended-range VLAN
configuration in the switch startup configuration file. Otherwise, if the
switch resets, it will default to VTP server mode, and the extended-range
VLAN IDs will not be saved.
To delete an extended-range VLAN, use the no vlan vlan-id global configuration command.
The procedure for assigning static-access ports to an extended-range VLAN is the same as for
normal-range VLANs. See the “Assigning Static-Access Ports to a VLAN” section on page 13-10.
This example shows how to create a new extended-range VLAN with all default characteristics, enter
config-vlan mode, and save the new VLAN in the switch startup configuration file:
Switch(config)# vtp mode transparent
Switch(config)# vlan 2000
Switch(config-vlan)# end
Switch# copy running-config startup config
Displaying VLANs
Use the show vlan privileged EXEC command to display a list of all VLANs on the switch, including
extended-range VLANs. The display includes VLAN status, ports, and configuration information. To
view normal-range VLANs in the VLAN database (1 to 1005) use the show VLAN configuration
command (accessed by entering the vlan database privileged EXEC command). For a list of the VLAN
IDs on the switch, use the show running-config vlan privileged EXEC command, optionally entering a
VLAN ID range.
Table 13-3 lists the commands for monitoring VLANs.
For more details about the show command options and explanations of output fields, see the command
reference for this release.
Trunking Overview
A trunk is a point-to-point link between one or more Ethernet switch interfaces and another networking device
such as a router or a switch. Fast Ethernet and Gigabit Ethernet trunks carry the traffic of multiple VLANs
over a single link, and you can extend the VLANs across an entire network.
The switch supports 802.1Q, the industry-standard trunking encapsulation.
Figure 13-2 shows a network of switches that are connected by 802.1Q trunks.
Switch Switch
111413
You can configure a trunk on a single Ethernet interface or on an EtherChannel bundle. For more
information about EtherChannel, see Chapter 25, “Configuring EtherChannels.”
Ethernet trunk interfaces support different trunking modes (see Table 13-4). You can set an interface as
trunking or nontrunking or to negotiate trunking with the neighboring interface. To autonegotiate
trunking, the interfaces must be in the same VTP domain.
Trunk negotiation is managed by the Dynamic Trunking Protocol (DTP), which is a Point-to-Point
Protocol. However, some internetworking devices might forward DTP frames improperly, which could
cause misconfigurations.
To avoid this, you should configure interfaces connected to devices that do not support DTP to not
forward DTP frames, that is, to turn off DTP.
• If you do not intend to trunk across those links, use the switchport mode access interface
configuration command to disable trunking.
• To enable trunking to a device that does not support DTP, use the switchport mode trunk and
switchport nonegotiate interface configuration commands to cause the interface to become a trunk
but to not generate DTP frames.
Mode Function
switchport mode access Puts the interface (access port) into permanent nontrunking mode. The interface becomes
a nontrunk interface even if the neighboring interface is a trunk interface.
switchport mode dynamic Makes the interface actively attempt to convert the link to a trunk link. The interface
desirable becomes a trunk interface if the neighboring interface is set to trunk, desirable, or auto
mode. The default switch-port mode for all Ethernet interfaces is dynamic desirable.
Mode Function
switchport mode dynamic auto Makes the interface able to convert the link to a trunk link. The interface becomes a trunk
interface if the neighboring interface is set to trunk or desirable mode.
switchport mode trunk Puts the interface into permanent trunking mode and negotiates to convert the link into a
trunk link. The interface becomes a trunk interface even if the neighboring interface is
not a trunk interface.
switchport nonegotiate Prevents the interface from generating DTP frames. You can use this command only when
the interface switchport mode is access or trunk. You must manually configure the
neighboring interface as a trunk interface to establish a trunk link.
Note The default mode for Layer 2 interfaces is switchport mode dynamic desirable. If the neighboring
interface supports trunking and is configured to allow trunking, the link is a Layer 2 trunk.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter the interface configuration mode and the port to be configured for
trunking.
Command Purpose
Step 3 switchport mode {dynamic {auto | Configure the interface as a Layer 2 trunk (required only if the interface
desirable} | trunk} is a Layer 2 access port or to specify the trunking mode).
• dynamic auto—Set the interface to a trunk link if the neighboring
interface is set to trunk or desirable mode.
• dynamic desirable—Set the interface to a trunk link if the
neighboring interface is set to trunk, desirable, or auto mode.
• trunk—Set the interface in permanent trunking mode and negotiate
to convert the link to a trunk link even if the neighboring interface is
not a trunk interface.
Step 4 switchport access vlan vlan-id (Optional) Specify the default VLAN, which is used if the interface stops
trunking.
Step 5 switchport trunk native vlan vlan-id Specify the native VLAN.
Step 6 end Return to privileged EXEC mode.
Step 7 show interfaces interface-id switchport Display the switchport configuration of the interface in the Administrative
Mode and the Administrative Trunking Encapsulation fields of the
display.
Step 8 show interfaces interface-id trunk Display the trunk configuration of the interface.
Step 9 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return an interface to its default configuration, use the default interface interface-id interface
configuration command. To reset all trunking characteristics of a trunking interface to the defaults, use
the no switchport trunk interface configuration command. To disable trunking, use the switchport
mode access interface configuration command to configure the port as a static-access port.
This example shows how to configure a port as an 802.1Q trunk. The example assumes that the neighbor
interface is configured to support 802.1Q trunking.
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet0/4
Switch(config-if)# switchport mode dynamic desirable
Switch(config-if)# end
When you remove VLAN 1 from a trunk port, the interface continues to send and receive management
traffic, for example, Cisco Discovery Protocol (CDP), Port Aggregation Protocol (PAgP), Link
Aggregation Control Protocol (LACP), Dynamic Trunking Protocol (DTP), and VLAN Trunking
Protocol (VTP) in VLAN 1.
If a trunk port with VLAN 1 disabled is converted to a nontrunk port, it is added to the access VLAN. If
the access VLAN is set to 1, the port is added to VLAN 1, regardless of the switchport trunk allowed
setting. The same is true for any VLAN that has been disabled on the port.
A trunk port can become a member of a VLAN if the VLAN is enabled, if VTP knows of the VLAN,
and if the VLAN is in the allowed list for the port. When VTP detects a newly enabled VLAN and the
VLAN is in the allowed list for a trunk port, the trunk port automatically becomes a member of the
enabled VLAN. When VTP detects a new VLAN and the VLAN is not in the allowed list for a trunk
port, the trunk port does not become a member of the new VLAN.
Beginning in privileged EXEC mode, follow these steps to modify the allowed list of an 802.1Q trunk:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode and the port to be configured.
Step 3 switchport mode trunk Configure the interface as a VLAN trunk port.
Step 4 switchport trunk allowed vlan {add | (Optional) Configure the list of VLANs allowed on the trunk.
all | except | remove} vlan-list For explanations about using the add, all, except, and remove keywords,
see the command reference for this release.
The vlan-list parameter is either a single VLAN number from 1 to 4094
or a range of VLANs described by two VLAN numbers, the lower one
first, separated by a hyphen. Do not enter any spaces between
comma-separated VLAN parameters or in hyphen-specified ranges.
All VLANs are allowed by default.
Step 5 end Return to privileged EXEC mode.
Step 6 show interfaces interface-id switchport Verify your entries in the Trunking VLANs Enabled field of the display.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default allowed VLAN list of all VLANs, use the no switchport trunk allowed vlan
interface configuration command.
This example shows how to remove VLAN 2 from the allowed VLAN list:
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport trunk allowed vlan remove 2
Switch(config-if)# end
Switch#
Beginning in privileged EXEC mode, follow these steps to remove VLANs from the pruning-eligible list
on a trunk port:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and select the trunk port for which
VLANs should be pruned.
Step 3 switchport trunk pruning vlan {add | Configure the list of VLANs allowed to be pruned from the trunk. (See
except | none | remove} vlan-list the “VTP Pruning” section on page 14-4).
[,vlan[,vlan[,,,]]
For explanations about using the add, except, none, and remove
keywords, see the command reference for this release.
Separate nonconsecutive VLAN IDs with a comma and no spaces; use a
hyphen to designate a range of IDs. Valid IDs are from 2 to 1001.
Extended-range VLANs (VLAN IDs 1006 to 4094) cannot be pruned.
VLANs that are pruning-ineligible receive flooded traffic.
The default list of VLANs allowed to be pruned contains VLANs 2 to
1001.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id switchport Verify your entries in the Pruning VLANs Enabled field of the display.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default pruning-eligible list of all VLANs, use the no switchport trunk pruning vlan
interface configuration command.
Note The native VLAN can be assigned any VLAN ID; it is not dependent on the management VLAN.
For information about 802.1Q configuration issues, see the “802.1Q Configuration Considerations”
section on page 13-16.
Beginning in privileged EXEC mode, follow these steps to configure the native VLAN on an 802.1Q
trunk:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and define the interface that is
configured as the 802.1Q trunk.
Command Purpose
Step 3 switchport trunk native vlan vlan-id Configure the VLAN that is sending and receiving untagged traffic
on the trunk port.
For vlan-id, the range is 1 to 4094
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id switchport Verify your entries in the Trunking Native Mode VLAN field.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default native VLAN, VLAN 1, use the no switchport trunk native vlan interface
configuration command.
If a packet has a VLAN ID that is the same as the outgoing port native VLAN ID, the packet is sent
untagged; otherwise, the switch sends the packet with a tag.
Switch A
Trunk 1 Trunk 2
VLANs 8 – 10 (priority 16) VLANs 3 – 6 (priority 16)
VLANs 3 – 6 (priority 128) VLANs 8 – 10 (priority 128)
93370
Switch B
Beginning in privileged EXEC mode, follow these steps to configure the network shown in Figure 13-3.
Command Purpose
Step 1 configure terminal Enter global configuration mode on Switch 1.
Step 2 vtp domain domain-name Configure a VTP administrative domain.
The domain name can be from 1 to 32 characters.
Step 3 vtp mode server Configure Switch 1 as the VTP server.
Step 4 end Return to privileged EXEC mode.
Step 5 show vtp status Verify the VTP configuration on both Switch A and Switch B.
In the display, check the VTP Operating Mode and the VTP Domain
Name fields.
Step 6 show vlan Verify that the VLANs exist in the database on Switch A.
Step 7 configure terminal Enter global configuration mode.
Step 8 interface fastethernet 0/1 Enter interface configuration mode, and define Fast Ethernet port 0/1
as the interface to be configured as a trunk.
Step 9 switchport mode trunk Configure the port as a trunk port.
Step 10 end Return to privilege EXEC mode.
Step 11 show interfaces fastethernet0/1 Verify the VLAN configuration.
switchport
Step 12 Repeat Steps 7 through 11 on Switch A for Fast Ethernet port 0/2.
Step 13 Repeat Steps 7 through 11 on Switch B to configure the trunk ports on
Fast Ethernet ports 0/1 and 0/2.
Step 14 show vlan When the trunk links come up, VTP passes the VTP and VLAN
information to Switch B. Verify that Switch B has learned the VLAN
configuration.
Step 15 configure terminal Enter global configuration mode on Switch A.
Step 16 interface fastethernet0/1 Enter interface configuration mode, and define the interface to set the
STP port priority.
Step 17 spanning-tree vlan 8-10 port-priority 16 Assign the port priority of 16 for VLANs 8 through 10.
Step 18 spanning-tree vlan 10 port-priority 16 Assign the port priority of 16 for VLAN 10.
Step 19 exit Return to global configuration mode.
Command Purpose
Step 20 interface fastethernet0/2 Enter interface configuration mode, and define the interface to set the
STP port priority.
Step 21 spanning-tree vlan 3-6 port-priority 16 Assign the port priority of 16 for VLANs 3 through 6.
Step 22 end Return to privileged EXEC mode.
Step 23 show running-config Verify your entries.
Step 24 copy running-config startup-config (Optional) Save your entries in the configuration file.
Switch A
Switch B
Beginning in privileged EXEC mode, follow these steps to configure the network shown in Figure 13-4:
Command Purpose
Step 1 configure terminal Enter global configuration mode on Switch A.
Step 2 interface fastethernet 0/1 Enter interface configuration mode, and define Fast Ethernet port 0/1 as
the interface to be configured as a trunk.
Step 3 switchport mode trunk Configure the port as a trunk port.
Step 4 exit Return to global configuration mode.
Step 5 Repeat Steps 2 through 4 on Switch A interface Fast Ethernet 0/2.
Step 6 end Return to privileged EXEC mode.
Command Purpose
Step 7 show running-config Verify your entries.
In the display, make sure that interfaces Fast Ethernet 0/1 and Fast
Ethernet 0/2 are configured as trunk ports.
Step 8 show vlan When the trunk links come up, Switch A receives the VTP information
from the other switches. Verify that Switch A has learned the VLAN
configuration.
Step 9 configure terminal Enter global configuration mode.
Step 10 interface fastethernet 0/1 Enter interface configuration mode, and define Fast Ethernet port 0/1 as
the interface to set the STP cost.
Step 11 spanning-tree vlan 2-4 cost 30 Set the spanning-tree path cost to 30 for VLANs 2 through 4.
Step 12 end Return to global configuration mode.
Step 13 Repeat Steps 9 through 11 on Switch A interface Fast Ethernet 0/2, and
set the spanning-tree path cost to 30 for VLANs 8, 9, and 10.
Step 14 exit Return to privileged EXEC mode.
Step 15 show running-config Verify your entries.
In the display, verify that the path costs are set correctly for interfaces
Fast Ethernet 0/1 and 0/2.
Step 16 copy running-config startup-config (Optional) Save your entries in the configuration file.
Configuring VMPS
The switch cannot be a VMPS server but can act as a client to the VMPS and communicate with it
through the VLAN Query Protocol (VQP). VMPS dynamically assigns dynamic access port VLAN
membership.
This section includes this information about configuring VMPS:
• “Understanding VMPS” section on page 13-24
• “Default VMPS Client Configuration” section on page 13-26
• “VMPS Configuration Guidelines” section on page 13-26
• “Configuring the VMPS Client” section on page 13-27
• “Monitoring the VMPS” section on page 13-29
• “Troubleshooting Dynamic Port VLAN Membership” section on page 13-30
• “VMPS Configuration Example” section on page 13-30
Understanding VMPS
When the VMPS receives a VQP request from a client switch, it searches its database for a
MAC-address-to-VLAN mapping. The server response is based on this mapping and whether or not the
server is in secure mode. Secure mode determines whether the server shuts down the port when a VLAN
is not allowed on it or just denies the port access to the VLAN.
You can configure a fallback VLAN name. If you connect a device with a MAC address that is not in the
database, the VMPS sends the fallback VLAN name to the client. If you do not configure a fallback
VLAN and the MAC address does not exist in the database, the VMPS sends an access-denied response.
If the VMPS is in secure mode, it sends a port-shutdown response.
Whenever port names are used in the VMPS database configuration file, the server must use the switch
convention for naming ports. For example, Fa0/4 is fixed Fast Ethernet port number 4. If the switch is a
cluster member, the command switch adds the name of the switch before the type. For example,
es3%Fa0/4 refers to fixed Fast Ethernet port 4 on member switch 3. When port names are required, these
naming conventions must be followed in the VMPS database configuration file when it is configured to
support a cluster.
Note If the VMPS is being defined for a cluster of switches, enter the address on the command switch.
Beginning in privileged EXEC mode, follow these steps to enter the IP address of the VMPS:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vmps server ipaddress primary Enter the IP address of the switch acting as the primary VMPS server.
Step 3 vmps server ipaddress Enter the IP address of the switch acting as a secondary VMPS server.
You can enter up to three secondary server addresses.
Step 4 end Return to privileged EXEC mode.
Step 5 show vmps Verify your entries in the VMPS Domain Server field of the display.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note The switch port that is connected to the VMPS server cannot be a dynamic access port. It can be either
a static access port or a trunk port. See the “Configuring an Ethernet Interface as a Trunk Port” section
on page 13-17.
Caution Dynamic port VLAN membership is for end stations or hubs connected to end stations. Connecting
dynamic access ports to other switches can cause a loss of connectivity.
Beginning in privileged EXEC mode, follow these steps to configure a dynamic access port on a VMPS
client switch:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode and the switch port that is
connected to the end station.
Step 3 switchport mode access Set the port to access mode.
Step 4 switchport access vlan dynamic Configure the port as eligible for dynamic VLAN membership.
The dynamic access port must be connected to an end station.
Step 5 end Return to privileged EXEC mode.
Step 6 show interfaces interface-id switchport Verify your entries in the Operational Mode field of the display.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return an interface to its default configuration, use the default interface interface-id interface
configuration command. To return an interface to its default switchport mode (dynamic desirable), use
the no switchport mode interface configuration command. To reset the access mode to the default
VLAN for the switch, use the no switchport access interface configuration command.
Note When you configure a dynamic access port by using the switchport access vlan dynamic interface
configuration command, the port might allow unauthorized users to access network resources if the
interface changes from access mode to trunk mode through the DTP negotiation. The workaround is to
configure the port as a static access port.
Command Purpose
Step 1 vmps reconfirm Reconfirm dynamic port VLAN membership.
Step 2 show vmps Verify the dynamic VLAN reconfirmation status.
Beginning in privileged EXEC mode, follow these steps to change the reconfirmation interval:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vmps reconfirm minutes Enter the number of minutes between reconfirmations of the dynamic
VLAN membership.
Enter a number from 1 to 120. The default is 60 minutes.
Step 3 end Return to privileged EXEC mode.
Step 4 show vmps Verify the dynamic VLAN reconfirmation status in the Reconfirm
Interval field of the display.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no vmps reconfirm global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vmps retry count Change the retry count.
The retry range is from 1 to 10; the default is 3.
Step 3 end Return to privileged EXEC mode.
Step 4 show vmps Verify your entry in the Server Retry Count field of the display.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no vmps retry global configuration command.
VMPS VQP Version The version of VQP used to communicate with the VMPS. The switch queries
the VMPS that is using VQP version 1.
Reconfirm Interval The number of minutes the switch waits before reconfirming the
VLAN-to-MAC-address assignments.
Server Retry Count The number of times VQP resends a query to the VMPS. If no response is
received after this many tries, the switch starts to query the secondary VMPS.
VMPS domain server The IP address of the configured VLAN membership policy servers. The switch
sends queries to the one marked current. The one marked primary is the primary
server.
VMPS Action The result of the most recent reconfirmation attempt. A reconfirmation attempt
can occur automatically when the reconfirmation interval expired, or you can
force it by entering the vmps reconfirm privileged EXEC command or its
Network Assistant or SNMP equivalent.
This is an example of output for the show vmps privileged EXEC command:
Switch# show vmps
Reconfirmation status
---------------------
VMPS Action: No Dynamic Port
Primary VMPS
Server 1 Router
172.20.26.150
172.20.22.7
Client switch B
End Dynamic-access port
station 1 172.20.26.151
Trunk port
Switch C
Catalyst 6500 series
Secondary VMPS 172.20.26.152
Server 2
Switch D 172.20.26.153
Ethernet segment
(Trunk link)
Switch E 172.20.26.154
Switch F 172.20.26.155
Switch G 172.20.26.156
Switch H 172.20.26.157
Client switch I
Dynamic-access port
End
station 2 172.20.26.158
Trunk port
101363t
172.20.26.159
Catalyst 6500 series
Secondary VMPS Switch J
Server 3
This chapter describes how to use the VLAN Trunking Protocol (VTP) and the VLAN database for
managing VLANs on your Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding VTP
VTP is a Layer 2 messaging protocol that maintains VLAN configuration consistency by managing the
addition, deletion, and renaming of VLANs on a network-wide basis. VTP minimizes misconfigurations
and configuration inconsistencies that can cause several problems, such as duplicate VLAN names,
incorrect VLAN-type specifications, and security violations.
Before you create VLANs, you must decide whether to use VTP in your network. Using VTP, you can
make configuration changes centrally on one or more switches and have those changes automatically
communicated to all the other switches in the network. Without VTP, you cannot send information about
VLANs to other switches. VTP configuration information is saved in the VTP VLAN database.
VTP only learns about normal-range VLANs (VLAN IDs 1 to 1005). Extended-range VLANs (VLAN
IDs greater than 1005) are not supported by VTP or stored in the VTP VLAN database.
This section contains information about these VTP parameters:
• The VTP Domain, page 14-2
• VTP Modes, page 14-3
• VTP Advertisements, page 14-3
• VTP Version 2, page 14-4
• VTP Pruning, page 14-4
Caution Before adding a VTP client switch to a VTP domain, always verify that its VTP configuration revision
number is lower than the configuration revision number of the other switches in the VTP domain.
Switches in a VTP domain always use the VLAN configuration of the switch with the highest VTP
configuration revision number. If you add a switch that has a revision number higher than the revision
number in the VTP domain, it can erase all VLAN information from the VTP server and VTP domain.
See the “Adding a VTP Client Switch to a VTP Domain” section on page 14-14 for the procedure for
verifying and resetting the VTP configuration revision number.
When you make a change to the VLAN configuration on a VTP server, the change is propagated to all
switches in the VTP domain. VTP advertisements are sent over all IEEE 802.1Q trunk connections. VTP
maps VLANs dynamically across multiple LAN types with unique names and internal index associates.
Mapping eliminates excessive device administration required from network administrators.
If you configure a switch for VTP transparent mode, you can create and modify VLANs, but the changes
are not sent to other switches in the domain, and they affect only the individual switch. However,
configuration changes made when the switch is in this mode are saved in the switch running
configuration and can be saved to the switch startup configuration file.
For domain name and password configuration guidelines, see the “VTP Configuration Guidelines”
section on page 14-8.
VTP Modes
You can configure a supported switch to be in one of the VTP modes listed in Table 14-1.
When the network is configured with the maximum 10 VLANs, the switch automatically changes from
VTP server or client mode to VTP transparent mode. The switch then operates with the VLAN
configuration that preceded the one that sent it into transparent mode.
VTP Advertisements
Each switch in the VTP domain sends periodic global configuration advertisements from each trunk port
to a reserved multicast address. Neighboring switches receive these advertisements and update their VTP
and VLAN configurations as necessary.
Note Because trunk ports send and receive VTP advertisements, you must ensure that at least one trunk port
is configured on the switch and that this trunk port is connected to the trunk port of a second switch.
Otherwise, the switch cannot receive any VTP advertisements. For more information on trunk ports, see
the “Configuring VLAN Trunks” section on page 13-14.
• MD5 digest VLAN configuration, including maximum transmission unit (MTU) size for each
VLAN.
• Frame format
VTP advertisements distribute this VLAN information for each configured VLAN:
• VLAN IDs
• VLAN name
• VLAN type
• VLAN state
• Additional VLAN configuration information specific to the VLAN type
VTP Version 2
If you use VTP in your network, you must decide whether to use version 1 or version 2. By default, VTP
operates in version 1.
VTP version 2 supports these features not supported in version 1:
• Token Ring support—VTP version 2 supports Token Ring Bridge Relay Function (TrBRF) and
Token Ring Concentrator Relay Function (TrCRF) VLANs. For more information about Token Ring
VLANs, see the “Configuring Normal-Range VLANs” section on page 13-4.
• Unrecognized Type-Length-Value (TLV) support—A VTP server or client propagates configuration
changes to its other trunks, even for TLVs it is not able to parse. The unrecognized TLV is saved in
NVRAM when the switch is operating in VTP server mode.
• Version-Dependent Transparent Mode—In VTP version 1, a VTP transparent switch inspects VTP
messages for the domain name and version and forwards a message only if the version and domain
name match. Because VTP version 2 supports only one domain, it forwards VTP messages in
transparent mode without inspecting the version and domain name.
• Consistency Checks—In VTP version 2, VLAN consistency checks (such as VLAN names and
values) are performed only when you enter new information through the CLI or SNMP. Consistency
checks are not performed when new information is obtained from a VTP message or when
information is read from NVRAM. If the MD5 digest on a received VTP message is correct, its
information is accepted.
VTP Pruning
VTP pruning increases network available bandwidth by restricting flooded traffic to those trunk links
that the traffic must use to reach the destination devices. Without VTP pruning, a switch floods
broadcast, multicast, and unknown unicast traffic across all trunk links within a VTP domain even
though receiving switches might discard them. VTP pruning is disabled by default.
VTP pruning blocks unneeded flooded traffic to VLANs on trunk ports that are included in the
pruning-eligible list. Only VLANs included in the pruning-eligible list can be pruned. By default,
VLANs 2 through 1001 are pruning eligible switch trunk ports. If the VLANs are configured as
pruning-ineligible, the flooding continues. VTP pruning is supported with VTP version 1 and version 2.
Figure 14-1 shows a switched network without VTP pruning enabled. Port 1 on Switch A and Port 2 on
Switch D are assigned to the Red VLAN. If a broadcast is sent from the host connected to Switch A,
Switch A floods the broadcast and every switch in the network receives it, even though Switches C, E,
and F have no ports in the Red VLAN.
Switch D
Port 2
Switch E Switch B
Red
VLAN
Port 1
89240
Switch F Switch C Switch A
Figure 14-2 shows a switched network with VTP pruning enabled. The broadcast traffic from Switch A
is not forwarded to Switches C, E, and F because traffic for the Red VLAN has been pruned on the links
shown (Port 5 on Switch B and Port 4 on Switch D).
Switch D
Port 2
Flooded traffic
is pruned. Port
4
Switch B
Red
VLAN
Switch E Flooded traffic
is pruned. Port
5
Port 1
89241
Enabling VTP pruning on a VTP server enables pruning for the entire management domain. Making
VLANs pruning-eligible or pruning-ineligible affects pruning eligibility for those VLANs on that device
only (not on all switches in the VTP domain). See the “Enabling VTP Pruning” section on page 14-13.
VTP pruning takes effect several seconds after you enable it. VTP pruning does not prune traffic from
VLANs that are pruning-ineligible. VLAN 1 and VLANs 1002 to 1005 are always pruning-ineligible;
traffic from these VLANs cannot be pruned. Extended-range VLANs (VLAN IDs higher than 1005) are
also pruning-ineligible.
VTP pruning is not designed to function in VTP transparent mode. If one or more switches in the
network are in VTP transparent mode, you should do one of these:
• Turn off VTP pruning in the entire network.
• Turn off VTP pruning by making all VLANs on the trunk of the switch upstream to the VTP
transparent switch pruning ineligible.
To configure VTP pruning on an interface, use the switchport trunk pruning vlan interface
configuration command (see the “Changing the Pruning-Eligible List” section on page 13-19). VTP
pruning operates when an interface is trunking. You can set VLAN pruning-eligibility, whether or not
VTP pruning is enabled for the VTP domain, whether or not any given VLAN exists, and whether or not
the interface is currently trunking.
Configuring VTP
This section includes guidelines and procedures for configuring VTP. These sections are included:
• Default VTP Configuration, page 14-6
• VTP Configuration Options, page 14-7
• VTP Configuration Guidelines, page 14-8
• Configuring a VTP Server, page 14-9
• Configuring a VTP Client, page 14-10
• Disabling VTP (VTP Transparent Mode), page 14-11
• Enabling VTP Version 2, page 14-12
• Enabling VTP Pruning, page 14-13
• Adding a VTP Client Switch to a VTP Domain, page 14-14
Domain Names
When configuring VTP for the first time, you must always assign a domain name. You must configure
all switches in the VTP domain with the same domain name. Switches in VTP transparent mode do not
exchange VTP messages with other switches, and you do not need to configure a VTP domain name
for them.
Note If NVRAM and DRAM storage is sufficient, all switches in a VTP domain should be in VTP server
mode.
Caution Do not configure a VTP domain if all switches are operating in VTP client mode. If you configure the
domain, it is impossible to make changes to the VLAN configuration of that domain. Make sure that you
configure at least one switch in the VTP domain for VTP server mode.
Passwords
You can configure a password for the VTP domain, but it is not required. If you do configure a domain
password, all domain switches must share the same password and you must configure the password on
each switch in the management domain. Switches without a password or with the wrong password reject
VTP advertisements.
If you configure a VTP password for a domain, a switch that is booted without a VTP configuration does
not accept VTP advertisements until you configure it with the correct password. After the configuration,
the switch accepts the next VTP advertisement that uses the same password and domain name in the
advertisement.
If you are adding a new switch to an existing network with VTP capability, the new switch learns the
domain name only after the applicable password has been configured on it.
Caution When you configure a VTP domain password, the management domain does not function properly if you
do not assign a management domain password to each switch in the domain.
VTP Version
Follow these guidelines when deciding which VTP version to implement:
• All switches in a VTP domain must run the same VTP version.
• A VTP version 2-capable switch can operate in the same VTP domain as a switch running VTP
version 1 if version 2 is disabled on the version 2-capable switch (version 2 is disabled by default).
• Do not enable VTP version 2 on a switch unless all of the switches in the same VTP domain are
version-2-capable. When you enable version 2 on a switch, all of the version-2-capable switches in
the domain enable version 2. If there is a version 1-only switch, it does not exchange VTP
information with switches with version 2 enabled.
• If there are TrBRF and TrCRF Token Ring networks in your environment, you must enable VTP
version 2 for Token Ring VLAN switching to function properly. To run Token Ring and Token
Ring-Net, disable VTP version 2.
Configuration Requirements
When you configure VTP, you must configure a trunk port so that the switch can send and receive VTP
advertisements. For more information, see the “Configuring VLAN Trunks” section on page 13-14.
If you are configuring VTP on a cluster member switch to a VLAN, use the rcommand privileged EXEC
command to log into the member switch. For more information about the command, see the command
reference for this release.
If you are configuring extended-range VLANs on the switch, the switch must be in VTP transparent
mode.
Note When a switch is in VTP server mode, you can change the VLAN configuration and have it propagated
throughout the network. If extended-range VLANs are configured on the switch, you cannot change VTP
mode to server. You receive an error message, and the configuration is not allowed.
Beginning in privileged EXEC mode, follow these steps to configure the switch as a VTP server:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp mode server Configure the switch for VTP server mode (the default).
Step 3 vtp domain domain-name Configure the VTP administrative-domain name. The name can be from
1 to 32 characters. All switches operating in VTP server or client mode
under the same administrative responsibility must be configured with the
same domain name.
Step 4 vtp password password (Optional) Set the password for the VTP domain. The password can be
from 8 to 64 characters.
If you configure a VTP password, the VTP domain does not function
properly if you do not assign the same password to each switch in the
domain.
Step 5 end Return to privileged EXEC mode.
Step 6 show vtp status Verify your entries in the VTP Operating Mode and the VTP Domain Name
fields of the display.
When you configure a domain name, it cannot be removed; you can only reassign a switch to a different
domain.
To return the switch to a no-password state, use the no vtp password global configuration command.
This example shows how to use global configuration mode to configure the switch as a VTP server with
the domain name eng_group and the password mypassword:
Switch# config terminal
You can also use VLAN configuration mode to configure VTP parameters. Beginning in privileged
EXEC mode, follow these steps to use VLAN configuration mode to configure the switch as a VTP
server:
Command Purpose
Step 1 vlan database Enter VLAN configuration mode.
Step 2 vtp server Configure the switch for VTP server mode (the default).
Step 3 vtp domain domain-name Configure a VTP administrative-domain name. The name can be from 1 to 32
characters. All switches operating in VTP server or client mode under the
same administrative responsibility must be configured with the same domain
name.
Step 4 vtp password password (Optional) Set a password for the VTP domain. The password can be from 8
to 64 characters.
If you configure a VTP password, the VTP domain does not function properly
if you do not assign the same password to each switch in the domain.
Step 5 exit Update the VLAN database, propagate it throughout the administrative
domain, and return to privileged EXEC mode.
Step 6 show vtp status Verify your entries in the VTP Operating Mode and the VTP Domain Name
fields of the display.
When you configure a domain name, it cannot be removed; you can only reassign a switch to a different
domain.
To return the switch to a no-password state, use the no vtp password VLAN configuration command.
This example shows how to use VLAN configuration mode to configure the switch as a VTP server with
the domain name eng_group and the password mypassword:
Switch# vlan database
Switch(vlan)# vtp server
Switch(vlan)# vtp domain eng_group
Switch(vlan)# vtp password mypassword
Switch(vlan)# exit
APPLY completed.
Exiting....
Note If extended-range VLANs are configured on the switch, you cannot change VTP mode to client. You
receive an error message, and the configuration is not allowed.
Caution If all switches are operating in VTP client mode, do not configure a VTP domain name. If you do, it is
impossible to make changes to the VLAN configuration of that domain. Therefore, make sure you
configure at least one switch as a VTP server.
Beginning in privileged EXEC mode, follow these steps to configure the switch as a VTP client:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp mode client Configure the switch for VTP client mode. The default setting is VTP
server.
Step 3 vtp domain domain-name (Optional) Enter the VTP administrative-domain name. The name can be
from 1 to 32 characters. This should be the same domain name as the VTP
server.
All switches operating in VTP server or client mode under the same
administrative responsibility must be configured with the same domain
name.
Step 4 vtp password password (Optional) Enter the password for the VTP domain.
Step 5 end Return to privileged EXEC mode.
Step 6 show vtp status Verify your entries in the VTP Operating Mode and the VTP Domain Name
fields of the display.
Use the no vtp mode global configuration command to return the switch to VTP server mode. To return
the switch to a no-password state, use the no vtp password global configuration command. When you
configure a domain name, it cannot be removed; you can only reassign a switch to a different domain.
Note You can also configure a VTP client by using the vlan database privileged EXEC command to enter
VLAN configuration mode and entering the vtp client command, similar to the second procedure under
“Configuring a VTP Server” section on page 14-9. Use the no vtp client VLAN configuration command
to return the switch to VTP server mode or the no vtp password VLAN configuration command to return
the switch to a no-password state. When you configure a domain name, it cannot be removed; you can
only reassign a switch to a different domain.
Note Before you create extended-range VLANs (VLAN IDs 1006 to 4094), you must set VTP mode to
transparent by using the vtp mode transparent global configuration command. Save this configuration
to the startup configuration so that the switch boots up in VTP transparent mode. Otherwise, you lose
the extended-range VLAN configuration if the switch resets and boots up in VTP server mode (the
default).
Beginning in privileged EXEC mode, follow these steps to configure VTP transparent mode and save the
VTP configuration in the switch startup configuration file:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp mode transparent Configure the switch for VTP transparent mode (disable VTP).
Step 3 end Return to privileged EXEC mode.
Step 4 show vtp status Verify your entries in the VTP Operating Mode and the VTP Domain
Name fields of the display.
Step 5 copy running-config startup-config (Optional) Save the configuration in the startup configuration file.
Note Only VTP mode and domain name are saved in the switch running
configuration and can be copied to the startup configuration file.
To return the switch to VTP server mode, use the no vtp mode global configuration command.
Note If extended-range VLANs are configured on the switch, you cannot change VTP mode to server. You
receive an error message, and the configuration is not allowed.
Note You can also configure VTP transparent mode by using the vlan database privileged EXEC command
to enter VLAN configuration mode and by entering the vtp transparent command, similar to the second
procedure under the “Configuring a VTP Server” section on page 14-9. Use the no vtp transparent
VLAN configuration command to return the switch to VTP server mode. If extended-range VLANs are
configured on the switch, you cannot change VTP mode to server. You receive an error message, and the
configuration is not allowed.
Caution VTP version 1 and VTP version 2 are not interoperable on switches in the same VTP domain. Every
switch in the VTP domain must use the same VTP version. Do not enable VTP version 2 unless every
switch in the VTP domain supports version 2.
Note In TrCRF and TrBRF Token ring environments, you must enable VTP version 2 for Token Ring VLAN
switching to function properly. For Token Ring and Token Ring-Net media, VTP version 2 must be
disabled.
For more information on VTP version configuration guidelines, see the “VTP Version” section on
page 14-8.
Beginning in privileged EXEC mode, follow these steps to enable VTP version 2:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp version 2 Enable VTP version 2 on the switch.
VTP version 2 is disabled by default on VTP version 2-capable switches.
Step 3 end Return to privileged EXEC mode.
Step 4 show vtp status Verify that VTP version 2 is enabled in the VTP V2 Mode field of the display.
To disable VTP version 2, use the no vtp version global configuration command.
Note You can also enable VTP version 2 by using the vlan database privileged EXEC command to enter
VLAN configuration mode and entering the vtp v2-mode VLAN configuration command. To disable
VTP version 2, use the no vtp v2-mode VLAN configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 vtp pruning Enable pruning in the VTP administrative domain.
By default, pruning is disabled. You need to enable pruning on only one switch
in VTP server mode.
Step 3 end Return to privileged EXEC mode.
Step 4 show vtp status Verify your entries in the VTP Pruning Mode field of the display.
To disable VTP pruning, use the no vtp pruning global configuration command.
Note You can also enable VTP pruning by using the vlan database privileged EXEC command to enter VLAN
configuration mode and entering the vtp pruning VLAN configuration command. To disable VTP
pruning, use the no vtp pruning VLAN configuration command.
Pruning is supported with VTP version 1 and version 2. If you enable pruning on the VTP server, it is
enabled for the entire VTP domain.
Only VLANs included in the pruning-eligible list can be pruned. By default, VLANs 2 through 1001 are
pruning eligible on trunk ports. Extended-range VLANs cannot be pruned. To change the
pruning-eligible VLANs, see the “Changing the Pruning-Eligible List” section on page 13-19.
Command Purpose
Step 1 show vtp status Check the VTP configuration revision number.
If the number is 0, add the switch to the VTP domain.
If the number is greater than 0, follow these steps:
a. Write down the domain name.
b. Write down the configuration revision number.
c. Continue with the next steps to reset the configuration revision number on the
switch.
Step 2 configure terminal Enter global configuration mode.
Step 3 vtp domain domain-name Change the domain name from the original one displayed in Step 1 to a new name.
Step 4 end The VLAN information on the switch is updated and the configuration revision
number is reset to 0. You return to privileged EXEC mode.
Step 5 show vtp status Verify that the configuration revision number has been reset to 0.
Step 6 configure terminal Enter global configuration mode.
Step 7 vtp domain domain-name Enter the original domain name on the switch.
Step 8 end The VLAN information on the switch is updated, and you return to privileged EXEC
mode.
Step 9 show vtp status (Optional) Verify that the domain name is the same as in Step 1 and that the
configuration revision number is 0.
You can also change the VTP domain name by entering the vlan database privileged EXEC command
to enter VLAN configuration mode and by entering the vtp domain domain-name command. In this
mode, you must enter the exit command to update VLAN information and return to privileged EXEC
mode.
After resetting the configuration revision number, add the switch to the VTP domain.
Note You can use the vtp mode transparent global configuration command or the vtp transparent VLAN
configuration command to disable VTP on the switch, and then change its VLAN information without
affecting the other switches in the VTP domain.
Monitoring VTP
You monitor VTP by displaying VTP configuration information: the domain name, the current VTP
revision, and the number of VLANs. You can also display statistics about the advertisements sent and
received by the switch.
Table 14-3 shows the privileged EXEC commands for monitoring VTP activity.
Command Purpose
show vtp status Display the VTP switch configuration information.
show vtp counters Display counters about VTP messages that have been sent and received.
This chapter describes how to configure the voice VLAN feature on your Catalyst 2940 switch. Voice
VLAN is sometimes referred to as an auxiliary VLAN in the Catalyst 6000 family switch documentation.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Phone
ASIC
P2 PC
P1 3-port P3
switch Access
port
101351
When the IP Phone connects to the switch, the access port (PC-to-telephone jack) of the IP phone can
connect to a PC. Packets to and from the PC and to or from the IP phone share the same physical link to
the switch and the same switch port. For deployment examples that use voice VLANs, see the“Network
Configuration Examples” section on page 1-8.
Note If you enable 802.1x on an access port on which a voice VLAN is configured and to
which a Cisco IP Phone is connected, the Cisco IP Phone loses connectivity to the
switch for up to 30 seconds.
– Protected port. See the “Configuring Protected Ports” section on page 17-3 for more
information.
You can configure the IP phone to carry data traffic in one of these ways:
• Overriding the CoS Priority of Incoming Data Frames, page 15-5
• Configuring the IP Phone to Trust the CoS Priority of Incoming Data Frames, page 15-5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface connected to the IP phone, and enter interface
configuration mode.
Step 3 switchport voice vlan vlan-id Instruct the Cisco IP Phone to forward all voice traffic through the specified
VLAN. By default, the Cisco IP Phone forwards the voice traffic with
an 802.1Q priority of 5.
Valid VLAN IDs are from 1 to 4094.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id Verify your voice VLAN entries.
switchport
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove voice VLAN, use the no switchport voice vlan interface configuration command or the
switchport voice vlan none interface configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface connected to the IP phone, and enter interface
configuration mode.
Step 3 switchport voice vlan dot1p Instruct the switch port to use 802.1p priority tagging for voice traffic and to
use the default native VLAN (VLAN 0) to carry all traffic. By default, the
Cisco IP phone forwards the voice traffic with an 802.1p priority of 5.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id Verify your voice VLAN entries.
switchport
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the port to its default setting, use the no switchport voice vlan interface configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and specify the interface connected to
the IP phone.
Step 3 switchport priority extend Set the IP phone access port to override the priority received from the PC or
cos value the attached device.
The CoS value is a number from 0 to 7. Seven is the highest priority. The
default is 0.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id Verify your entries.
switchport
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Use the no switchport priority extend interface configuration command or the switchport priority
extend cos 0 interface configuration command to return the port to its default setting.
Configuring the IP Phone to Trust the CoS Priority of Incoming Data Frames
You can connect a PC or other data device to a Cisco 7960 IP Phone port. The PC can generate packets
with an assigned CoS value. You can configure the switch to trust the priority of frames arriving on the
IP phone port from connected devices.
Beginning in privileged EXEC mode, follow these steps to trust the CoS priority received from the
nonvoice port on the Cisco 7960 IP Phone:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and specify the interface connected to
the IP phone.
Step 3 switchport priority extend trust Set the IP phone access port to trust the priority received from the PC or the
attached device.
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id Verify your entries.
switchport
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Use the no switchport priority extend interface configuration command or the switchport priority
extend cos 0 interface configuration command to return the port to its default setting.
This chapter describes how to configure Internet Group Management Protocol (IGMP) snooping on your
Catalyst 2940 switch, including an application of local IGMP snooping, Multicast VLAN Registration
(MVR). It also includes procedures for controlling multicast group membership by using IGMP filtering
and procedures for configuring the IGMP throttling action.
Note For complete syntax and usage information for the commands used in this chapter, see the switch
command reference for this release and the Cisco IOS Release Network Protocols Command Reference,
Part 1, for Cisco IOS Release 12.1
Note For MAC addresses that map to IP multicast groups, you can either manage them through features such
as IGMP snooping and MVR, or you can use static MAC addresses. However, you cannot use both
methods simultaneously. Therefore, before using IGMP snooping or MVR, you should remove all
statically configured MAC addresses that map to IP multicast groups.
Note For more information on IP multicast and IGMP, see RFC 1112 and RFC 2236.
The multicast router sends out periodic IGMP general queries to all VLANs. When IGMP snooping is
enabled, the switch responds to the router queries with only one join request per MAC multicast group,
and the switch creates one entry per VLAN in the Layer 2 forwarding table for each MAC group from
which it receives an IGMP join request. All hosts interested in this multicast traffic send join requests
and are added to the forwarding table entry.
Layer 2 multicast groups learned through IGMP snooping are dynamic. However, you can statically
configure MAC multicast groups by using the ip igmp snooping vlan static global configuration
command. If you specify group membership for a multicast group address statically, your setting
supersedes any automatic manipulation by IGMP snooping. Multicast group membership lists can
consist of both user-defined and IGMP snooping-learned settings.
If a port spanning-tree, a port group, or a VLAN ID change occurs, the IGMP snooping-learned multicast
groups from this port on the VLAN are deleted.
The switches support a maximum of 255 IP multicast groups.
These sections describe characteristics of IGMP snooping on the switch:
• IGMP Versions, page 16-2
• Joining a Multicast Group, page 16-3
• Leaving a Multicast Group, page 16-5
• Immediate-Leave Processing, page 16-5
• IGMP Report Suppression, page 16-5
• Source-Only Networks, page 16-6
IGMP Versions
The switch supports IGMP version 1, IGMP version 2, and IGMP version 3. These versions are
interoperable on the switch. For example, if IGMP snooping is enabled on an IGMPv2 switch and the
switch receives an IGMPv3 report from a host, the switch can forward the IGMPv3 report to the
multicast router.
Note The switches support IGMPv3 snooping based only on the destination multicast MAC address. They do
not support snooping based on the source MAC address or on proxy reports.
An IGMPv3 switch supports Basic IGMPv3 Snooping Support (BISS), which includes support for the
snooping features on IGMPv1 and IGMPv2 switches and for IGMPv3 membership report messages.
BISS constrains the flooding of multicast traffic when your network includes IGMPv3 hosts. It
constrains traffic to approximately the same set of ports as the IGMP snooping feature on IGMPv2 or
IGMPv1 hosts.
Note IGMPv3 join and leave messages are not supported on switches running IGMP filtering or MVR.
An IGMPv3 switch can receive messages from and forward messages to a device running the Source
Specific Multicast (SSM) feature. For more information, see the “Configuring IP Multicast Layer 3
Switching” chapter in the Catalyst 4500 Series Switch Cisco IOS Software Configuration Guide, Cisco
IOS Release 12.1(12c)EW at this URL:
http://www.cisco.com/univercd/cc/td/doc/product/lan/cat4000/12_1_12/config/mcastmls.htm
Router A
1
IGMP report 224.1.2.3
VLAN
Switching engine
CPU
0
Forwarding
45750
table
2 3 4 5
Router A sends a general query to the switch, which forwards the query to ports 2 through 5, all members
of the same VLAN. Host 1 wants to join multicast group 224.1.2.3 and multicasts an IGMP membership
report (IGMP join message) to the group with the equivalent MAC destination address of
0x0100.5E01.0203. When the CPU receives the IGMP report multicast by Host 1, the CPU uses the
information in the IGMP report to set up a forwarding-table entry, as shown in Table 16-1, that includes
the port numbers of Host 1, the router, and the switch internal CPU.
Note that the switch hardware can distinguish IGMP information packets from other packets for the
multicast group.
• The first entry in the table tells the switching engine to send IGMP packets to only the switch CPU.
This prevents the CPU from becoming overloaded with multicast frames.
• The second entry tells the switching engine to send frames addressed to the 0x0100.5E01.0203
multicast MAC address that are not IGMP packets (!IGMP) to the router and to the host that has
joined the group.
If another host (for example, Host 4) sends an unsolicited IGMP join message for the same group
(Figure 16-2), the CPU receives that message and adds the port number of Host 4 to the forwarding table
as shown in Table 16-2. Note that because the forwarding table directs IGMP messages to only the CPU,
the message is not flooded to other ports on the switch. Any known multicast traffic is forwarded to the
group and not to the CPU. Any unknown multicast traffic is flooded to the VLAN and sent to the CPU
until it becomes known.
Router A
VLAN
Switching engine
CPU
0
Forwarding
45751
table
2 3 4 5
Immediate-Leave Processing
Immediate Leave is only supported with IGMP version 2 hosts.
The switch uses IGMP snooping Immediate-Leave processing to remove from the forwarding table an
interface that sends a leave message without the switch sending MAC-based general queries to the
interface. The VLAN interface is pruned from the multicast tree for the multicast group specified in the
original leave message. Immediate-Leave processing ensures optimal bandwidth management for all
hosts on a switched network, even when multiple multicast groups are simultaneously in use.
Note You should only use the Immediate-Leave processing feature on VLANs where a single host is
connected to each port. If Immediate Leave is enabled in VLANs where more than one host is connected
to a port, some hosts might inadvertently be dropped.
Note IGMP report suppression is supported only when the multicast query has IGMPv1 and IGMPv2 reports.
This feature is not supported when the query includes IGMPv3 reports.
The switch uses IGMP report suppression to forward only one IGMP report per multicast router query
to multicast devices. When IGMP router suppression is enabled (the default), the switch sends the first
IGMP report from all hosts for a group to all the multicast routers. The switch does not send the
remaining IGMP reports for the group to the multicast routers. This feature prevents duplicate reports
from being sent to the multicast devices.
If the multicast router query includes requests only for IGMPv1 and IGMPv2 reports, the switch
forwards only the first IGMPv1 or IGMPv2 report from all hosts for a group to all the multicast routers.
If the multicast router query also includes requests for IGMPv3 reports, the switch forwards all IGMPv1,
IGMPv2, and IGMPv3 reports for a group to the multicast devices.
If you disable IGMP report suppression, all IGMP reports are forwarded to the multicast routers.
Source-Only Networks
In a source-only network, switch ports are connected to multicast source ports and multicast router ports.
The switch ports are not connected to hosts that send IGMP join or leave messages.
The switch learns about IP multicast groups from the IP multicast data stream by using the source-only
learning method. The switch forwards traffic only to the multicast router ports.
The default learning method is IP multicast-source-only learning. You can disable IP
multicast-source-only learning by using the no ip igmp snooping source-only-learning global
configuration command.
In addition to IGMP query packets, the switch also uses Protocol-Independent Multicast protocol version
2 (PIMv2) packets for multicast router discovery. The packets are sent to the switch CPU, which can
result in a occasional high CPU traffic. You can disable multicast router discovery by PIMv2 packets by
using the no ip igmp snooping mrouter learn pim v2 global configuration command. This command
only works when you also disable source-only learning on the switch by using the no ip igmp snooping
source-only-learning global configuration command.
By default, the switch ages out forwarding-table entries that were learned by the source-only learning
method and that are not in use. If the aging time is too long or is disabled, the forwarding table is filled
with unused entries that the switch learned by using source-only learning or by using the IGMP join
messages. When the switch receives traffic for new IP multicast groups, it floods the packet to all ports
in the same VLAN. This unnecessary flooding can impact switch performance.
If aging is disabled and you want to delete multicast addresses that the switch learned by using
source-only learning, re-enable aging of the forwarding-table entries. The switch can now age out the
multicast addresses that were learned by the source-only learning method and are not in use.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip igmp snooping Globally enable IGMP snooping in all existing VLAN interfaces.
Step 3 end Return to privileged EXEC mode.
Step 4 copy running-config startup-config (Optional) Save your entries in the configuration file.
To globally disable IGMP snooping on all VLAN interfaces, use the no ip igmp snooping global
configuration command.
Beginning in privileged EXEC mode, follow these steps to enable IGMP snooping on a VLAN interface:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip igmp snooping vlan vlan-id Enable IGMP snooping on the VLAN interface.
Step 3 end Return to privileged EXEC mode.
Step 4 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable IGMP snooping on a VLAN interface, use the no ip igmp snooping vlan vlan-id global
configuration command for the specified VLAN number.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip igmp snooping vlan vlan-id mrouter Enable IGMP snooping on a VLAN.The VLAN ID range is 1 to 4094.
learn {cgmp | pim-dvmrp} Specify the multicast router learning method:
• cgmp—Listen for CGMP packets. This method is useful for
reducing control traffic.
• pim-dvmrp—Snoop on IGMP queries and PIM-DVMRP packets.
This is the default.
Step 3 end Return to privileged EXEC mode.
Step 4 show ip igmp snooping Verify the configuration.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
This example shows how to configure IGMP snooping to use CGMP packets as the learning method:
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 1 mrouter learn cgmp
Switch(config)# end
To return to the default learning method, use the no ip igmp snooping vlan vlan-id mrouter learn cgmp
global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip igmp snooping vlan vlan-id mrouter Specify the multicast router VLAN ID and specify the interface
interface interface-id to the multicast router. The VLAN ID range is 1 to 4094.
Step 3 end Return to privileged EXEC mode.
Step 4 show ip igmp snooping mrouter [vlan vlan-id] Verify that IGMP snooping is enabled on the VLAN interface.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove a multicast router port from the VLAN, use the no ip igmp snooping vlan vlan-id mrouter
interface interface-id global configuration command.
This example shows how to enable a static connection to a multicast router and verify the configuration:
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 200 mrouter interface gigabitethernet0/1
Switch(config)# end
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 ip igmp snooping vlan vlan-id static Statically configure a Layer 2 port as a member of a multicast
mac-address interface interface-id group:
• vlan-id is the multicast group VLAN ID.
• mac-address is the group MAC address.
• interface-id is the member port.
Command Purpose
Step 3 end Return to privileged EXEC mode.
Step 4 show ip igmp snooping mrouter vlan vlan-id Verify that the member port is a member of the VLAN multicast
or group.
show mac address-table multicast vlan vlan-id Verify the member port and the MAC address
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove the Layer 2 port from the multicast group, use the no ip igmp snooping vlan vlan-id static
mac-address interface interface-id global configuration command.
This example shows how to statically configure a host on an interface and verify the configuration:
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 1 static 0100.5e00.0203 interface gigabitethernet0/1
Switch(config)# end
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 ip igmp snooping vlan vlan-id Enable IGMP Immediate-Leave processing on the VLAN interface.
immediate-leave
Step 3 end Return to privileged EXEC mode.
Step 4 show ip igmp snooping vlan vlan-id Verify that Immediate Leave is enabled on the VLAN.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable IGMP Immediate-Leave on a VLAN, use the no ip igmp snooping vlan vlan-id
immediate-leave global configuration command.
This example shows how to enable IGMP immediate-leave processing on VLAN 130:
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 130 immediate-leave
Switch(config)# end
Note IGMP report suppression is supported only when the multicast query has IGMPv1 and IGMPv2 reports.
This feature is not supported when the query includes IGMPv3 reports.
Beginning in privileged EXEC mode, follow these steps to disable IGMP report suppression:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no ip igmp snooping report-suppression Disable IGMP report suppression.
Step 3 end Return to privileged EXEC mode.
Step 4 show ip igmp snooping Verify that IGMP report suppression is disabled.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To re-enable IGMP report suppression, use the ip igmp snooping report-suppression global
configuration command.
Beginning in privileged EXEC mode, follow these steps to disable IP multicast-source-only learning:
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 no ip igmp snooping source-only-learning Disable IP multicast-source-only learning.
Step 3 no ip igmp snooping mrouter learn pim v2 (Optional) Disable multicast router discovery by PIM v2
packets.
Step 4 end Return to privileged EXEC mode.
Command Purpose
Step 5 show running-config | include Verify that IP multicast-source-only learning is disabled.
source-only-learning
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Command Purpose
Step 1 configure terminal Enter global configuration mode
Step 2 ip igmp snooping source-only learning age-timer Set the aging time. The range is from 0 to 2880 seconds. The
time default is 600 seconds (10 minutes).
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config | include Verify the aging time.
source-only-learning
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the aging of the forwarding table entries, enter the ip igmp snooping source-only-learning
age-timer 0 global configuration command.
If you disable source-only learning by using the no ip igmp snooping source-only learning global
configuration command and the aging time is enabled, it has no effect on the switch.
Command Purpose
show ip igmp snooping [vlan vlan-id] Display the snooping configuration information for all VLANs on the
switch or for a specified VLAN.
(Optional) Enter vlan vlan-id to display information for a single VLAN.
show ip igmp snooping group [vlan vlan-id] Display information about the IGMP multicast groups, the compatibility
mode, and the ports that are associated with each group.
(Optional) Enter vlan vlan-id to display information for a single VLAN.
show ip igmp snooping mrouter [vlan vlan-id] Display information on dynamically learned and manually configured
multicast router interfaces.
Note When you enable IGMP snooping, the switch automatically
learns the interface to which a multicast router is connected.
These are dynamically learned interfaces.
For more information about the keywords and options in these commands, see the command reference
for this release.
For examples of output from the commands in Table 16-4, see the command reference for this release.
or disabled without affecting the behavior of the other feature. However, if IGMP snooping and MVR
are both enabled, MVR reacts only to join and leave messages from multicast groups configured under
MVR. Join and leave messages from all other multicast groups are managed by IGMP snooping.
The switch CPU identifies the MVR IP multicast streams and their associated MAC addresses in the
switch forwarding table, intercepts the IGMP messages, and modifies the forwarding table to include or
remove the subscriber as a receiver of the multicast stream, even though the receivers might be in a
different VLAN from the source. This forwarding behavior selectively allows traffic to cross between
different VLANs.
The switch has these modes of MVR operation: dynamic and compatible.
• When operating in MVR dynamic mode, the switch performs standard IGMP snooping. IGMP
information packets are sent to the switch CPU, but multicast data packets are not sent to the CPU.
Dynamic mode allows the multicast router to run normally because the switch sends the IGMP join
messages to the router, and the router forwards multicast streams for a particular group to an
interface only if it has received a join message from the interface for the group. Receiver ports are
treated as members of the multicast VLAN for MVR multicast control and data traffic. IGMP reports
for MVR groups are sent out source ports in the multicast VLAN.
• When in MVR compatible mode, MVR on the Catalyst 2940 switch interoperates with MVR on
Catalyst 3500 XL and Catalyst 2900 XL switches. It works the same as dynamic mode for all
multicast data packets and IGMP query and leave packets. However, received IGMP report packets
for MVR groups are not sent out on the multicast VLAN source ports. In contrast to dynamic mode,
the switch does not send join messages to the router. The router must be statically configured for the
interface to receive the multicast stream. Therefore, in this mode, MVR does not support dynamic
membership joins on source ports.
Note IGMPv3 join and leave messages are not supported on switches running MVR.
the IGMP leave was received. As soon as the leave message is received, the receiver port is removed
from multicast group membership, which speeds up leave latency. Enable the Immediate Leave feature
only on receiver ports to which a single receiver device is connected.
Multicast
server
SP
Switch B
SP
SP
SP SP
SP
SP1 SP2
Multicast Multicast
data data
Switch A
PC
101364
TV TV
RP = Receiver Port Note: All source ports belong to
SP = Source Port the multicast VLAN.
MVR eliminates the need to duplicate television-channel multicast traffic for subscribers in each VLAN.
Multicast traffic for all channels is only sent around the VLAN trunk once—only on the multicast
VLAN. Although the IGMP leave and join message in the VLAN to which the subscriber port is
assigned. These messages dynamically register for streams of multicast traffic in the multicast VLAN
on the Layer 3 device. The access layer switch (Switch A) modifies the forwarding behavior to allow the
traffic to be forwarded from the multicast VLAN to the subscriber port in a different VLAN, selectively
allowing traffic to cross between two VLANs.
IGMP reports are sent to the same MAC addresses as the multicast data. The Switch A CPU must capture
all IGMP join and leave messages from receiver ports and forward them to the multicast VLAN of the
source (uplink) port.
Configuring MVR
These sections include basic MVR configuration information:
• Default MVR Configuration, page 16-16
• MVR Configuration Guidelines and Limitations, page 16-16
• Configuring MVR Global Parameters, page 16-17
• Configuring MVR Interfaces, page 16-18
Note For complete syntax and usage information for the commands used in this section, see the command
reference for this release.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 mvr Enable MVR on the switch.
Step 3 mvr group ip-address [count] Configure an IP multicast address on the switch or use the count parameter to
configure a contiguous series of MVR group addresses (the range for count is
1 to 256; the default is 1). Any multicast data sent to this address is sent to all
source ports on the switch and all receiver ports that have elected to receive
data on that multicast address. Each multicast address would correspond to
one television channel.
Note Each IP address translates to a multicast 48-bit MAC address. If an IP
address being configured translates (aliases) to a previously
configured MAC address or to any reserved multicast MAC addresses,
the command fails.
Step 4 mvr querytime value (Optional) Define the maximum time to wait for IGMP report memberships
on a receiver port before removing the port from multicast group membership.
The value is in units of tenths of a second. The range is from 1 to 100 and the
default is 5 tenths or one-half second.
Step 5 mvr vlan vlan-id (Optional) Specify the VLAN in which multicast data is received; all source
ports must belong to this VLAN. The VLAN ID range is 1 to 4094. The
default is VLAN 1.
Step 6 mvr mode {dynamic | compatible} (Optional) Specify the MVR mode of operation:
• dynamic—Allows dynamic MVR membership on source ports.
• compatible—Is compatible with Catalyst 3500 XL and Catalyst 2900 XL
switches and does not support IGMP dynamic joins on source ports.
The default is compatible mode.
Step 7 end Return to privileged EXEC mode.
Step 8 show mvr Verify the configuration.
or
show mvr members
Step 9 copy running-config (Optional) Save your entries in the configuration file.
startup-config
To return the switch to its default settings, use the no mvr [mode | group ip-address | querytime | vlan]
global configuration commands.
This example shows how to enable MVR, configure the MVR group address, set the query time to
1 second (10 tenths), specify the MVR multicast VLAN as VLAN 22, set the MVR mode as dynamic,
and verify the results:
Switch(config)# mvr
Switch(config)# mvr group 228.1.23.4
Switch(config)# mvr querytime 10
Switch(config)# mvr vlan 22
Switch(config)# mvr mode dynamic
Switch(config)# end
Switch# show mvr
MVR Running: TRUE
MVR multicast vlan: 22
MVR Max Multicast Groups: 256
MVR Current multicast groups: 1
MVR Global query response time: 10 (tenths of sec)
MVR Mode: dynamic
You can use the show mvr members privileged EXEC command to verify the MVR multicast group
addresses on the switch.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 mvr Enable MVR on the switch.
Step 3 interface interface-id Enter the port to configure and enter interface configuration mode.
Step 4 mvr type {source | receiver} Configure an MVR port as one of these:
• source—Configure uplink ports that receive and send multicast data as
source ports. Subscribers cannot be directly connected to source ports.
All source ports on a switch belong to the single multicast VLAN.
• receiver—Configure a port as a receiver port if it is a subscriber port and
should only receive multicast data. It does not receive data unless it
becomes a member of the multicast group, either statically or by using
IGMP leave and join messages. Receiver ports cannot belong to the
multicast VLAN.
The default configuration is as a non-MVR port. If you attempt to configure
a non-MVR port with MVR characteristics, the operation fails.
Step 5 mvr vlan vlan-id group ip-address (Optional) Statically configure a port to receive multicast traffic sent to the
multicast VLAN and the IP multicast address. A port statically configured as
a member of a group remains a member of the group until statically removed.
Note In compatible mode, this command applies to only receiver ports. In
dynamic mode, it applies to receiver ports and source ports.
Receiver ports can also dynamically join multicast groups by using IGMP
join and leave messages.
Command Purpose
Step 6 mvr immediate (Optional) Enable the Immediate Leave feature of MVR on the port.
Note This command applies to only receiver ports and should only be
enabled on receiver ports to which a single receiver device is
connected.
Step 7 end Return to privileged EXEC mode.
Step 8 show mvr Verify the configuration.
show mvr interface
or
show mvr members
Step 9 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the interface to its default settings, use the no mvr [type | immediate | vlan vlan-id | group]
interface configuration commands.
This example shows how to configure a port as a receiver port, statically configure the port to receive
multicast traffic sent to the multicast group address, configure Immediate Leave on the interface, and
verify the results.
Switch(config)# mvr
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# mvr type receiver
Switch(config-if)# mvr vlan 22 group 228.1.23.4
Switch(config-if)# mvr immediate
Switch(config)# end
Switch# show mvr interface gigabitethernet0/1
Type: RECEIVER Status: ACTIVE Immediate Leave: ENABLED
show mvr Displays MVR status and values for the switch—whether MVR is enabled or disabled,
the multicast VLAN, the maximum (256) and current (0 through 256) number of
multicast groups, the query response time, and the MVR mode.
show mvr interface [interface-id] Displays all MVR interfaces and their MVR configurations.
[members [vlan vlan-id]] When a specific interface is entered, displays this information:
• Type—Receiver or Source
• Status—One of these:
– Active means the port is part of a VLAN.
– Up/Down means that the port is forwarding or nonforwarding.
– Inactive means that the port is not part of any VLAN.
• Immediate Leave—Enabled or Disabled
If the members keyword is entered, displays all multicast group members on this port or,
if a VLAN identification is entered, all multicast group members on the VLAN. The
VLAN ID range is 1 to 4094.
show mvr members [ip-address] Displays all receiver and source ports that are members of any IP multicast group or the
specified IP multicast group IP address.
Note IGMPv3 join and leave messages are not supported on switches running IGMP filtering.
You can also set the maximum number of IGMP groups that a Layer 2 interface can join.
With the IGMP throttling feature, you can also set the maximum number of IGMP groups that a Layer 2
interface can join. If the maximum number of IGMP groups is set, the IGMP snooping forwarding table
contains the maximum number of entries, and the interface receives an IGMP join report, you can
configure an interface to drop the IGMP report or to remove a randomly selected multicast entry in the
forwarding table and then to add the IGMP group in the report to the table.
These sections describe how to configure IGMP filtering and throttling:
• Default IGMP Filtering and Throttling Configuration, page 16-21
• Configuring IGMP Profiles, page 16-21 (optional)
• Applying IGMP Profiles, page 16-23 (optional)
• Setting the Maximum Number of IGMP Groups, page 16-24 (optional)
• Configuring the IGMP Throttling Action, page 16-24 (optional)
When the maximum number of groups is in forwarding table, the default IGMP throttling action is to
deny the IGMP report. For configuration guidelines, see the “Configuring the IGMP Throttling Action”
section on page 16-24.
The default is for the switch to have no IGMP profiles configured. When a profile is configured, if
neither the permit nor deny keyword is included, the default is to deny access to the range of IP
addresses.
Beginning in privileged EXEC mode, follow these steps to create an IGMP profile:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 ip igmp profile profile number Enter IGMP profile configuration mode, and assign a number to the
profile you are configuring. The range is from 1 to 4294967295.
Step 3 permit | deny (Optional) Set the action to permit or deny access to the IP multicast
address. If no action is configured, the default for the profile is to deny
access.
Step 4 range ip multicast address Enter the IP multicast address or range of IP multicast addresses to
which access is being controlled. If entering a range, enter the low IP
multicast address, a space, and the high IP multicast address.
You can use the range command multiple times to enter multiple
addresses or ranges of addresses.
Step 5 end Return to privileged EXEC mode.
Step 6 show ip igmp profile profile number Verify the profile configuration.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete a profile, use the no ip igmp profile profile number global configuration command.
To delete an IP multicast address or range of IP multicast addresses, use the no range ip multicast
address IGMP profile configuration command.
This example shows how to create IGMP profile 4 allowing access to the single IP multicast address and
how to verify the configuration. If the action was to deny (the default), it would not appear in the show
ip igmp profile output display.
Switch(config)# ip igmp profile 4
Switch(config-igmp-profile)# permit
Switch(config-igmp-profile)# range 229.9.9.0
Switch(config-igmp-profile)# end
Switch# show ip igmp profile 4
IGMP Profile 4
permit
range 229.9.9.0 229.9.9.0
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode by entering the physical interface to
configure. The interface must be a Layer 2 port that does not belong to
an EtherChannel port group.
Step 3 ip igmp filter profile number Apply the specified IGMP profile to the interface. The profile number
can be from 1 to 4294967295.
Step 4 end Return to privileged EXEC mode.
Step 5 show running configuration interface Verify the configuration.
interface-id
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove a profile from an interface, use the no ip igmp filter profile number interface configuration
command.
This example shows how to apply IGMP profile 4 to a port and verify the configuration.
Switch(config)# interface fastethernet0/2
Switch(config-if)# ip igmp filter 4
Switch(config-if)# end
Switch# show running-config interface fastethernet0/2
Building configuration...
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode by entering the physical interface to
configure. The interface can be a Layer 2 port that does not belong to an
EtherChannel group or a EtherChannel interface.
Step 3 ip igmp max-groups number Set the maximum number of IGMP groups that the interface can join.
The range is from 0 to 4294967294. The default is to have no maximum
set.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-configuration interface Verify the configuration.
interface-id
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove the maximum group limitation and return to the default of no maximum, use the no ip igmp
max-groups interface configuration command.
This example shows how to limit to 25 the number of IGMP groups that an interface can join.
Switch(config)# interface fastethernet0/2
Switch(config-if)# ip igmp max-groups 25
Switch(config-if)# end
– If you configure the throttling action as deny, the entries that were previously in the forwarding
table are not removed but are aged out. After these entries are aged out and the maximum
number of entries is in the forwarding table, the switch drops the next IGMP report received on
the interface.
– If you configure the throttling action as replace, the entries that were previously in the
forwarding table are removed. When the maximum number of entries is in the forwarding table,
the switch deletes a randomly selected entry and adds an entry for the next IGMP report received
on the interface.
To prevent the switch from removing the forwarding-table entries, you can configure the IGMP
throttling action before an interface adds entries to the forwarding table.
Beginning in privileged EXEC mode, follow these steps to configure the throttling action when the
maximum number of entries is in the forwarding table:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Enter interface configuration mode, and enter the physical interface to
configure. The interface can be a Layer 2 port that does not belong to an
EtherChannel group or an EtherChannel interface. The interface cannot
be a trunk port.
Step 3 ip igmp max-groups action {deny | When an interface receives an IGMP report and the maximum number
replace} of entries is in the forwarding table, specify the action that the interface
takes:
• deny—Drop the report.
• replace—Remove a randomly selected multicast entry in the
forwarding table, and add the IGMP group in the report.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config interface Verify the configuration.
interface-id
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default action of dropping the report, use the no ip igmp max-groups action interface
configuration command.
This example shows how to configure an interface to remove a randomly selected multicast entry in the
forwarding table and to add an IGMP group to the forwarding table when the maximum number of
entries is in the table.
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# ip igmp max-groups action replace
Switch(config-if)# end
Table 16-8 Commands for Displaying IGMP Filtering and Throttling Configuration
Command Purpose
how ip igmp profile [profile number] Displays the specified IGMP profile or all the IGMP profiles defined on the
switch.
show running-configuration [interface Displays the configuration of the specified interface or the configuration of
interface-id] all interfaces on the switch, including (if configured) the maximum
number of IGMP groups to which an interface can belong and the IGMP
profile applied to the interface.
This chapter describes how to configure the port-based traffic control features on your Catalyst 2940
switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
The thresholds can either be expressed as a percentage of the total available bandwidth that can be used
by the broadcast, multicast, or unicast traffic, or as the rate at which the interface receives multicast,
broadcast, or unicast traffic.
When a switch uses the bandwidth-based method, the rising threshold is the percentage of total available
bandwidth associated with multicast, broadcast, or unicast traffic before forwarding is blocked. The
falling threshold is the percentage of total available bandwidth below which the switch resumes normal
forwarding. In general, the higher the level, the less effective the protection against broadcast storms.
When a switch uses traffic rates as the threshold values, the rising and falling thresholds are in packets
per second. The rising threshold is the rate at which multicast, broadcast, and unicast traffic is received
before forwarding is blocked. The falling threshold is the rate below which the switch resumes normal
forwarding. In general, the higher the rate, the less effective the protection against broadcast storms.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the port to configure, and enter interface configuration
mode.
Step 3 storm-control {broadcast | multicast | Configure broadcast, multicast, or unicast storm control.
unicast} level {level [level-low] | pps pps
The keywords have these meanings:
[pps-low]}
• For level, specify the rising threshold level for broadcast,
multicast, or unicast traffic as a percentage of the bandwidth.
The storm control action occurs when traffic utilization reaches
this level.
• (Optional) For level-low, specify the falling threshold level as a
percentage of the bandwidth. This value must be less than the
rising supression value.The normal transmission restarts (if the
action is filtering) when traffic drops below this level.
• For pps pps, specify the rising threshold level for broadcast,
multicast, or unicast traffic in packets per second. The storm
control action occurs when traffic reaches this level.
• (Optional) For pps-low, specify the falling threshold level in
packets per second that can be less than or equal to the rising
threshold level. The normal transmission restarts (if the action is
filtering) when traffic drops below this level.
For pps and pps-low, the range is from 0 to 4294967295.
Command Purpose
Step 4 storm-control action {shutdown | trap} Specify the action to be taken when a storm is detected. The default
is to filter out the traffic and not to send traps.
• Select the shutdown keyword to error-disable the port during a
storm.
• Select the trap keyword to generate an SNMP trap when a storm
is detected.
Step 5 end Return to privileged EXEC mode.
Step 6 show storm-control [interface] [{broadcast Verify your entries.
| history | multicast | unicast}]
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable storm control, use the no storm-control broadcast level, the no storm-control multicast
level, or the no storm-control unicast level interface configuration command.
If you configure the action to be taken when a packet storm is detected as shutdown (the port is
error-disabled during a storm), you must use the no shutdown interface configuration command to bring
the interface out of this state. If you do not specify the shutdown action, specify the action as trap (the
switch generates a trap when a storm is detected).
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to configure, and enter interface
configuration mode.
Step 3 switchport protected Configure the interface to be a protected port.
Command Purpose
Step 4 end Return to privileged EXEC mode.
Step 5 show interfaces interface-id switchport Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable protected port, use the no switchport protected interface configuration command.
This example shows how to configure a port as a protected port:
Switch# configure terminal
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport protected
Switch(config-if)# end
You can configure an interface to convert the dynamic MAC addresses to sticky secure MAC addresses
and to add them to the running configuration by enabling sticky learning. To enable sticky learning, enter
the switchport port-security mac-address sticky interface configuration command. When you enter
this command, the interface converts all the dynamic secure MAC addresses, including those that were
dynamically learned before sticky learning was enabled, to sticky secure MAC addresses.
The sticky secure MAC addresses do not automatically become part of the configuration file, which is
the startup configuration used each time the switch restarts. If you save the sticky secure MAC addresses
in the configuration file, when the switch restarts, the interface does not need to relearn these addresses.
If you do not save the configuration, they are lost.
If sticky learning is disabled, the sticky secure MAC addresses are converted to dynamic secure
addresses and are removed from the running configuration.
A secure port can have from 1 to 132 associated secure addresses. The total number of available secure
addresses on the switch is 1024.
Security Violations
It is a security violation when one of these situations occurs:
• The maximum number of secure MAC addresses have been added to the address table, and a station
whose MAC address is not in the address table attempts to access the interface.
• An address learned or configured on one secure interface is seen on another secure interface in the
same VLAN.
You can configure the interface for one of three violation modes, based on the action to be taken if a
violation occurs:
• protect—When the number of secure MAC addresses reaches the limit allowed on the port, packets
with unknown source addresses are dropped until you remove a sufficient number of secure MAC
addresses or increase the number of maximum allowable addresses. You are not notified that a
security violation has occurred.
Note We do not recommend enabling the protect mode on a trunk port. The protect mode disables
learning when any VLAN reaches its maximum limit, even if the port has not reached its
maximum limit.
• restrict—When the number of secure MAC addresses reaches the limit allowed on the port, packets
with unknown source addresses are dropped until you remove a sufficient number of secure MAC
addresses or increase the number of maximum allowable addresses. In this mode, you are notified
that a security violation has occurred. Specifically, an SNMP trap is sent, a syslog message is
logged, and the violation counter increments.
• shutdown—In this mode, a port security violation causes the interface to immediately become
error-disabled, and turns off the port LED. It also sends an SNMP trap, logs a syslog message, and
increments the violation counter. When a secure port is in the error-disabled state, you can bring it
out of this state by entering the errdisable recovery cause psecure-violation global configuration
command, or you can manually re-enable it by entering the shutdown and no shutdown interface
configuration commands. This is the default mode.
Table 17-1 shows the violation mode and the actions taken when you configure an interface for port
security.
Violation
Traffic is Sends SNMP Sends syslog Displays error counter
Violation Mode forwarded1 trap message message2 increments Shuts down port
protect No No No No No No
restrict No Yes Yes No Yes No
shutdown No Yes Yes No Yes Yes
1. Packets with unknown source addresses are dropped until you remove a sufficient number of secure MAC addresses.
2. The switch will return an error message if you manually configure an address that would cause a security violation.
• When a voice VLAN is configured on a secure port that is also configured as a sticky secure port,
all addresses seen on the voice VLAN are learned as dynamic secure addresses, and all addresses
seen on the access VLAN (to which the port belongs) are learned as sticky secure addresses.
• You cannot configure port security on a per-VLAN basis.
• The switch does not support port security aging of sticky secure MAC addresses.
• The protect and restrict options cannot be simultaneously enabled on an interface.
Table 17-3 summarizes port security compatibility with other features configured on a port.
Table 17-3 Port Security Compatibility with Other Catalyst 2940 Features
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to configure, and enter interface configuration
mode.
Step 3 switchport mode access Set the interface mode as access; an interface in the default mode
(dynamic desirable) cannot be configured as a secure port.
Step 4 switchport port-security Enable port security on the interface.
Step 5 switchport port-security maximum (Optional) Set the maximum number of secure MAC addresses for the
value interface. The range is 1 to 132; the default is 1.
Command Purpose
Step 6 switchport port-security violation (Optional) Set the violation mode, the action to be taken when a security
{protect | restrict | shutdown} violation is detected, as one of these:
• protect—When the number of secure MAC addresses reaches the
limit allowed on the port, packets with unknown source addresses
are dropped until you remove a sufficient number of secure MAC
addresses or increase the number of maximum allowable addresses.
You are not notified that a security violation has occurred.
• restrict—When the number of secure MAC addresses reaches the
limit allowed on the port, packets with unknown source addresses
are dropped until you remove a sufficient number of secure MAC
addresses or increase the number of maximum allowable addresses.
In this mode, you are notified that a security violation has occurred.
Specifically, an SNMP trap is sent, a syslog message is logged, and
the violation counter increments.
• shutdown—In this mode, a port security violation causes the
interface to immediately become error-disabled, and turns off the
port LED. It also sends an SNMP trap, logs a syslog message, and
increments the violation counter.
Note When a secure port is in the error-disabled state, you can bring
it out of this state by entering the errdisable recovery cause
psecure-violation global configuration command, or you can
manually re-enable it by entering the shutdown and no
shutdown interface configuration commands.
Step 7 switchport port-security mac-address (Optional) Enter a static secure MAC address for the interface, repeating
mac-address the command as many times as necessary. You can use this command to
enter the maximum number of secure MAC addresses. If you configure
fewer secure MAC addresses than the maximum, the remaining MAC
addresses are dynamically learned.
Note If you enable sticky learning after you enter this command, the
secure addresses that were dynamically learned are converted to
sticky secure MAC addresses and are added to the running
configuration.
Step 8 switchport port-security mac-address (Optional) Enable sticky learning on the interface.
sticky
Step 9 end Return to privileged EXEC mode.
Step 10 show port-security Verify your entries.
Step 11 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return the interface to the default condition as not a secure port, use the no switchport port-security
interface configuration command. If you enter this command when sticky learning is enabled, the sticky
secure addresses remain part of the running configuration but are removed from the address table. All
addresses are now dynamically learned.
To return the interface to the default number of secure MAC addresses, use the no switchport
port-security maximum value interface configuration command.
To return the violation mode to the default condition (shutdown mode), use the no switchport
port-security violation {protect | restrict} interface configuration command.
To disable sticky learning on an interface, use the no switchport port-security mac-address sticky
interface configuration command. The interface converts the sticky secure MAC addresses to dynamic
secure addresses.
To delete a static secure MAC address from the address table, use the clear port-security configured
address mac-address privileged EXEC command. To delete all the static secure MAC addresses on an
interface, use the clear port-security configured interface interface-id privileged EXEC command.
To delete a dynamic secure MAC address from the address table, use the clear port-security dynamic
address mac-address privileged EXEC command. To delete all the dynamic addresses on an interface,
use the clear port-security dynamic interface interface-id privileged EXEC command.
To delete a sticky secure MAC addresses from the address table, use the clear port-security sticky
address mac-address privileged EXEC command. To delete all the sticky addresses on an interface, use
the clear port-security sticky interface interface-id privileged EXEC command.
This example shows how to enable port security on a port and to set the maximum number of secure
addresses to 50. The violation mode is the default, no static secure MAC addresses are configured, and
sticky learning is enabled.
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport port-security
Switch(config-if)# switchport port-security maximum 50
Switch(config-if)# switchport port-security mac-address sticky
Switch(config-if)# end
This example shows how to configure a static secure MAC address on a port and enable sticky learning:
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet0/2
Switch(config-if)# switchport mode access
Switch(config-if)# switchport port-security
Switch(config-if)# switchport port-security mac-address 0000.02000.0004
Switch(config-if)# switchport port-security mac-address sticky
Switch(config-if)# end
Beginning in privileged EXEC mode, follow these steps to configure port security aging:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the port on which you want to enable port security aging, and enter
interface configuration mode.
Note The switch does not support port security aging of sticky secure
addresses.
Step 3 switchport port-security aging Enable or disable static aging for the secure port, or set the aging time or
{static | time time | type {absolute | type.
inactivity}} Enter static to enable aging for statically configured secure addresses on this
port.
For time, specify the aging time for this port. The valid range is from 0 to
1440 minutes. If the time is equal to 0, aging is disabled for this port.
For type, select one of these keywords:
• absolute—Sets the aging type as absolute aging. All the secure
addresses on this port age out after the specified time (minutes) lapses
and are removed from the secure address list.
Note The absolute aging time could vary by 1 minute, depending on the
sequence of the system timer.
To disable port security aging for all secure addresses on a port, use the no switchport port-security
aging time interface configuration command. To disable aging for only statically configured secure
addresses, use the no switchport port-security aging static interface configuration command.
This example shows how to set the aging time as 2 hours for the secure addresses on a port:
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport port-security aging time 120
This example shows how to set the aging time as 2 minutes for the inactivity aging type with aging
enabled for the configured secure addresses on the interface:
Switch(config-if)# switchport port-security aging time 2
Switch(config-if)# switchport port-security aging type inactivity
Switch(config-if)# switchport port-security aging static
You can verify the previous commands by entering the show port-security interface interface-id
privileged EXEC command.
Table 17-4 Commands for Displaying Traffic Control Status and Configuration
Command Purpose
show interfaces [interface-id] switchport Displays the administrative and operational status of all switching
(nonrouting) ports or the specified port, including port protection
settings.
show storm-control [interface-id] [broadcast | Displays storm control suppression levels set on all interfaces or the
multicast | unicast] specified interface for the specified traffic type or for broadcast traffic
if no traffic type is entered.
show port-security [interface interface-id] Displays port security settings for the switch or for the specified
interface, including the maximum allowed number of secure MAC
addresses for each interface, the number of secure MAC addresses on
the interface, the number of security violations that have occurred, and
the violation mode.
show port-security [interface interface-id] address Displays all secure MAC addresses configured on all switch interfaces
or on a specified interface with aging information for each address.
This chapter describes how to configure the UniDirectional Link Detection (UDLD) protocol on your
Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding UDLD
UDLD is a Layer 2 protocol that enables devices connected through fiber-optic or twisted-pair Ethernet
cables to monitor the physical configuration of the cables and detect when a unidirectional link exists.
All connected devices must support UDLD for the protocol to successfully identify and disable
unidirectional links. When UDLD detects a unidirectional link, it administratively shuts down the
affected port and alerts you. Unidirectional links can cause a variety of problems, including
spanning-tree topology loops.
Modes of Operation
UDLD supports two modes of operation: normal (the default) and aggressive. In normal mode, UDLD
can detect unidirectional links due to misconnected interfaces on fiber-optic connections. In aggressive
mode, UDLD can also detect unidirectional links due to one-way traffic on fiber-optic and twisted-pair
links and to misconnected interfaces on fiber-optic links.
In normal and aggressive modes, UDLD works with the Layer 1 mechanisms to determine the physical
status of a link. At Layer 1, autonegotiation takes care of physical signaling and fault detection. UDLD
performs tasks that autonegotiation cannot perform, such as detecting the identities of neighbors and
shutting down misconnected interfaces. When you enable both autonegotiation and UDLD, the Layer 1
and Layer 2 detections work together to prevent physical and logical unidirectional connections and the
malfunctioning of other protocols.
A unidirectional link occurs whenever traffic sent by a local device is received by its neighbor but traffic
from the neighbor is not received by the local device.
In normal mode, UDLD detects a unidirectional link when fiber strands in a fiber-optic interface are
misconnected and the Layer 1 mechanisms do not detect this misconnection. If the interfaces are
connected correctly but the traffic is one way, UDLD does not detect the unidirectional link because the
Layer 1 mechanism, which is supposed to detect this condition, does not do so. In case, the logical link
is considered undetermined, and UDLD does not disable the interface.
When UDLD is in normal mode, if one of the fiber strands in a pair is disconnected and autonegotiation
is active, the link does not stay up because the Layer 1 mechanisms did not detect a physical problem
with the link. In this case, UDLD does not take any action, and the logical link is considered
undetermined.
In aggressive mode, UDLD detects a unidirectional link by using the previous detection methods. UDLD
in aggressive mode can also detect a unidirectional link on a point-to-point link on which no failure
between the two devices is allowed. It can also detect a unidirectional link when one of these problems
exists:
• On fiber-optic or twisted-pair links, one of the interfaces cannot send or receive traffic.
• On fiber-optic or twisted-pair links, one of the interfaces is down while the other is up.
• One of the fiber strands in the cable is disconnected.
In these cases, UDLD shuts down the affected interface.
In a point-to-point link, UDLD hello packets can be considered as a heart beat whose presence
guarantees the health of the link. Conversely, the loss of the heart beat means that the link must be shut
down if it is not possible to re-establish a bidirectional link.
If both fiber strands in a cable are working normally from a Layer 1 perspective, UDLD in aggressive
mode determines whether those fiber strands are connected correctly and whether traffic is flowing
bidirectionally between the correct neighbors. This check cannot be performed by autonegotiation
because autonegotiation operates at Layer 1.
Switch A
TX RX
Switch B successfully
receives traffic from
Switch A on this port. However, Switch A does not receive traffic
from Switch B on the same port. If UDLD
is in aggressive mode, it detects the
problem and disables the port. If UDLD is
in normal mode, the logical link is
considered undetermined, and UDLD
does not disable the interface.
TX RX
Switch B 98648
Configuring UDLD
This section describes how to configure UDLD on your switch. It contains this configuration
information:
• Default UDLD Configuration, page 18-4
• Configuration Guidelines, page 18-4
• Enabling UDLD Globally, page 18-5
• Enabling UDLD on an Interface, page 18-5
• Resetting an Interface Shut Down by UDLD, page 18-6
Configuration Guidelines
These are the UDLD configuration guidelines:
• A UDLD-capable interface also cannot detect a unidirectional link if it is connected to a
UDLD-incapable port of another switch.
• When configuring the mode (normal or aggressive), make sure that the same mode is configured on
both sides of the link.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 udld {aggressive | enable | message time Specify the UDLD mode of operation:
message-timer-interval}
• aggressive—Enables UDLD in aggressive mode on all fiber-optic
interfaces.
• enable—Enables UDLD in normal mode on all fiber-optic
interfaces on the switch. UDLD is disabled by default.
An individual interface configuration overrides the setting of the
udld enable global configuration command.
For more information about aggressive and normal modes, see the
“Modes of Operation” section on page 18-1.
• message time message-timer-interval—Configures the period of
time between UDLD probe messages on ports that are in the
advertisement phase and are determined to be bidirectional. The
range is from 7 to 90 seconds.
Note This command affects fiber-optic interfaces only. Use the udld
interface configuration command to enable UDLD on other
interface types. For more information, see the “Enabling UDLD
on an Interface” section on page 18-5.
Step 3 end Return to privileged EXEC mode.
Step 4 show udld Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable UDLD globally, use the no udld enable global configuration command to disable normal
mode UDLD on all fiber-optic ports. Use the no udld aggressive global configuration command to
disable aggressive mode UDLD on all fiber-optic ports.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be enabled for UDLD, and enter interface
configuration mode.
Command Purpose
Step 3 udld port [aggressive] Specify the UDLD mode of operation:
• (Optional) aggressive— Enables UDLD in aggressive mode on the
specified interface. UDLD is disabled by default.
If you do not enter the aggressive keyword, the switch enables
UDLD in normal mode.
On a fiber-optic interface, this command overrides the udld enable
global configuration command setting.
For more information about aggressive and normal modes, see the
“Modes of Operation” section on page 18-1.
Step 4 end Return to privileged EXEC mode.
Step 5 show udld interface-id Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable UDLD on a non-fiber-optic interface, use the no udld port interface configuration command.
Note On fiber-optic interfaces, the no udld port command reverts the interface configuration to the udld
enable global configuration command setting.
Use the no udld port interface configuration command to disable UDLD on a fiber-optic interface
Command Purpose
Step 1 udld reset Reset all interfaces shut down by UDLD.
Step 2 show udld Verify your entries.
Step 3 copy running-config startup-config (Optional) Save your entries in the configuration file.
This chapter describes how to configure Cisco Discovery Protocol (CDP) on your Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release and the Cisco IOS Configuration Fundamentals Command Reference for Cisco
IOS Release 12.1.
Understanding CDP
CDP is a device discovery protocol that runs over Layer 2 (the data link layer) on all Cisco-manufactured
devices (routers, bridges, access servers, and switches) and allows network management applications to
discover Cisco devices that are neighbors of already known devices. With CDP, network management
applications can learn the device type and the Simple Network Management Protocol (SNMP) agent
address of neighboring devices running lower-layer, transparent protocols. This feature enables
applications to send SNMP queries to neighboring devices.
CDP runs on all media that support Subnetwork Access Protocol (SNAP). Because CDP runs over the
data-link layer only, two systems that support different network-layer protocols can learn about each
other.
Each CDP-configured device sends periodic messages to a multicast address, advertising at least one
address at which it can receive SNMP messages. The advertisements also contain time-to-live, or
holdtime information, which is the length of time a receiving device holds CDP information before
discarding it. Each device also listens to the messages sent by other devices to learn about neighboring
devices.
On the switch, CDP enables the Network Assistant software to display a graphical view of the network.
The switch uses CDP to find cluster candidates and maintain information about cluster members and
other devices up to three cluster-enabled devices away from the command switch by default.
The switch supports CDP Version 2.
Configuring CDP
These sections include CDP configuration information and procedures:
• Default CDP Configuration, page 19-2
• Configuring the CDP Characteristics, page 19-2
• Disabling and Enabling CDP, page 19-3
• Disabling and Enabling CDP on an Interface, page 19-4
Note Steps 2 through 4 are all optional and can be performed in any order.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 cdp timer seconds (Optional) Set the transmission frequency of CDP updates in seconds.
The range is 5 to 254; the default is 60 seconds.
Step 3 cdp holdtime seconds (Optional) Specify the amount of time a receiving device should hold the
information sent by your device before discarding it.
The range is 10 to 255 seconds; the default is 180 seconds.
Step 4 cdp advertise-v2 (Optional) Configure CDP to send Version-2 advertisements.
This is the default state.
Step 5 end Return to privileged EXEC mode.
Command Purpose
Step 6 show cdp Verify your settings.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Use the no form of the CDP commands to return to the default settings.
This example shows how to configure CDP characteristics.
Switch# configure terminal
Switch(config)# cdp timer 50
Switch(config)# cdp holdtime 120
Switch(config)# cdp advertise-v2
Switch(config)# end
For additional CDP show commands, see the “Monitoring and Maintaining CDP” section on page 19-5.
Note Creating and maintaining switch clusters is based on the regular exchange of CDP messages. Disabling
CDP can interrupt cluster discovery. For more information, see Clustering Switches and see the Getting
Started with Cisco Network Assistant, available on Cisco.com.
Beginning in privileged EXEC mode, follow these steps to disable the CDP device discovery capability:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no cdp run Disable CDP.
Step 3 end Return to privileged EXEC mode.
Beginning in privileged EXEC mode, follow these steps to enable CDP when it has been disabled:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 cdp run Enable CDP after disabling it.
Step 3 end Return to privileged EXEC mode.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface on which you are disabling CDP, and enter
interface configuration mode.
Step 3 no cdp enable Disable CDP on the interface.
Step 4 end Return to privileged EXEC mode.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
Beginning in privileged EXEC mode, follow these steps to enable CDP on an interface when it has been
disabled:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface on which you are enabling CDP, and enter
interface configuration mode.
Step 3 cdp enable Enable CDP on the interface after disabling it.
Step 4 end Return to privileged EXEC mode.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
This example shows how to enable CDP on an interface when it has been disabled.
Switch# configure terminal
Switch(config)# interface fastethernet0/1
Switch(config-if)# cdp enable
Switch(config-if)# end
Command Description
clear cdp counters Reset the traffic counters to zero.
clear cdp table Delete the CDP table of information about neighbors.
show cdp Display global information, such as frequency of transmissions and the holdtime
for packets being sent.
show cdp entry entry-name Display information about a specific neighbor.
[protocol | version]
You can enter an asterisk (*) to display all CDP neighbors, or you can enter the
name of the neighbor about which you want information.
You can also limit the display to information about the protocols enabled on the
specified neighbor or information about the version of software running on the
device.
show cdp interface [interface-id] Display information about interfaces where CDP is enabled.
You can limit the display to the interface about which you want information.
show cdp neighbors [interface-id] Display information about neighbors, including device type, interface type and
[detail] number, holdtime settings, capabilities, platform, and port ID.
You can limit the display to neighbors on a specific type or number of interface
or expand the display to provide more detailed information.
show cdp traffic Display CDP counters, including the number of packets sent and received and
checksum errors.
This chapter describes how to configure Switched Port Analyzer (SPAN) on your Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding SPAN
You can analyze network traffic passing through ports by using SPAN to send a copy of the traffic to
another port on the switch that has been connected to a SwitchProbe device or other Remote Monitoring
(RMON) probe or security device. SPAN mirrors received or sent (or both) traffic on one or more source
ports to a destination port for analysis.
For example, in Figure 20-1, all traffic on port 4 (the source port) is mirrored to port 8 (the destination
port). A network analyzer on port 8 receives all network traffic from port 4 without being physically
attached to port 4.
4 5
3 6
2 7
1 8
111414
Network analyzer
Only traffic that enters or leaves source ports can be monitored by using SPAN.
You can use the SPAN destination port to inject traffic from a network security device. For example, if
you connect a Cisco Intrusion Detection System (IDS) Sensor Appliance to a destination port, the IDS
device can send TCP Reset packets to close down the TCP session of a suspected attacker.
SPAN Session
A local SPAN session is an association of a destination port with source ports. You can monitor incoming
or outgoing traffic on a series or range of ports.
SPAN sessions do not interfere with the normal operation of the switch. However, an oversubscribed
SPAN destination, for example, a 10-Mbps port monitoring a 100-Mbps port, results in dropped or lost
packets.
You can configure SPAN sessions on disabled ports; however, a SPAN session does not become active
unless you enable the destination port and at least one source port for that session. The show monitor
session session_number privileged EXEC command displays the operational status of a SPAN session.
A SPAN session remains inactive after system power-on until the destination port is operational.
Traffic Types
SPAN sessions include these traffic types:
• Receive (Rx) SPAN—The goal of receive (or ingress) SPAN is to monitor as much as possible all
the packets received by the source interface. A copy of each packet received by the source is sent to
the destination port for that SPAN session. You can monitor a series or range of ingress ports in a
SPAN session.
At the destination port, if tagging is enabled, the packets appear with the 802.1Q header. If no
tagging is specified, packets appear in the native format.
Packets that are modified because of —for example, modified Differentiated Services Code Point
(DSCP)—are copied with modification for Rx SPAN.
• Transmit (Tx) SPAN—The goal of transmit (or egress) SPAN is to monitor as much as possible all
the packets sent by the source interface after all modification and processing is performed by the
switch. A copy of each packet sent by the source is sent to the destination port for that SPAN session.
The copy is provided after the packet ismodified.You can monitor a range of egress ports in a SPAN
session.
For packets that are modified because of QoS, the modified packet might not have the same DSCP
(IP packet) or CoS (non-IP packet) as the SPAN source.
Some features that can cause a packet to be dropped during transmit processing might also affect the
duplicated copy for SPAN. If the source port is oversubscribed, the destination ports will have
different dropping behavior.
• Both—In a SPAN session, you can monitor a series or range of ports for both received and sent
packets.
Source Port
A source port (also called a monitored port) is a switched port that you monitor for network traffic
analysis. In a single local SPAN session, you can monitor source port traffic such as received (Rx),
transmitted (Tx), or bidirectional (both). The switch supports any number of source ports (up to the
maximum number of available ports on the switch).
A source port has these characteristics:
• It can be any port type (for example, EtherChannel, Fast Ethernet, Gigabit Ethernet, and so forth).
• It cannot be a destination port.
• Each source port can be configured with a direction (ingress, egress, or both) to monitor. For
EtherChannel sources, the monitored direction would apply to all the physical ports in the group.
• Source ports can be in the same or different VLANs.
You can configure a trunk port as a source port. All VLANs active on the trunk are monitored.
Destination Port
Each local SPAN session must have a destination port (also called a monitoring port) that receives a copy
of traffic from the source port.
The destination port has these characteristics:
• It must reside on the same switch as the source port.
• It can be any Ethernet physical port.
• It cannot be a source port or a reflector port.
• It cannot be an EtherChannel group or a VLAN.
• It can be a physical port that is assigned to an EtherChannel group, even if the EtherChannel group
has been specified as a SPAN source. The port is removed from the group while it is configured as
a SPAN destination port.
• The port does not transmit any traffic except that required for the SPAN session.
• If ingress traffic forwarding is enabled for a network security device, the destination port forwards
traffic at Layer 2.
• It does not participate in spanning tree while the SPAN session is active.
• When it is a destination port, it does not participate in any of the Layer 2 protocols— Cisco
Discovery Protocol (CDP), VLAN Trunk Protocol (VTP), Dynamic Trunking Protocol (DTP),
Spanning Tree Protocol (STP), Port Aggregation Protocol (PagP), and Link Aggregation Control
Protocol (LACP).
• No address learning occurs on the destination port.
• A destination port receives copies of sent and received traffic for all monitored source ports. If a
destination port is oversubscribed, it could become congested. This could affect traffic forwarding
on one or more of the source ports.
SPAN Traffic
You can use SPAN to monitor all network traffic, including multicast and bridge protocol data unit
(BPDU) packets, and CDP, VTP, DTP, STP, PagP, and LACP packets.
In some SPAN configurations, multiple copies of the same source packet are sent to the SPAN
destination port. For example, a bidirectional (both Rx and Tx) SPAN session is configured for the
sources a1 Rx monitor and the a2 Rx and Tx monitor to destination port d1. If a packet enters the switch
through a1 and is switched to a2, both incoming and outgoing packets are sent to destination port d1.
• QoS—For ingress monitoring, the packets sent to the SPAN destination port might be different from
the packets actually received at the SPAN source port because the packets are forwarded after
ingress QoS classification and policing. The packet DSCP might not be the same as the received
packet.
• Multicast traffic can be monitored. For egress and ingress port monitoring, only a single unedited
packet is sent to the SPAN destination port. It does not reflect the number of times the multicast
packet is sent.
• Port security—A secure port cannot be a SPAN destination port.
Configuring SPAN
This section describes how to configure SPAN on your switch. It contains this configuration information:
• SPAN Configuration Guidelines, page 20-5
• Creating a SPAN Session and Specifying Ports to Monitor, page 20-6
• Creating a SPAN Session and Enabling Ingress Traffic, page 20-7
• Removing Ports from a SPAN Session, page 20-9
• For SPAN source ports, you can monitor sent and received traffic for a single port or for a series or
range of ports.
• When you configure a switch port as a SPAN destination port, it is no longer a normal switch port;
only monitored traffic passes through the SPAN destination port.
• You can configure a disabled port to be a source or destination port, but the SPAN function does not
start until the destination port and at least one source port enabled.
• A SPAN destination port never participates in any VLAN spanning tree. SPAN does include BPDUs
in the monitored traffic, so any spanning-tree BPDUs received on the SPAN destination port for a
SPAN session were copied from the SPAN source ports.
• When SPAN is enabled, configuration changes have these results:
– If you change the VLAN configuration of a destination port, the change is not effective until
SPAN is disabled.
– If you disable all source ports or the destination port, the SPAN function stops until both a
source and the destination port are enabled.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no monitor session {session_number | all} Clear any existing SPAN configuration for the session.
For session_number, specify 1.
Specify all to remove all SPAN sessions.
Step 3 monitor session session_number source Specify the SPAN session and the source port (monitored port).
interface interface-id [, | -] [both | rx | tx]
For session_number, specify 1.
For interface-id, specify the source port to monitor. Valid interfaces
include physical interfaces and port-channel logical interfaces
(port-channel port-channel-number).
(Optional) [, | -] Specify a series or range of interfaces. Enter a space
before and after the comma; enter a space before and after the
hyphen.
(Optional) Specify the direction of traffic to monitor. If you do not
specify a traffic direction, the source interface sends both sent and
received traffic.
• both—Monitor both received and sent traffic.
• rx—Monitor received traffic.
• tx—Monitor sent traffic.
Command Purpose
Step 4 monitor session session_number Specify the SPAN session and the destination port (monitoring port).
destination interface interface-id
For session_number, specify 1.
[encapsulation {dot1q}]
For interface-id, specify the destination port. Valid interfaces include
physical interfaces.
(Optional) Specify the encapsulation header for outgoing packets. If
not specified, packets are sent in native form.
• dot1q—Use 802.1Q encapsulation.
Step 5 end Return to privileged EXEC mode.
Step 6 show monitor [session session_number] Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
This example shows how to set up a SPAN session, session 1, for monitoring source port traffic to a
destination port. First, any existing SPAN configuration for session 1 is cleared, and then bidirectional
traffic is mirrored from source port 1 to destination port 8.
Switch(config)# no monitor session 1
Switch(config)# monitor session 1 source interface fastethernet0/1
Switch(config)# monitor session 1 destination interface fastethernet0/8
encapsulation dot1q
Switch(config)# end
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no monitor session {session_number | all | Clear any existing SPAN configuration for the session.
local}
For session_number, specify 1.
Specify all or local to remove all SPAN sessions. Though visible in
the command-line help, the remote keyword is not supported.
Command Purpose
Step 3 monitor session session_number source Specify the SPAN session and the source port (monitored port).
interface interface-id [, | -] [both | rx | tx]
For session_number, specify 1.
For interface-id, specify the source port to monitor. Valid interfaces
include physical interfaces and port-channel logical interfaces
(port-channel port-channel-number).
(Optional) [, | -] Specify a series or range of interfaces. Enter a space
before and after the comma; enter a space before and after the
hyphen.
(Optional) Specify the direction of traffic to monitor. If you do not
specify a traffic direction, the source interface sends both sent and
received traffic.
• both—Monitor both received and sent traffic.
• rx—Monitor received traffic.
• tx—Monitor sent traffic.
Step 4 monitor session session_number Specify the SPAN session, the destination port (monitoring port), the
destination interface interface-id packet encapsulation, and the ingress VLAN.
[encapsulation {dot1q}] [ingress vlan For session_number, specify 1.
vlan id]
For interface-id, specify the destination port. Valid interfaces include
physical interfaces.
(Optional) Specify the encapsulation header for outgoing packets. If
not specified, packets are sent in native form.
• dot1q—Use 802.1Q encapsulation.
(Optional) Enter ingress vlan vlan id to enable ingress forwarding
and specify a default VLAN.
Step 5 end Return to privileged EXEC mode.
Step 6 show monitor [session session_number] Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
This example shows how to configure the destination port for ingress traffic on VLAN 5 by using a
security device that does not support 802.1Q encapsulation.
Switch(config)# monitor session 1 destination interface fastethernet0/5 ingress vlan 5
This example shows how to configure the destination port for ingress traffic on VLAN 5 by using a
security device that supports 802.1Q encapsulation.
Switch(config)# monitor session 1 destination interface fastethernet0/5 encapsulation
dot1q ingress vlan 5
This example shows how to disable ingress traffic forwarding on the destination port.
Switch(config)# monitor session 1 destination interface fastethernet0/5 encapsulation
dot1q
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no monitor session session_number source Specify the characteristics of the source port (monitored port) and
interface interface-id [, | -] [both | rx | tx] SPAN session to remove.
For session, specify 1.
For interface-id, specify the source port to no longer monitor. Valid
interfaces include physical interfaces and port-channel logical
interfaces (port-channel port-channel-number).
(Optional) Use [, | -] to specify a series or range of interfaces if they
were configured. This option is valid when monitoring only
received traffic. Enter a space before and after the comma; enter a
space before and after the hyphen.
(Optional) Specify the direction of traffic (both, rx, or tx) to no
longer monitor. If you do not specify a traffic direction, both
transmit and receive are disabled.
Step 3 end Return to privileged EXEC mode.
Step 4 show monitor [session session_number] Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove a source or destination port from the SPAN session, use the no monitor session
session_number source interface interface-id global configuration command or the no monitor session
session_number destination interface interface-id global configuration command. To change the
encapsulation type back to the default (native), use the monitor session session_number destination
interface interface-id without the encapsulation keyword.
This example shows how to remove a port as a SPAN source for SPAN session 1:
Switch(config)# no monitor session 1 source interface fastethernet0/1
Switch(config)# end
This example shows how to disable received traffic monitoring on a port that was configured for
bidirectional monitoring:
Switch(config)# no monitor session 1 source interface fastethernet0/1 rx
The monitoring of traffic received on port 1 is disabled, but traffic sent from this port continues to be
monitored.
This chapter describes how to configure Remote Network Monitoring (RMON) on your Catalyst 2940
switch. RMON is a standard monitoring specification that defines a set of statistics and functions that
can be exchanged between RMON-compliant console systems and network probes. RMON provides you
with comprehensive network-fault diagnosis, planning, and performance-tuning information.
Note For complete syntax and usage information for the commands used in this chapter, see the Cisco IOS
Configuration Fundamentals Command Reference for Cisco IOS Release 12.1.
Understanding RMON
RMON is an Internet Engineering Task Force (IETF) standard monitoring specification that allows
various network agents and console systems to exchange network monitoring data. You can use the
RMON feature with the Simple Network Management Protocol (SNMP) agent in the switch to monitor
all the traffic flowing among switches on all connected LAN segments.
RMON history
and statistic
collection enabled.
101233
Workstations Workstations
Configuring RMON
This section describes how to configure RMON on your switch. It contains this configuration
information:
• Default RMON Configuration, page 21-3
• Configuring RMON Alarms and Events, page 21-3
• Configuring RMON Collection on an Interface, page 21-5
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 rmon alarm number variable interval {absolute | delta} Set an alarm on a MIB object.
rising-threshold value [event-number] • For number, specify the alarm number. The
falling-threshold value [event-number] range is 1 to 65535.
[owner string]
• For variable, specify the MIB object to monitor.
• For interval, specify the time in seconds the
alarm monitors the MIB variable. The range is
1 to 4294967295 seconds.
• Specify the absolute keyword to test each MIB
variable directly; specify the delta keyword to
test the change between samples of a MIB
variable.
• For value, specify a number at which the alarm
is triggered and one for when the alarm is reset.
The range for the rising threshold and falling
threshold values is -2147483648 to
2147483647.
• (Optional) For event-number, specify the event
number to trigger when the rising or falling
threshold exceeds its limit.
• (Optional) For owner string, specify the owner
of the alarm.
Command Purpose
Step 3 rmon event number [description string] [log] [owner string] Add an event in the RMON event table that is
[trap community] associated with an RMON event number.
• For number, assign an event number. The range
is 1 to 65535.
• (Optional) For description string, specify a
description of the event.
• (Optional) Use the log keyword to generate an
RMON log entry when the event is triggered.
• (Optional) For owner string, specify the owner
of this event.
• (Optional) For community, enter the SNMP
community string used for this trap.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration
file.
To disable an alarm, use the no rmon alarm number global configuration command on each alarm you
configured. You cannot disable at once all the alarms that you configured. To disable an event, use the
no rmon event number global configuration command. To learn more about alarms and events and how
they interact with each other, see RFC 1757.
You can set an alarm on any MIB object. The following example configures RMON alarm number 10 by
using the rmon alarm command. The alarm monitors the MIB variable ifEntry.20.1 once every 20
seconds until the alarm is disabled and checks the change in the variable’s rise or fall. If the ifEntry.20.1
value shows a MIB counter increase of 15 or more, such as from 100000 to 100015, the alarm is
triggered. The alarm in turn triggers event number 1, which is configured with the rmon event
command. Possible events can include a log entry or an SNMP trap. If the ifEntry.20.1 value changes
by 0, the alarm is reset and can be triggered again.
Switch(config)# rmon alarm 10 ifEntry.20.1 20 delta rising-threshold 15 1
falling-threshold 0 owner jjohnson
The following example creates RMON event number 1 by using the rmon event command. The event is
defined as High ifOutErrors and generates a log entry when the event is triggered by the alarm. The user
jjones owns the row that is created in the event table by this command. This example also generates an
SNMP trap when the event is triggered.
Switch(config)# rmon event 1 log trap eventtrap description “High ifOutErrors” owner
jjones
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface on which to collect history, and enter
interface configuration mode.
Step 3 rmon collection history index Enable history collection for the specified number of buckets and
[buckets bucket-number] [interval seconds] time period.
[owner ownername]
• For index, identify the RMON group of statistics The range
is 1 to 65535.
• (Optional) For buckets bucket-number, specify the
maximum number of buckets desired for the RMON
collection history group of statistics. The range is 1 to
65535. The default is 50 buckets.
• (Optional) For interval seconds, specify the number of
seconds in each polling cycle.
• (Optional) For owner ownername, enter the name of the
owner of the RMON group of statistics.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 show rmon history Display the contents of the switch history table.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable history collection, use the no rmon collection history index interface configuration
command.
Beginning in privileged EXEC mode, follow these steps to collect group Ethernet statistics on an
interface:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface on which to collect statistics, and enter
interface configuration mode.
Step 3 rmon collection stats index [owner ownername] Enable RMON statistic collection on the interface.
• For index, specify the RMON group of statistics. The range
is from 1 to 65535.
• (Optional) For owner ownername, enter the name of the
owner of the RMON group of statistics.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Command Purpose
Step 6 show rmon statistics Display the contents of the switch statistics table.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable the collection of group Ethernet statistics, use the no rmon collection stats index interface
configuration command.
Command Purpose
show rmon Displays general RMON statistics.
show rmon alarms Displays the RMON alarm table.
show rmon events Displays the RMON event table.
show rmon history Displays the RMON history table.
show rmon statistics Displays the RMON statistics table.
For information about the fields in these displays, see the Cisco IOS Configuration Fundamentals
Command Reference for Cisco IOS Release 12.1.
This chapter describes how to configure system message logging on your Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the Cisco IOS
Configuration Fundamentals Command Reference, Release 12.1.
When the logging process is disabled, messages are sent only to the console. The messages are sent as
they are generated, so message and debug output are interspersed with prompts or output from other
commands. Messages appear on the console after the process that generated them has finished.
You can set the severity level of the messages to control the type of messages displayed on the console
and each of the destinations. You can timestamp log messages or set the syslog source address to enhance
real-time debugging and management. For information on possible messages, see the system message
guide for this release.
You can access logged system messages by using the switch command-line interface (CLI) or by saving
them to a properly configured syslog server. The switch software saves syslog messages in an internal
buffer. You can remotely monitor system messages by accessing the switch through Telnet, through the
console port, or by viewing the logs on a syslog server.
Element Description
seq no: Stamps log messages with a sequence number only if the service sequence-numbers global
configuration command is configured.
For more information, see the “Enabling and Disabling Sequence Numbers in Log Messages”
section on page 22-8.
timestamp formats: Date and time of the message or event. This information appears only if the service timestamps
log [datetime | log] global configuration command is configured.
mm/dd hh:mm:ss
or For more information, see the “Enabling and Disabling Timestamps on Log Messages” section on
page 22-7.
hh:mm:ss (short uptime)
or
d h (long uptime)
facility The facility to which the message refers (for example, SNMP, SYS, and so forth). For a list of
supported facilities, see Table 22-4 on page 22-12.
severity Single-digit code from 0 to 7 that is the severity of the message. For a description of the severity
levels, see Table 22-3 on page 22-9.
Element Description
MNEMONIC Text string that uniquely describes the message.
description Text string containing detailed information about the event being reported.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no logging console Disable message logging.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
or
show logging
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
Disabling the logging process can slow down the switch because a process must wait until the messages
are written to the console before continuing. When the logging process is disabled, messages appear on
the console as soon as they are produced, often appearing in the middle of command output.
The logging synchronous global configuration command also affects the display of messages to the
console. When this command is enabled, messages appear only after you press Return. For more
information, see the “Synchronizing Log Messages” section on page 22-6.
To re-enable message logging after it has been disabled, use the logging on global configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 logging buffered [size] Log messages to an internal buffer. The default buffer size is 4096. The
range is 4096 to 4294967295 bytes.
Note Do not make the buffer size too large because the switch could run
out of memory for other tasks. Use the show memory privileged
EXEC command to view the free processor memory on the switch;
however, this value is the maximum available, and the buffer size
should not be set to this amount.
Command Purpose
Step 3 logging host Log messages to a UNIX syslog server host.
For host, specify the name or IP address of the host to be used as the
syslog server.
To build a list of syslog servers that receive logging messages, enter this
command more than once.
For complete syslog server configuration steps, see the “Configuring
UNIX Syslog Servers” section on page 22-10.
Step 4 logging file flash:filename Store log messages in a file in flash memory.
[max-file-size] [min-file-size] • For filename, enter the log message filename.
[severity-level-number | type]
• (Optional) For max-file-size, specify the maximum logging file size.
The range is 4096 to 2147483647. The default is 4069 bytes.
• (Optional) For min-file-size, specify the minimum logging file size.
The range is 1024 to 2147483647. The default is 2048 bytes.
• (Optional) For severity-level-number | type, specify either the logging
severity level or the logging type. The severity range is 0 to 7. For a
list of logging type keywords, see Table 22-3 on page 22-9. By
default, the log file receives debugging messages and numerically
lower levels.
Step 5 end Return to privileged EXEC mode.
Step 6 terminal monitor Log messages to a nonconsole terminal during the current session.
Terminal parameter-setting commands are set locally and do not remain
in effect after the session has ended. You must perform this step for each
session to see the debugging messages.
Step 7 show running-config Verify your entries.
Step 8 copy running-config startup-config (Optional) Save your entries in the configuration file.
The logging buffered global configuration command copies logging messages to an internal buffer. The
buffer is circular, so newer messages overwrite older messages after the buffer is full. To display the
messages that are logged in the buffer, use the show logging privileged EXEC command. The first
message displayed is the oldest message in the buffer. To clear the contents of the buffer, use the clear
logging privileged EXEC command.
To disable logging to the console, use the no logging console global configuration command. To disable
logging to a file, use the no logging file [severity-level-number | type] global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 line [console | vty] line-number Specify the line to be configured for synchronous logging of
[ending-line-number] messages.
• Use the console keyword for configurations that occur through
the switch console port.
• Use the line vty line-number command to specify which vty
lines are to have synchronous logging enabled. You use a vty
connection for configurations that occur through a Telnet
session. The range of line numbers is from 0 to 15.
You can change the setting of all 16 vty lines at once by entering:
line vty 0 15
Or you can change the setting of the single vty line being used for
your current connection. For example, to change the setting for vty
line 2, enter:
line vty 2
When you enter this command, the mode changes to line
configuration.
Step 3 logging synchronous [level severity-level | Enable synchronous logging of messages.
all] [limit number-of-buffers] • (Optional) For level severity-level, specify the message severity
level. Messages with a severity level equal to or higher than this
value are printed asynchronously. Low numbers mean greater
severity and high numbers mean lesser severity. The default is 2.
• (Optional) Specifying level all means that all messages are
printed asynchronously regardless of the severity level.
• (Optional) For limit number-of-buffers, specify the number of
buffers to be queued for the terminal after which new messages
are dropped. The default is 20.
Step 4 end Return to privileged EXEC mode.
Command Purpose
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable synchronization of unsolicited messages and debug output, use the no logging synchronous
[level severity-level | all] [limit number-of-buffers] line configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 service timestamps log uptime Enable log timestamps.
or The first command enables timestamps on log messages,
service timestamps log datetime [msec] [localtime] showing the time since the system was rebooted.
[show-timezone] The second command enables timestamps on log messages.
Depending on the options selected, the timestamp can
include the date, time in milliseconds relative to the local
time zone, and the time zone name.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable timestamps for both debug and log messages, use the no service timestamps global
configuration command.
This example shows part of a logging display with the service timestamps log datetime global
configuration command enabled:
*Mar 1 18:46:11: %SYS-5-CONFIG_I: Configured from console by vty2 (10.34.195.36)
This example shows part of a logging display with the service timestamps log uptime global
configuration command enabled:
00:00:46: %LINK-3-UPDOWN: Interface Port-channel1, changed state to up
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 service sequence-numbers Enable sequence numbers.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable sequence numbers, use the no service sequence-numbers global configuration command.
This example shows part of a logging display with sequence numbers enabled:
000019: %SYS-5-CONFIG_I: Configured from console by vty2 (10.34.195.36)
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 logging console level Limit messages logged to the console.
By default, the console receives debugging messages and numerically
lower levels (see Table 22-3 on page 22-9).
Step 3 logging monitor level Limit messages logged to the terminal lines.
By default, the terminal receives debugging messages and numerically
lower levels (see Table 22-3 on page 22-9).
Step 4 logging trap level Limit messages logged to the syslog servers.
By default, syslog servers receive informational messages and
numerically lower levels (see Table 22-3 on page 22-9).
For complete syslog server configuration steps, see the “Configuring
UNIX Syslog Servers” section on page 22-10.
Step 5 end Return to privileged EXEC mode.
Command Purpose
Step 6 show running-config Verify your entries.
or
show logging
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note Specifying a level causes messages at that level and numerically lower levels to appear at the destination.
To disable logging to the console, use the no logging console global configuration command. To disable
logging to a terminal other than the console, use the no logging monitor global configuration command.
To disable logging to syslog servers, use the no logging trap global configuration command.
Table 22-3 describes the level keywords. It also lists the corresponding UNIX syslog definitions from
the most severe level to the least severe level.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 1
logging history level Change the default level of syslog messages stored in the history file and
sent to the SNMP server.
See Table 22-3 on page 22-9 for a list of level keywords.
By default, warnings, errors, critical, alerts, and emergencies messages
are sent.
Step 3 logging history size number Specify the number of syslog messages that can be stored in the history
table.
The default is to store one message. The range is 1 to 500 messages.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
1. Table 22-3 lists the level keywords and severity level. For SNMP usage, the severity level values increase by 1. For example, emergencies
equal 1, not 0, and critical equals 3, not 2.
When the history table is full (it contains the maximum number of message entries specified with the
logging history size global configuration command), the oldest message entry is deleted from the table
to allow the new message entry to be stored.
To return the logging of syslog messages to the default level, use the no logging history global
configuration command. To return the number of messages in the history table to the default value, use
the no logging history size global configuration command.
Note Some recent versions of UNIX syslog daemons no longer accept by default syslog packets from the
network. If this is the case with your system, use the UNIX man syslogd command to determine what
options must be added to or removed from the syslog command line to enable logging of remote syslog
messages.
The local7 keyword specifies the logging facility to be used; see Table 22-4 on page 22-12 for
information on the facilities. The debug keyword specifies the syslog level; see Table 22-3 on page 22-9
for information on the severity levels. The syslog daemon sends messages at this level or at a more severe
level to the file specified in the next field. The file must already exist, and the syslog daemon must have
permission to write to it.
Step 2 Create the log file by entering these commands at the UNIX shell prompt:
$ touch /var/log/cisco.log
$ chmod 666 /var/log/cisco.log
Step 3 Make sure the syslog daemon reads the new changes:
$ kill -HUP `cat /etc/syslog.pid`
For more information, see the man syslog.conf and man syslogd commands on your UNIX system.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 logging host Log messages to a UNIX syslog server host by entering its IP address.
To build a list of syslog servers that receive logging messages, enter this
command more than once.
Step 3 logging trap level Limit messages logged to the syslog servers.
Be default, syslog servers receive informational messages and lower. See
Table 22-3 on page 22-9 for level keywords.
Command Purpose
Step 4 logging facility facility-type Configure the syslog facility. See Table 22-4 on page 22-12 for
facility-type keywords.
The default is local7.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove a syslog server, use the no logging host global configuration command, and specify the syslog
server IP address. To disable logging to syslog servers, enter the no logging trap global configuration
command.
Table 22-4 lists the UNIX system facilities supported by the software. For more information about these
facilities, consult the operator’s manual for your UNIX operating system.
This chapter describes how to configure the Simple Network Management Protocol (SNMP) on your
Catalyst 2940 switch.
Note For complete syntax and usage information for the commands used in this chapter, see the switch
command reference for this release and to the Cisco IOS Configuration Fundamentals Command
Reference for Release 12.1.
Understanding SNMP
SNMP is an application-layer protocol that provides a message format for communication between
managers and agents. The SNMP system consists of an SNMP manager, an SNMP agent, and a MIB.
The SNMP manager can be part of a network management system (NMS) such as CiscoWorks. The agent
and MIB reside on the switch. To configure SNMP on the switch, you define the relationship between
the manager and the agent.
The SNMP agent contains MIB variables whose values the SNMP manager can request or change. A
manager can get a value from an agent or store a value into the agent. The agent gathers data from the
MIB, the repository for information about device parameters and network data. The agent can also
respond to a manager’s requests to get or set data.
An agent can send unsolicited traps to the manager. Traps are messages alerting the SNMP manager to
a condition on the network. Traps can mean improper user authentication, restarts, link status (up or
down), MAC address tracking, closing of a TCP connection, loss of connection to a neighbor, or other
significant events.
This section includes information about these topics:
• SNMP Versions, page 23-2
• SNMP Manager Functions, page 23-3
• SNMP Agent Functions, page 23-3
• SNMP Community Strings, page 23-4
SNMP Versions
This software release supports these SNMP versions:
• SNMPv1—The Simple Network Management Protocol, a Full Internet Standard, defined in
RFC 1157.
• SNMPv2C replaces the Party-based Administrative and Security Framework of SNMPv2Classic
with the community-string-based Administrative Framework of SNMPv2C while retaining the bulk
retrieval and improved error handling of SNMPv2Classic. It has these features:
– SNMPv2—Version 2 of the Simple Network Management Protocol, a Draft Internet Standard,
defined in RFCs 1902 through 1907.
– SNMPv2C—The community-string-based Administrative Framework for SNMPv2, an
Experimental Internet Protocol defined in RFC 1901.
• SNMPv3—Version 3 of the SNMP is an interoperable standards-based protocol defined in
RFCs 2273 to 2275. SNMPv3 provides secure access to devices by authenticating and encrypting
packets over the network and includes these security features:
– Message integrity—ensuring that a packet was not tampered with in transit
– Authentication—determining that the message is from a valid source
Both SNMPv1 and SNMPv2C use a community-based form of security. The community of managers
able to access the agent’s MIB is defined by an IP address access control list and password.
SNMPv2C includes a bulk retrieval mechanism and more detailed error message reporting to
management stations. The bulk retrieval mechanism retrieves tables and large quantities of information,
minimizing the number of round-trips required. The SNMPv2C improved error-handling includes
expanded error codes that distinguish different kinds of error conditions; these conditions are reported
through a single error code in SNMPv1. Error return codes in SNMPv2C report the error type.
SNMPv3 provides for both security models and security levels. A security model is an authentication
strategy set up for a user and the group within which the user resides. A security level is the permitted
level of security within a security model. A combination of the security level and the security model
determine which security mechanism is used when handling an SNMP packet. Available security models
are SNMPv1, SNMPv2C, and SNMPv3.
Table 23-1 identifies the characteristics of the different combinations of security models and levels.
You must configure the SNMP agent to use the SNMP version supported by the management station.
Because an agent can communicate with multiple managers, you can configure the software to support
communications using SNMPv1, SNMPv2C, or SNMPv3.
Operation Description
get-request Retrieves a value from a specific variable.
get-next-request Retrieves a value from a variable within a table.1
get-bulk-request2 Retrieves large blocks of data, such as multiple rows in a table, that would
otherwise require the transmission of many small blocks of data.
get-response Replies to a get-request, get-next-request, and set-request sent by an NMS.
set-request Stores a value in a specific variable.
trap An unsolicited message sent by an SNMP agent to an SNMP manager when some
event has occurred.
1. With this operation, an SNMP manager does not need to know the exact variable name. A sequential search is performed to
find the needed variable from within a table.
2. The get-bulk command only works with SNMPv2 or later.
Note When a cluster is created, the command switch manages the exchange of messages among member
switches and the SNMP application. The Network Assistant software appends the member switch
number (@esN, where N is the switch number) to the first configured RW and RO community strings on
the command switch and propagates them to the member switches. For more information, see Chapter 4,
“Clustering Switches” and see the Getting Started with Cisco Network Assistant, available on Cisco.com
For information on supported MIBs and how to access them, see Appendix A, “Supported MIBs.”
SNMP Notifications
SNMP allows the switch to send notifications to SNMP managers when particular events occur. SNMP
notifications can be sent as traps or inform requests. In command syntax, unless there is an option in the
command to select either traps or informs, the keyword traps refers to either traps or informs, or both.
Use the snmp-server host command to specify whether to send SNMP notifications as traps or informs.
Traps are unreliable because the receiver does not send an acknowledgment when it receives a trap, and
the sender cannot determine if the trap was received. When an SNMP manager receives an inform
request, it acknowledges the message with an SNMP response protocol data unit (PDU). If the sender
does not receive a response, the inform request can be sent again. Because they can be re-sent, informs
are more likely than traps to reach their intended destination.
The characteristics that make informs more reliable than traps also consume more resources in the switch
and in the network. Unlike a trap, which is discarded as soon as it is sent, an inform request is held in
memory until a response is received or the request times out. Traps are sent only once, but an inform
might be re-sent or retried several times. The retries increase traffic and contribute to a higher overhead
on the network. Therefore, traps and informs require a trade-off between reliability and resources. If it
is important that the SNMP manager receive every notification, use inform requests. If traffic on the
network or memory in the switch is a concern and notification is not required, use traps.
Configuring SNMP
This section describes how to configure SNMP on your switch. It contains this configuration
information:
• Default SNMP Configuration, page 23-5
• SNMP Configuration Guidelines, page 23-6
• Disabling the SNMP Agent, page 23-7
• Configuring Community Strings, page 23-7
• Configuring SNMP Groups and Users, page 23-8
• Configuring SNMP Notifications, page 23-10
• Setting the Agent Contact and Location Information, page 23-13
• Limiting TFTP Servers Used Through SNMP, page 23-13
• SNMP Examples, page 23-14
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 no snmp-server Disable the SNMP agent operation.
Step 3 end Return to privileged EXEC mode.
Step 4 show running-config Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
The no snmp-server global configuration command disables all running versions (Version 1,
Version 2C, and Version 3) on the device. No specific Cisco IOS command exists to enable SNMP. The
first snmp-server global configuration command that you enter enables all versions of SNMP.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server community string [view Configure the community string.
view-name] [ro | rw] [access-list-number]
• For string, specify a string that acts like a password and
permits access to the SNMP protocol. You can configure one
or more community strings of any length.
• (Optional) For view, specify the view record accessible to the
community.
• (Optional) Specify either read-only (ro) if you want
authorized management stations to retrieve MIB objects, or
specify read-write (rw) if you want authorized management
stations to retrieve and modify MIB objects. By default, the
community string permits read-only access to all objects.
• (Optional) For access-list-number, enter an IP standard access
list numbered from 1 to 99 and 1300 to 1999.
Command Purpose
Step 3 access-list access-list-number {deny | (Optional) If you specified an IP standard access list number in
permit} source [source-wildcard] Step 2, then create the list, repeating the command as many times
as necessary.
• For access-list-number, enter the access list number specified
in Step 2.
• The deny keyword denies access if the conditions are
matched. The permit keyword permits access if the conditions
are matched.
• For source, enter the IP address of the SNMP managers that
are permitted to use the community string to gain access to the
agent.
• (Optional) For source-wildcard, enter the wildcard bits in
dotted decimal notation to be applied to the source. Place ones
in the bit positions that you want to ignore.
Recall that the access list is always terminated by an implicit deny
statement for everything.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note To disable access for an SNMP community, set the community string for that community to the null
string (do not enter a value for the community string).
To remove a specific community string, use the no snmp-server community string global configuration
command.
This example shows how to assign the string comaccess to SNMP, to allow read-only access, and to
specify that IP access list 4 can use the community string to gain access to the switch SNMP agent:
Switch(config)# snmp-server community comaccess ro 4
Beginning in privileged EXEC mode, follow these steps to configure SNMP on the switch:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server engineID {local engineid-string Configure a name for either the local or remote copy of SNMP.
| remote ip-address [udp-port port-number]
• The engineid-string is a 24-character ID string with the name
engineid-string}
of the copy of SNMP. You need not specify the entire
24-character engine ID if it contains trailing zeros. Specify
only the portion of the engine ID up to the point where only
zeros remain in the value. For example, to configure an engine
ID of 123400000000000000000000, you can enter this:
snmp-server engineID local 1234
• If you select remote, specify the ip-address of the device that
contains the remote copy of SNMP and the optional User
Datagram Protocol (UDP) port on the remote device. The
default is 162.
Step 3 snmp-server group groupname {v1 | v2c | v3 Configure a new SNMP group on the remote device.
{auth | noauth}} [read readview] [write
• For groupname, specify the name of the group.
writeview] [notify notifyview] [access
access-list] • Specify a security model:
– v1 is the least secure of the possible security models.
– v2c is the second least secure model. It allows
transmission of informs and integers twice the normal
width.
– v3, the most secure, requires you to select an
authentication level:
auth—Enables the Message Digest 5 (MD5) and the
Secure Hash Algorithm (SHA) packet authentication.
noauth—Enables the noAuthNoPriv security level. This
is the default if no keyword is specified.
• (Optional) Enter read readview with a string (not to exceed 64
characters) that is the name of the view in which you can only
view the contents of the agent.
• (Optional) Enter write writeview with a string (not to exceed
64 characters) that is the name of the view in which you enter
data and configure the contents of the agent.
• (Optional) Enter notify notifyview with a string (not to exceed
64 characters) that is the name of the view in which you
specify a notify, inform, or trap.
• (Optional) Enter access access-list with a string (not to exceed
64 characters) that is the name of the access list.
Command Purpose
Step 4 snmp-server user username groupname Add a new user for an SNMP group.
{remote host [udp-port port]} {v1 [access
• The username is the name of the user on the host that connects
access-list] | v2c [access access-list] | v3
to the agent.
[encrypted] [access access-list] [auth {md5 |
sha} auth-password]} • The groupname is the name of the group to which the user is
associated.
• Enter remote to specify a remote SNMP entity to which the
user belongs and the hostname or IP address of that entity with
the optional UDP port number. The default is 162.
• Enter the SNMP version number (v1, v2c, or v3). If you enter
v3, you have these additional options:
– encrypted specifies that the password appears in
encrypted format. This keyword is available only when
the v3 keyword is specified.
– auth is an authentication level setting session that can be
either the HMAC-MD5-96 (md5) or the HMAC-SHA-96
(sha) authentication level, and requires a password string
(not to exceed 64 characters).
• (Optional) Enter access access-list with a string (not to exceed
64 characters) that is the name of the access list.
Step 5 end Return to privileged EXEC mode.
Step 6 show running-config Verify your entries.
Step 7 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note Many commands use the word traps in the command syntax. Unless there is an option in the command
to select either traps or informs, the keyword traps refers to either traps, informs, or both. Use the
snmp-server host global configuration command to specify whether to send SNMP notifications as
traps or informs.
Table 23-4 describes the supported switch traps (notification types). You can enable any or all of these
traps and configure a trap manager to receive them.
Notification Type
Keyword Description
bridge Generates STP bridge MIB traps.
c2900 Generates a trap for Catalyst 2940-specific notifications.
cluster Generates a trap when the cluster configuration changes.
Notification Type
Keyword Description
config Generates a trap for SNMP configuration changes.
copy-config Generates a trap for SNMP copy configuration changes.
entity Generates a trap for SNMP entity changes.
envmon Generates environmental monitor traps. You can enable any or all of these
environmental traps: fan, shutdown, status, supply, temperature.
flash Generates SNMP FLASH notifications.
hsrp Generates a trap for Hot Standby Router Protocol (HSRP) changes.
mac-notification Generates a trap for MAC address notifications.
port-security Generates SNMP port security traps. You can also set a maximum trap rate
per second. The range is from 0 to 1000; the default is 0, which means that
there is no rate limit.
rtr Generates a trap for the SNMP Response Time Reporter (RTR).
snmp Generates a trap for SNMP-type notifications.
stpx Generates SNMP STP Extended MIB traps.
syslog Generates SNMP syslog traps.
tty Generates a trap for TCP connections. This trap is enabled by default.
vlancreate Generates SNMP VLAN-created traps.
vlandelete Generates SNMP VLAN-deleted traps.
vlan-membership Generates a trap for SNMP VLAN membership changes.
vtp Generates a trap for VLAN Trunking Protocol (VTP) changes.
You can use the snmp-server host global configuration command to a specific host to receive the
notification types listed in Table 23-4.
Beginning in privileged EXEC mode, follow these steps to configure the switch to send traps or informs
to a host:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server engineID remote Specify the engine ID for the remote host.
ip-address engineid-string
Step 3 snmp-server user username Configure an SNMP user to be associated with the remote host created in
groupname {remote host [udp-port Step 2.
port]} {v1 [access access-list] | v2c
Note You cannot configure a remote user for an address without first
[access access-list] | v3 [encrypted]
configuring the engine ID for the remote host. Otherwise, you
[access access-list] [auth {md5 | sha}
receive an error message, and the command is not executed.
auth-password]}
Command Purpose
Step 4 snmp-server group [groupname {v1 | Configure an SNMP group.
v2c | v3 {auth | noauth}}] [read
readview] [write writeview] [notify
notifyview] [access access-list]
Step 5 snmp-server host host-addr Specify the recipient of an SNMP trap operation.
[informs | traps] [version {1 | 2c | 3 • For host-addr, specify the name or Internet address of the host (the
{auth | noauth}}] community-string targeted recipient).
[notification-type]
• (Optional) Enter informs to send SNMP informs to the host.
• (Optional) Enter traps (the default) to send SNMP traps to the host.
• (Optional) Specify the SNMP version (1, 2c, or 3). SNMPv1 is not
available with informs.
• (Optional) For Version 3, select authentication level author noauth.
• For community-string, when version 1 or version 2c is specified,
enter the password-like community string sent with the notification
operation. When version 3 is specified, enter the SNMPv3 username.
• (Optional) For notification-type, use the keywords listed in
Table 23-4 on page 23-10. If no type is specified, all notifications are
sent.
Step 6 snmp-server enable traps Enable the switch to send traps or informs and specify the type of
notification-types notifications to be sent. For a list of notification types, see Table 23-4 on
page 23-10, or enter this: snmp-server enable traps ?
To enable multiple types of traps, you must enter a separate snmp-server
enable traps command for each trap type.
Step 7 snmp-server trap-source interface-id (Optional) Specify the source interface, which provides the IP address for
the trap message. This command also sets the source IP address for
informs.
Step 8 snmp-server queue-length length (Optional) Establish the message queue length for each trap host. The
range is 1 to 1000; the default is 10.
Step 9 snmp-server trap-timeout seconds (Optional) Define how often to resend trap messages. The range is 1 to
1000; the default is 30 seconds.
Step 10 end Return to privileged EXEC mode.
Step 11 show running-config Verify your entries.
Step 12 copy running-config startup-config (Optional) Save your entries in the configuration file.
The snmp-server host command specifies which hosts receive the notifications. The snmp-server
enable trap command globally enables the mechanism for the specified notification (for traps and
informs). To enable a host to receive an inform, you must configure an snmp-server host informs
command for the host and globally enable informs by using the snmp-server enable traps command.
To remove the specified host from receiving traps, use the no snmp-server host host global
configuration command. The no snmp-server host command with no keywords disables traps, but not
informs, to the host. To disable informs, use the no snmp-server host informs global configuration
command. To disable a specific trap type, use the no snmp-server enable traps notification-types global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server contact text Set the system contact string.
For example:
snmp-server contact Dial System Operator at beeper 21555.
Step 3 snmp-server location text Set the system location string.
For example:
snmp-server location Building 3/Room 222
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 snmp-server tftp-server-list Limit TFTP servers used for configuration file copies through
access-list-number SNMP to the servers in the access list.
For access-list-number, enter an IP standard access list numbered
from 1 to 99 and 1300 to 1999.
Step 3 access-list access-list-number {deny | Create a standard access list, repeating the command as many times
permit} source [source-wildcard] as necessary.
• For access-list-number, enter the access list number specified
in Step 2.
• The deny keyword denies access if the conditions are matched.
The permit keyword permits access if the conditions are
matched.
• For source, enter the IP address of the TFTP servers that can
access the switch.
• (Optional) For source-wildcard, enter the wildcard bits, in
dotted decimal notation, to be applied to the source. Place ones
in the bit positions that you want to ignore.
Recall that the access list is always terminated by an implicit deny
statement for everything.
Command Purpose
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
SNMP Examples
This example shows how to enable all versions of SNMP. The configuration permits any SNMP manager
to access all objects with read-only permissions using the community string public. This configuration
does not cause the switch to send any traps.
Switch(config)# snmp-server community public
This example shows how to permit any SNMP manager to access all objects with read-only permission
using the community string public. The switch also sends VTP traps to the hosts 192.180.1.111 and
192.180.1.33 using SNMPv1 and to the host 192.180.1.27 using SNMPv2C. The community string
public is sent with the traps.
Switch(config)# snmp-server community public
Switch(config)# snmp-server enable traps vtp
Switch(config)# snmp-server host 192.180.1.27 version 2c public
Switch(config)# snmp-server host 192.180.1.111 version 1 public
Switch(config)# snmp-server host 192.180.1.33 public
This example shows how to allow read-only access for all objects to members of access list 4 that use
the comaccess community string. No other SNMP managers have access to any objects. SNMP
Authentication Failure traps are sent by SNMPv2C to the host cisco.com using the community string
public.
Switch(config)# snmp-server community comaccess ro 4
Switch(config)# snmp-server enable traps snmp authentication
Switch(config)# snmp-server host cisco.com version 2c public
This example shows how to send Entity MIB traps to the host cisco.com. The community string is
restricted. The first line enables the switch to send Entity MIB traps in addition to any traps previously
enabled. The second line specifies the destination of these traps and overwrites any previous
snmp-server host commands for the host cisco.com.
Switch(config)# snmp-server enable traps entity
Switch(config)# snmp-server host cisco.com restricted entity
This example shows how to enable the switch to send all traps to the host myhost.cisco.com using the
community string public:
Switch(config)# snmp-server enable traps
Switch(config)# snmp-server host myhost.cisco.com public
This example shows how to associate a user with a remote host and to send auth (authNoPriv)
authentication-level informs when the user enters global configuration mode:
Switch(config)# snmp-server engineID remote 192.180.1.27 00000063000100a1c0b4011b
Switch(config)# snmp-server group authgroup v3 auth
Switch(config)# snmp-server user authuser authgroup remote 192.180.1.27 v3 auth md5
mypassword
Switch(config)# snmp-server user authuser authgroup v3 auth md5 mypassword
Switch(config)# snmp-server host 192.180.1.27 informs version 3 auth authuser config
Switch(config)# snmp-server enable traps
Switch(config)# snmp-server inform retries 0
This chapter describes how to configure quality of service (QoS) by using standard QoS commands on
the Catalyst 2940 switch. With QoS, you can give preferential treatment to certain types of traffic at the
expense of others. Without QoS, the switch offers best-effort service to each packet, regardless of the
packet contents or size. It sends the packets without any assurance of reliability, delay bounds, or
throughput.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
QoS can be configured either by using the device manager or through the command-line interface (CLI).
For for information, see the device manager online help.
This chapter consists of these sections:
• Understanding QoS, page 24-1
• Configuring QoS, page 24-3
• Displaying QoS Information, page 24-10
Understanding QoS
This section describes how QoS is implemented on the switch. Typically, networks operate on a
best-effort delivery basis, which means that all traffic has equal priority and an equal chance of being
delivered in a timely manner. When congestion occurs, all traffic has an equal chance of being dropped.
When you configure the QoS feature, you can use congestion-management and congestion-avoidance
techniques to give preferential treatment. Implementing QoS in your network makes network
performance more predictable and bandwidth utilization more effective.
The QoS implementation is based on the prioritization values in Layer 2 frames
Layer 2 802.1Q frame headers have a 2-byte Tag Control Information field that carries the class of
service (CoS) value in the three most-significant bits, which are called the User Priority bits. On
interfaces configured as Layer 2 802.1Q trunks, all traffic is in 802.1Q frames except for traffic in the
native VLAN. Other frame types cannot carry Layer 2 CoS values. Layer 2 CoS values range from 0 for
low priority to 7 for high priority.
Encapsulated Packet
Layer 2
IP header Data
header
111391
Preamble DA SA Tag PT Data FCS
delimiter
All switches and routers that access the Internet rely on the class information to give the same forwarding
treatment to packets with the same class information and different treatment to packets with different
class information. The class information in the packet can be assigned by end hosts or by switches or
routers along the way, based on a configured policy, detailed examination of the packet, or both. Detailed
examination of the packet is expected to happen closer to the edge of the network so that the core
switches and routers are not overloaded.
Switches and routers along the path can use the class information to limit the amount of resources
allocated per traffic class. The behavior of an individual device when handling traffic is called per-hop
behavior. If all devices along a path have a consistent per-hop behavior, you can construct an end-to-end
QoS solution.
Implementing QoS in your network can be a simple or complex task and depends on the QoS features
offered by your internetworking devices, the traffic types and patterns in your network, and the
granularity of control that you need over incoming and outgoing traffic.
Port Priority
Frames received from users in the administratively-defined VLANs are classified or tagged for
transmission to other devices. Based on rules that you define, a unique identifier (the tag) is inserted in
each frame header before it is forwarded. The tag is examined and understood by each device before any
broadcasts or transmissions to other switches, routers, or end stations. When the frame reaches the last
switch or router, the tag is removed before the frame is sent to the target end station. VLANs that are
assigned on trunk or access ports without identification or a tag are called native or untagged frames.
For IEEE 802.1Q frames with tag information, the priority value from the header frame is used. For
native frames, the default priority of the input port is used.
Each port on the switch has a single receive queue buffer (the ingress port) for incoming traffic. When
an untagged frame arrives, it is assigned the value of the port as its port default priority. You assign this
value by using the CLI or CMS. A tagged frame continues to use its assigned CoS value when it passes
through the ingress port.
Configuring QoS
Before configuring QoS, you must have a thorough understanding of these items:
• The types of applications used and the traffic patterns on your network.
• Traffic characteristics and needs of your network. Is the traffic bursty? Do you need to reserve
bandwidth for voice and video streams?
• Bandwidth requirements and speed of the network.
• Location of congestion points in the network.
This section describes how to configure QoS on your switch:
• Default QoS Configuration, page 24-4
• Configuring Classification Using Port Trust States, page 24-4
• Configuring the Egress Queues, page 24-9
Trusted interface
Trunk
Traffic classification
performed here
P3 P1
101236
IP
Trusted boundary
Beginning in privileged EXEC mode, follow these steps to configure the port to trust the classification
of the traffic that it receives:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be trusted, and enter interface configuration
mode.
Valid interfaces include physical interfaces.
Step 3 mls qos trust [cos] Configure the port trust state.
By default, the port is not trusted. All traffic is sent through one
egress queue.
Use the cos keyword to classify ingress packets with the packet CoS
values. The egress queue assigned to the packet is based on the
packet CoS value. When this keyword is entered, the traffic is sent
through the four QoS queues, as described in the “Configuring the
Egress Queues” section on page 24-9.
For more information about this command, see the command
reference for this release.
Step 4 end Return to privileged EXEC mode.
Command Purpose
Step 5 show mls qos interface [interface-id] Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
After you enter the mls qos trust cos command, the DSCP values are changed according to the values
listed in Table 24-1.
CoS value 0 1 2 3 4 5 6 7
DSCP value 0 8 16 24 32 40 48 56
To return a trusted port to its unconfigured state, use the no mls qos trust interface configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface to be trusted, and enter interface configuration mode.
Valid interfaces include physical interfaces.
Step 3 mls qos cos {default-cos | override} Configure the default CoS value for the port.
• For default-cos, specify a default CoS value to be assigned to a port. If
the port is CoS trusted and packets are untagged, the default CoS value
becomes the CoS value for the packet. The CoS range is 0 to 7. The
default is 0.
• Use the override keyword to override the previously configured trust
state of the incoming packets and to apply the default port CoS value to
all incoming packets. By default, CoS override is disabled.
Use the override keyword when all incoming packets on certain ports
deserve higher priority than packets entering from other ports. If an
incoming packet is tagged, the CoS value of the packet is modified with
the default CoS of the port at the egress port.
Step 4 end Return to privileged EXEC mode.
Step 5 show mls qos interface Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return to the default setting, use the no mls qos cos {default-cos | override} interface configuration
command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 cdp enable Enable CDP globally. By default, it is enabled.
Step 3 interface interface-id Specify the interface to be trusted, and enter interface configuration
mode.
Valid interfaces include physical interfaces.
Step 4 cdp enable Enable CDP on the interface. By default, CDP is enabled.
Step 5 mls qos trust device cisco-phone Configure the Cisco IP Phone as a trusted device on the interface.
Step 6 mls qos trust cos Configure the port trust state to trust the CoS value of the ingress
packet. By default, the port is not trusted.For more information on
this command, see the command reference for this release.
Step 7 end Return to privileged EXEC mode.
Step 8 show mls qos interface [interface-id] Verify your entries.
Step 9 copy running-config startup-config (Optional) Save your entries in the configuration file.
When you enter the no mls qos trust interface configuration command, trusted boundary is not disabled.
If this command is entered and the port is connected to a Cisco IP Phone, the port does not trust the
classification of traffic that it receives. To disable trusted boundary, use the no mls qos trust device
interface configuration command.
If you enter the mls qos cos override interface configuration command, the port does not trust the
classification of the traffic that it receives, even when it is connected to a Cisco IP Phone.
Table 24-2 lists the port configuration when an IP phone is present or absent.
Port Configuration When a Cisco IP Phone is Present When a Cisco IP Phone is Absent
The port trusts the CoS value The packet CoS value is trusted. The packet CoS value is assigned
of the incoming packet. the default CoS value.
The port assigns the default The packet CoS value is assigned The packet CoS value is assigned
CoS value to incoming the default CoS value. the default CoS value.
packets.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface on which pass-through mode is enabled, and enter
interface configuration mode.
Valid interfaces include physical interfaces.
Step 3 mls qos trust cos pass-through dscp Enable pass-through mode. The interface is configured to trust the CoS
value of the incoming packets and to send them without modifying the
DSCP value.
Step 4 end Return to privileged EXEC mode.
Step 5 show mls qos interface [interface-id] Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable pass-through mode, use the no mls qos trust pass-through dscp interface configuration
command.
If you enter the mls qos cos override and the mls qos trust [cos] interface commands when pass-through
mode is enabled, pass-through mode is disabled.
If you enter the mls qos trust cos pass-through dscp interface configuration command when the mls
qos cos override and the mls qos trust [cos] interface commands are already configured, pass-through
mode is disabled.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 wrr-queue cos-map qid cos1...cosn Specify the queue ID of the CoS priority queue. (Ranges are 1
to 4 where 1 is the lowest CoS priority queue.)
Specify the CoS values that are mapped to the queue id.
Default values are as follows:
CoS Value CoS Priority Queues
0, 1 1
2, 3 2
4, 5 3
6, 7 4
Step 3 end Return to privileged EXEC mode.
Step 4 show wrr-queue cos-map Display the mapping of the CoS priority queues.
To disable the new CoS settings and return to default settings, use the no wrr-queue cos-map global
configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 wrr-queue bandwidth Assign WRR weights to the four CoS queues.
weight1...weight4 The range for the WRR values weight1 through weight4 is 1
to 255.
Step 3 end Return to privileged EXEC mode.
Step 4 show wrr-queue bandwidth Display the WRR bandwidth allocation for the CoS priority
queues.
To disable the WRR scheduling and enable the strict priority scheduling, use the
no wrr-queue bandwidth global configuration command.
Command Purpose
show wrr-queue cos-map Displays the mapping of the CoS priority queues.
show wrr-queue bandwidth Displays the WRR bandwidth allocation for the CoS priority
queues.
This chapter describes how to configure EtherChannel on the Layer 2 interfaces of a Catalyst 2940
switch. EtherChannel provides fault-tolerant high-speed links between switches, routers, and servers.
You can use it to increase the bandwidth between the wiring closets and the data center, and you can
deploy it anywhere in the network where bottlenecks are likely to occur. EtherChannel provides
automatic recovery for the loss of a link by redistributing the load across the remaining links. If a link
fails, EtherChannel redirects traffic from the failed link to the remaining links in the channel without
intervention.
This chapter consists of these sections:
• Understanding EtherChannels, page 25-1
• Configuring EtherChannels, page 25-7
• Displaying EtherChannel, PAgP, and LACP Status, page 25-14
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release.
Understanding EtherChannels
An EtherChannel consists of individual Fast Ethernet or Gigabit Ethernet links bundled into a single
logical link as shown in Figure 25-1. The EtherChannel provides full-duplex bandwidth up to 800 Mbps
(Fast EtherChannel) or 2 Gbps (Gigabit EtherChannel) between your switch and another switch or host.
Catalyst 8500
series switch
Gigabit EtherChannel
1000BASE-X 1000BASE-X
10/100 10/100
Switched Switched
links links
101237
Workstations Workstations
Each EtherChannel can consist of up to eight compatibly configured Ethernet interfaces. All interfaces
in each EtherChannel must be the same speed, and all must be configured as Layer 2 interfaces.
Note The network device to which your switch is connected can impose its own limits on the number of
interfaces in the EtherChannel. For Catalyst 2940 switches, the number of EtherChannels is limited to
six with eight ports per EtherChannel.
If a link within an EtherChannel fails, traffic previously carried over that failed link changes to the
remaining links within the EtherChannel. A trap is sent for a failure, identifying the switch, the
EtherChannel, and the failed link. Inbound broadcast and multicast packets on one link in an
EtherChannel are blocked from returning on any other link of the EtherChannel.
Figure 25-2 Relationship of Physical Ports, Logical Port Channels, and Channel Groups
Logical
port-channel
Channel-group
binding
101238
Physical ports
When a port joins an EtherChannel, the physical interface for that port is shut down. When the port
leaves the port-channel, its physical interface is brought up, and it has the same configuration as it had
before joining the EtherChannel.
Note Configuration changes made to the logical interface of an EtherChannel do not propagate to all the
member ports of the channel.
Mode Description
active Places an interface into an active negotiating state, in which the interface starts
negotiations with other interfaces by sending LACP packets.
auto Places an interface into a passive negotiating state, in which the interface responds to PAgP
packets it receives but does not start PAgP packet negotiation. This setting minimizes the
transmission of PAgP packets.
desirable Places an interface into an active negotiating state, in which the interface starts
negotiations with other interfaces by sending PAgP packets.
on Forces the interface into an EtherChannel without PAgP or LACP. With the on mode, a
usable EtherChannel exists only when an interface group in the on mode is connected to
another interface group in the on mode.
passive Places an interface into a passive negotiating state, in which the interface responds to
LACP packets that it receives, but does not start LACP packet negotiation. This setting
minimizes the transmission of LACP packets.
Both the auto and desirable PAgP modes allow interfaces to negotiate with partner interfaces to
determine if they can form an EtherChannel based on criteria such as interface speed and, for Layer 2
EtherChannels, trunking state and VLAN numbers.
Interfaces can form an EtherChannel when they are in different PAgP modes as long as the modes are
compatible. For example:
• An interface in the desirable mode can form an EtherChannel with another interface that is in the
desirable or auto mode.
• An interface in the auto mode can form an EtherChannel with another interface in the desirable
mode.
An interface in the auto mode cannot form an EtherChannel with another interface that is also in the
auto mode because neither interface starts PAgP negotiation.
An interface in the on mode that is added to a port channel is forced to have the same characteristics as
the already existing on mode interfaces in the channel.
If your switch is connected to a partner that is PAgP-capable, you can configure the switch interface for
nonsilent operation by using the non-silent keyword. If you do not specify non-silent with the auto or
desirable mode, silent mode is assumed.
The silent mode is used when the switch is connected to a device that is not PAgP-capable and seldom,
if ever, sends packets. An example of a silent partner is a file server or a packet analyzer that is not
generating traffic. In this case, running PAgP on a physical port connected to a silent partner prevents
that switch port from ever becoming operational; however, the silent setting allows PAgP to operate, to
attach the interface to a channel group, and to use the interface for transmission.
Note An Etherchannel cannot be configured in both the PAgP and LACP modes.
Both the active and passive LACP modes allow interfaces to negotiate with partner interfaces to
determine if they can form an EtherChannel based on criteria such as interface speed and, for Layer 2
EtherChannels, trunking state and VLAN numbers.
Interfaces can form an EtherChannel when they are in different LACP modes as long as the modes are
compatible. For example:
• An interface in the active mode can form an EtherChannel with another interface that is in the active
or passive mode.
• An interface in the active mode can form an EtherChannel with another interface in the passive
mode.
An interface in the passive mode cannot form an EtherChannel with another interface that is also in the
passive mode because neither interface starts LACP negotiation.
An interface in the on mode that is added to a port channel is forced to have the same characteristics as
the already existing on mode interfaces in the channel.
Note An Etherchannel cannot be configured in both the PAgP and LACP modes.
Caution You should exercise care when setting the mode to on (manual configuration). All ports configured in
the on mode are bundled in the same group and are forced to have similar characteristics. If the group is
misconfigured, packet loss or spanning-tree loops might occur.
Switch with
source-based
forwarding enabled
EtherChannel
Cisco router
with destination-based
forwarding enabled
101239
Configuring EtherChannels
These sections describe how to configure EtherChannel interfaces:
• Default EtherChannel Configuration, page 25-8
• EtherChannel Configuration Guidelines, page 25-8
• Configuring Layer 2 EtherChannels, page 25-9
• Configuring EtherChannel Load Balancing, page 25-11
• Configuring the PAgP Learn Method and Priority, page 25-12
Note Make sure that the interfaces are correctly configured (see the “EtherChannel Configuration Guidelines”
section on page 25-8).
Note After you configure an EtherChannel, configuration changes applied to the port-channel interface apply
to all the physical interfaces assigned to the port-channel interface, and configuration changes applied
to the physical interface affect only the interface where you apply the configuration.
desirable mode. When configuring an interface for LACP, if the allowed range of VLANs is not the
same, the interfaces do not form an EtherChannel even when LACP is set to the active or passive
mode.
• Interfaces with different spanning-tree path costs can form an EtherChannel if they are otherwise
compatibly configured. Setting different spanning-tree path costs does not, by itself, make interfaces
incompatible for the formation of an EtherChannel.
Note Layer 2 interfaces must be connected and functioning for Cisco the software to create port-channel
interfaces.
Beginning in privileged EXEC mode, follow these steps to assign a Layer 2 Ethernet interface to a
Layer 2 EtherChannel:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify a physical interface to configure, and enter interface
configuration mode.
Valid interfaces include physical interfaces.
Up to eight interfaces of the same type and speed can be
configured for the same group.
Command Purpose
Step 3 channel-group channel-group-number mode Assign the interface to a channel group, and specify the PAgP or
{{auto [non-silent] | desirable [non-silent] | on} | LACP mode.
{active | passive}}
For channel-group-number, the range is 1 to 6. Each
EtherChannel can have up to eight compatibly configured
Ethernet interfaces.
For mode, select one of these keywords:
• active—Enables LACP only if an LACP device is detected.
It places an interface into an active negotiating state, in
which the interface starts negotiations with other interfaces
by sending LACP packets.
• auto—Enables PAgP only if a PAgP device is detected. It
places an interface into a passive negotiating state, in which
the interface responds to PAgP packets it receives but does
not start PAgP packet negotiation.
• desirable—Unconditionally enables PAgP. It places an
interface into an active negotiating state, in which the
interface starts negotiations with other interfaces by sending
PAgP packets.
• on—Forces the interface to channel without PAgP. With the
on mode, a usable EtherChannel exists only when an
interface group in the on mode is connected to another
interface group in the on mode.
• non-silent—If your switch is connected to a partner that is
PAgP-capable, you can configure the switch interface for
nonsilent operation. You can configure an interface with the
non-silent keyword for use with the auto or desirable mode.
If you do not specify non-silent with the auto or desirable
mode, silent is assumed. The silent setting is for connections
to file servers or packet analyzers. This setting allows PAgP
to operate, to attach the interface to a channel group, and to
use the interface for transmission.
• passive—Enables LACP on an interface and places it into a
passive negotiating state, in which the interface responds to
LACP packets that it receives, but does not start LACP
packet negotiation.
For information on compatible PAgP and LACP modes for the
switch and its partner, see the “PAgP and LACP Modes” section
on page 25-4.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
To remove an interface from the EtherChannel group, use the no channel-group interface configuration
command. If you delete the EtherChannel by using the no interface port-channel global configuration
command without removing the physical interfaces, the physical interfaces are shutdown. If you do not
want the member physical interfaces to shut down, remove the physical interfaces before deleting the
EtherChannel.
This example shows how to assign interfaces 1 and 2 with the PAgP mode desirable:
Switch# configure terminal
Switch(config)# interface range fasttethernet0/1 -2
Switch(config-if)# channel-group 5 mode desirable
Switch(config-if)# end
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 port-channel load-balance {dst-mac | src-mac} Configure an EtherChannel load-balancing method.
The default is src-mac.
Select one of these keywords to determine the load-distribution
method:
• dst-mac—Load distribution is based on the destination-host
MAC address of the incoming packet. Packets to the same
destination are sent on the same port, but packets to different
destinations are sent on different ports in the channel.
• src-mac—Load distribution is based on the source-MAC
address of the incoming packet. Packets from different hosts
use different ports in the channel, but packets from the same
host use the same port in the channel.
If the link partner to the switch is a physical learner, set the
load-distribution method to one of these ways:
• If the channel-group interface configuration command is
set to auto or desirable, the switch automatically uses the
load distribution method based on the source-MAC address,
regardless of the configured load-distribution method.
• If the channel-group interface configuration command is
set to on, set the load-distribution method based on the
source-MAC address by using the port-channel
load-balance src-mac global configuration command.
Step 3 end Return to privileged EXEC mode.
Step 4 show etherchannel load-balance Verify your entries.
Step 5 copy running-config startup-config (Optional) Save your entries in the configuration file.
To return EtherChannel load balancing to the default configuration, use the no port-channel
load-balance global configuration command.
Note You should not set the learn method to physical-port because the switch is an aggregate-learning device.
If the link partner to the switch is a physical learner that has the channel-group interface configuration
command set to auto or desirable, the switch automatically uses the load-distribution method based on
the source MAC address, regardless of the configured load distribution method.
If the link partner to the Catalyst 2950 or Catalyst 2955 switch is a physical learner that has the
channel-group interface configuration command set to on, set the load-distribution method based on the
source MAC address by using the port-channel load-balance src-mac global configuration command.
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 interface interface-id Specify the interface for transmission, and enter interface configuration
mode.
Step 3 lacp port-priority priority-value Select the LACP port priority value.
For priority-value, the range is 1 to 65535. By default, the priority value is
32768. The lower the range, the more likely that the interface will be used
for LACP transmission.
Step 4 end Return to privileged EXEC mode.
Step 5 show running-config Verify your entries.
or
show lacp channel-group-number
internal
Step 6 copy running-config startup-config (Optional) Save your entries in the configuration file.
Note If LACP is not able to aggregate all the ports that are compatible (for example, the remote system might
have more restrictive hardware limitations), all the ports that cannot be actively included in the
EtherChannel are put in hot standby state and are used only if one of the channeled ports fails.
Note The lacp system-priority command is global. You cannot set a system priority for each
LACP-configured channel separately.
We recommend using this command only when there are a combination of LACP-configured
EtherChannels that are in both active and standby modes.
Beginning in privileged EXEC mode, follow these steps to configure the LACP system priority:
Command Purpose
Step 1 configure terminal Enter global configuration mode.
Step 2 lacp system-priority priority-value Select the LACP system priority value.
For priority-value, the range is 1 to 65535. By default, the priority
value is 32768. The lower the range, the higher the system priority.
The switch with the lower system priority value determines which
links between LACP partner switches are active and which are in
standby for each LACP EtherChannel.
Table 25-3 Commands for Displaying EtherChannel, PAgP, and LACP Status
Command Description
show etherchannel [channel-group-number] {detail | Displays EtherChannel information in a detailed and one-line
load-balance | port | port-channel | summary} summary form. Also displays the load-balance or
frame-distribution scheme, port, and port-channel information.
show pagp [channel-group-number] {counters | Displays PAgP information such as traffic information, the
internal | neighbor}1 internal PAgP configuration, and neighbor information.
show lacp [channel-group-number] {counters | Displays LACP information such as traffic information, the
internal | neighbor}2 internal PAgP configuration, and neighbor information.
1. You can clear PAgP channel-group information and traffic filters by using the clear pagp {channel-group-number [ counters] | counters} privileged
EXEC command.
2. You can clear LACP channel-group information and traffic filters by using the clear lacp {channel-group-number [counters] | counters} privileged
EXEC command.
For detailed information about the fields in the command outputs, see the command reference for this
release.
This chapter describes how to identify and resolve Catalyst 2940 software problems related to the Cisco
IOS software. Depending on the nature of the problem, you can use the command-line interface (CLI),
the device manager, or Network Assistant to identify and solve problems.
Note For complete syntax and usage information for the commands used in this chapter, see the command
reference for this release and the Cisco IOS Command Summary for Cisco IOS Release 12.1.
Step 1 Connect a PC with terminal-emulation software supporting the Xmodem protocol to the switch console
port.
Note For more information, see the hardware installation guide sections “Connecting the Console
Port” and “Starting the Terminal Emulation Software” in “Appendix D, Configuring the Switch
with the CLI-Based Setup Program.”
Step 2 Set the line speed on the emulation software to 9600 baud.
Step 3 Disconnect the switch power cord.
Step 4 Reconnect the power cord to the switch.
The software image does not load. The switch starts in boot loader mode, which is indicated by the
switch# prompt.
Step 5 Use the boot loader to enter commands, and start the transfer.
switch# copy xmodem: flash:image_filename.bin
Step 6 When the Xmodem request appears, use the appropriate command on the terminal-emulation software
to start the transfer and to copy the software image to flash memory.
Note A system administrator can disable some of the functionality of the password recovery feature by
allowing an end user to reset a password only by agreeing to return to the default configuration. If you
are an end user trying to reset a password and password recover has been disabled, a status message
shows this during the recovery process.
Follow these steps if you have forgotten or lost the switch password:
Step 1 Connect a terminal or PC with terminal-emulation software to the switch console port.
Note See the “Connecting the Console Port” and “Starting the Terminal Emulation Software” sections
in “Appendix D, Configuring the Switch with the CLI-Based Setup Program.”
Step 2 Set the line speed on the emulation software to 9600 baud.
Step 3 Unplug the switch power cord.
Step 4 Reconnect the power cord to the switch and, within 15 seconds, press the Mode button while the System
LED above port 1X is still flashing green. Continue pressing the Mode button until the System LED
turns briefly amber and then solid green; then release the Mode button.
Several lines of information about the software appear with instructions, informing you if the password
recovery procedure has been disabled or not.
• If you see a message that begins with this:
The system has been interrupted prior to initializing the flash file system. The
following commands will initialize the flash file system
go to the “Password Recovery with Password Recovery Enabled” section on page 26-3, and follow
the steps.
• If you see a message that begins with this:
The password-recovery mechanism has been triggered, but is currently disabled.
go to the “Procedure with Password Recovery Disabled” section on page 26-5, and follow the steps.
flash_init
load_helper
boot
Step 2 If you had set the console port speed to anything other than 9600, it has been reset to that particular
speed. Change the emulation software line speed to match that of the switch console port.
Step 3 Load any helper files:
switch# load_helper
You are prompted to start the setup program. Enter N at the prompt:
Continue with the configuration dialog? [yes/no]: N
The secret password can be from 1 to 25 alphanumeric characters, can start with a number, is case
sensitive, and allows spaces but ignores leading spaces.
Step 12 Return to privileged EXEC mode:
Switch (config)# exit
Switch#
Note This procedure is likely to leave your switch VLAN interface in a shutdown state. You can see which
interface is in this state by entering the show running-config privileged EXEC command. To re-enable
the interface, enter the interface vlan vlan-id global configuration command, and specify the VLAN ID
of the shutdown interface. With the switch in interface configuration mode, enter the no shutdown
command.
Would you like to reset the system back to the default configuration (y/n)?
Caution Returning the switch to the default configuration results in the loss of all existing configurations. We
recommend that you contact your system administrator to verify if there are backup switch and VLAN
configuration files.
• If you enter n (no), the normal boot process continues as if the Mode button had not been pressed;
you cannot access the boot loader prompt, and you cannot enter a new password. You see the
message:
Press Enter to continue........
• If you enter y (yes), the configuration file in flash memory and the VLAN database file are deleted.
When the default configuration loads, you can reset the password.
Follow these steps when the password-recovery mechanism is disabled:
Step 1 Elect to continue with password recovery and lose the existing configuration:
Would you like to reset the system back to the default configuration (y/n)? Y
You are prompted to start the setup program. To continue with password recovery, enter N at the prompt:
Continue with the configuration dialog? [yes/no]: N
The secret password can be from 1 to 25 alphanumeric characters, can start with a number, is case
sensitive, and allows spaces but ignores leading spaces.
Step 8 Return to privileged EXEC mode:
Switch (config)# exit
Switch#
Note This procedure is likely to leave your switch VLAN interface in a shutdown state. You can see which
interface is in this state by entering the show running-config privileged EXEC command. To re-enable
the interface, enter the interface vlan vlan-id global configuration command, and specify the VLAN ID
of the shutdown interface. With the switch in interface configuration mode, enter the no shutdown
command.
Step 10 You must now reconfigure the switch. If the system administrator has the backup switch and VLAN
configuration files available, you should use those.
If you have not configured a standby command switch, and your command switch loses power or fails
in some other way, management contact with the member switches is lost, and you must install a new
command switch. However, connectivity between switches that are still connected is not affected, and
the member switches forward packets as usual. You can manage the members as standalone switches
through the console port or, if they have IP addresses, through the other management interfaces.
You can prepare for a command switch failure by assigning an IP address to a member switch or another
switch that is command-capable, making a note of the command-switch password, and cabling your
cluster to have redundant connectivity between the member switches and the replacement command
switch. This section describes two solutions for replacing a failed command switch:
• Replacing a failed command switch with a cluster member
• Replacing a failed command switch with another switch
For information on command-capable switches, see the release notes.
Step 1 Disconnect the command switch from the member switches, and physically remove it from the cluster.
Step 2 Insert the member switch in place of the failed command switch, and duplicate its connections to the
cluster members.
Step 3 Start a CLI session on the new command switch.
You can access the CLI by using the console port or, if an IP address has been assigned to the switch, by
using Telnet. For details about using the console port, see the switch hardware installation guide.
Step 4 At the switch prompt, enter privileged EXEC mode:
Switch> enable
Switch#
Step 9 Use the setup program to configure the switch IP information. This program prompts you for IP address
information and passwords. From privileged EXEC mode, enter setup, and press Return.
Switch# setup
--- System Configuration Dialog ---
Continue with configuration dialog? [yes/no]: y
At any point you may enter a question mark '?' for help.
Use ctrl-c to abort configuration dialog at any prompt.
Default settings are in square brackets '[]'.
or
Configuring global parameters:
If this prompt does not appear, enter enable, and press Return. Enter setup, and press Return to start
the setup program.
Step 11 Respond to the questions in the setup program.
When prompted for the host name, recall that on a command switch, the host name is limited to
28 characters; on a member switch to 31 characters. Do not use -n, where n is a number, as the last
characters in a host name for any switch.
When prompted for the Telnet (virtual terminal) password, recall that it can be from 1 to 25 alphanumeric
characters, is case sensitive, allows spaces, but ignores leading spaces.
Step 12 When prompted for the enable secret and enable passwords, enter the passwords of the failed command
switch again.
Step 13 When prompted, make sure to enable the switch as the cluster command switch, and press Return.
Step 14 When prompted, assign a name to the cluster, and press Return.
The cluster name can be 1 to 31 alphanumeric characters, dashes, or underscores.
Step 15 After the initial configuration appears, verify that the addresses are correct.
Step 16 If the displayed information is correct, enter Y, and press Return.
If this information is not correct, enter N, press Return, and begin again at Step 9.
Step 17 Start your browser, and enter the IP address of the new command switch.
Step 18 From the Cluster menu, select Add to Cluster to display a list of candidate switches to add to the cluster.
Step 1 Insert the new switch in place of the failed command switch, and duplicate its connections to the cluster
members.
Step 2 Start a CLI session on the new command switch.
You can access the CLI by using the console port or, if an IP address has been assigned to the switch, by
using Telnet. For details about using the console port, see the switch hardware installation guide.
Step 3 At the switch prompt, enter privileged EXEC mode:
Switch> enable
Switch#
At any point you may enter a question mark '?' for help.
Use ctrl-c to abort configuration dialog at any prompt.
Default settings are in square brackets '[]'.
or
Configuring global parameters:
If this prompt does not appear, enter enable, and press Return. Enter setup, and press Return to start
the setup program.
Step 7 Respond to the questions in the setup program.
When prompted for the host name, recall that on a command switch, the host name is limited to 28
characters. Do not use -n, where n is a number, as the last characters in a host name for any switch.
When prompted for the Telnet (virtual terminal) password, recall that it can be from 1 to 25 alphanumeric
characters, is case sensitive, allows spaces, but ignores leading spaces.
Step 8 When prompted for the enable secret and enable passwords, enter the passwords of the failed command
switch again.
Step 9 When prompted, make sure to enable the switch as the cluster command switch, and press Return.
Step 10 When prompted, assign a name to the cluster, and press Return.
The cluster name can be 1 to 31 alphanumeric characters, dashes, or underscores.
Step 11 When the initial configuration displays, verify that the addresses are correct.
Step 12 If the displayed information is correct, enter Y, and press Return.
If this information is not correct, enter N, press Return, and begin again at Step 9.
Step 13 Start your browser, and enter the IP address of the new command switch.
Step 14 From the Cluster menu, select Add to Cluster to display a list of candidate switches to add to the cluster.
Note If a remote device does not autonegotiate, configure the duplex settings on the two ports to match. The
speed parameter can adjust itself even if the connected port does not autonegotiate.
Note If you are using a non-Cisco approved SFP module, remove the SFP module from the switch, and replace
it with a Cisco-approved module.
After inserting a Cisco-approved SFP module, use the errdisable recovery cause gbic-invalid global
configuration command to verify the port status, and enter a time interval for recovering from the
error-disabled state. After the elapsed interval, the switch brings the interface out of the error-disabled
state and retries the operation. For more information about the errdisable recovery command, see the
command reference for this release.
Using Ping
This section consists of this information:
• Understanding Ping, page 26-11
• Executing Ping, page 26-12
Understanding Ping
The switch supports IP ping, which you can use to test connectivity to remote hosts. Ping sends an echo
request packet to an address and waits for a reply. Ping returns one of these responses:
• Normal response—The normal response (hostname is alive) occurs in 1 to 10 seconds, depending
on network traffic.
• Destination does not respond—If the host does not respond, a no-answer message is returned.
• Unknown host—If the host does not exist, an unknown host message is returned.
• Destination unreachable—If the default gateway cannot reach the specified network, a
destination-unreachable message is returned.
• Network or host unreachable—If there is no entry in the route table for the host or network, a
network or host unreachable message is returned.
Executing Ping
If you attempt to ping a host in a different IP subnetwork, you must define a static route to the network
Beginning in privileged EXEC mode, use this command to ping another device on the network from the
switch:
Command Purpose
ping [ip] {host | address} Ping a remote host through IP or by supplying the host name or
network address.
Note Though other protocol keywords are available with the ping command, they are not supported in this
release.
Character Description
! Each exclamation point means receipt of a reply.
. Each period means the network server timed out while waiting for a reply.
U A destination unreachable error PDU was received.
C A congestion experienced packet was received.
I User interrupted test.
? Unknown packet type.
& Packet lifetime exceeded.
To terminate a ping session, enter the escape sequence (Ctrl-^ X by default). You enter the default by
simultaneously pressing and releasing the Ctrl, Shift, and 6 keys, and then pressing the X key.
Usage Guidelines
These are the Layer 2 traceroute usage guidelines:
• Cisco Discovery Protocol (CDP) must be enabled on all the devices in the network. For Layer 2
traceroute to functional properly, do not disable CDP. If any devices in the physical path are
transparent to CDP, the switch cannot identify the path through these devices.
Note For more information about enabling CDP, see Chapter 19, “Configuring CDP.”
• A switch is reachable from another switch when you can test connectivity by using the ping
privileged EXEC command. All switches in the physical path must be reachable from each other.
• The maximum number of hops identified in the path is ten.
• You can enter the traceroute mac or the traceroute mac ip privileged EXEC command on a switch
that is not in the physical path from the source device to the destination device. All switches in the
path must be reachable from this switch.
• The traceroute mac command output shows the Layer 2 path only when the specified source and
destination MAC addresses belong to the same VLAN. If you specify source and destination MAC
addresses that belong to different VLANs, the Layer 2 path is not identified, and an error message
appears.
• If you specify a multicast source or destination MAC address, the path is not identified, and an error
message appears.
• If the source or destination MAC address belongs to multiple VLANs, you must specify the VLAN
to which both the source and destination MAC addresses belong. If the VLAN is not specified, the
path is not identified, and an error message appears.
• The traceroute mac ip command output shows the Layer 2 path when the specified source and
destination IP addresses belong to the same subnet. When you specify the IP addresses, the switch
uses Address Resolution Protocol (ARP) to associate the IP addresses with the corresponding MAC
addresses and the VLAN IDs.
– If an ARP entry exists for the specified IP address, the switch uses the associated MAC address
and identifies the physical path.
– If an ARP entry does not exist, the switch sends an ARP query and tries to resolve the IP
address. If the IP address is not resolved, the path is not identified, and an error message
appears.
• When multiple devices are attached to one port through hubs (for example, multiple CDP neighbors
are detected on a port), the Layer 2 traceroute feature is not supported. When more than one CDP
neighbor is detected on a port, the Layer 2 path is not identified, and an error message appears.
• This feature is not supported in Token Ring VLANs.
Caution Because debugging output is assigned high priority in the CPU process, it can render the system
unusable. For this reason, use debug commands only to troubleshoot specific problems or during
troubleshooting sessions with Cisco technical support staff. It is best to use debug commands during
periods of lower network traffic and fewer users. Debugging during these periods decreases the
likelihood that increased debug command processing overhead will affect system use.
Note For complete syntax and usage information for specific debug commands, see the command reference
for this release.
The switch continues to generate output until you enter the no form of the command.
If you enable a debug command and no output appears, consider these possibilities:
• The switch might not be properly configured to generate the type of traffic that you want to monitor.
Use the show running-config command to verify the configuration.
• Even if the switch is properly configured, it might not generate the type of traffic that you want to
monitor during the particular period that debugging is enabled. Depending on the feature you are
debugging, you can use commands such as the TCP/IP ping command to generate network traffic.
To disable debugging of EtherChannel, enter this command in privileged EXEC mode:
Switch# no debug etherchannel
Alternately, in privileged EXEC mode, you can enter the undebug form of the command:
Switch# undebug etherchannel
To display the state of each debugging option, enter this command in privileged EXEC mode:
Switch# show debugging
Caution Because debugging output takes priority over other network traffic, and because the debug all privileged
EXEC command generates more output than any other debug command, it can severely diminish switch
performance or even render it unusable. In virtually all cases, it is best to use more specific debug
commands.
The no debug all privileged EXEC command disables all diagnostic output. Using the no debug all
command is a convenient way to ensure that you have not accidentally left any debug commands
enabled.
Note Be aware that the debugging destination you use affects system overhead. Logging messages to the
console produces very high overhead, whereas logging messages to a virtual terminal produces less
overhead. Logging messages to a syslog server produces even less, and logging to an internal buffer
produces the least overhead of any method.
For more information about system message logging, see Chapter 22, “Configuring System Message
Logging.”
This appendix lists the supported MIBs for this release. It contains these sections:
• MIB List, page A-1
• Using FTP to Access the MIB Files, page A-2
MIB List
• BRIDGE-MIB (RFC1493)
• CISCO-2900-MIB
• CISCO-BULK-FILE-MIB
• CISCO-CDP-MIB
• CISCO-CLUSTER-MIB
• CISCO_CONFIG_COPY_MIB
• CISCO-CONFIG-MAN-MIB
• CISCO-ENTITY-MIB
• CISCO-ENTITY-VENDORTYPE-OID-MIB
• CISCO_ENVMON_MIB
• CISCO-FLASH-MIB
• CISCO-FTP-CLIENT-MIB
• CISCO-IGMP-FILTER-MIB
• CISCO-IMAGE-MIB
• CISCO-MAC-NOTIFICATION-MIB
• CISCO-MEMORY-POOL-MIB
• CISCO-PAE-MIB
• CISCO-PAGP-MIB
• CISCO-PING-MIB
• CISCO-PORT-SECURITY-MIB
• CISCO-PROCESS-MIB
• CISCO-PRODUCTS-MIB
Step 4 At the ftp> prompt, change directories to /pub/mibs/v1 and the /pub/mibs/v2.
Step 5 Use the get MIB_filename command to obtain a copy of the MIB file.
You can also access information about MIBs on the Cisco website:
http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
addresses
Numerics
displaying the MAC address table 5-26
802.1D dynamic
See STP accelerated aging 10-8
802.1Q changing the aging time 5-22
and trunk ports 8-2 default aging 10-8
configuration limitations 13-16 defined 5-20
encapsulation 13-14 learning 5-21
native VLAN for untagged traffic 13-20 removing 5-23
802.1s MAC, discovering 5-26
See MSTP multicast STP address management 10-8
802.1w static
See RSTP adding and removing 5-25
802.1x defined 5-20
See port-based authentication address resolution 5-26
802.3x flow control 8-12 Address Resolution Protocol
See ARP table
advertisements
A
CDP 19-1
abbreviating commands 2-3 VTP 13-17, 14-3
access control list aggregated ports
See ACL See EtherChannel
access-denied response, VMPS 13-25 aging, accelerating 10-8
access list aging time
See ACL accelerated
access ports for MSTP 11-20
defined 8-2 for STP 10-8, 10-21
accounting MAC address table 5-22
with 802.1x 7-5, 7-21 maximum
with RADIUS 6-28 for MSTP 11-21
with TACACS+ 6-11, 6-17 for STP 10-21
ACL 1-5 alarms, RMON 21-3
allowed-VLAN list 13-18
building the address table 5-21 accessing files with FTP A-2
static monitoring
active topology, determining 11-6 severity levels, defining in system messages 22-8
system message logging (continued) Terminal Access Controller Access Control System Plus
synchronizing log messages 22-6 See TACACS+
timestamps, enabling and disabling 22-7 terminal lines, setting a password 6-6
UNIX syslog servers TFTP
configuring the daemon 22-11 configuration files in base directory 3-6
configuring the logging facility 22-11 configuring for autoconfiguration 3-5
facilities supported 22-12 limiting access by servers 23-13
system name time
default configuration 5-15 See NTP and system clock
default setting 5-15 timestamps in log messages 22-7
manual configuration 5-15 time zones 5-12
See also DNS Token Ring VLANs
system prompt support for 13-5
default setting 5-15 VTP support 14-4
manual configuration 5-16 traceroute, Layer 2
and ARP 26-13
and CDP 26-13
T
described 26-13
TACACS+ IP addresses and subnets 26-13
accounting, defined 6-11 MAC addresses and VLANs 26-13
authentication, defined 6-11 multicast traffic 26-13
authorization, defined 6-11 multiple devices on a port 26-14
configuring unicast traffic 26-13
accounting 6-17 usage guidelines 26-13
authentication key 6-13 transparent mode, VTP 14-3, 14-11
authorization 6-16 trap-door mechanism 3-2
login authentication 6-14 traps
default configuration 6-13 configuring MAC address notification 5-23
displaying the configuration 6-17 configuring managers 23-10
identifying the server 6-13 defined 23-3
limiting the services to the user 6-16 enabling 5-23, 23-10
operation of 6-12 notification types 23-10
overview 6-10 overview 23-1, 23-4
tracking services accessed by user 6-17 troubleshooting
Telnet connectivity problems 26-11
accessing management interfaces 2-9 detecting unidirectional links 18-1
accessing the CLI 1-6 displaying crash information 26-16
setting a password 6-6 GBIC security and identification 26-11
with CiscoWorks 23-4
VTP (continued)
W
configuration revision number
guideline 14-14 Weighted Round Robin
resetting 14-14 See WRR
configuring wizards 1-2
client mode 14-10 WRR
server mode 14-9 configuring 24-9
transparent mode 14-11 defining 24-3
consistency checks 14-4 description 24-3
default configuration 14-6
described 14-1
X
disabling 14-11
domain names 14-8 Xmodem protocol 26-2
domains 14-2
modes
client 14-3, 14-10
server 14-3, 14-9
transitions 14-3
transparent 14-3, 14-11
monitoring 14-15
passwords 14-8
pruning
disabling 14-13
enabling 14-13
examples 14-5
overview 14-4
pruning-eligible list, changing 13-19
server mode, configuring 14-9
statistics 14-15
Token Ring support 14-4
transparent mode, configuring 14-11
using 14-1
version, guidelines 14-8
version 1 14-4
version 2
configuration guidelines 14-8
disabling 14-13
enabling 14-12
overview 14-4