Cisco 3750 Configuration Guide
Cisco 3750 Configuration Guide
Cisco 3750 Configuration Guide
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 SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS. 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 UCBs 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. CCIP, CCSP, the Cisco Arrow logo, the Cisco Powered Network mark, 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, CCNA, CCNP, Cisco, the Cisco Certified Internetwork Expert logo, Cisco IOS, the Cisco IOS logo, 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. (0403R) Catalyst 3750 Switch Software Configuration Guide Copyright 20032004 Cisco Systems, Inc. All rights reserved.
C O N T E N T S
Preface
xxxv xxxv xxxv xxxvi xxxvii
Related Publications
Obtaining Documentation xxxvii Cisco.com xxxvii Ordering Documentation xxxviii Documentation Feedback
xxxviii
Obtaining Technical Assistance xxxviii Cisco Technical Support Website xxxix Submitting a Service Request xxxix Definitions of Service Request Severity xxxix Obtaining Additional Publications and Information
1
xl
CHAPTER
Overview Features
Network Configuration Examples 1-12 Design Concepts for Using the Switch 1-12 Small to Medium-Sized Network Using Catalyst 3750 Switches Large Network Using Catalyst 3750 Switches 1-18 Multidwelling Network Using Catalyst 3750 Switches 1-21 Long-Distance, High-Bandwidth Transport Configuration 1-22 Where to Go Next
2
1-23
1-17
CHAPTER
Using the Command-Line Interface Understanding Command Modes Understanding the Help System
Understanding Abbreviated Commands Understanding CLI Error Messages Using Command History
2-4 2-4
iii
Contents
Changing the Command History Buffer Size 2-5 Recalling Commands 2-5 Disabling the Command History Feature 2-5 Using Editing Features 2-6 Enabling and Disabling Editing Features 2-6 Editing Commands through Keystrokes 2-6 Editing Command Lines that Wrap 2-8 Searching and Filtering Output of show and more Commands
2-8
Accessing the CLI 2-9 Accessing the CLI through a Console Connection or through Telnet Accessing the CLI from a Browser 2-10
3
2-9
CHAPTER
3-1
Understanding CMS 3-1 Front Panel View 3-2 Topology View 3-2 CMS Menu Bar, Toolbar, and Feature Bar 3-2 Online Help 3-5 Configuration Modes 3-5 Guide Mode 3-5 Expert Mode 3-6 Wizards 3-6 Privilege Levels 3-7 Access to Older Switches in a Cluster 3-7 Configuring CMS 3-8 CMS Requirements 3-8 Minimum Hardware Configuration 3-8 Operating System and Browser Support 3-9 CMS Plug-In 3-9 Cross-Platform Considerations 3-9 HTTP Access to CMS 3-10 Specifying an HTTP Port (Nondefault Configuration Only) 3-10 Configuring an Authentication Method (Nondefault Configuration Only) Displaying CMS 3-11 Launching CMS 3-11 Front Panel View 3-14 Topology View 3-15 CMS Icons 3-16 Where to Go Next
3-16
3-10
iv
78-16180-02
Contents
CHAPTER
Assigning the Switch IP Address and Default Gateway Understanding the Boot Process
4-1
4-1
Assigning Switch Information 4-2 Default Switch Information 4-3 Understanding DHCP-Based Autoconfiguration 4-3 DHCP Client Request Process 4-4 Configuring DHCP-Based Autoconfiguration 4-5 DHCP Server Configuration Guidelines 4-5 Configuring the TFTP Server 4-5 Configuring the DNS 4-6 Configuring the Relay Device 4-6 Obtaining Configuration Files 4-7 Example Configuration 4-8 Manually Assigning IP Information 4-10 Checking and Saving the Running Configuration
4-10
Modifying the Startup Configuration 4-11 Default Boot Configuration 4-12 Automatically Downloading a Configuration File 4-12 Specifying the Filename to Read and Write the System Configuration Booting Manually 4-13 Booting a Specific Software Image 4-13 Controlling Environment Variables 4-14 Scheduling a Reload of the Software Image 4-16 Configuring a Scheduled Reload 4-16 Displaying Scheduled Reload Information 4-17
5
4-12
CHAPTER
5-1
Understanding Switch Stacks 5-1 Switch Stack Membership 5-3 Stack Master Election and Re-Election 5-4 Switch Stack Bridge ID and Router MAC Address 5-5 Stack Member Numbers 5-6 Stack Member Priority Values 5-7 Switch Stack Offline Configuration 5-7 Effects of Adding a Provisioned Switch to a Switch Stack 5-8 Effects of Replacing a Provisioned Switch in a Switch Stack 5-10 Effects of Removing a Provisioned Switch from a Switch Stack 5-10 Hardware Compatibility in Switch Stacks 5-10 Software Compatibility in Switch Stacks 5-10
Catalyst 3750 Switch Software Configuration Guide 78-16180-02
Contents
Compatibility Recommendations 5-11 Incompatible Software and Stack Member Image Upgrades 5-11 Stack Protocol Version Compatibility 5-11 Switch Stack Configuration Files 5-12 Additional Considerations for System-Wide Configuration on Switch Stacks Switch Stack Management Connectivity 5-14 Connectivity to the Switch Stack Through an IP Address 5-14 Connectivity to the Switch Stack Through an SSH Session 5-14 Connectivity to the Switch Stack Through Console Ports 5-14 Connectivity to Specific Stack Members 5-14 Switch Stack Configuration Scenarios 5-15 Assigning Stack Member Information 5-17 Default Switch Stack Configuration 5-17 Assigning a Stack Member Number 5-17 Setting the Stack Member Priority Value 5-18 Provisioning a New Member for a Switch Stack Accessing the CLI of a Specific Stack Member Displaying Switch Stack Information
6
5-20 5-19
5-13
5-18
CHAPTER
Clustering Switches
6-1
Understanding Switch Clusters 6-2 Cluster Command Switch Characteristics 6-3 Standby Cluster Command Switch Characteristics 6-3 Candidate Switch and Cluster Member Switch Characteristics
6-4
Planning a Switch Cluster 6-4 Automatic Discovery of Cluster Candidates and Members 6-5 Discovery Through CDP Hops 6-5 Discovery Through Non-CDP-Capable and Noncluster-Capable Devices Discovery Through Different VLANs 6-7 Discovery Through Different Management VLANs 6-7 Discovery Through Routed Ports 6-8 Discovery of Newly Installed Switches 6-9 HSRP and Standby Cluster Command Switches 6-10 Virtual IP Addresses 6-11 Other Considerations for Cluster Standby Groups 6-11 Automatic Recovery of Cluster Configuration 6-12 IP Addresses 6-13 Host Names 6-13 Passwords 6-14
Catalyst 3750 Switch Software Configuration Guide
6-6
vi
78-16180-02
Contents
SNMP Community Strings 6-14 Switch Clusters and Switch Stacks 6-14 TACACS+ and RADIUS 6-16 Access Modes in CMS 6-16 LRE Profiles 6-17 Availability of Switch-Specific Features in Switch Clusters Creating a Switch Cluster 6-17 Enabling a Cluster Command Switch 6-17 Adding Cluster Member Switches 6-18 Creating a Cluster Standby Group 6-20 Verifying a Switch Cluster
6-22
6-17
Using the CLI to Manage Switch Clusters 6-23 Catalyst 1900 and Catalyst 2820 CLI Considerations Using SNMP to Manage Switch Clusters
7
6-24
6-23
CHAPTER
7-1
Managing the System Time and Date 7-1 Understanding the System Clock 7-2 Understanding Network Time Protocol 7-2 Configuring NTP 7-4 Default NTP Configuration 7-4 Configuring NTP Authentication 7-5 Configuring NTP Associations 7-6 Configuring NTP Broadcast Service 7-7 Configuring NTP Access Restrictions 7-8 Configuring the Source IP Address for NTP Packets 7-10 Displaying the NTP Configuration 7-11 Configuring Time and Date Manually 7-11 Setting the System Clock 7-11 Displaying the Time and Date Configuration 7-12 Configuring the Time Zone 7-12 Configuring Summer Time (Daylight Saving Time) 7-13 Configuring a System Name and Prompt 7-14 Default System Name and Prompt Configuration Configuring a System Name 7-15 Configuring a System Prompt 7-16 Understanding DNS 7-16 Default DNS Configuration 7-17 Setting Up DNS 7-17
7-15
vii
Contents
7-18
Creating a Banner 7-18 Default Banner Configuration 7-18 Configuring a Message-of-the-Day Login Banner Configuring a Login Banner 7-20
7-19
Managing the MAC Address Table 7-20 Building the Address Table 7-21 MAC Addresses and VLANs 7-21 MAC Addresses and Switch Stacks 7-22 Default MAC Address Table Configuration 7-22 Changing the Address Aging Time 7-22 Removing Dynamic Address Entries 7-23 Configuring MAC Address Notification Traps 7-23 Adding and Removing Static Address Entries 7-25 Configuring Unicast MAC Address Filtering 7-26 Displaying Address Table Entries 7-28 Managing the ARP Table
8
7-28
CHAPTER
8-1
Understanding the SDM Templates 8-1 SDM Templates and Switch Stacks 8-2 Configuring the Switch SDM Template 8-3 Default SDM Template 8-3 SDM Template Configuration Guidelines Setting the SDM Template 8-4 Displaying the SDM Templates
9
8-5
8-4
CHAPTER
9-1 9-1
Protecting Access to Privileged EXEC Commands 9-2 Default Password and Privilege Level Configuration 9-2 Setting or Changing a Static Enable Password 9-3 Protecting Enable and Enable Secret Passwords with Encryption Disabling Password Recovery 9-5 Setting a Telnet Password for a Terminal Line 9-6 Configuring Username and Password Pairs 9-7 Configuring Multiple Privilege Levels 9-8 Setting the Privilege Level for a Command 9-8 Changing the Default Privilege Level for Lines 9-9
Catalyst 3750 Switch Software Configuration Guide
9-4
viii
78-16180-02
Contents
9-10
Controlling Switch Access with TACACS+ 9-10 Understanding TACACS+ 9-10 TACACS+ Operation 9-12 Configuring TACACS+ 9-13 Default TACACS+ Configuration 9-13 Identifying the TACACS+ Server Host and Setting the Authentication Key 9-13 Configuring TACACS+ Login Authentication 9-14 Configuring TACACS+ Authorization for Privileged EXEC Access and Network Services Starting TACACS+ Accounting 9-17 Displaying the TACACS+ Configuration 9-17
9-16
Controlling Switch Access with RADIUS 9-18 Understanding RADIUS 9-18 RADIUS Operation 9-19 Configuring RADIUS 9-20 Default RADIUS Configuration 9-20 Identifying the RADIUS Server Host 9-21 Configuring RADIUS Login Authentication 9-23 Defining AAA Server Groups 9-25 Configuring RADIUS Authorization for User Privileged Access and Network Services 9-27 Starting RADIUS Accounting 9-28 Configuring Settings for All RADIUS Servers 9-29 Configuring the Switch to Use Vendor-Specific RADIUS Attributes 9-29 Configuring the Switch for Vendor-Proprietary RADIUS Server Communication 9-31 Displaying the RADIUS Configuration 9-31 Controlling Switch Access with Kerberos 9-32 Understanding Kerberos 9-32 Kerberos Operation 9-34 Authenticating to a Boundary Switch 9-35 Obtaining a TGT from a KDC 9-35 Authenticating to Network Services 9-35 Configuring Kerberos 9-36 Configuring the Switch for Local Authentication and Authorization Configuring the Switch for Secure Shell 9-37 Understanding SSH 9-38 SSH Servers, Integrated Clients, and Supported Versions Limitations 9-39 Configuring SSH 9-39 Configuration Guidelines 9-39
9-36
9-38
ix
Contents
Setting Up the Switch to Run SSH 9-39 Configuring the SSH Server 9-40 Displaying the SSH Configuration and Status 9-41
10
CHAPTER
10-1
Understanding 802.1x Port-Based Authentication 10-1 Device Roles 10-2 Authentication Initiation and Message Exchange 10-3 Ports in Authorized and Unauthorized States 10-4 802.1x Accounting 10-5 Supported Topologies 10-5 Using 802.1x with Port Security 10-6 Using 802.1x with Voice VLAN Ports 10-7 Using 802.1x with VLAN Assignment 10-7 Using 802.1x with Guest VLAN 10-8 Using 802.1x with Per-User ACLs 10-9 802.1x and Switch Stacks 10-10 Configuring 802.1x Authentication 10-10 Default 802.1x Configuration 10-11 802.1x Configuration Guidelines 10-12 Upgrading from a Previous Software Release 10-13 Configuring 802.1x Authentication 10-13 Configuring the Switch-to-RADIUS-Server Communication 10-15 Configuring Periodic Re-Authentication 10-16 Manually Re-Authenticating a Client Connected to a Port 10-16 Changing the Quiet Period 10-17 Changing the Switch-to-Client Retransmission Time 10-17 Setting the Switch-to-Client Frame-Retransmission Number 10-18 Setting the Re-Authentication Number 10-18 Configuring the Host Mode 10-19 Configuring a Guest VLAN 10-20 Resetting the 802.1x Configuration to the Default Values 10-21 Configuring 802.1x Accounting 10-21 Displaying 802.1x Statistics and Status
11
10-22
CHAPTER
Configuring Interface Characteristics Understanding Interface Types Port-Based VLANs 11-2 Switch Ports 11-2
11-1
11-1
78-16180-02
Contents
Access Ports 11-3 Trunk Ports 11-3 Routed Ports 11-3 10-Gigabit Ethernet Interfaces 11-4 Switch Virtual Interfaces 11-4 EtherChannel Port Groups 11-5 Connecting Interfaces 11-5 Using Interface Configuration Mode 11-7 Procedures for Configuring Interfaces 11-8 Configuring a Range of Interfaces 11-9 Configuring and Using Interface Range Macros
11-10
Configuring Ethernet Interfaces 11-12 Default Ethernet Interface Configuration 11-12 Configuration Guidelines for 10-Gigabit Ethernet Interfaces 11-14 Configuring Interface Speed and Duplex Mode 11-14 Configuration Guidelines 11-15 Setting the Interface Speed and Duplex Parameters 11-15 Configuring IEEE 802.3z Flow Control 11-17 Configuring Auto-MDIX on an Interface 11-18 Configuring Power over Ethernet on an Interface 11-19 Adding a Description for an Interface 11-20 Configuring Layer 3 Interfaces Configuring the System MTU
11-21 11-22
Monitoring and Maintaining the Interfaces 11-24 Monitoring Interface Status 11-24 Clearing and Resetting Interfaces and Counters 11-25 Shutting Down and Restarting the Interface 11-25
12
CHAPTER
12-1 12-1
Configuring Smartports Macros 12-2 Default Smartports Macro Configuration 12-2 Smartports Macro Configuration Guidelines 12-3 Creating Smartports Macros 12-4 Applying Smartports Macros 12-5 Applying Cisco-Default Smartports Macros 12-6 Displaying Smartports Macros
12-8
xi
Contents
CHAPTER
13
Configuring VLANs
13-1
Understanding VLANs 13-1 Supported VLANs 13-3 VLAN Port Membership Modes
13-3
Configuring Normal-Range VLANs 13-5 Token Ring VLANs 13-6 Normal-Range VLAN Configuration Guidelines 13-6 VLAN Configuration Mode Options 13-7 VLAN Configuration in config-vlan Mode 13-7 VLAN Configuration in VLAN Database Configuration Mode Saving VLAN Configuration 13-8 Default Ethernet VLAN Configuration 13-8 Creating or Modifying an Ethernet VLAN 13-9 Deleting a VLAN 13-11 Assigning Static-Access Ports to a VLAN 13-11 Configuring Extended-Range VLANs 13-12 Default VLAN Configuration 13-13 Extended-Range VLAN Configuration Guidelines 13-13 Creating an Extended-Range VLAN 13-14 Creating an Extended-Range VLAN with an Internal VLAN ID Displaying VLANs
13-16
13-7
13-15
Configuring VLAN Trunks 13-16 Trunking Overview 13-17 Encapsulation Types 13-18 802.1Q Configuration Considerations 13-19 Default Layer 2 Ethernet Interface VLAN Configuration 13-19 Configuring an Ethernet Interface as a Trunk Port 13-19 Interaction with Other Features 13-20 Configuring a Trunk Port 13-20 Defining the Allowed VLANs on a Trunk 13-21 Changing the Pruning-Eligible List 13-22 Configuring the Native VLAN for Untagged Traffic 13-23 Configuring Trunk Ports for Load Sharing 13-24 Load Sharing Using STP Port Priorities 13-24 Load Sharing Using STP Path Cost 13-26 Configuring VMPS 13-27 Understanding VMPS 13-28 Dynamic-Access Port VLAN Membership Default VMPS Client Configuration 13-29
Catalyst 3750 Switch Software Configuration Guide
13-28
xii
78-16180-02
Contents
VMPS Configuration Guidelines 13-29 Configuring the VMPS Client 13-30 Entering the IP Address of the VMPS 13-30 Configuring Dynamic-Access Ports on VMPS Clients 13-30 Reconfirming VLAN Memberships 13-31 Changing the Reconfirmation Interval 13-31 Changing the Retry Count 13-32 Monitoring the VMPS 13-32 Troubleshooting Dynamic-Access Port VLAN Membership 13-33 VMPS Configuration Example 13-33
14
CHAPTER
Configuring VTP
14-1
Understanding VTP 14-1 The VTP Domain 14-2 VTP Modes 14-3 VTP Advertisements 14-3 VTP Version 2 14-4 VTP Pruning 14-5 VTP and Switch Stacks 14-6 Configuring VTP 14-7 Default VTP Configuration 14-7 VTP Configuration Options 14-7 VTP Configuration in Global Configuration Mode 14-7 VTP Configuration in VLAN Database Configuration Mode VTP Configuration Guidelines 14-8 Domain Names 14-8 Passwords 14-9 VTP Version 14-9 Configuration Requirements 14-9 Configuring a VTP Server 14-10 Configuring a VTP Client 14-11 Disabling VTP (VTP Transparent Mode) 14-12 Enabling VTP Version 2 14-13 Enabling VTP Pruning 14-14 Adding a VTP Client Switch to a VTP Domain 14-15 Monitoring VTP
15
14-16
14-8
CHAPTER
15-1 15-1
xiii
Contents
IP Addressing Scheme with Private VLANs 15-3 Private VLANs across Multiple Switches 15-4 Private-VLAN Interaction with Other Features 15-4 Private VLANs and Unicast, Broadcast, and Multicast Traffic Private VLANs and SVIs 15-5 Private VLANs and Switch Stacks 15-5
15-5
Configuring Private VLANs 15-6 Tasks for Configuring Private VLANs 15-6 Default Private-VLAN Configuration 15-7 Private-VLAN Configuration Guidelines 15-7 Secondary and Primary VLAN Configuration 15-7 Private-VLAN Port Configuration 15-8 Limitations with Other Features 15-9 Configuring and Associating VLANs in a Private VLAN 15-10 Configuring a Layer 2 Interface as a Private-VLAN Host Port 15-11 Configuring a Layer 2 Interface as a Private-VLAN Promiscuous Port 15-13 Mapping Secondary VLANs to a Primary VLAN Layer 3 VLAN Interface 15-14 Monitoring Private VLANs
16
15-15
CHAPTER
16-1
Understanding Voice VLAN 16-1 Cisco IP Phone Voice Traffic 16-2 Cisco IP Phone Data Traffic 16-2 Configuring Voice VLAN 16-3 Default Voice VLAN Configuration 16-3 Voice VLAN Configuration Guidelines 16-3 Configuring a Port Connected to a Cisco 7960 IP Phone 16-4 Configuring IP Phone Voice Traffic 16-4 Configuring the Priority of Incoming Data Frames 16-6 Displaying Voice VLAN
17
16-6
CHAPTER
Configuring STP
17-1
Understanding Spanning-Tree Features 17-1 STP Overview 17-2 Spanning-Tree Topology and BPDUs 17-3 Bridge ID, Switch Priority, and Extended System ID Spanning-Tree Interface States 17-5 Blocking State 17-7 Listening State 17-7
Catalyst 3750 Switch Software Configuration Guide
17-4
xiv
78-16180-02
Contents
Learning State 17-7 Forwarding State 17-7 Disabled State 17-8 How a Switch or Port Becomes the Root Switch or Root Port 17-8 Spanning Tree and Redundant Connectivity 17-9 Spanning-Tree Address Management 17-9 Accelerated Aging to Retain Connectivity 17-9 Spanning-Tree Modes and Protocols 17-10 Supported Spanning-Tree Instances 17-10 Spanning-Tree Interoperability and Backward Compatibility 17-11 STP and IEEE 802.1Q Trunks 17-11 VLAN-Bridge Spanning Tree 17-12 Spanning Tree and Switch Stacks 17-12 Configuring Spanning-Tree Features 17-12 Default Spanning-Tree Configuration 17-13 Spanning-Tree Configuration Guidelines 17-13 Changing the Spanning-Tree Mode. 17-14 Disabling Spanning Tree 17-15 Configuring the Root Switch 17-16 Configuring a Secondary Root Switch 17-17 Configuring Port Priority 17-18 Configuring Path Cost 17-20 Configuring the Switch Priority of a VLAN 17-21 Configuring Spanning-Tree Timers 17-22 Configuring the Hello Time 17-22 Configuring the Forwarding-Delay Time for a VLAN 17-23 Configuring the Maximum-Aging Time for a VLAN 17-23 Displaying the Spanning-Tree Status
18
17-24
CHAPTER
Configuring MSTP
18-1
Understanding MSTP 18-2 Multiple Spanning-Tree Regions 18-2 IST, CIST, and CST 18-3 Operations Within an MST Region 18-3 Operations Between MST Regions 18-4 Hop Count 18-5 Boundary Ports 18-5 MSTP and Switch Stacks 18-6 Interoperability with 802.1D STP 18-6
xv
Contents
Understanding RSTP 18-6 Port Roles and the Active Topology 18-7 Rapid Convergence 18-8 Synchronization of Port Roles 18-9 Bridge Protocol Data Unit Format and Processing 18-10 Processing Superior BPDU Information 18-11 Processing Inferior BPDU Information 18-11 Topology Changes 18-11 Configuring MSTP Features 18-12 Default MSTP Configuration 18-13 MSTP Configuration Guidelines 18-13 Specifying the MST Region Configuration and Enabling MSTP Configuring the Root Switch 18-15 Configuring a Secondary Root Switch 18-17 Configuring Port Priority 18-18 Configuring Path Cost 18-19 Configuring the Switch Priority 18-20 Configuring the Hello Time 18-20 Configuring the Forwarding-Delay Time 18-21 Configuring the Maximum-Aging Time 18-22 Configuring the Maximum-Hop Count 18-22 Specifying the Link Type to Ensure Rapid Transitions 18-23 Restarting the Protocol Migration Process 18-23 Displaying the MST Configuration and Status
19
18-24
18-14
CHAPTER
19-1
Understanding Optional Spanning-Tree Features 19-1 Understanding Port Fast 19-2 Understanding BPDU Guard 19-3 Understanding BPDU Filtering 19-3 Understanding UplinkFast 19-4 Understanding Cross-Stack UplinkFast 19-5 How CSUF Works 19-6 Events that Cause Fast Convergence 19-7 Understanding BackboneFast 19-7 Understanding EtherChannel Guard 19-10 Understanding Root Guard 19-10 Understanding Loop Guard 19-11 Configuring Optional Spanning-Tree Features
19-11
xvi
78-16180-02
Contents
Default Optional Spanning-Tree Configuration 19-12 Optional Spanning-Tree Configuration Guidelines 19-12 Enabling Port Fast 19-12 Enabling BPDU Guard 19-13 Enabling BPDU Filtering 19-14 Enabling UplinkFast for Use with Redundant Links 19-15 Enabling Cross-Stack UplinkFast 19-16 Enabling BackboneFast 19-16 Enabling EtherChannel Guard 19-17 Enabling Root Guard 19-17 Enabling Loop Guard 19-18 Displaying the Spanning-Tree Status
20
19-19
CHAPTER
20-1 20-1
Configuring Flex Links 20-2 Default Flex Link Configuration 20-2 Flex Link Configuration Guidelines 20-2 Configuring Flex Links 20-3 Monitoring Flex Links
21
20-3
CHAPTER
Configuring DHCP Features and IP Source Guard Understanding DHCP Features 21-1 DHCP Server 21-2 DHCP Relay Agent 21-2 DHCP Snooping 21-2 Option-82 Data Insertion 21-3 Cisco IOS DHCP Server Database 21-5 DHCP Snooping Binding Database 21-5 DHCP Snooping and Switch Stacks 21-6
21-1
Configuring DHCP Features 21-7 Default DHCP Configuration 21-7 DHCP Snooping Configuration Guidelines 21-8 Configuring the DHCP Server 21-8 DHCP Server and Switch Stacks 21-9 Configuring the DHCP Relay Agent 21-9 Specifying the Packet Forwarding Address 21-9 Enabling DHCP Snooping and Option 82 21-10 Enabling DHCP Snooping on Private VLANs 21-12
Catalyst 3750 Switch Software Configuration Guide 78-16180-02
xvii
Contents
Enabling the Cisco IOS DHCP Server Database 21-12 Enabling the DHCP Snooping Binding Database Agent
21-12
Displaying DHCP Snooping Information 21-14 Displaying the DHCP Snooping Configuration 21-14 Displaying the DHCP Snooping Binding Database 21-14 Understanding IP Source Guard 21-15 Source IP Address Filtering 21-16 Source IP and MAC Address Filtering Configuring IP Source Guard 21-16 Default IP Source Guard Configuration Configuration Guidelines 21-17 Enabling IP Source Guard 21-17 Displaying IP Source Guard Information
22
21-16
21-16
21-19
CHAPTER
22-1
Understanding Dynamic ARP Inspection 22-1 Interface Trust States and Network Security 22-3 Rate Limiting of ARP Packets 22-4 Relative Priority of ARP ACLs and DHCP Snooping Entries Logging of Dropped Packets 22-4 Configuring Dynamic ARP Inspection 22-5 Default Dynamic ARP Inspection Configuration 22-5 Dynamic ARP Inspection Configuration Guidelines 22-6 Configuring Dynamic ARP Inspection in DHCP Environments Configuring ARP ACLs for Non-DHCP Environments 22-8 Limiting the Rate of Incoming ARP Packets 22-10 Performing Validation Checks 22-11 Configuring the Log Buffer 22-12 Displaying Dynamic ARP Inspection Information
23
22-14
22-4
22-7
CHAPTER
Configuring IGMP Snooping and MVR Understanding IGMP Snooping 23-1 IGMP Versions 23-2 Joining a Multicast Group 23-3 Leaving a Multicast Group 23-5 Immediate Leave 23-5 IGMP Report Suppression 23-5 IGMP Snooping and Switch Stacks
23-1
23-6
xviii
78-16180-02
Contents
Configuring IGMP Snooping 23-6 Default IGMP Snooping Configuration 23-6 Enabling or Disabling IGMP Snooping 23-7 Setting the Snooping Method 23-7 Configuring a Multicast Router Port 23-9 Configuring a Host Statically to Join a Group Enabling IGMP Immediate Leave 23-11 Disabling IGMP Report Suppression 23-11 Displaying IGMP Snooping Information
23-12
23-10
Understanding Multicast VLAN Registration 23-13 Using MVR in a Multicast Television Application Configuring MVR 23-15 Default MVR Configuration 23-15 MVR Configuration Guidelines and Limitations Configuring MVR Global Parameters 23-16 Configuring MVR Interfaces 23-17 Displaying MVR Information
23-19
23-13
23-16
Configuring IGMP Filtering and Throttling 23-19 Default IGMP Filtering and Throttling Configuration 23-20 Configuring IGMP Profiles 23-21 Applying IGMP Profiles 23-22 Setting the Maximum Number of IGMP Groups 23-23 Configuring the IGMP Throttling Action 23-23 Displaying IGMP Filtering and Throttling Configuration
24
23-25
CHAPTER
Configuring Port-Based Traffic Control Configuring Storm Control 24-1 Understanding Storm Control 24-2 Default Storm Control Configuration Enabling Storm Control 24-3
24-1
24-3
Configuring Protected Ports 24-5 Default Protected Port Configuration 24-5 Protected Port Configuration Guidelines 24-5 Configuring a Protected Port 24-5 Configuring Port Blocking 24-6 Default Port Blocking Configuration 24-6 Blocking Flooded Traffic on an Interface 24-6 Configuring Port Security
24-7
xix
Contents
Understanding Port Security 24-7 Secure MAC Addresses 24-7 Security Violations 24-8 Default Port Security Configuration 24-9 Configuration Guidelines 24-10 Enabling and Configuring Port Security 24-10 Enabling and Configuring Port Security Aging 24-14 Port Security and Switch Stacks 24-15 Displaying Port-Based Traffic Control Settings
25
24-16
CHAPTER
Configuring CDP
25-1
25-2
Configuring CDP 25-2 Default CDP Configuration 25-2 Configuring the CDP Characteristics 25-2 Disabling and Enabling CDP 25-3 Disabling and Enabling CDP on an Interface Monitoring and Maintaining CDP
26
25-5
25-4
CHAPTER
Configuring UDLD
26-1
Understanding UDLD 26-1 Modes of Operation 26-1 Methods to Detect Unidirectional Links Configuring UDLD 26-4 Default UDLD Configuration 26-4 Configuration Guidelines 26-4 Enabling UDLD Globally 26-5 Enabling UDLD on an Interface 26-6 Resetting an Interface Disabled by UDLD Displaying UDLD Status
27
26-7
26-2
26-6
CHAPTER
27-1
Understanding SPAN and RSPAN 27-1 Local SPAN 27-2 Remote SPAN 27-3 SPAN and RSPAN Concepts and Terminology SPAN Sessions 27-4
27-4
xx
78-16180-02
Contents
Monitored Traffic 27-5 Source Ports 27-6 Source VLANs 27-7 VLAN Filtering 27-7 Destination Port 27-8 RSPAN VLAN 27-9 SPAN and RSPAN Interaction with Other Features SPAN and RSPAN and Switch Stacks 27-10
27-9
Configuring SPAN and RSPAN 27-10 Default SPAN and RSPAN Configuration 27-11 Configuring Local SPAN 27-11 SPAN Configuration Guidelines 27-11 Creating a Local SPAN Session 27-12 Creating a Local SPAN Session and Configuring Ingress Traffic 27-15 Specifying VLANs to Filter 27-16 Configuring RSPAN 27-17 RSPAN Configuration Guidelines 27-17 Configuring a VLAN as an RSPAN VLAN 27-18 Creating an RSPAN Source Session 27-19 Creating an RSPAN Destination Session 27-20 Creating an RSPAN Destination Session and Configuring Ingress Traffic Specifying VLANs to Filter 27-23 Displaying SPAN and RSPAN Status
28
27-24
27-21
CHAPTER
Configuring RMON
28-1 28-1
Understanding RMON
Configuring RMON 28-2 Default RMON Configuration 28-3 Configuring RMON Alarms and Events 28-3 Collecting Group History Statistics on an Interface 28-5 Collecting Group Ethernet Statistics on an Interface 28-6 Displaying RMON Status
29
28-6
CHAPTER
29-1 29-1
Configuring System Message Logging 29-2 System Log Message Format 29-2 Default System Message Logging Configuration Disabling Message Logging 29-4
29-4
xxi
Contents
Setting the Message Display Destination Device 29-5 Synchronizing Log Messages 29-6 Enabling and Disabling Time Stamps on Log Messages 29-7 Enabling and Disabling Sequence Numbers in Log Messages 29-8 Defining the Message Severity Level 29-9 Limiting Syslog Messages Sent to the History Table and to SNMP 29-10 Configuring UNIX Syslog Servers 29-11 Logging Messages to a UNIX Syslog Daemon 29-11 Configuring the UNIX System Logging Facility 29-12 Displaying the Logging Configuration
30
29-13
CHAPTER
Configuring SNMP
30-1
Understanding SNMP 30-1 SNMP Versions 30-2 SNMP Manager Functions 30-3 SNMP Agent Functions 30-4 SNMP Community Strings 30-4 Using SNMP to Access MIB Variables 30-5 SNMP Notifications 30-5 SNMP ifIndex MIB Object Values 30-6 Configuring SNMP 30-6 Default SNMP Configuration 30-7 SNMP Configuration Guidelines 30-7 Disabling the SNMP Agent 30-8 Configuring Community Strings 30-8 Configuring SNMP Groups and Users 30-10 Configuring SNMP Notifications 30-12 Setting the Agent Contact and Location Information Limiting TFTP Servers Used Through SNMP 30-16 SNMP Examples 30-16 Displaying SNMP Status
31
30-17
30-15
CHAPTER
31-1
Understanding ACLs 31-1 Supported ACLs 31-2 Port ACLs 31-3 Router ACLs 31-4 VLAN Maps 31-4 Handling Fragmented and Unfragmented Traffic
Catalyst 3750 Switch Software Configuration Guide
31-5
xxii
78-16180-02
Contents
31-6
Configuring IP ACLs 31-6 Creating Standard and Extended IP ACLs 31-7 Access List Numbers 31-7 Creating a Numbered Standard ACL 31-9 Creating a Numbered Extended ACL 31-11 Resequencing ACEs in an ACL 31-15 Creating Named Standard and Extended ACLs 31-15 Using Time Ranges with ACLs 31-17 Including Comments in ACLs 31-19 Applying an IP ACL to a Terminal Line 31-19 Applying an IP ACL to an Interface 31-20 Hardware and Software Treatment of IP ACLs 31-22 IP ACL Configuration Examples 31-22 Numbered ACLs 31-24 Extended ACLs 31-24 Named ACLs 31-24 Time Range Applied to an IP ACL 31-25 Commented IP ACL Entries 31-25 ACL Logging 31-26 Creating Named MAC Extended ACLs 31-27 Applying a MAC ACL to a Layer 2 Interface
31-29
Configuring VLAN Maps 31-30 VLAN Map Configuration Guidelines 31-30 Creating a VLAN Map 31-31 Examples of ACLs and VLAN Maps 31-32 Applying a VLAN Map to a VLAN 31-34 Using VLAN Maps in Your Network 31-34 Wiring Closet Configuration 31-35 Denying Access to a Server on Another VLAN
31-36
Using VLAN Maps with Router ACLs 31-37 Guidelines 31-37 Examples of Router ACLs and VLAN Maps Applied to VLANs ACLs and Switched Packets 31-38 ACLs and Bridged Packets 31-38 ACLs and Routed Packets 31-39 ACLs and Multicast Packets 31-40 Displaying ACL Configuration
31-40
31-38
xxiii
Contents
CHAPTER
32
Configuring QoS
32-1
Understanding QoS 32-1 Basic QoS Model 32-3 Classification 32-4 Classification Based on QoS ACLs 32-7 Classification Based on Class Maps and Policy Maps Policing and Marking 32-8 Mapping Tables 32-10 Queueing and Scheduling Overview 32-11 Weighted Tail Drop 32-11 SRR Shaping and Sharing 32-12 Queueing and Scheduling on Ingress Queues 32-13 Queueing and Scheduling on Egress Queues 32-15 Packet Modification 32-17 Configuring Auto-QoS 32-18 Generated Auto-QoS Configuration 32-18 Effects of Auto-QoS on the Configuration 32-23 Auto-QoS Configuration Guidelines 32-23 Upgrading from a Previous Software Release 32-24 Enabling Auto-QoS for VoIP 32-24 Auto-QoS Configuration Example 32-26 Displaying Auto-QoS Information
32-28
32-7
Configuring Standard QoS 32-28 Default Standard QoS Configuration 32-29 Default Ingress Queue Configuration 32-29 Default Egress Queue Configuration 32-30 Default Mapping Table Configuration 32-30 Standard QoS Configuration Guidelines 32-31 Enabling QoS Globally 32-32 Configuring Classification Using Port Trust States 32-32 Configuring the Trust State on Ports within the QoS Domain 32-32 Configuring the CoS Value for an Interface 32-34 Configuring a Trusted Boundary to Ensure Port Security 32-35 Configuring the DSCP Trust State on a Port Bordering Another QoS Domain 32-36 Configuring a QoS Policy 32-38 Classifying Traffic by Using ACLs 32-38 Classifying Traffic by Using Class Maps 32-42 Classifying, Policing, and Marking Traffic by Using Policy Maps 32-44 Classifying, Policing, and Marking Traffic by Using Aggregate Policers 32-47
Catalyst 3750 Switch Software Configuration Guide
xxiv
78-16180-02
Contents
Configuring DSCP Maps 32-49 Configuring the CoS-to-DSCP Map 32-50 Configuring the IP-Precedence-to-DSCP Map 32-50 Configuring the Policed-DSCP Map 32-51 Configuring the DSCP-to-CoS Map 32-52 Configuring the DSCP-to-DSCP-Mutation Map 32-53 Configuring Ingress Queue Characteristics 32-55 Mapping DSCP or CoS Values to an Ingress Queue and Setting WTD Thresholds 32-56 Allocating Buffer Space Between the Ingress Queues 32-57 Allocating Bandwidth Between the Ingress Queues 32-58 Configuring the Ingress Priority Queue 32-59 Configuring Egress Queue Characteristics 32-60 Configuration Guidelines 32-60 Allocating Buffer Space to and Setting WTD Thresholds for an Egress Queue-Set 32-60 Mapping DSCP or CoS Values to an Egress Queue and to a Threshold ID 32-62 Configuring SRR Shaped Weights on Egress Queues 32-64 Configuring SRR Shared Weights on Egress Queues 32-65 Configuring the Egress Expedite Queue 32-66 Limiting the Bandwidth on an Egress Interface 32-66 Displaying Standard QoS Information
33
32-67
CHAPTER
Configuring EtherChannels
33-1
Understanding EtherChannels 33-1 EtherChannel Overview 33-2 Port-Channel Interfaces 33-4 Port Aggregation Protocol 33-5 PAgP Modes 33-5 PAgP Interaction with Other Features 33-6 Link Aggregation Control Protocol 33-6 LACP Modes 33-7 LACP Interaction with Other Features 33-7 Load Balancing and Forwarding Methods 33-7 EtherChannel and Switch Stacks 33-9 Configuring EtherChannels 33-10 Default EtherChannel Configuration 33-10 EtherChannel Configuration Guidelines 33-11 Configuring Layer 2 EtherChannels 33-12 Configuring Layer 3 EtherChannels 33-15 Creating Port-Channel Logical Interfaces 33-15
xxv
Contents
Configuring the Physical Interfaces 33-16 Configuring EtherChannel Load Balancing 33-18 Configuring the PAgP Learn Method and Priority 33-19 Configuring LACP Hot-Standby Ports 33-20 Configuring the LACP System Priority 33-21 Configuring the LACP Port Priority 33-22 Displaying EtherChannel, PAgP, and LACP Status
34
33-23
CHAPTER
34-1
Understanding IP Routing 34-2 Types of Routing 34-2 IP Routing and Switch Stacks Steps for Configuring Routing
34-4
34-3
Configuring IP Addressing 34-5 Default Addressing Configuration 34-5 Assigning IP Addresses to Network Interfaces 34-6 Use of Subnet Zero 34-7 Classless Routing 34-7 Configuring Address Resolution Methods 34-9 Define a Static ARP Cache 34-10 Set ARP Encapsulation 34-11 Enable Proxy ARP 34-11 Routing Assistance When IP Routing is Disabled 34-12 Proxy ARP 34-12 Default Gateway 34-12 ICMP Router Discovery Protocol (IRDP) 34-13 Configuring Broadcast Packet Handling 34-14 Enabling Directed Broadcast-to-Physical Broadcast Translation Forwarding UDP Broadcast Packets and Protocols 34-15 Establishing an IP Broadcast Address 34-16 Flooding IP Broadcasts 34-17 Monitoring and Maintaining IP Addressing 34-18 Enabling IP Unicast Routing
34-19
34-14
Configuring RIP 34-20 Default RIP Configuration 34-20 Configuring Basic RIP Parameters 34-21 Configuring RIP Authentication 34-23 Configuring Summary Addresses and Split Horizon Configuring Split Horizon 34-24
Catalyst 3750 Switch Software Configuration Guide
34-23
xxvi
78-16180-02
Contents
Configuring OSPF 34-25 Default OSPF Configuration 34-26 Configuring Basic OSPF Parameters 34-27 Configuring OSPF Interfaces 34-28 Configuring OSPF Area Parameters 34-29 Configuring Other OSPF Parameters 34-30 Changing LSA Group Pacing 34-32 Configuring a Loopback Interface 34-32 Monitoring OSPF 34-33 Configuring EIGRP 34-34 Default EIGRP Configuration 34-35 Configuring Basic EIGRP Parameters 34-36 Configuring EIGRP Interfaces 34-37 Configuring EIGRP Route Authentication 34-38 Monitoring and Maintaining EIGRP 34-39 Configuring BGP 34-40 Default BGP Configuration 34-42 Enabling BGP Routing 34-44 Managing Routing Policy Changes 34-46 Configuring BGP Decision Attributes 34-47 Configuring BGP Filtering with Route Maps 34-49 Configuring BGP Filtering by Neighbor 34-50 Configuring Prefix Lists for BGP Filtering 34-51 Configuring BGP Community Filtering 34-52 Configuring BGP Neighbors and Peer Groups 34-54 Configuring Aggregate Addresses 34-56 Configuring Routing Domain Confederations 34-56 Configuring BGP Route Reflectors 34-57 Configuring Route Dampening 34-58 Monitoring and Maintaining BGP 34-59 Configuring Protocol-Independent Features 34-60 Configuring Distributed Cisco Express Forwarding 34-60 Configuring the Number of Equal-Cost Routing Paths 34-62 Configuring Static Unicast Routes 34-62 Specifying Default Routes and Networks 34-63 Using Route Maps to Redistribute Routing Information 34-64 Configuring Policy-Based Routing 34-68 PBR Configuration Guidelines 34-69 Enabling PBR 34-69
xxvii
Contents
Filtering Routing Information 34-71 Setting Passive Interfaces 34-71 Controlling Advertising and Processing in Routing Updates Filtering Sources of Routing Information 34-72 Managing Authentication Keys 34-73 Monitoring and Maintaining the IP Network
35
34-74
34-72
CHAPTER
Configuring HSRP
35-1
35-2
Configuring HSRP 35-3 Default HSRP Configuration 35-4 HSRP Configuration Guidelines 35-4 Enabling HSRP 35-4 Configuring HSRP Group Attributes 35-5 Configuring HSRP Priority 35-6 Configuring Multiple HSRP 35-6 Configuring HSRP Authentication and Timers 35-9 Enabling HSRP Support for ICMP Redirect Messages 35-10 Configuring HSRP Groups and Clustering 35-11 Displaying HSRP Configurations
36
35-11
CHAPTER
36-1 36-2
Understanding Ciscos Implementation of IP Multicast Routing Understanding IGMP 36-2 IGMP Version 1 36-3 IGMP Version 2 36-3 Understanding PIM 36-3 PIM Versions 36-4 PIM Modes 36-4 Auto-RP 36-5 Bootstrap Router 36-5 Multicast Forwarding and Reverse Path Check 36-6 Understanding DVMRP 36-7 Understanding CGMP 36-7 Multicast Routing and Switch Stacks
36-8
Configuring IP Multicast Routing 36-8 Default Multicast Routing Configuration 36-8 Multicast Routing Configuration Guidelines 36-9
Catalyst 3750 Switch Software Configuration Guide
xxviii
78-16180-02
Contents
PIMv1 and PIMv2 Interoperability 36-9 Auto-RP and BSR Configuration Guidelines 36-10 Configuring Basic Multicast Routing 36-10 Configuring a Rendezvous Point 36-12 Manually Assigning an RP to Multicast Groups 36-12 Configuring Auto-RP 36-14 Configuring PIMv2 BSR 36-18 Using Auto-RP and a BSR 36-22 Monitoring the RP Mapping Information 36-23 Troubleshooting PIMv1 and PIMv2 Interoperability Problems Configuring Advanced PIM Features 36-23 Understanding PIM Shared Tree and Source Tree 36-23 Delaying the Use of PIM Shortest-Path Tree 36-25 Modifying the PIM Router-Query Message Interval 36-26 Configuring Optional IGMP Features 36-27 Default IGMP Configuration 36-27 Configuring the Switch as a Member of a Group 36-27 Controlling Access to IP Multicast Groups 36-28 Changing the IGMP Version 36-29 Modifying the IGMP Host-Query Message Interval 36-30 Changing the IGMP Query Timeout for IGMPv2 36-31 Changing the Maximum Query Response Time for IGMPv2 Configuring the Switch as a Statically Connected Member Configuring Optional Multicast Routing Features 36-32 Enabling CGMP Server Support 36-33 Configuring sdr Listener Support 36-34 Enabling sdr Listener Support 36-34 Limiting How Long an sdr Cache Entry Exists 36-35 Configuring an IP Multicast Boundary 36-35 Configuring Basic DVMRP Interoperability Features 36-37 Configuring DVMRP Interoperability 36-37 Configuring a DVMRP Tunnel 36-39 Advertising Network 0.0.0.0 to DVMRP Neighbors 36-41 Responding to mrinfo Requests 36-42 Configuring Advanced DVMRP Interoperability Features 36-42 Enabling DVMRP Unicast Routing 36-43 Rejecting a DVMRP Nonpruning Neighbor 36-43 Controlling Route Exchanges 36-46 Limiting the Number of DVMRP Routes Advertised 36-46
36-23
36-31 36-32
xxix
Contents
Changing the DVMRP Route Threshold 36-46 Configuring a DVMRP Summary Address 36-47 Disabling DVMRP Autosummarization 36-49 Adding a Metric Offset to the DVMRP Route 36-49 Monitoring and Maintaining IP Multicast Routing 36-50 Clearing Caches, Tables, and Databases 36-51 Displaying System and Network Statistics 36-51 Monitoring IP Multicast Routing 36-52
37
CHAPTER
Configuring MSDP
37-1
Understanding MSDP 37-1 MSDP Operation 37-2 MSDP Benefits 37-3 Configuring MSDP 37-4 Default MSDP Configuration 37-4 Configuring a Default MSDP Peer 37-4 Caching Source-Active State 37-6 Requesting Source Information from an MSDP Peer 37-8 Controlling Source Information that Your Switch Originates 37-9 Redistributing Sources 37-9 Filtering Source-Active Request Messages 37-11 Controlling Source Information that Your Switch Forwards 37-12 Using a Filter 37-12 Using TTL to Limit the Multicast Data Sent in SA Messages 37-14 Controlling Source Information that Your Switch Receives 37-14 Configuring an MSDP Mesh Group 37-16 Shutting Down an MSDP Peer 37-16 Including a Bordering PIM Dense-Mode Region in MSDP 37-17 Configuring an Originating Address other than the RP Address 37-18 Monitoring and Maintaining MSDP
38
37-19
CHAPTER
38-1
Understanding Fallback Bridging 38-1 Fallback Bridging Overview 38-1 Fallback Bridging and Switch Stacks
38-3
Configuring Fallback Bridging 38-3 Default Fallback Bridging Configuration 38-4 Fallback Bridging Configuration Guidelines 38-4 Creating a Bridge Group 38-4
Catalyst 3750 Switch Software Configuration Guide
xxx
78-16180-02
Contents
Adjusting Spanning-Tree Parameters 38-6 Changing the VLAN-Bridge Spanning-Tree Priority 38-7 Changing the Interface Priority 38-7 Assigning a Path Cost 38-8 Adjusting BPDU Intervals 38-9 Disabling the Spanning Tree on an Interface 38-11 Monitoring and Maintaining Fallback Bridging
39
38-11
CHAPTER
Troubleshooting
39-1 39-2
Recovering from Corrupted Software By Using the Xmodem Protocol Recovering from a Lost or Forgotten Password 39-4 Procedure with Password Recovery Enabled 39-5 Procedure with Password Recovery Disabled 39-6 Preventing Switch Stack Problems
39-8
Recovering from a Command Switch Failure 39-9 Replacing a Failed Command Switch with a Cluster Member 39-9 Replacing a Failed Command Switch with Another Switch 39-11 Recovering from Lost Cluster Member Connectivity Preventing Autonegotiation Mismatches SFP Module Security and Identification Monitoring SFP Module Status Using Ping 39-14 Understanding Ping 39-14 Executing Ping 39-15 Using Layer 2 Traceroute 39-16 Understanding Layer 2 Traceroute 39-16 Usage Guidelines 39-16 Displaying the Physical Path 39-17 Using IP Traceroute 39-17 Understanding IP Traceroute 39-17 Executing IP Traceroute 39-18 Using TDR 39-19 Understanding TDR 39-19 Running TDR and Displaying the Results Using Debug Commands 39-21 Enabling Debugging on a Specific Feature Enabling All-System Diagnostics 39-22
39-14 39-13 39-13 39-12
39-20
39-22
xxxi
Contents
Redirecting Debug and Error Message Output Using the show platform forward Command Using the crashinfo File
A
39-25 39-23
39-22
APPENDIX
A-1
A-3
APPENDIX
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with the Flash File System B-1 Displaying Available File Systems B-2 Setting the Default File System B-3 Displaying Information about Files on a File System B-3 Changing Directories and Displaying the Working Directory Creating and Removing Directories B-4 Copying Files B-5 Deleting Files B-5 Creating, Displaying, and Extracting tar Files B-6 Creating a tar File B-6 Displaying the Contents of a tar File B-6 Extracting a tar File B-7 Displaying the Contents of a File B-8
B-1
B-4
Working with Configuration Files B-8 Guidelines for Creating and Using Configuration Files B-9 Configuration File Types and Location B-9 Creating a Configuration File By Using a Text Editor B-10 Copying Configuration Files By Using TFTP B-10 Preparing to Download or Upload a Configuration File By Using TFTP B-10 Downloading the Configuration File By Using TFTP B-11 Uploading the Configuration File By Using TFTP B-11 Copying Configuration Files By Using FTP B-12 Preparing to Download or Upload a Configuration File By Using FTP B-13 Downloading a Configuration File By Using FTP B-13 Uploading a Configuration File By Using FTP B-15 Copying Configuration Files By Using RCP B-16 Preparing to Download or Upload a Configuration File By Using RCP B-16 Downloading a Configuration File By Using RCP B-17 Uploading a Configuration File By Using RCP B-18 Clearing Configuration Information B-19
Catalyst 3750 Switch Software Configuration Guide
xxxii
78-16180-02
Contents
Clearing the Startup Configuration File B-19 Deleting a Stored Configuration File B-19 Working with Software Images B-20 Image Location on the Switch B-20 tar File Format of Images on a Server or Cisco.com B-21 Copying Image Files By Using TFTP B-22 Preparing to Download or Upload an Image File By Using TFTP B-22 Downloading an Image File By Using TFTP B-23 Uploading an Image File By Using TFTP B-24 Copying Image Files By Using FTP B-25 Preparing to Download or Upload an Image File By Using FTP B-25 Downloading an Image File By Using FTP B-26 Uploading an Image File By Using FTP B-28 Copying Image Files By Using RCP B-29 Preparing to Download or Upload an Image File By Using RCP B-29 Downloading an Image File By Using RCP B-31 Uploading an Image File By Using RCP B-33 Copying an Image File from One Stack Member to Another B-34
C
APPENDIX
Unsupported Commands in Cisco IOS Release 12.2(20)SE Access Control Lists C-1 Unsupported Privileged EXEC Commands C-1 Unsupported Global Configuration Commands C-1 ARP Commands C-2 Unsupported Global Configuration Commands C-2 Unsupported Interface Configuration Commands C-2 FallBack Bridging C-2 Unsupported Privileged EXEC Commands C-2 Unsupported Global Configuration Commands C-2 Unsupported Interface Configuration Commands C-3 HSRP C-4 Unsupported Global Configuration Commands C-4 Unsupported Interface Configuration Commands C-4 IGMP Snooping Commands C-4 Unsupported Global Configuration Commands
C-4
C-1
Interface Commands C-4 Unsupported Privileged EXEC Commands C-4 Unsupported Global Configuration Commands C-4 Unsupported Interface Configuration Commands C-5
Catalyst 3750 Switch Software Configuration Guide 78-16180-02
xxxiii
Contents
IP Multicast Routing C-5 Unsupported Privileged EXEC Commands C-5 Unsupported Global Configuration Commands C-5 Unsupported Interface Configuration Commands C-6 IP Unicast Routing C-6 Unsupported Privileged EXEC or User EXEC Commands C-6 Unsupported Global Configuration Commands C-7 Unsupported Interface Configuration Commands C-7 Unsupported BGP Router Configuration Commands C-8 Unsupported VPN Configuration Commands C-8 Unsupported Route Map Commands C-8 MAC Address Commands C-9 Unsupported Privileged EXEC Commands
C-9
Miscellaneous C-9 Unsupported Global Configuration Commands C-9 Unsupported Privileged EXEC Commands C-9 MSDP C-9 Unsupported Privileged EXEC Commands C-9 Unsupported Global Configuration Commands C-10 Network Address Translation (NAT) Commands C-10 Unsupported User EXEC Commands C-10 Unsupported Global Configuration Commands C-10 Unsupported Interface Configuration Commands C-10 RADIUS C-10 Unsupported Global Configuration Commands SNMP C-11 Unsupported Global Configuration Commands
C-10
C-11
Spanning Tree C-11 Unsupported Global Configuration Command C-11 Unsupported Interface Configuration Command C-11 VLAN C-11 Unsupported User EXEC Commands VTP
C-11 C-11
C-11
xxxiv
78-16180-02
Preface
Audience
This guide is for the networking professional managing the Catalyst 3750 switch, hereafter referred to as the switch. Before using this guide, you should have experience working with the Cisco IOS software and be familiar with the concepts and terminology of Ethernet and local area networking.
Purpose
The Catalyst 3750 switch is supported by either the standard multilayer image (SMI) or the enhanced multilayer image (EMI). The SMI provides Layer 2+ features including access control lists (ACLs), quality of service (QoS), static routing, and the Routing Information Protocol (RIP). The EMI provides a richer set of enterprise-class features. It includes Layer 2+ features and full Layer 3 routing (IP unicast routing, IP multicast routing, and fallback bridging). To distinguish it from the Layer 2+ static routing and RIP, the EMI includes protocols such as the Enhanced Interior Gateway Routing Protocol (EIGRP) and the Open Shortest Path First (OSPF) Protocol. This guide provides procedures for using the commands that have been created or changed for use with the Catalyst 3750 switch. It does not provide detailed information about these commands. For detailed information about these commands, refer to the Catalyst 3750 Switch Command Reference for this release. For information about the standard Cisco IOS Release 12.2 commands, refer to 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.2 from the Cisco IOS Software drop-down list. This guide also includes an overview of the Cluster Management Suite (CMS), a web-based switch management interface that helps you create and manage clusters of switches. This guide does not provide field-level descriptions of the CMS windows nor does it provide the procedures for configuring switches and switch clusters from CMS. For all CMS window descriptions and procedures, refer to the CMS online help, which is integrated with the software image. This guide does not describe system messages you might encounter or how to install your switch. For more information, refer to the Catalyst 3750 Switch System Message Guide for this release and to the Catalyst 3750 Switch Hardware Installation Guide.
xxxv
Preface Conventions
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. 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 (< >).
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 in 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.
xxxvi
78-16180-02
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/cat3750/index.htm
Note
For initial configuration information, refer to the Using Express Setup chapter or to the Configuring the Switch with the CLI-Based Setup Program appendix in the hardware installation guide. For CMS requirements, refer to the Getting Started with CMS chapter in the software configuration guide. For cluster requirements, refer to the release notes. For upgrading information, refer to the Downloading Software section in the release notes.
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 xxxvii.
Release Notes for the Catalyst 2970, 3560, and Catalyst 3750 Switches (not orderable but available on Cisco.com) Catalyst 3750 Switch Software Configuration Guide (order number DOC-7816180=) Catalyst 3750 Switch Command Reference (order number DOC-7816181=) Catalyst 3750 Switch System Message Guide (order number DOC-7816184=) Cluster Management Suite (CMS) online help (available only from the switch CMS software) Catalyst 3750 Switch Hardware Installation Guide (order number DOC-7815136=) Cisco Small Form-Factor Pluggable Modules Installation Notes (order number DOC-7815160=) Cisco CWDM GBIC and CWDM SFP Installation Note (not orderable but available on Cisco.com)
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
xxxvii
Ordering Documentation
You can find instructions for ordering documentation at this URL: http://www.cisco.com/univercd/cc/td/doc/es_inpck/pdi.htm You can order Cisco documentation in these ways:
Registered Cisco.com users (Cisco direct customers) can order Cisco product documentation from the Ordering tool: http://www.cisco.com/en/US/partner/ordering/index.shtml
Nonregistered Cisco.com users can order documentation through a local account representative by calling Cisco Systems Corporate Headquarters (California, USA) at 408 526-7208 or, elsewhere in North America, by calling 800 553-NETS (6387).
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.
xxxviii
78-16180-02
xxxix
Cisco Marketplace provides a variety of Cisco books, reference guides, and logo merchandise. Visit Cisco Marketplace, the company store, at this URL: http://www.cisco.com/go/marketplace/
The Cisco Product Catalog describes the networking products offered by Cisco Systems, as well as ordering and customer support services. Access the Cisco Product Catalog at this URL: http://cisco.com/univercd/cc/td/doc/pcat/ 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
xl
78-16180-02
C H A P T E R
Overview
This chapter provides these topics about the Catalyst 3750 switch software:
Features, page 1-1 Default Settings After Initial Switch Configuration, page 1-10 Network Configuration Examples, page 1-12 Where to Go Next, page 1-23
Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack. In this document, IP refers to IP Version 4 (IPv4).
Features
The Catalyst 3750 switches are shipped with either of these software images installed:
Standard multilayer image (SMI), which provides Layer 2+ features (enterprise-class intelligent services). These features include access control lists (ACLs), quality of service (QoS), static routing, and the Hot Standby Router Protocol (HSRP) and the Routing Information Protocol (RIP). Switches with the SMI installed can be upgraded to the EMI. Enhanced multilayer image (EMI), which provides a richer set of enterprise-class intelligent services. It includes all SMI features plus full Layer 3 routing (IP unicast routing, IP multicast routing, and fallback bridging). To distinguish it from the Layer 2+ static routing and RIP, the EMI includes protocols such as the Enhanced Interior Gateway Routing Protocol (EIGRP) and the Open Shortest Path First (OSPF) Protocol. EMI-only Layer 3 features are noted in the Layer 3 Features section on page 1-8.
Note
Unless otherwise noted, all features described in this chapter and in this guide are supported on both the SMI and EMI.
Some features noted in this chapter are available only on the cryptographic (that is, supports encryption) versions of the SMI and EMI. You must obtain authorization to use this feature and to download the cryptographic version of the software from Cisco.com. For more information, refer to the release notes for this release.
1-1
Chapter 1 Features
Overview
Ease-of-Use and Ease-of-Deployment Features, page 1-2 Performance Features, page 1-3 Management Options, page 1-4 Manageability Features, page 1-4 (includes a feature requiring the cryptographic versions of the SMI and EMI) Availability Features, page 1-5 VLAN Features, page 1-6 Security Features, page 1-6 (includes a feature requiring the cryptographic versions of the SMI and EMI) QoS and CoS Features, page 1-7 Layer 3 Features, page 1-8 (includes features requiring the EMI) Monitoring Features, page 1-9
Express Setup for quickly configuring a switch for the first time with basic IP information, contact information, switch and Telnet passwords, and Simple Network Management Protocol (SNMP) information through a browser-based program. For more information about Express Setup, refer to the hardware installation guide. User-defined and Cisco-default Smartports macros for creating custom switch configurations for simplified deployment across the network. Cluster Management Suite (CMS) graphical user interface (GUI) for
Simplifying and minimizing switch, switch stack, and switch cluster management through a
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 HTTP or 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.
1-2
78-16180-02
Chapter 1
Overview Features
stack.
Provisioning a new member for a switch stack with the offline configuration feature. You can
configure in advance the interface configuration for a specific stack member number and for a specific switch type of a new switch that is not part of the stack. The switch stack retains this information across stack reloads whether or not the provisioned switch is part of the stack.
Displaying stack-ring activity statistics (the number of frames sent by each stack member to the
ring).
cluster-capable switches, regardless of their geographic proximity and interconnection media, including Ethernet, Fast Ethernet, Fast EtherChannel, small form-factor pluggable (SFP) modules, Gigabit Ethernet, and Gigabit EtherChannel connections. Refer to the release notes for a list of cluster-capable switches.
Automatic discovery of candidate switches and creation of clusters of up to 16 switches that can
Performance Features
Autosensing of port speed and autonegotiation of duplex mode on all switch ports for optimizing bandwidth Automatic-medium-dependent interface crossover (Auto-MDIX) capability on 10/100 and 10/100/1000 Mbps interfaces and on 10/100/1000 BASE-T/TX SFP interfaces that enables the interface to automatically detect the required cable connection type (straight-through or crossover) and to configure the connection appropriately IEEE 802.3x flow control on all ports (the switch does not send pause frames) Up to 32 Gbps of forwarding rates in a switch stack EtherChannel for enhanced fault tolerance and for providing up to 8 Gbps (Gigabit EtherChannel) or 800 Mbps (Fast EtherChannel) full duplex of bandwidth between switches, routers, and servers Port Aggregation Protocol (PAgP) and Link Aggregation Control Protocol (LACP) for automatic creation of EtherChannel links Forwarding of Layer 2 and Layer 3 packets at Gigabit line rate across the switches in the stack Per-port storm control for preventing broadcast, multicast, and unicast storms Port blocking on forwarding unknown Layer 2 unknown unicast, multicast, and bridged broadcast traffic
1-3
Chapter 1 Features
Overview
Cisco Group Management Protocol (CGMP) server support and Internet Group Management Protocol (IGMP) snooping for IGMP Versions 1, 2, and 3:
(For CGMP devices) CGMP for limiting multicast traffic to specified end stations and reducing
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 Switch Database Management (SDM) templates for allocating system resources to maximize support for user-selected features
Management Options
CMSCMS is a GUI that can be launched from anywhere in your network through a web browser such as Netscape Communicator or Microsoft Internet Explorer. CMS is already installed on the switch. For more information about CMS, see Chapter 3, Getting Started with CMS. CLIThe Cisco IOS CLI software is enhanced to support desktop- and multilayer-switching features. You can access the CLI either by connecting your management station directly to the switch console port or by using Telnet from a remote management station. You can manage the switch stack by connecting to the console port of any stack member. For more information about the CLI, see Chapter 2, Using the Command-Line Interface. SNMPSNMP management applications such as CiscoWorks2000 LAN Management Suite (LMS) and HP OpenView. You can manage 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 remote monitoring (RMON) groups. For more information about using SNMP, see Chapter 30, Configuring SNMP.
Manageability Features
Note
The encrypted Secure Shell (SSH) feature listed in this section is available only on the cryptographic versions of the SMI and EMI.
DHCP for automating configuration of switch information (such as IP address, default gateway, host name, and Domain Name System [DNS] and TFTP server names) DHCP relay for forwarding User Datagram Protocol (UDP) broadcasts, including IP address requests, from DHCP clients DHCP server for automatic assignment of IP addresses and other DHCP options to IP hosts Directed unicast requests to a DNS server for identifying a switch through its IP address and its corresponding host name and to a TFTP server for administering software upgrades from a TFTP server Address Resolution Protocol (ARP) for identifying a switch through its IP address and its corresponding MAC address Unicast MAC address filtering to drop packets with specific source or destination MAC addresses
1-4
78-16180-02
Chapter 1
Overview Features
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 time stamp to all switches from an external source Cisco IOS File System (IFS) for providing a single interface to all file systems that the switch uses In-band management access through CMS over a Netscape Communicator or Microsoft Internet Explorer browser session In-band management access for up to 16 simultaneous Telnet connections for multiple CLI-based sessions over the network In-band management access for up to five simultaneous, encrypted Secure Shell (SSH) connections for multiple CLI-based sessions over the network (requires the cryptographic versions of the SMI and EMI) 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 or a modem
Note
For additional descriptions of the management interfaces, see the Network Configuration Examples section on page 1-12.
Availability Features
HSRP for command switch and Layer 3 router redundancy Automatic stack master re-election for replacing stack masters that become unavailable (failover support) The newly elected stack master begins accepting Layer 2 traffic in less than 1 second and Layer 3 traffic between 3 to 5 seconds.
Cross-stack EtherChannel for providing redundant links across the switch stack UniDirectional Link Detection (UDLD) and aggressive UDLD 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 128 spanning-tree instances supported Per-VLAN spanning-tree plus (PVST+) for balancing load across VLANs Rapid PVST+ for balancing load across VLANs and providing rapid convergence of
spanning-tree instances
UplinkFast, cross-stack UplinkFast, and BackboneFast for fast convergence after a
spanning-tree topology change and for achieving load balancing between redundant uplinks, including Gigabit uplinks and cross-stack 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
1-5
Chapter 1 Features
Overview
(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
Equal-cost routing for link-level and switch-level redundancy Flex Link Layer 2 interfaces to back up one another as an alternative to STP for basic link redundancy RPS support through the Cisco RPS 300 and Cisco RPS 675 for enhancing power reliability
VLAN Features
Support for up to 1005 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 VLAN Query Protocol (VQP) for dynamic VLAN membership Inter-Switch Link (ISL) and IEEE 802.1Q trunking encapsulation 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 Dynamic Trunking Protocol (DTP) for negotiating trunking on a link between two devices and for negotiating the type of trunking encapsulation (802.1Q or ISL) to be used VLAN Trunking Protocol (VTP) and VTP pruning for reducing network traffic by restricting flooded traffic to links destined for stations receiving the traffic Voice VLAN for creating subnets for voice traffic from Cisco IP Phones VLAN1 minimization for reducing 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 on the trunk. The switch CPU continues to send and receive control protocol frames. Private VLANs to address VLAN scalability problems, to provide a more controlled IP address allocation, and to allow Layer 2 ports to be isolated from other ports on the switch (requires the EMI)
Security Features
Note
The Kerberos feature listed in this section is available only on the cryptographic versions of the SMI and EMI.
Password-protected access (read-only and read-write access) to management interfaces (CMS and CLI) for protection against unauthorized configuration changes Multilevel security for a choice of security level, notification, and resulting actions Static MAC addressing for ensuring security
1-6
78-16180-02
Chapter 1
Overview Features
Protected port option for restricting the forwarding of traffic to designated ports on the same switch 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 BPDU guard for shutting down a Port Fast-configured port when an invalid configuration occurs Standard and extended IP access control lists (ACLs) for defining security policies in both directions on routed interfaces (router ACLs) and VLANs and inbound on Layer 2 interfaces (port ACLs) Extended MAC access control lists for defining security policies in the inbound direction on Layer 2 interfaces VLAN ACLs (VLAN maps) for providing intra-VLAN security by filtering traffic based on information in the MAC, IP, and TCP/UDP headers Source and destination MAC-based ACLs for filtering non-IP traffic DHCP snooping to filter untrusted DHCP messages between untrusted hosts and DHCP servers IP source guard to restrict traffic on nonrouted interfaces by filtering traffic based on the DHCP snooping database and IP source bindings (requires the EMI) Dynamic ARP inspection to prevent malicious attacks on the switch by not relaying invalid ARP requests and responses to other ports in the same VLAN (requires the EMI) IEEE 802.1x port-based authentication to prevent unauthorized devices (clients) from gaining access to the network
802.1x with VLAN assignment for restricting 802.1x-authenticated users to a specified VLAN 802.1x with port security for controlling access to 802.1x ports 802.1x with voice VLAN to permit an IP phone access to the voice VLAN regardless of the
TACACS+, a proprietary feature for managing network security through a TACACS server RADIUS for verifying the identity of, granting access to, and tracking the actions of remote users through authentication, authorization, and accounting (AAA) services Kerberos security system to authenticate requests for network resources by using a trusted third party (requires the cryptographic versions of the SMI and EMI)
Automatic QoS (auto-QoS) to simplify the deployment of existing QoS features by classifying traffic and configuring egress queues Cross-stack QoS for configuring QoS features to all switches in a switch stack rather than on an individual-switch basis Classification
IP type-of-service/Differentiated Services Code Point (IP ToS/DSCP) and 802.1p CoS marking
based on information in the MAC, IP, and TCP/UDP headers) for high-performance quality of service at the network edge, allowing for differentiated service levels for different types of network traffic and for prioritizing mission-critical traffic in the network
1-7
Chapter 1 Features
Overview
Trusted port states (CoS, DSCP, and IP precedence) within a QoS domain and with a port
Policing
Traffic-policing policies on the switch port for managing how much of the port bandwidth
Out-of-Profile
Out-of-profile markdown for packets that exceed bandwidth utilization limits
dequeued to the stack ring (sharing is the only supported mode on ingress queues)
egress interface (shaping or sharing is supported on egress queues). Shaped egress queues are guaranteed but limited to using a share of port bandwidth. Shared egress queues are also guaranteed a configured share of bandwidth, but can use more than the guarantee if other queues become empty and do not use their share of the bandwidth.
Layer 3 Features
Note
Some features noted in this section are available only on the EMI.
HSRP for Layer 3 router redundancy IP routing protocols for load balancing and for constructing scalable, routed backbones:
RIP versions 1 and 2 OSPF (requires the EMI) Interior Gateway Routing Protocol (IGRP) and Enhanced IGRP (EIGRP) (requires the EMI) Border Gateway Protocol (BGP) Version 4 (requires the EMI)
IP routing between VLANs (inter-VLAN routing) for full Layer 3 routing between two or more VLANs, allowing each VLAN to maintain its own autonomous data-link domain Policy-based routing (PBR) for configuring defined policies for traffic flows Fallback bridging for forwarding non-IP traffic between two or more VLANs (requires the EMI) Static IP routing for manually building a routing table of network path information
1-8
78-16180-02
Chapter 1
Overview Features
Equal-cost routing for load balancing and redundancy Internet Control Message Protocol (ICMP) and ICMP Router Discovery Protocol (IRDP) for using router advertisement and router solicitation messages to discover the addresses of routers on directly attached subnets Protocol-Independent Multicast (PIM) for multicast routing within the network, allowing for devices in the network to receive the multicast feed requested and for switches not participating in the multicast to be pruned. Includes support for PIM sparse mode (PIM-SM), PIM dense mode (PIM-DM), and PIM sparse-dense mode. (requires the EMI) Multicast Source Discovery Protocol (MSDP) for connecting multiple PIM-SM domains (requires the EMI) Distance Vector Multicast Routing Protocol (DVMRP) tunnelling for interconnecting two multicast-enabled networks across non-multicast networks (requires the EMI) DHCP relay for forwarding UDP broadcasts, including IP address requests, from DHCP clients
Ability to provide power to connected Cisco pre-standard and IEEE 802.3af-compliant powered devices from all 10/100 Ethernet ports if the switch detects that there is no power on the circuit 24-port PoE switch provides 15.4 W of power on each 10/100 port; 48-port PoE switch provides 15.4 W of power to any 24 of the 48 10/100 ports, or any combination of ports provide an average of 7.7 W of power at the same time, up to a maximum switch power output of 370 W Automatic detection and power budgeting; the switch maintains a power budget, monitors and tracks requests for power, and grants power only when it is available
Monitoring Features
Switch LEDs that provide port-, switch-, and stack-level status MAC address notification traps and RADIUS accounting for tracking users on a network by storing the MAC addresses that the switch has learned or removed Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN) for traffic monitoring on any port or VLAN SPAN and RSPAN support of Intrusion Detection Systems (IDS) to monitor, repel, and report network security violations Four groups (history, statistics, alarms, and events) of embedded RMON agents for network monitoring and traffic analysis 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 Time Domain Reflector (TDR) to diagnose and resolve cabling problems on copper Ethernet 10/100/1000 ports SFP diagnostic management interface to monitor physical or operational status of an SFP module.
1-9
Overview
Note
For information about setting up the initial switch configuration (using Express Setup or the CLI setup program) and assigning basic IP information to the switch, refer to the hardware installation guide. If you do not configure the switch at all, the switch operates with these default settings:
Default switch IP address, subnet mask, and default gateway is 0.0.0.0. For more information, see Chapter 4, Assigning the Switch IP Address and Default Gateway and Chapter 21, Configuring DHCP Features and IP Source Guard. Default domain name is not configured. For more information, see Chapter 4, Assigning the Switch IP Address and Default Gateway. DHCP client is enabled, the DHCP server is enabled (only if the device acting as a DHCP server is configured and is enabled), and the DHCP relay agent is enabled (only if the device is acting as a DHCP relay agent is configured and is enabled). For more information, see Chapter 4, Assigning the Switch IP Address and Default Gateway and Chapter 21, Configuring DHCP Features and IP Source Guard. Switch stack is enabled (not configurable). For more information, see Chapter 5, Managing Switch Stacks. Switch cluster is disabled. For more information, see Chapter 6, Clustering Switches. No passwords are defined. For more information, see Chapter 7, Administering the Switch. TACACS+ is disabled. For more information, see Chapter 7, Administering the Switch. RADIUS is disabled. For more information, see Chapter 7, Administering the Switch. System name and prompt is Switch. For more information, see Chapter 7, Administering the Switch. NTP is enabled. For more information, see Chapter 7, Administering the Switch. DNS is enabled. For more information, see Chapter 7, Administering the Switch. 802.1x is disabled. For more information, see Chapter 10, Configuring 802.1x Port-Based Authentication. Port parameters
Operating mode is Layer 2 (switchport). For more information, see Chapter 11, Configuring
Interface Characteristics.
Interface speed and duplex mode is autonegotiate. For more information, see Chapter 11,
Characteristics.
Note
In releases earlier than Cisco IOS Release 12.2(18)SE, the default setting for auto-MDIX is disabled.
1-10
78-16180-02
Chapter 1
Flow control is off. For more information, see Chapter 11, Configuring Interface
Characteristics.
PoE is autonegotiate. For more information, see Chapter 11, Configuring Interface
Characteristics.
No Smartports macros are defined. For more information, see Chapter 12, Configuring Smartports Macros. VLANs
Default VLAN is VLAN 1. For more information, see Chapter 13, Configuring VLANs. VLAN trunking setting is dynamic auto (DTP). For more information, see Chapter 13,
Configuring VLANs.
Trunk encapsulation is negotiate. For more information, see Chapter 13, Configuring
VLANs.
VTP mode is server. For more information, see Chapter 14, Configuring VTP. VTP version is Version 1. For more information, see Chapter 14, Configuring VTP. No private VLANs are configured. For more information, see Chapter 15, Configuring Private
VLANs.
Voice VLAN is disabled. For more information, see Chapter 16, Configuring Voice VLAN.
For STP, PVST+ is enabled on VLAN 1. For more information, Chapter 17, Configuring STP. MSTP is disabled. For more information, see Chapter 18, Configuring MSTP. Optional spanning-tree features are disabled. For more information, see Chapter 19, Configuring Optional Spanning-Tree Features. Flex Links are not configured. For more information, see Chapter 20, Configuring Flex Links. DHCP snooping is disabled. The DHCP snooping information option is enabled. For more information, see Chapter 21, Configuring DHCP Features and IP Source Guard. IP source guard is disabled. For more information, see Chapter 21, Configuring DHCP Features and IP Source Guard. Dynamic ARP inspection is disabled on all VLANs. For more information, see Chapter 22, Configuring Dynamic ARP Inspection. IGMP snooping is enabled. No IGMP filters are applied. For more information, see Chapter 23, Configuring IGMP Snooping and MVR. IGMP throttling setting is deny. For more information, see Chapter 23, Configuring IGMP Snooping and MVR. MVR is disabled. For more information, see Chapter 23, Configuring IGMP Snooping and MVR. Port-based traffic
Broadcast, multicast, and unicast storm control is disabled. For more information, see
Traffic Control.
Unicast and multicast traffic flooding is not blocked. For more information, see Chapter 24,
Traffic Control.
1-11
Overview
CDP is enabled. For more information, see Chapter 25, Configuring CDP. UDLD is disabled. For more information, see Chapter 26, Configuring UDLD. SPAN and RSPAN are disabled. For more information, see Chapter 27, Configuring SPAN and RSPAN. RMON is disabled. For more information, see Chapter 28, Configuring RMON. Syslog messages are enabled and appear on the console. For more information, see Chapter 29, Configuring System Message Logging. SNMP is enabled (Version 1). For more information, see Chapter 30, Configuring SNMP. No ACLs are configured. For more information, see Chapter 31, Configuring Network Security with ACLs. QoS is disabled. For more information, see Chapter 32, Configuring QoS. No EtherChannels are configured. For more information, see Chapter 33, Configuring EtherChannels. IP unicast routing is disabled. For more information, see Chapter 34, Configuring IP Unicast Routing. No HSRP groups are configured. For more information, see Chapter 35, Configuring HSRP. IP multicast routing is disabled on all interfaces. For more information, see Chapter 36, Configuring IP Multicast Routing. MSDP is disabled. For more information, see Chapter 37, Configuring MSDP. Fallback bridging is not configured. For more information, see Chapter 38, Configuring Fallback Bridging.
Design Concepts for Using the Switch section on page 1-12 Small to Medium-Sized Network Using Catalyst 3750 Switches section on page 1-17 Large Network Using Catalyst 3750 Switches section on page 1-18 Multidwelling Network Using Catalyst 3750 Switches section on page 1-21 Long-Distance, High-Bandwidth Transport Configuration section on page 1-22
1-12
78-16180-02
Chapter 1
Table 1-1
Network Demands Too many users on a single network segment and a growing number of users accessing the Internet
Create smaller network segments so that fewer users share the bandwidth, and use VLANs and IP subnets to place the network resources in the same logical network as the users who access those resources most. Use full-duplex operation between the switch and its connected workstations. Connect global resourcessuch as servers and routers to which the network users require equal accessdirectly to the high-speed switch ports so that they have their own high-speed segment. Use the EtherChannel feature between the switch and its connected servers and routers.
Increased power of new PCs, workstations, and servers High bandwidth demand from networked applications (such as e-mail with large attached files) and from bandwidth-intensive applications (such as multimedia)
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 for voice and data integration, multimedia integration, application prioritization, and security. Table 1-2 describes some network demands and how you can meet them.
Table 1-2 Providing Network Services
Network Demands Efficient bandwidth usage for multimedia applications and guaranteed bandwidth for critical applications
Use IGMP snooping to efficiently forward multimedia and multicast traffic. Use other QoS mechanisms such as packet classification, marking, scheduling, and congestion avoidance to classify traffic with the appropriate priority level, thereby providing maximum flexibility and support for mission-critical, unicast, and multicast and multimedia applications. Use optional IP multicast routing to design networks better suited for multicast traffic. Use MVR to continuously send multicast streams in a multicast VLAN but to isolate the streams from subscriber VLANs for bandwidth and security reasons. Use switch stacks, where all stack members are eligible stack masters in case of stack-master failure. All stack members have synchronized copies of the saved and running configuration files of the switch stack. Use cross-stack EtherChannels for providing redundant links across the switch stack. Use Hot Standby Router Protocol (HSRP) for cluster command switch and router redundancy. Use VLAN trunks, cross-stack UplinkFast, and BackboneFast for traffic-load balancing on the uplink ports so that the uplink port with a lower relative port cost is selected to carry the VLAN traffic.
High demand on network redundancy and availability to provide always on mission-critical applications
1-13
Overview
Table 1-2
Use QoS to prioritize applications such as IP telephony during congestion and to help control both delay and jitter within the network. Use switches that support at least two queues per port to prioritize voice and data traffic as either high- or low-priority, based on 802.1p/Q. The Catalyst 3750 switch supports at least four queues per port. Use voice VLAN IDs (VVIDs) to provide separate VLANs for voice traffic.
A growing demand for using existing Use the Catalyst Long-Reach Ethernet (LRE) switches to provide up to 15 Mb of IP infrastructure to transport data and connectivity over existing infrastructure, such as existing telephone lines. voice from a home or office to the Note LRE is the technology used in the Catalyst 2900 LRE XL and Catalyst 2950 Internet or an intranet at higher LRE switches. Refer to the documentation sets specific to these switches for speeds LRE information. You can use the switches and switch stacks to create the following:
Cost-effective wiring closet (Figure 1-1)A cost-effective way to connect many users to the wiring closet is to have a switch stack of up to nine Catalyst 3750 switches. To preserve switch connectivity if one switch in the stack fails, connect the switches as recommended in the hardware installation guide, and enable either cross-stack Etherchannel or cross-stack UplinkFast. You can have redundant uplink connections, using SFP modules in the switch stack to a Gigabit backbone switch, such as a Catalyst 4500 or Catalyst 3750-12S Gigabit switch. You can also create backup paths by using Fast Ethernet, Gigabit, or EtherChannel links. If one of the redundant connections fails, the other can serve as a backup path. If the Gigabit switch is cluster-capable, you can configure it and the switch stack as a switch cluster to manage them through a single IP address. The Gigabit switch can be connected to a Gigabit server through a 1000BASE-T connection.
Figure 1-1
Gigabit server
High-performance wiring closet (Figure 1-2)For high-speed access to network resources, you can use Catalyst 3750 switches and switch stacks in the access layer to provide Gigabit Ethernet to the desktop. To prevent congestion, use QoS DSCP marking priorities on these switches. For high-speed
1-14
86927
78-16180-02
Chapter 1
IP forwarding at the distribution layer, connect the switches in the access layer to a Gigabit multilayer switch in the backbone, such as a Catalyst 4500 Gigabit switch or Catalyst 6500 Gigabit switch. Each switch in this configuration provides users with a dedicated 1-Gbps connection to network resources. Using SFP modules also provides flexibility in media and distance options through fiber-optic connections.
Figure 1-2 High-Performance Wiring Closet
Redundant Gigabit backboneUsing HSRP, you can create backup paths between two Catalyst 3750G multilayer Gigabit switches to enhance network reliability and load balancing for different VLANs and subnets. Using HSRP also provides faster network convergence if any network failure occurs. You can connect the Catalyst switches, again in a star configuration, to two Catalyst 3750G multilayer backbone switches. If one of the backbone switches fails, the second backbone switch preserves connectivity between the switches and network resources.
Redundant Gigabit Backbone
Figure 1-3
Catalyst switches
Server aggregation (Figure 1-4) and Linux server cluster (Figure 1-5)You can use the switches and switch stacks to interconnect groups of servers, centralizing physical security and administration of your network. For high-speed IP forwarding at the distribution layer, connect the switches in the access layer to multilayer switches with routing capability. The Gigabit interconnections minimize latency in the data flow.
93794
86928
1-15
Overview
QoS and policing on the switches provide preferential treatment for certain data streams, if required. They segment traffic streams into different paths for processing. Security features on the switch ensure rapid handling of packets. Dual homing of servers to dual switch stacks with redundant Gigabit EtherChannel and cross-stack EtherChannel provide fault tolerance from the server racks to the core. Using dual SFP uplinks from the switches provide redundant uplinks to the network core. Using SFP modules provides flexibility in media and distance options through fiber-optic connections. The various lengths of stack cable available, ranging from 0.5 meter to 3 meters provide extended connections to the switch stacks across multiple server racks, for multiple stack aggregation.
Figure 1-4 Server Aggregation
Si
Si
Si
Si
Si
Si
Server racks
1-16
78-16180-02
Chapter 1
Figure 1-5
Campus core
86932
1-17
Overview
In addition to inter-VLAN routing, the multilayer switches provide QoS mechanisms such as DSCP priorities to prioritize the different types of network traffic and to deliver high-priority traffic in a predictable manner. If congestion occurs, QoS drops low-priority traffic to allow delivery of high-priority traffic. For pre-standard and IEEE 802.3af-compliant powered devices connected to Catalyst PoE switches, 802.1p/Q QoS gives voice traffic forwarding-priority over data traffic. Catalyst PoE switch ports automatically detect any Cisco pre-standard and IEEE 802.3af-compliant powered devices that are connected. Each PoE switch port provides 15.4 W of power per port. The powered device, such as an IP phone, can receive redundant power when it is also connected to an AC power source. Powered devices not connected to Catalyst PoE switches must be connected to AC power sources to receive power. 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. With the multilayer switches providing inter-VLAN routing and other network services, the routers focus on firewall services, Network Address Translation (NAT) services, voice-over-IP (VoIP) gateway services, and WAN and Internet access.
Figure 1-6 Catalyst 3750 Switch Stack in a Collapsed Backbone Configuration
Internet
Gigabit servers
Cisco IP phones
1-18
86929
IP
IP
78-16180-02
Chapter 1
In the wiring closet, each switch stack has IGMP snooping enabled to efficiently forward multimedia and multicast traffic. QoS ACLs that either drop or mark nonconforming traffic based on bandwidth limits are also configured on each switch stack. VLAN maps provide intra-VLAN security and prevent unauthorized users from accessing critical pieces of the network. QoS features can limit bandwidth on a per-port or per-user basis. The switch ports are configured as either trusted or untrusted. You can configure a trusted port to trust the CoS value, the DSCP value, or the IP precedence. If you configure the port as untrusted, you can use an ACL to mark the frame in accordance with the network policy. Each switch stack provides inter-VLAN routing. They provide proxy ARP services to get IP and MAC address mapping, thereby removing this task from the routers and decreasing this type of traffic on the WAN links. These switch stacks also have redundant uplink connections to the backbone switches, with each uplink port configured as a trusted routed uplink to provide faster convergence in case of an uplink failure. The routers and backbone switches have HSRP enabled for load balancing and redundant connectivity to guarantee mission-critical traffic.
1-19
Overview
Figure 1-7
WAN
IP
IP
IP IP
1-20
78-16180-02
Chapter 1
1-21
Overview
Figure 1-8
Si
Si
Si
Residential location
PC TV
1-22
78-16180-02
Chapter 1
Figure 1-9
Access layer
Aggregation layer
Catalyst switches
Where to Go Next
Before configuring the switch, review these sections for startup information:
Chapter 2, Using the Command-Line Interface Chapter 3, Getting Started with CMS Chapter 4, Assigning the Switch IP Address and Default Gateway
95750
1-23
Overview
1-24
78-16180-02
C H A P T E R
Understanding Command Modes, page 2-1 Understanding the Help System, page 2-3 Understanding Abbreviated Commands, page 2-3 Understanding no and default Forms of Commands, page 2-4 Understanding CLI Error Messages, page 2-4 Using Command History, page 2-4 Using Editing Features, page 2-6 Searching and Filtering Output of show and more Commands, page 2-8 Accessing the CLI, page 2-9
2-1
Table 2-1
Prompt
Switch>
Privileged EXEC
While in user EXEC mode, enter the enable command. While in privileged EXEC mode, enter the configure command. While in global configuration mode, enter the vlan vlan-id command.
Switch#
Use this mode to verify commands that you have entered. Use a password to protect access to this mode.
Global configuration
Switch(config)#
To exit to privileged Use this mode to configure EXEC mode, enter parameters that apply to the exit or end, or press entire switch. Ctrl-Z. To exit to global configuration mode, enter the exit command. To return to privileged EXEC mode, press Ctrl-Z or enter end. Use this mode to configure VLAN parameters. When VTP mode is transparent, you can create extended-range VLANs (VLAN IDs greater than 1005) and save configurations in the switch startup configuration file.
Config-vlan
Switch(config-vlan)#
VLAN configuration
While in privileged EXEC mode, enter the vlan database command. While in global configuration mode, enter the interface command (with a specific interface).
Switch(vlan)#
To exit to privileged Use this mode to configure EXEC mode, enter VLAN parameters for VLANs exit. 1 to 1005 in the VLAN database. Use this mode to configure To exit to global configuration mode, parameters for the Ethernet ports. enter exit. To return to privileged EXEC mode, press Ctrl-Z or enter end. For information about defining interfaces, see the Using Interface Configuration Mode section on page 11-7. To configure multiple interfaces with the same parameters, see the Configuring a Range of Interfaces section on page 11-9.
Interface configuration
Switch(config-if)#
Line configuration
While in global configuration mode, specify a line with the line vty or line console command.
Switch(config-line)#
Use this mode to configure To exit to global configuration mode, parameters for the terminal line. enter exit. To return to privileged EXEC mode, press Ctrl-Z or enter end.
2-2
78-16180-02
Chapter 2
Purpose Obtain a brief description of the help system in any command mode. Obtain a list of commands that begin with a particular character string. For example:
Switch# di? dir disable disconnect
abbreviated-command-entry<Tab>
List all commands available for a particular command mode. For example:
Switch> ?
command ?
command keyword ?
2-3
Error Message
% Ambiguous command: "show con"
Meaning You did not enter enough characters for your switch to recognize the command.
How to Get Help Re-enter the command followed by a question mark (?) with a space between the command and the question mark. The possible keywords that you can enter with the command appear.
% Incomplete command.
You did not enter all the keywords or Re-enter the command followed by a question mark (?) values required by this command. with a space between the command and the question mark. The possible keywords that you can enter with the command appear.
You entered the command incorrectly. The caret (^) marks the point of the error.
Enter a question mark (?) to display all the commands that are available in this command mode. The possible keywords that you can enter with the command appear.
Changing the Command History Buffer Size, page 2-5 (optional) Recalling Commands, page 2-5 (optional) Disabling the Command History Feature, page 2-5 (optional)
2-4
78-16180-02
Chapter 2
[size number-of-lines]
The range is from 0 to 256. Beginning in line configuration mode, enter this command to configure the number of command lines the switch records for all sessions on a particular line:
Switch(config-line)# history
[size number-of-lines]
Recalling Commands
To recall commands from the history buffer, perform one of the actions listed in Table 2-4. These actions are optional.
Table 2-4 Recalling Commands
Action1 Press Ctrl-P or the up arrow key. Press Ctrl-N or the down arrow key.
Result Recall commands in the history buffer, beginning with the most recent command. Repeat the key sequence to recall successively older commands. 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. While in privileged EXEC mode, list the last several commands that you just entered. The number of commands that appear is controlled by the setting of the terminal history global configuration command and the history line configuration command.
show history
2-5
Enabling and Disabling Editing Features, page 2-6 (optional) Editing Commands through Keystrokes, page 2-6 (optional) Editing Command Lines that Wrap, page 2-8 (optional)
To re-enable the enhanced editing mode for the current terminal session, enter this command in privileged EXEC mode:
Switch# terminal editing
To reconfigure a specific line to have enhanced editing mode, enter this command in line configuration mode:
Switch(config-line)# editing
Keystroke1
Purpose
Press Ctrl-B, or press the Move the cursor back one character. left arrow key. Press Ctrl-F, or press the right arrow key. Press Ctrl-A. Press Ctrl-E . Press Esc B. Press Esc F. Press Ctrl-T. Move the cursor forward one character. Move the cursor to the beginning of the command line. Move the cursor to the end of the command line. Move the cursor back one word. Move the cursor forward one word. Transpose the character to the left of the cursor with the character located at the cursor. Recall the most recent entry in the buffer.
Recall commands from the buffer and Press Ctrl-Y. paste them in the command line. The switch provides a buffer with the last ten items that you deleted.
2-6
78-16180-02
Chapter 2
Table 2-5
Capability
Purpose Recall the next buffer entry. The buffer contains only the last 10 items that you have deleted or cut. If you press Esc Y more than ten times, you cycle to the first buffer entry.
Delete entries if you make a mistake Press the Delete or or change your mind. Backspace key. Press Ctrl-D. Press Ctrl-K. Press Ctrl-U or Ctrl-X. Press Ctrl-W. Press Esc D. Capitalize or lowercase words or capitalize a set of letters. Press Esc C. Press Esc L. Press Esc U. Press Ctrl-V or Esc Q. Designate a particular keystroke as an executable command, perhaps as a shortcut. Scroll down a line or screen on displays that are longer than the terminal screen can display.
Note
Erase the character to the left of the cursor. Delete the character at the cursor. Delete all characters from the cursor to the end of the command line. Delete all characters from the cursor to the beginning of the command line. Delete the word to the left of the cursor. Delete from the cursor to the end of the word. Capitalize at the cursor. Change the word at the cursor to lowercase. Capitalize letters from the cursor to the end of the word.
The More prompt is used for any output that has more lines than can be displayed on the terminal screen, including show command output. You can use the Return and Space bar keystrokes whenever you see the More prompt. Press the Space bar. Scroll down one screen. Redisplay the current command line. Press Ctrl-L or Ctrl-R.
Redisplay the current command line if the switch suddenly sends a message to your screen.
2-7
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)# Switch(config)# Switch(config)# Switch(config)# access-list 101 permit tcp 131.108.2.5 255.255.255.0 131.108.1 $ 101 permit tcp 131.108.2.5 255.255.255.0 131.108.1.20 255.25 $t tcp 131.108.2.5 255.255.255.0 131.108.1.20 255.255.255.0 eq $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.
2-8
78-16180-02
Chapter 2
Note
We recommend using one CLI session when managing the switch stack. If you want to configure a specific stack member port, you must include the stack member number in the CLI command interface notation. For more information about interface notations, see the Using Interface Configuration Mode section on page 11-7. To debug a specific stack member, you can access it from the stack master by using the session stack-member-number privileged EXEC command. The stack member number is appended to the system prompt. For example, Switch-2# is the prompt in privileged EXEC mode for stack member 2, and where the system prompt for the stack master is Switch. Only the show and debug commands are available in a CLI session to a specific stack member.
Connect the switch console port to a management station or dial-up modem. For information about connecting to the console port, refer to the switch hardware installation guide. Use any Telnet TCP/IP or encrypted Secure Shell (SSH) package from a remote management station. The switch must have network connectivity with the Telnet or SSH client, and the switch must have an enable secret password configured. For information about configuring the switch for Telnet access, see the Setting a Telnet Password for a Terminal Line section on page 9-6. The switch supports up to 16 simultaneous Telnet sessions. Changes made by one Telnet user are reflected in all other Telnet sessions. For information about configuring the switch for SSH, see the Configuring the Switch for Secure Shell section on page 9-37. The switch supports up to five simultaneous secure SSH sessions.
After you connect through the console port, through a Telnet session or through an SSH session, the user EXEC prompt appears on the management station.
2-9
Start one of the supported browsers. In the URL field, enter the IP address of the switch (the stack or, if clustering, the command switch). When the Cisco Systems Access page appears, click Telnet to start a Telnet session. Enter the switch password.
Note
Copies of the HTML pages that you display are saved in your browser memory cache until you exit the browser session. A password is not required to redisplay these pages, including the Cisco Systems Access page. You can access the CLI by clicking Web Console - HTML access to the command line interface from a cached copy of the Cisco Systems Access page. To prevent unauthorized access to the CLI or to the Cluster Management Suite (CMS), exit your browser to end the browser session.
2-10
78-16180-02
C H A P T E R
Understanding CMS section on page 3-1 Configuring CMS section on page 3-8 Displaying CMS section on page 3-11 Where to Go Next section on page 3-16
For a list of new CMS features in this release, select Help > What's New? from the CMS menu bar. For information about cluster configurations and which Catalyst switches can be command switches or member switches, refer to the release notes for this switch. Refer to the appropriate switch documentation for descriptions of the browser-based management software used on other Catalyst switches. For more information about CMS, refer to the online help.
Understanding CMS
CMS provides these features for managing switch clusters and individual switches from web browsers such as Netscape Communicator or Microsoft Internet Explorer:
Front-panel and topology views of your network, as shown in Figure 3-7 on page 3-14 and Figure 3-8 on page 3-15, that can be displayed at the same time A menu bar, a toolbar, and a feature bar, as shown in Figure 3-6 on page 3-14, to access configuration and management options Comprehensive online help that gives high-level concepts and procedures for performing CMS tasks Interactive modesguide mode, expert mode, and wizardsthat control the presentation of some complex configuration options Two levels of access modes to the configuration options: read-write access for users who can change switch settings and read-only access for users who can only view switch settings
3-1
Topology View
The Topology view displays a network map that uses icons representing switch clusters, the command switch, cluster members, cluster candidates, neighboring devices that are not eligible to join a cluster, and link types. You can also display link information in the form of link reports and link graphs. For more information, see the Displaying CMS section on page 3-11.
The menu bar, shown in Figure 3-1, provides these options for managing CMS, navigating the windows, and accessing online help:
CMSChoose printing options, select interaction modes, display CMS preferences, save CMS
cluster information on your PC or workstation, and show or hide the feature bar.
Note
CMS is downloaded to your browser each time that you launch CMS. You can increase the speed at which CMS loads by permanently installing CMS on your PC or workstation. Select CMS > Installation and Distributions, and click Install. CMS is installed locally and loads faster the next time that you launch it.
WindowChoose from the currently open CMS windows. HelpLaunch the online help. Figure 3-1 Menu Bar
3-2
78-16180-02
Chapter 3
The toolbar provides buttons for commonly used switch and cluster configuration options and information windows such as legends and online help. Table 3-1 lists the toolbar options from left to right on the toolbar.
Table 3-1
Toolbar Buttons
Toolbar Option Print Preferences1 Save Configuration2 Software Upgrade2 Port Settings1 Smartports Device Macros Smartports Port Macros VLAN1 Inventory Refresh Front Panel Topology Topology Options Save Topology Layout 2 Legend Help for Active Window
Icon
Task Print a CMS window or help file. Set CMS display properties, such as polling intervals, the views to open at CMS startup, and the color of administratively shutdown ports. Save the configuration of the cluster or a switch to flash memory. Upgrade the software for the cluster or a switch. Display and configure port parameters on a switch. Display or configure Smartports macros on a switch. Display or configure Smartports macros on a port. Display VLAN membership, assign ports to VLANs, and change the administration mode. Display the device type, the software version, the IP address, and other information about a switch. Update the views with the latest status. Display the Front Panel view. Display the Topology view. Select the information to be displayed in the Topology view. Save your arrangement of the cluster icons in the Topology view to flash memory. Display the legend that describes the icons, labels, and links. Display the help for the active, open window. You can also click Help from the active window or press the F1 key.
1. Not available in read-only mode. For more information about the read-only and read-write access modes, see the Privilege Levels section on page 3-7. 2. Some options from this menu option are not available in read-only mode.
3-3
The feature bar shows the features available for the devices in your cluster. By default, the feature bar is in standard mode. In this mode, the feature bar is always visible, and you can reduce or increase the width of the feature bar. In autohide mode, the feature bar appears only when you move the cursor to the left edge of the CMS workspace.
To enable the feature bar, click CMS > Feature Bar, and select Standard Mode. To hide the feature bar, click CMS > Feature Bar, and select Autohide Mode.
Features tab
Search tab
Note
Only features supported by the devices in your cluster are displayed in the feature bar. You can search for features that are available for your cluster by clicking Search and entering a feature name, as shown in Figure 3-2. Access modes affect the availability of features from CMS. Some CMS features are not available in read-only mode. For more information about how access modes affect CMS, see the Privilege Levels section on page 3-7.
3-4
78-16180-02
Chapter 3
Online Help
CMS provides comprehensive online help to assist you in understanding and performing configuration and monitoring tasks from the CMS windows. Online help is available for features that are supported by devices in your cluster. Sometimes the information in a topic differs for different cluster members. In these cases, the right pane contains all the versions of the topic, each labeled with the host names of the members it applies to. Online help includes these features:
Feature-specific help that gives background information and concepts on the features Dialog-specific help that gives procedures for performing tasks An index of online help topics A glossary of terms used in the online help
You can send us feedback about the information provided in the online help. Click Feedback to display an online form. After completing the form, click Submit to send your comments to Cisco Systems Inc. We appreciate and value your comments.
Configuration Modes
You can change the CMS interaction mode to either expert or guide mode. Expert mode displays a configuration window in which you configure the feature options. Guide mode takes you through each feature option and provides information about the parameter.
Guide Mode
Guide mode is for users who want a step-by-step approach for completing a specific configuration task. This mode is not available for all features. A person icon appears next to features that have guide mode available, as shown in Figure 3-3 on page 3-6. When you click Guide Mode and then select a feature that supports it, CMS displays a specific parameter of that feature and information about the parameter. To configure the feature, you enter the information in each step until you click Finish in the last step. Clicking Cancel at any time ends the configuration task without applying any changes. You must click Guide before selecting an option from the menu bar, tool bar, or popup menu to launch that feature in Guide Mode. If you change the interaction mode after selecting a configuration option, the mode change does not take effect until you select another configuration option.
3-5
Figure 3-3
2 1
Wizards
Guide mode is not available if your switch access level is read-only. For more information about the read-only access mode, see the Privilege Levels section on page 3-7.
Expert Mode
Expert mode is for users who prefer to display all the parameter fields of a feature in a single CMS window. You can view information about the parameter fields by clicking the Help button. You must click Expert before selecting an option from the menu bar, tool bar, or popup menu to launch that feature in Expert Mode. If you change the interaction mode after selecting a configuration option, the mode change does not take effect until you select another configuration option.
Wizards
Similar to guide mode, wizards provide a step-by-step approach for completing a specific configuration task. Unlike guide mode, a wizard does not prompt you to provide information for all of the feature options. Instead, it prompts you to provide minimal information and then uses the default settings of the remaining options to set up default configurations. When you select a feature that has Wizard in the name, the wizard launches for that feature, as shown in Figure 3-3 on page 3-6. Wizards are not available for read-only access levels. For more information about the read-only access mode, see the Privilege Levels section on page 3-7.
3-6
116226
78-16180-02
Chapter 3
Privilege Levels
CMS provides two levels of access to the configuration options: read-write access and read-only access. If you know your privilege level, you must specify it in the URL that you use to access the cluster. For example, if your privilege level is 13, enter this URL: http://ip_address/level/13 Privilege levels 0 to 15 are supported.
Privilege level 15 provides read-write access to CMS. This is the default. Privilege levels 1 to 14 provide read-only access to CMS. Any options in the CMS windows, menu bar, toolbar, and popup menus that change the switch or cluster configuration are not shown in read-only mode. Privilege level 0 denies access to CMS.
If you do not specify a privilege level when you access CMS, the switch verifies whether you have privilege level 15. If you do not, you are denied access to CMS. If you do have privilege level 15, you are granted read-write access. Therefore, you do not need to include the privilege level if it is 15. Entering zero denies access to CMS.
Note
You must have privilege level 15 to access CMS through a TACACS+ or RADIUS server. For more information about privilege levels, see the Preventing Unauthorized Access to Your Switch section on page 9-1 and the Configuring Multiple Privilege Levels section on page 9-8.
Catalyst 2900 XL or Catalyst 3500 XL member switches running Cisco IOS Release 12.0(5)WC2 or earlier Catalyst 2950 member switches running Cisco IOS Release 12.0(5)WC2 or earlier
For more information about this limitation, refer to the release notes. These switches do not support read-only mode on CMS:
Catalyst 1900 and Catalyst 2820 switches Catalyst 2900 XL switches with 4-MB CPU DRAM
In read-only mode, these switches appear as unavailable devices and cannot be configured from CMS.
3-7
Configuring CMS
This section contains these topics that describe the requirements and configuration information for CMS:
CMS Requirements section on page 3-8 Cross-Platform Considerations section on page 3-9 Launching CMS section on page 3-11
CMS Requirements
This section describes the hardware and software requirements for running CMS:
Minimum Hardware Configuration section on page 3-8 Operating System and Browser Support section on page 3-9 CMS Plug-In section on page 3-9 Specifying an HTTP Port (Nondefault Configuration Only) section on page 3-10 Configuring an Authentication Method (Nondefault Configuration Only) section on page 3-10
Note
The software requirements are automatically verified by the CMS Startup Report when you launch CMS. For more information, see the Launching CMS section on page 3-11.
DRAM
Number of Colors
Resolution
Font Size
128 MB 128 MB
1024 x 768
3-8
78-16180-02
Chapter 3
Operating System Windows 98 Windows NT 4.0 Windows 2000 Windows XP Solaris 8 or later
Minimum Service Pack or Patch Second Edition Service Pack 6 or later None None
Microsoft Internet Explorer1 5.5 or 6.0 5.5 or 6.0 5.5 or 6.0 5.5 or 6.0 Not supported
Sun-recommended patch cluster 7.0 for the OS and Motif library patch 103461-24
CMS Plug-In
The CMS plug-in is required to run CMS through your web browser. The plug-in is supported both in Windows environments and on Solaris platforms. For more information about the CMS plug-in, including the URL, refer to the Software Compatibility section in the release notes.
Note
If you need to both upgrade your web browser and install the CMS plug-in, you must upgrade your browser first. If you install the CMS plug-in and then upgrade your browser, the plug-in is not registered with the new browser. The plug-in includes a console window that you can use to troubleshoot CMS or to view the CLI commands from CMS. When CMS is running, press F2 to display or to hide the CMS console. Press F3 to display or to hide the CLI commands that CMS is sending.
Cross-Platform Considerations
When managing switch clusters through CMS, remember that clusters can have a mix of switch models using different Cisco IOS releases and that CMS in earlier Cisco IOS releases and on different switch platforms might look and function differently from CMS in this Cisco IOS release. When you select Device > Device Manager for a cluster member, a new browser session launches, and the CMS version for that switch appears (Catalyst 1900 and 2820 switches only).
3-9
Here are examples of how CMS can differ between Cisco IOS releases and switch platforms:
The CMS versions in these software releases might appear to be similar but they are not the same as this release. For example, the Topology view in this release is not the same as the Topology view or the Cluster View in these earlier software releases.
Cisco IOS Release 12.0(5)WC2 or earlier Cisco IOS Release 12.1(6)EA1 or earlier Cisco IOS Release 12.2(18)SE or later
CMS on the Catalyst 1900 and Catalyst 2820 switches is referred to as Switch Manager. Cluster management options are not available on these switches. This is the earliest version of CMS.
Refer to the documentation specific to the switch and its Cisco IOS release for descriptions of the CMS version.
3-10
78-16180-02
Chapter 3
Beginning in privileged EXEC mode, follow these steps to configure the HTTP server interface: Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure the HTTP server interface for the type of authentication you want to use.
enableEnable password, which is the default method of HTTP server user authentication. localLocal user database as defined on the Cisco router or access server is used. tacacsTACACS server is used.
Step 3 Step 4
After you have configured the HTTP server interface, display the switch home page, as described in the Launching CMS section on page 3-11.
Displaying CMS
This section provides these topics about displaying CMS:
Launching CMS section on page 3-11 Front Panel View section on page 3-14 Topology View section on page 3-15
Launching CMS
To display the switch home page, follow these steps:
Step 1 Step 2
Enter the switch IP address in the browser, and press Enter. Enter your username and password when prompted. If no username is configured on your switch (the default), enter only the enable password (if an enable password is configured) in the password field. The switch home page appears, as shown in Figure 3-4.
3-11
Figure 3-4
Note
You can use Express Setup to assign an IP address to an unconfigured switch. For more information, refer to the hardware installation guide.
Step 3
Cluster Management SuiteLaunches CMS ToolsAccesses diagnostic and monitoring tools, such as Telnet, Extended Ping, and the show interfaces privileged EXEC command Help ResourcesProvides links to the Cisco website, technical documentation, and the Cisco Technical Assistance Center (TAC)
Click Cluster Management Suite to launch the CMS interface. The CMS Startup Report runs and verifies that your PC or workstation can correctly run CMS. If you are running an unsupported operating system, web browser, CMS plug-in or Java plug-in, or if the plug-in is not enabled, the CMS Startup Report page appears, as shown in Figure 3-5.
3-12
78-16180-02
Chapter 3
Figure 3-5
The CMS Startup Report has links that instruct you how to correctly configure your PC or workstation. If the CMS Startup Report appears, click the links, and follow the instructions to configure your PC or workstation.
Note
If your PC or workstation is correctly configured for CMS, you do not see the CMS Startup Report.
Note
If you are running Windows and need to both upgrade your web browser and install the CMS plug-in, you must upgrade your browser first. If you install the CMS plug-in and then upgrade your browser, the plug-in is not registered with the new browser. When your PC or workstation is correctly configured, CMS launches.
3-13
1 2
1 Front Panel view button 2 Topology view button
When CMS is launched from a noncommand switch, the CMS Front Panel view displays by default, and the front-panel image displays only the front panel of that switch. The Front Panel view displays the front-panel image of the command switch and any other switches that were selected the last time the view was displayed. the Front Panel view. You can drag the switches that appear and re-arrange them. You can right-click on a switch port to configure that port.
Figure 3-7 Front Panel View and Port Popup Menu
1 2
3 4
3-14
78-16180-02
98674
101011
Chapter 3
Note
Figure 3-7 shows a cluster with a Catalyst 3550 switch as the command switch. Refer to the release notes for a list of switches that can be members of a cluster with a Catalyst 3750 switch as the command switch.
Topology View
When CMS is launched from a command switch, the Topology view appears by default. When you click the topology button on the tool bar, the Topology view displays the command switch (shown by the *CMD* label) and the devices that are connected to it, as shown in Figure 3-8. You can right-click on a switch or link icon to display a menu for that icon.
Figure 3-8 Topology View and Device Popup Menus
1 2
3 4
Note
Figure 3-8 shows multiple popup menus. Only one popup menu at a time appears in the CMS.
98675
3-15
The Topology view shows how the devices within a switch cluster are connected and how the switch cluster is connected to other clusters and devices. From this view, you can add and remove cluster members. This view provides two levels of detail of the network topology:
Expand ClusterWhen you right-click a cluster icon and select Expand Cluster, the Topology view displays the switch cluster in detail. This view shows the command switch and member switches in a cluster. It also shows candidate switches that can join the cluster. This view does not display the details of any neighboring switch clusters Collapse ClusterWhen you right-click a command-switch icon and select Collapse Cluster, the cluster is collapsed and represented by a single icon. The view shows how the cluster is connected to other clusters, candidate switches, and devices that are not eligible to join the cluster (such as routers, access points, IP phones, and so on).
Note
The Topology view displays only the switch cluster and network neighborhood of the specific command or member switch that you access. To display a different switch cluster, you need to access the command switch or member switch of that cluster.
CMS Icons
For a complete list of device and link icons available in CMS, select Help > Legend from the CMS menu bar.
Where to Go Next
See Chapter 6, Clustering Switches, for more information about command and member switches. See Chapter 7, Administering the Switch, for more information about administrative tasks. Select Administration > Software Upgrade to upgrade a switch by using HTTP or TFTP. Click Help > What's New? in the online help for a list of new CMS features in this release.
3-16
78-16180-02
C H A P T E R
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release and to the Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2. This chapter consists of these sections:
Understanding the Boot Process, page 4-1 Assigning Switch Information, page 4-2 Checking and Saving the Running Configuration, page 4-10 Modifying the Startup Configuration, page 4-11 Scheduling a Reload of the Software Image, page 4-16
Performs low-level CPU initialization. It initializes the CPU registers, which control where physical memory is mapped, its quantity, its speed, and so forth. Performs power-on self-test (POST) for the CPU subsystem. It tests the CPU DRAM and the portion of the flash device that makes up the flash file system. Initializes the flash file system on the system board. Loads a default operating system software image into memory and boots the switch.
4-1
The boot loader provides access to the flash file system before the operating system is loaded. Normally, the boot loader is used only to load, uncompress, and launch the operating system. After the boot loader gives the operating system control of the CPU, the boot loader is not active until the next system reset or power-on. 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, reinstall 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 By Using the Xmodem Protocol section on page 39-2 and the Recovering from a Lost or Forgotten Password section on page 39-4.
Note
You can disable password recovery. For more information, see the Disabling Password Recovery section on page 9-5. 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:
Note
If the data bits option is set to 8, set the parity option to none.
Note
Stack members retain their IP address when you remove them from a switch stack. To avoid a conflict by having two devices with the same IP address in your network, change the IP address of the switch that you removed from the switch stack. Use a DHCP server for centralized control and automatic assignment of IP information after the server is configured.
4-2
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Assigning Switch Information
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. If you are an experienced user familiar with the switch configuration steps, manually configure the switch. Otherwise, use the setup program described previously. This section contains this configuration information:
Default Switch Information, page 4-3 Understanding DHCP-Based Autoconfiguration, page 4-3 Manually Assigning IP Information, page 4-10
Feature IP address and subnet mask Default gateway Enable secret password Host name Telnet password Cluster command switch functionality Cluster name
Default Setting No IP address or subnet mask are defined. No default gateway is defined. No password is defined. The factory-assigned default host name is Switch . No password is defined. Disabled. No cluster name is defined.
Note
We recommend a redundant connection between a switch stack and the DHCP, DNS, and TFTP servers. This is to help ensure that these servers remain accessible in case one of the connected stack members is removed from the switch stack.
4-3
The DHCP server for your switch can be on the same LAN or on a different LAN than the switch. If the DHCP server is running on a different LAN, you should configure a DHCP relay device between your switch and the DHCP server. A relay device forwards broadcast traffic between two directly connected LANs. A router does not forward broadcast packets, but it forwards packets based on the destination IP address in the received packet. DHCP-based autoconfiguration replaces the BOOTP client functionality on your switch.
DHCP server
DHCPACK (unicast)
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 Configuring the TFTP Server section on page 4-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.
4-4
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Assigning Switch Information
DHCP Server Configuration Guidelines, page 4-5 Configuring the TFTP Server, page 4-5 Configuring the DNS, page 4-6 Configuring the Relay Device, page 4-6 Obtaining Configuration Files, page 4-7 Example Configuration, page 4-8
If your DHCP server is a Cisco device, refer to the Configuring DHCP section of the IP Addressing and Services section of the Cisco IOS IP Configuration Guide, Release 12.2 for additional information about configuring DHCP.
IP address of the client (required) Subnet mask of the client (required) DNS server IP address (optional) Router IP address (default gateway address to be used by the switch) (required)
If you want the switch to receive the configuration file from a TFTP server, you must configure the DHCP server with these lease options:
TFTP server name (required) Boot filename (the name of the configuration file that the client needs) (recommended) Host name (optional)
Depending on the settings of the DHCP server, the switch can receive IP address information, the configuration file, or both. If you do not configure the DHCP server with the lease options described previously, it replies to client requests with only those parameters that are configured. If the IP address and the subnet mask are not in the reply, the switch is not configured. If the router IP address or the TFTP server name are not found, the switch might send broadcast, instead of unicast, TFTP requests. Unavailability of other lease options does not affect autoconfiguration.
4-5
If you did not specify the configuration filename, the TFTP server, or if the configuration file could not be downloaded, the switch attempts to download a configuration file by using various combinations of filenames and TFTP server addresses. The files include the specified configuration filename (if any) and these files: network-config, cisconet.cfg, hostname.config, or hostname.cfg, where hostname is the switchs current hostname. The TFTP server addresses used include the specified TFTP server address (if any) and the broadcast address (255.255.255.255). For the switch to successfully download a configuration file, the TFTP server must contain one or more configuration files in its base directory. The files can include these files:
The configuration file named in the DHCP reply (the actual switch configuration file). The network-confg or the cisconet.cfg file (known as the default configuration files). The router-confg or the ciscortr.cfg file (These files contain commands common to all switches. Normally, if the DHCP and TFTP servers are properly configured, these files are not accessed.)
If you specify the TFTP server name in the DHCP server-lease database, you must also configure the TFTP server name-to-IP-address mapping in the DNS-server database. If the TFTP server to be used is on a different LAN from the switch, or if it is to be accessed by the switch through the broadcast address (which occurs if the DHCP server response does not contain all the required information described previously), a relay must be configured to forward the TFTP packets to the TFTP server. For more information, see the Configuring the Relay Device section on page 4-6. The preferred solution is to configure the DHCP server with all the required information.
4-6
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Assigning Switch Information
On interface 20.0.0.1
router(config-if)# ip helper-address 10.0.0.1
Note
If the switch is acting as the relay device, configure the interface as a routed port. For more information, see the Routed Ports section on page 11-3 and the Configuring Layer 3 Interfaces section on page 11-21.
Figure 4-2 Relay Device Used in Autoconfiguration
10.0.0.1
20.0.0.1
20.0.0.2
20.0.0.3
20.0.0.4
49068
DHCP server
TFTP server
DNS server
The IP address and the configuration filename is reserved for the switch and provided in the DHCP reply (one-file read method). The switch receives its IP address, subnet mask, TFTP server address, and the configuration filename from the DHCP server. The switch sends a unicast message to the TFTP server to retrieve the named configuration file from the base directory of the server and upon receipt, it completes its boot-up process.
The IP address and the configuration filename is reserved for the switch, but the TFTP server address is not provided in the DHCP reply (one-file read method). The switch receives its IP address, subnet mask, and the configuration filename from the DHCP server. The switch sends a broadcast message to a TFTP server to retrieve the named configuration file from the base directory of the server, and upon receipt, it completes its boot-up process.
Only the IP address is reserved for the switch and provided in the DHCP reply. The configuration filename is not provided (two-file read method). The switch receives its IP address, subnet mask, and the TFTP server address from the DHCP server. The switch sends a unicast message to the TFTP server to retrieve the network-confg or cisconet.cfg default configuration file. (If the network-confg file cannot be read, the switch reads the cisconet.cfg file.)
4-7
The default configuration file contains the host names-to-IP-address mapping for the switch. The switch fills its host table with the information in the file and obtains its host name. If the host name is not found in the file, the switch uses the host name in the DHCP reply. If the host name is not specified in the DHCP reply, the switch uses the default Switch as its host name. After obtaining its host name from the default configuration file or the DHCP reply, the switch reads the configuration file that has the same name as its host name (hostname-confg or hostname.cfg, depending on whether network-confg or cisconet.cfg was read earlier) from the TFTP server. If the cisconet.cfg file is read, the filename of the host is truncated to eight characters. If the switch cannot read the network-confg, cisconet.cfg, or the hostname file, it reads the router-confg file. If the switch cannot read the router-confg file, it reads the ciscortr.cfg file.
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 4-3 shows a sample network for retrieving IP information by using DHCP-based autoconfiguration.
Figure 4-3 DHCP-Based Autoconfiguration Network Example
DHCP server
DNS server
Table 4-2 shows the configuration of the reserved leases on the DHCP server.
Table 4-2 DHCP Server Configuration
Switch A Binding key (hardware address) IP address Subnet mask Router address DNS server address TFTP server name 00e0.9f1e.2001 10.0.0.21 255.255.255.0 10.0.0.10 10.0.0.2 tftpserver or 10.0.0.3
111394
4-8
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Assigning Switch Information
Table 4-2
Switch A Boot filename (configuration file) (optional) Host name (optional) switcha-confg switcha DNS Server Configuration
The DNS server maps the TFTP server name tftpserver to IP address 10.0.0.3. TFTP Server Configuration (on UNIX) 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 switcha 10.0.0.21 ip host switchb 10.0.0.22 ip host switchc 10.0.0.23 ip host switchd 10.0.0.24
DHCP Client Configuration No configuration file is present on Switch A through Switch D. Configuration Explanation In Figure 4-3, Switch A reads its configuration file as follows:
It obtains its IP address 10.0.0.21 from the DHCP server. If no configuration filename is given in the DHCP server reply, Switch A reads the network-confg file from the base directory of the TFTP server. It adds the contents of the network-confg file to its host table. It reads its host table by indexing its IP address 10.0.0.21 to its host name (switcha). It reads the configuration file that corresponds to its host name; for example, it reads switch1-confg from the TFTP server.
Switches B through D retrieve their configuration files and IP addresses in the same way.
4-9
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the VLAN to which the IP information is assigned. The range is 1 to 4094; do not enter leading zeros. Enter the IP address and subnet mask. Return to global configuration mode. 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.
end show interfaces vlan vlan-id show ip redirects copy running-config startup-config
Return to privileged EXEC mode. Verify the configured IP address. Verify the configured default gateway. (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 7, Administering the Switch.
4-10
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Modifying the Startup Configuration
! enable secret 5 $1$ej9.$DMUvAUnZOAmvmgqBEzIxE0 ! . <output truncated> . interface gigabitethernet6/0/1 no switchport ip address 172.20.137.50 255.255.255.0 ! interface gigabitethernet6/0/2 mvr type source <output truncated> ...! interface VLAN1 ip address 172.20.137.50 255.255.255.0 no ip directed-broadcast ! ip default-gateway 172.20.137.1 ! ! snmp-server community private RW snmp-server community public RO snmp-server community private@es0 RW snmp-server community public@es0 RO snmp-server chassis-id 0x12 ! end
To store the configuration or changes you have made to your startup configuration in flash memory, enter this privileged EXEC command:
Switch# copy running-config startup-config Destination filename [startup-config]? Building configuration...
This command saves the configuration settings that you made. If you fail to do this, your configuration will be lost the next time you reload the system. To display information stored in the NVRAM section of flash memory, use the show startup-config or more startup-config privileged EXEC command. For more information about alternative locations from which to copy the configuration file, see Appendix B, Working with the Cisco IOS File System, Configuration Files, and Software Images.
Default Boot Configuration, page 4-12 Automatically Downloading a Configuration File, page 4-12 Booting Manually, page 4-13 Booting a Specific Software Image, page 4-13 Controlling Environment Variables, page 4-14
See also Switch Stack Configuration Files section on page 5-12 and Appendix B, Working with the Cisco IOS File System, Configuration Files, and Software Images, for information about switch stack configuration files.
4-11
Default Setting The switch attempts to automatically boot the system using information in the BOOT environment variable. If the variable is not set, the switch attempts to load and execute the first executable image it can by performing a recursive, depth-first search throughout the flash file system. The Cisco IOS image is stored in a directory that has the same name as the image file (excluding the .bin extension). In a depth-first search of a directory, each encountered subdirectory is completely searched before continuing the search in the original directory.
Configuration file
Configured switches use the config.text file stored on the system board in flash memory. A new switch has no configuration file.
Note
This command only works properly from a standalone switch. Beginning in privileged EXEC mode, follow these steps to specify a different configuration filename:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the configuration file to load during the next boot cycle. For file-url, specify the path (directory) and the configuration filename. Filenames and directory names are case sensitive.
Step 3
end
4-12
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Modifying the Startup Configuration
Command
Step 4
Purpose Verify your entries. The boot config-file global configuration command changes the setting of the CONFIG_FILE environment variable.
show boot
Step 5
To return to the default setting, use the no boot config-file global configuration command.
Booting Manually
By default, the switch automatically boots; however, you can configure it to manually boot.
Note
This command only works properly from a standalone switch. Beginning in privileged EXEC mode, follow these steps to configure the switch to manually boot during the next boot cycle:
Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enable the switch to manually boot during the next boot cycle. Return to privileged EXEC mode. Verify your entries. The boot manual global command changes the setting of the MANUAL_BOOT environment variable. The next time you reboot the system, the switch is in boot loader mode, shown by the switch: prompt. To boot the system, use the boot filesystem:/file-url boot loader command.
For filesystem:, use flash: for the system board flash device. For file-url, specify the path (directory) and the name of the bootable image.
To disable manual booting, use the no boot manual global configuration command.
4-13
Note
This command only works properly from a standalone switch. Beginning in privileged EXEC mode, follow these steps to configure the switch to boot a specific image during the next boot cycle:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure the switch to boot a specific image in flash memory during the next boot cycle.
For filesystem:, use flash: for the system board flash device. For file-url, specify the path (directory) and the name of the bootable image.
Return to privileged EXEC mode. Verify your entries. The boot system global command changes the setting of the BOOT environment variable. During the next boot cycle, the switch attempts to automatically boot the system using information in the BOOT environment variable.
Step 5
To return to the default setting, use the no boot system global configuration command.
4-14
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Modifying the Startup Configuration
Data that controls code, which does not read the Cisco IOS configuration file. For example, the name of a boot loader helper file, which extends or patches the functionality of the boot loader can be stored as an environment variable. Data that controls code, which is responsible for reading the Cisco IOS configuration file. For example, the name of the Cisco IOS configuration file can be stored as an environment variable.
You can change the settings of the environment variables by accessing the boot loader or by using Cisco IOS commands. Under normal circumstances, it is not necessary to alter the setting of the environment variables.
Note
For complete syntax and usage information for the boot loader commands and environment variables, refer to the command reference for this release. Table 4-4 describes the function of the most common environment variables.
Table 4-4
Environment Variables
Variable BOOT
A semicolon-separated list of executable files to Specifies the Cisco IOS image to load during the next boot cycle. This command changes the try to load and execute when automatically booting. If the BOOT environment variable is not setting of the BOOT environment variable. set, the system attempts to load and execute the first executable image it can find by using a recursive, depth-first search through the flash file system. If the BOOT variable is set but the specified images cannot be loaded, the system attempts to boot the first bootable file that it can find in the flash file system. MANUAL_BOOT set MANUAL_BOOT yes Decides whether the switch automatically or manually boots. Valid values are 1, yes, 0, and no. If it is set to no or 0, the boot loader attempts to automatically boot the system. If it is set to anything else, you must manually boot the switch from the boot loader mode. CONFIG_BUFSIZE set CONFIG_BUFSIZE size Changes the buffer size that Cisco IOS uses to hold a copy of the configuration file in memory. The configuration file cannot be larger than the buffer size allocation. The range is from 4096 to 524288 bytes. boot manual Enables manually booting the switch during the next boot cycle and changes the setting of the MANUAL_BOOT environment variable. The next time you reboot the system, the switch is in boot loader mode. To boot the system, use the boot flash:filesystem:/file-url boot loader command, and specify the name of the bootable image. boot buffersize size Specifies the size of the file system-simulated NVRAM in flash memory. The buffer holds a copy of the configuration file in memory. This command changes the setting of the CONFIG_BUFSIZE environment variable. You must reload the switch by using the reload privileged EXEC command for this command to take effect.
4-15
Table 4-4
Variable CONFIG_FILE
Changes the filename that Cisco IOS uses to read Specifies the filename that Cisco IOS uses to read and write a nonvolatile copy of the system and write a nonvolatile copy of the system configuration. configuration. This command changes the CONFIG_FILE environment variable. SWITCH_NUMBER set SWITCH_NUMBER stack-member-number switch current-stack-member-number renumber Changes the member number of a stack member. new-stack-member-number Changes the member number of a stack member. SWITCH_PRIORITY set SWITCH_PRIORITY stack-member-number Changes the priority value of a stack member. switch stack-member-number priority priority-number Changes the priority value of a stack member.
Note
reload in [hh:]mm [text] This command schedules a reload of the software to take affect in the specified minutes or hours and minutes. The reload must take place within approximately 24 days. You can specify the reason for the reload in a string up to 255 characters in length. To reload a specific switch in a switch stack, use the reload slot stack-member-number privileged EXEC command.
reload at hh:mm [month day | day month] [text] This command schedules a reload of the software to take place at the specified time (using a 24-hour clock). If you specify the month and day, the reload is scheduled to take place at the specified time and date. If you do not specify the month and day, the reload takes place at the specified time on the current day (if the specified time is later than the current time) or on the next day (if the specified time is earlier than the current time). Specifying 00:00 schedules the reload for midnight.
4-16
78-16180-02
Chapter 4
Assigning the Switch IP Address and Default Gateway Scheduling a Reload of the Software Image
Note
Use the at keyword only if the switch system clock has been set (through Network Time Protocol (NTP), the hardware calendar, or manually). The time is relative to the configured time zone on the switch. To schedule reloads across several switches to occur simultaneously, the time on each switch must be synchronized with NTP.
The reload command halts the system. If the system is not set to manually boot, it reboots itself. Use the reload command after you save the switch configuration information to the startup configuration (copy running-config startup-config). If your switch is configured for manual booting, do not reload it from a virtual terminal. This restriction prevents the switch from entering the boot loader mode and thereby taking it from the remote users control. If you modify your configuration file, the switch prompts you to save the configuration before reloading. During the save operation, the system requests whether you want to proceed with the save if the CONFIG_FILE environment variable points to a startup configuration file that no longer exists. If you proceed in this situation, the system enters setup mode upon reload. This example shows how to reload the software on the switch on the current day at 7:30 p.m:
Switch# reload at 19:30 Reload scheduled for 19:30:00 UTC Wed Jun 5 1996 (in 2 hours and 25 minutes) Proceed with reload? [confirm]
This example shows how to reload the software on the switch at a future time:
Switch# reload at 02:00 jun 20 Reload scheduled for 02:00:00 UTC Thu Jun 20 1996 (in 344 hours and 53 minutes) Proceed with reload? [confirm]
To cancel a previously scheduled reload, use the reload cancel privileged EXEC command.
4-17
4-18
78-16180-02
C H A P T E R
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Switch Stacks, page 5-1 Assigning Stack Member Information, page 5-17 Accessing the CLI of a Specific Stack Member, page 5-19 Displaying Switch Stack Information, page 5-20
For other switch stack-related information, such as cabling the switches through their StackWise ports and using the LEDs to display switch stack status, refer to the hardware installation guide.
System-level (global) features that apply to all stack members Interface-level features for each stack member
A switch stack is identified in the network by its bridge ID and, if the switch stack is operating as a Layer 3 device, its router MAC address. The bridge ID and router MAC address are determined by the MAC address of the stack master. Every stack member is uniquely identified by its own stack member number. All stack members are eligible stack masters. If the stack master becomes unavailable, the remaining stack members participate in electing a new stack master from among themselves. A set of factors determine which switch is elected the stack master. One of the factors is the stack member priority value. The switch with the highest priority value becomes the stack master.
5-1
The system-level features supported on the stack master are supported on the entire switch stack. If the switch stack must have switches running both standard multilayer image (SMI) and enhanced multilayer image (EMI) software, we recommend that a switch running the EMI software be the stack master. EMI features are unavailable if the stack master is running the SMI software. Similarly, we recommend that a switch running the cryptographic (that is, supports encryption) version of the SMI or EMI software be the stack master. Encryption features are unavailable if the stack master is running the noncryptographic version of the SMI or EMI software. The stack master contains the saved and running configuration files for the switch stack. The configuration files include the system-level settings for the switch stack and the interface-level settings for each stack member. Each stack member has a current copy of these files for back-up purposes. You manage the switch stack through a single IP address. The IP address is a system-level setting and is not specific to the stack master or to any other stack member. You can manage the stack through the same IP address even if you remove the stack master or any other stack member from the stack. You can use these methods to manage switch stacks:
Cluster Management Suite (CMS) software through a supported browser session Command-line interface (CLI) over a serial connection to the console port of any stack member A network management application through the Simple Network Management Protocol (SNMP) CiscoWorks network management software These concepts on how switch stacks are formed:
Switch Stack Membership, page 5-3 Stack Master Election and Re-Election, page 5-4
These concepts on how switch stacks and stack members are configured:
Switch Stack Bridge ID and Router MAC Address, page 5-5 Stack Member Numbers, page 5-6 Stack Member Priority Values, page 5-7 Switch Stack Offline Configuration, page 5-7 Hardware Compatibility in Switch Stacks, page 5-10 Software Compatibility in Switch Stacks, page 5-10 Switch Stack Configuration Files, page 5-12 Additional Considerations for System-Wide Configuration on Switch Stacks, page 5-13 Switch Stack Management Connectivity, page 5-14 Switch Stack Configuration Scenarios, page 5-15
Note
A switch stack is different from a switch cluster. A switch cluster is a set of switches connected through their LAN ports, such as the 10/100/1000 ports. For more information about how switch stacks differ from switch clusters, see the Switch Clusters and Switch Stacks section on page 6-14.
5-2
78-16180-02
Chapter 5
Note
Make sure the switches that you add to or remove from the switch stack are powered off. After adding or removing stack members, make sure that the switch stack is operating at full bandwidth (32 Gbps). Press the Mode button on a stack member until the Stack mode LED is on. The last two port LEDs on all switches in the stack should be green. Depending on the switch model, the last two ports are either 10/100/1000 ports or small form-factor pluggable (SFP) module ports. If, on any of the switches, one or both of the last two port LEDs are not green, the stack is not operating at full bandwidth.
Adding powered-on switches (merging) causes the stack masters of the merging switch stacks to elect a stack master from among themselves. The re-elected stack master retains its role and configuration and so do its stack members. All remaining switches, including the former stack masters, reload and join the switch stack as stack members. They change their stack member numbers to the lowest available numbers and use the stack configuration of the re-elected stack master. Removing powered-on stack members causes the switch stack to divide (partition) into two or more switch stacks, each with the same configuration. This can cause an IP address configuration conflict in your network. If you want the switch stacks to remain separate, change the IP address or addresses of the newly created switch stacks. If you did not intend to partition the switch stack:
a. Power off the newly created switch stacks. b. Reconnect them to the original switch stack through their StackWise ports. c. Power on the switches.
For more information about cabling and powering switch stacks, refer to the Switch Installation chapter in the hardware installation guide.
5-3
Figure 5-1
Stack member 1
Stack member 1
Stack member 1 Stack member 2 and stack master Stack member 3 Stack member 1
Stack member 3
The switch that is currently the stack master. The switch with the highest stack member priority value.
Note
We recommend assigning the highest priority value to the switch that you prefer to be the stack master. This ensures that the switch is re-elected as stack master if a re-election occurs.
3. 4.
The switch not using the default interface-level configuration. The switch with the higher priority switch software version. These switch software versions are ordered from highest to lowest priority:
1. 2. 3. 4.
Cryptographic EMI software Noncryptographic EMI software Cryptographic SMI software Noncryptographic SMI software
The Catalyst 3750 EMI cryptographic image has a higher priority than the Catalyst 3750 SMI image during the master switch election in a stack. However, when two or more switches in the stack use different software images, such as the SMI image for Cisco IOS Release 12.1(11)AX and the
5-4
78-16180-02
Chapter 5
cryptographic EMI for Cisco IOS Release 12.1(19)EA1 or later, the switch running the SMI is selected as the stack master. This occurs because the switch running the cryptographic EMI takes 10 seconds longer to start than does the switch running the SMI. The switch running the EMI is excluded from the master election process that lasts 10 seconds. To avoid this problem, upgrade the switch running the SMI to a software release later than Cisco IOS Release 12.1(11)AX or manually start the master switch and wait at least 8 seconds before starting the new member switch.
5. 6.
The switch with the longest system up-time. The switch with the lowest MAC address. The switch stack is reset.* The stack master is removed from the switch stack. The stack master is reset or powered off. The stack master has failed. The switch stack membership is increased by adding powered-on standalone switches or switch stacks.*
A stack master retains its role unless one of these events occurs:
In the events marked by an asterisk (*), the current stack master might be re-elected based on the listed factors. When you power on or reset an entire switch stack, some stack members might not participate in the stack master election. Stack members that are powered on within the same 10-second time frame participate in the stack master election and have a chance to become the stack master. Stack members that are powered on after the 10-second time frame do not participate in this initial election and only become stack members. All stack members participate in re-elections. For all powering considerations that affect stack-master elections, refer to the Switch Installation chapter in the hardware installation guide. The new stack master becomes available after a few seconds. In the meantime, the switch stack uses the forwarding tables in memory to minimize network disruption. The physical interfaces on the other available stack members are not affected while a new stack master is elected and is resetting. If a new stack master is elected and the previous stack master becomes available, the previous stack master does not resume its role as stack master. As described in the hardware installation guide, you can use the Master LED on the switch to see if the switch is the stack master.
5-5
If you manually change the stack member number by using the switch current-stack-member-number renumber new-stack-member-number global configuration command, the new number goes into effect after that stack member resets (or after you use the reload slot stack-member-number privileged EXEC command) and only if that number is not already assigned to any other members in the stack. For more information, see the Assigning a Stack Member Number section on page 5-17. Another way to change the stack member number is by changing the SWITCH_NUMBER environment variable, as explained in the Controlling Environment Variables section on page 4-14. If the number is being used by another member in the stack, the switch selects the lowest available number in the stack. If you manually change the number of a stack member and no interface-level configuration is associated with that new member number, that stack member resets to its default configuration. For more information about stack member numbers and configurations, see the Switch Stack Configuration Files section on page 5-12. You cannot use the switch current-stack-member-number renumber new-stack-member-number global configuration command on a provisioned switch. If you do, the command is rejected.
If you move a stack member to a different switch stack, the stack member retains its number only if the number is not being used by another member in the stack. If it is being used by another member in the stack, the switch selects the lowest available number in the stack. If you merge switch stacks, the switches that join the switch stack of a new stack master select the the lowest available numbers in the stack. For more information about merging switch stacks, see the Switch Stack Membership section on page 5-3).
As described in the hardware installation guide, you can use the switch port LEDs in Stack mode to visually determine the stack member number of each stack member.
5-6
78-16180-02
Chapter 5
Note
We recommend assigning the highest priority value to the switch that you prefer to be the stack master. This ensures that the switch is re-elected as stack master if a re-election occurs. You can change the priority value for a stack member by using the switch stack-member-number priority new-priority-value global configuration command. For more information, see the Setting the Stack Member Priority Value section on page 5-18. Another way to change the member priority value is by changing the SWITCH_PRIORITY environment variable, as explained in the Controlling Environment Variables section on page 4-14. The new priority value takes effect immediately but does not affect the current stack master. The new priority value helps determine which stack member is elected as the new stack master when the current stack master or the switch stack resets.
5-7
Scenario The stack member numbers and the switch types match.
1.
Result If the stack member number of the provisioned switch matches the stack member number in the provisioned configuration on the stack, and If the switch type of the provisioned switch matches the switch type in the provisioned configuration on the stack. If the stack member number of the provisioned switch matches the stack member number in the provisioned configuration on the stack, but The switch type of the provisioned switch does not match the switch type in the provisioned configuration on the stack. The switch stack applies the default configuration to the provisioned switch and adds it to the stack. The provisioned configuration is changed to reflect the new information. The switch stack applies the provisioned configuration to the provisioned switch and adds it to the stack.
2.
The stack member numbers match but the switch types do not match.
1.
2.
The switch stack applies the default configuration to the provisioned switch and adds it to the stack. The provisioned configuration is changed to reflect the new information.
5-8
78-16180-02
Chapter 5
Table 5-1
Results of Comparing the Provisioned Configuration with the Provisioned Switch (continued)
Scenario The stack member number of the provisioned switch is in conflict with an existing stack member. The stack master assigns a new stack member number to the provisioned switch.
Result The switch stack applies the provisioned configuration to the provisioned switch The stack member numbers and the switch types and adds it to the stack. match: The provisioned configuration is changed to reflect the new information. 1. If the new stack member number of the provisioned switch matches the stack member number in the provisioned configuration on the stack, and
2.
If the switch type of the provisioned switch matches the switch type in the provisioned configuration on the stack. The switch stack applies the default configuration to the provisioned switch and adds it to the stack. The provisioned configuration is changed to reflect the new information.
The stack member numbers match, but the switch types do not match:
1.
If the stack member number of the provisioned switch matches the stack member number in the provisioned configuration on the stack, but The switch type of the provisioned switch does not match the switch type in the provisioned configuration on the stack.
2.
The stack member number of the provisioned switch is not found in the provisioned configuration.
The switch stack applies the default configuration to the provisioned switch and adds it to the stack.
If you add a provisioned switch that is a different type than specified in the provisioned configuration to a powered-down switch stack and then apply power, the switch stack rejects the (now incorrect) switch stack-member-number provision type global configuration command in the startup configuration file. However, during stack initialization, the nondefault interface configuration information in the startup configuration file for the provisioned interfaces (potentially of the wrong type) are executed. Depending on how different the actual switch type is from the previously provisioned switch type, some commands are rejected, and some commands are accepted. For example, suppose the switch stack is provisioned for a 48-port switch with Power over Ethernet (PoE), the configuration is saved, and the stack is powered down. Then, a 24-port switch without PoE support is connected to the switch stack, and the stack is powered up. In this situation, the configuration for ports 25 through 48 is rejected, and error messages appear on the stack master switch console during initialization. In addition, any configured PoE-related commands that are valid only on PoE-capable interfaces are rejected, even for ports 1 through 24.
Note
If the switch stack is running Cisco IOS Release 12.2(20)SE or later and does not contain a provisioned configuration for a new switch, the switch joins the stack with the default interface configuration. The switch stack then adds to its running configuration a switch stack-member-number provision type global configuration command that matches the new switch.
5-9
For configuration information, see the Provisioning a New Member for a Switch Stack section on page 5-18.
Note
Version mismatch (VM) mode has priority over SDM mismatch mode. If a VM mode condition and an SDM mismatch mode exist, the switch stack attempts to resolve the VM mode condition first. You can use the show switch privileged EXEC command to see if any stack members are in SDM mismatch mode. For more information about SDM templates and SDM mismatch mode, see the Chapter 8, Configuring SDM Templates.
Compatibility Recommendations, page 5-11 Incompatible Software and Stack Member Image Upgrades, page 5-11 Stack Protocol Version Compatibility, page 5-11
5-10
78-16180-02
Chapter 5
To ensure complete compatibility between stack members, use the information in this section and in the Hardware Compatibility in Switch Stacks section on page 5-10.
Compatibility Recommendations
All stack members must run the same Cisco IOS software version to ensure compatibility between stack members. Follow these recommendations:
The Cisco IOS software version on all stack members, including the stack master, should be the same. This helps ensure full compatibility in the stack protocol version among the stack members. For example, all stack members should have the EMI Cisco IOS Release 12.1(14)EA1 installed. If your switch stack must have switches running SMI and EMI software, the switch running the EMI software should be the stack master. EMI features become unavailable to all stack members if the stack master is running the SMI software. At least two stack members should have the EMI software installed to ensure redundant support of the EMI features. The EMI has precedence over the SMI during stack master election, assuming that the priority value of the stack members are the same. If the EMI stack master fails, the other stack member running the EMI software becomes the stack master. When a switch running the EMI joins a switch stack running the SMI of the same version, the EMI switch does not automatically become the stack master. If you want the EMI switch to become the stack master, reset the current SMI stack master by using the reload slot stack-member-number privileged EXEC command. The EMI switch is elected the stack master, assuming its priority value is higher or the same as the other stack members.
Major Incompatibility Between Switches, page 5-12 Minor Incompatibility Between Switches, page 5-12
5-11
If there is a stack member that is not in VM mode and is running software that can also run on the switch in VM mode, the stack master uses that software to upgrade (or downgrade) the software on the switch in VM mode. The switch in VM mode automatically reloads and joins the stack as a fully functioning member. The stack master does not automatically install EMI software on an SMI-running switch or SMI software on an EMI-running switch.
If none of the stack members are running software that can be installed on the switch in VM mode, the stack master scans the switch stack to see if there are any other recommended actions. Recommended actions appear in the system message log. If there are no other actions to try, the stack master displays the recommended action to upgrade the software running on the switch stack.
The port LEDs on switches in VM mode remain off and pressing the Mode button does not change the LED mode. You can also use the show switch user EXEC command to see if any stack members are in VM mode.
System-level (global) configuration settingssuch as IP, STP, VLAN, and SNMP settingsthat apply to all stack members Stack member interface-specific configuration settings, which are specific for each stack member
The stack master has the saved and running configuration files for the switch stack. All stack members periodically receive synchronized copies of the configuration files from the stack master. If the stack master becomes unavailable, any stack member assuming the role of stack master has the latest configuration files.
Note
We recommend that all stack members are installed with Cisco IOS Release 12.1(14)EA1 or later to ensure that the interface-specific settings of the stack master are saved, in case the stack master is replaced without saving the running configuration to the startup configuration. When a new, out-of-box switch joins a switch stack, it uses the system-level settings of that switch stack. If a switch is moved to a different switch stack, that switch loses its saved configuration file and uses the system-level configuration of the new switch stack.
5-12
78-16180-02
Chapter 5
The interface-specific configuration of each stack member is associated with the stack member number. As mentioned in the Stack Member Numbers section on page 5-6, stack members retain their numbers unless they are manually changed or they are already used by another member in the same switch stack.
If an interface-specific configuration does not exist for that member number, the stack member uses its default interface-specific configuration. If an interface-specific configuration exists for that member number, the stack member uses the interface-specific configuration associated with that member number.
If a stack member fails and you replace with it with an identical model, the replacement switch automatically uses the same interface-specific configuration as the failed switch. Hence, you do not need to reconfigure the interface settings. The replacement switch must have the same stack member number as the failed switch. For information about the benefits of provisioning a switch stack, see the Switch Stack Offline Configuration section on page 5-7. You back up and restore the stack configuration in the same way as you would for a standalone switch configuration. For more information about file systems and configuration files, see Appendix B, Working with the Cisco IOS File System, Configuration Files, and Software Images.
Switch Clusters and Switch Stacks section on page 6-14 MAC Addresses and Switch Stacks section on page 7-22 Setting the SDM Template section on page 8-4 802.1x and Switch Stacks section on page 10-10 VTP and Switch Stacks section on page 14-6 Private VLANs and Switch Stacks section on page 15-5 Spanning Tree and Switch Stacks section on page 17-12 MSTP and Switch Stacks section on page 18-6 DHCP Snooping and Switch Stacks section on page 21-6 IGMP Snooping and Switch Stacks section on page 23-6 Port Security and Switch Stacks section on page 24-15 CDP and Switch Stacks section on page 25-2 SPAN and RSPAN and Switch Stacks section on page 27-10 ACLs and Switch Stacks section on page 31-6 EtherChannel and Switch Stacks section on page 33-9 IP Routing and Switch Stacks section on page 34-3 HSRP and Switch Stacks section on page 35-2 Multicast Routing and Switch Stacks section on page 36-8 Fallback Bridging and Switch Stacks section on page 38-3
5-13
Connectivity to the Switch Stack Through an IP Address, page 5-14 Connectivity to the Switch Stack Through an SSH Session, page 5-14 Connectivity to the Switch Stack Through Console Ports, page 5-14 Connectivity to Specific Stack Members, page 5-14
Note
Stack members retain their IP addresses when you remove them from a switch stack. To avoid a conflict by having two devices with the same IP address in your network, change the IP address or addresses of the switch that you removed from the switch stack. For related information about switch stack configurations, see the Switch Stack Configuration Files section on page 5-12.
5-14
78-16180-02
Chapter 5
To debug a specific stack member, you can access it from the stack master by using the session stack-member-number privileged EXEC command. The stack member number is appended to the system prompt. For example, Switch-2# is the prompt in privileged EXEC mode for stack member 2, and the system prompt for the stack master is Switch. Only the show and debug commands are available in a CLI session to a specific stack member.
Scenario Stack master election Connect two powered-on switch stacks specifically determined through the StackWise ports. by existing stack masters Stack master election specifically determined by the stack member priority value
1. 2.
Result Only one of the two stack masters becomes the new stack master. None of the other stack members become the stack master. The stack member with the higher priority value is elected stack master.
Connect two switches through their StackWise ports. Use the switch stack-member-number priority new-priority-number global configuration command to set one stack member with a higher member priority value. Restart both stack members at the same time.
3.
Assuming that both stack members have the The stack member with the saved configuration file same priority value: is elected stack master.
1.
Make sure that one stack member has a default configuration and that the other stack member has a saved (nondefault) configuration file. Restart both stack members at the same time.
2.
Assuming that all stack members have the The stack member with the cryptographic EMI Stack master election same priority value: software is elected stack master. specifically determined by the cryptographic EMI 1. Make sure that one stack member has software the cryptographic EMI software installed and that the other stack member has the noncryptographic EMI software installed.
2.
5-15
Table 5-2
Scenario Stack master election specifically determined by the EMI software Assuming that all stack members have the same priority value:
1.
Result The stack member with the noncryptographic EMI software is elected stack master.
Make sure that one stack member has the noncryptographic EMI software installed and that the other stack member has the cryptographic SMI software installed. Restart both stack members at the same time.
2.
Assuming that all stack members have the The stack member with the cryptographic SMI Stack master election same priority value: specifically determined software is elected stack master. by the cryptographic SMI 1. Make sure that one stack member has software the cryptographic SMI software installed and that the other stack member has the noncryptographic SMI software installed.
2.
Stack master election specifically determined by the MAC address Stack member number conflict
Assuming that both stack members have the The stack member with the lower MAC address is same priority value, configuration file, and elected stack master. software image, restart both stack members at the same time. Assuming that one stack member has a higher priority value than the other stack member:
1.
The stack member with the higher priority value retains its stack member number. The other stack member has a new stack member number.
Ensure that both stack members have the same stack member number. If necessary, use the switch current-stack-member-number renumber new-stack-member-number global configuration command. Restart both stack members at the same time. Power off the new switch.
2.
The stack master is retained. The new switch is added to the switch stack. 2. Through their StackWise ports, connect the new switch to a powered-on switch stack.
1. 3.
5-16
78-16180-02
Chapter 5
Table 5-2
Scenario Stack master failure Remove (or power off) the stack master.
Result Based on the factors described in the Stack Master Election and Re-Election section on page 5-4, one of the remaining stack members becomes the new stack master. All other stack members in the stack remain as stack members and do not reboot.
Through their StackWise ports, connect Two switches become stack masters. One stack master has nine stack members. The other stack ten switches. master remains as a standalone switch. 2. Power on all switches. Use the Mode button and port LEDs on the switches to identify which switches are stack masters and which switches belong to which stack master. For information about using the Mode button and the LEDs, refer to the hardware installation guide.
1.
Default Switch Stack Configuration, page 5-17 Assigning a Stack Member Number, page 5-17 (optional) Setting the Stack Member Priority Value, page 5-18 (optional) Provisioning a New Member for a Switch Stack, page 5-18 (optional)
Feature Stack member number Stack member priority value Offline configuration
5-17
Beginning in privileged EXEC mode, follow these steps to assign a member number to a stack member. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the current stack member number and the new stack member number for the stack member. The range is 1 to 9. You can display the current stack member number by using the show switch user EXEC command.
Return to privileged EXEC mode. Reset the stack member, and apply this configuration change. Verify the stack member number. (Optional) Save your entries in the configuration file.
This task is available only from the stack master. Beginning in privileged EXEC mode, follow these steps to assign a priority value to a stack member: This procedure is optional.
Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the stack member number and the new priority for the stack member. The stack member number range is 1 to 9. The priority value range is 1 to 15. You can display the current priority value by using the show switch user EXEC command. The new priority value takes effect immediately but does not affect the current stack master. The new priority value helps determine which stack member is elected as the new stack master when the current stack master or switch stack resets.
end reload slot stack-member-number show switch stack-member-number copy running-config startup-config
Return to privileged EXEC mode. Reset the stack member, and apply this configuration change. Verify the stack member priority value. (Optional) Save your entries in the configuration file.
5-18
78-16180-02
Chapter 5
Beginning in privileged EXEC mode, follow these steps to provision a new member for a switch stack. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Display summary information about the switch stack. Enter global configuration mode. Specify the stack member number for the preconfigured switch. By default, no switches are provisioned. For stack-member-number, the range is 1 to 9. Specify a stack member number that is not already used in the switch stack. See Step 1. For type, enter the model number of a supported switch that is listed in the command-line help strings.
Return to privileged EXEC mode. Verify the correct numbering of interfaces in the running configuration file. Verify the status of the provisioned switch. For stack-member-number, enter the same number as in Step 2. (Optional) Save your entries in the configuration file.
To remove provisioned information and to avoid receiving an error message, remove the specified switch from the stack before you use the no form of this command. This example shows how to provision a Catalyst 3750G-12S switch with a stack member number of 2 for the switch stack. The show running-config command output shows the interfaces associated with the provisioned switch:
Switch(config)# switch 2 provision WS-C3750G-12S Switch(config)# end Switch# show running-config | include switch 2 ! interface GigabitEthernet2/0/1 ! interface GigabitEthernet2/0/2 ! interface GigabitEthernet2/0/3 <output truncated>
This task is available only from the stack master. This task is only for debugging purposes. You can access all or specific stack members by using the remote command {all | stack-member-number } privileged EXEC command. The stack member number range is 1 to 9. You can access specific stack members by using the session stack-member-number privileged EXEC command. The stack member number range is 1 to 9. The stack member number is appended to the system prompt. For example, Switch-2# is the prompt in privileged EXEC mode for stack member 2, and the system prompt for the stack master is Switch. Enter exit to return to the CLI session on the stack master. Only the show and debug commands are available in a CLI session to a specific stack member.
5-19
Command show platform stack-manager all show switch show switch stack-member-number show switch detail show switch neighbors show switch stack-ports show switch stack-ring activity [detail]
Description Displays all switch stack information. 'Displays summary information about the switch stack, including the status of provisioned switches. Displays information about a specific member. Displays detailed information about the stack ring. Display the neighbors for the entire switch stack. Displays port information for the entire switch stack. Displays the number of frames per stack member that are sent to the stack ring. Use the detail keyword to display the ASIC, the receive queues, and the number of frames per stack member that are sent to the stack ring.
5-20
78-16180-02
C H A P T E R
Clustering Switches
This chapter provides the concepts and procedures to create and manage Catalyst 3750 switch clusters. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
This chapter focuses on Catalyst 3750 switch clusters. It also includes guidelines and limitations for clusters mixed with other cluster-capable Catalyst switches, but it does not provide complete descriptions of the cluster features for these other switches. For complete cluster information for a specific Catalyst platform, refer to the software configuration guide for that switch. This chapter consists of these sections:
Understanding Switch Clusters, page 6-2 Planning a Switch Cluster, page 6-4 Creating a Switch Cluster, page 6-17
Note
Configuring switch clusters is more easily done from the Cluster Management Suite (CMS) web-based interface than through the command-line interface (CLI). Therefore, information in this chapter focuses on using CMS to create a cluster. See Chapter 3, Getting Started with CMS, for additional information about switch clusters and the clustering options. For complete procedures about using CMS to configure switch clusters, refer to the online help. For the CLI cluster commands, refer to the switch command reference.
Verifying a Switch Cluster, page 6-22 Using the CLI to Manage Switch Clusters, page 6-23 Using SNMP to Manage Switch Clusters, page 6-24
Note
We do not recommend using the ip http access-class global configuration command to limit access to specific hosts or networks. Access should be controlled through the cluster command switch or by applying access control lists (ACLs) on interfaces that are configured with IP address. For more information on ACLs, see Chapter 31, Configuring Network Security with ACLs..
6-1
Clustering Switches
Note
A switch cluster is different from a switch stack. A switch stack is a set of Catalyst 3750 switches connected through their stack ports. For more information about how switch stacks differ from switch clusters, see the Switch Clusters and Switch Stacks section on page 6-14. The benefits of clustering switches include:
Management of Catalyst switches regardless of their interconnection media and their physical locations. The switches can be in the same location, or they can be distributed across a Layer 2 or Layer 3 (if your cluster is using a Catalyst 3550, Catalyst 3560, or Catalyst 3750 switch as a Layer 3 router between the Layer 2 switches in the cluster) network. Cluster members are connected to the cluster command switch according to the connectivity guidelines described in the Automatic Discovery of Cluster Candidates and Members section on page 6-5. This section includes management VLAN considerations for the Catalyst 1900, Catalyst 2820, Catalyst 2900 XL, Catalyst 2950, and Catalyst 3500 XL switches. For complete information about these switches in a switch-cluster environment, refer to the software configuration guide for that specific switch.
Command-switch redundancy if a cluster command switch fails. One or more switches can be designated as standby cluster command switches to avoid loss of contact with cluster members. A cluster standby group is a group of standby cluster command switches. Management of a variety of Catalyst switches through a single IP address. This conserves on IP addresses, especially if you have a limited number of them. All communication with the switch cluster is through the cluster command switch IP address.
Refer to the release notes for the 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. These sections describe:
Cluster Command Switch Characteristics, page 6-3 Standby Cluster Command Switch Characteristics, page 6-3 Candidate Switch and Cluster Member Switch Characteristics, page 6-4
6-2
78-16180-02
Chapter 6
It is running Cisco IOS Release 12.1(11)AX or later. It has an IP address. It has Cisco Discovery Protocol (CDP) version 2 enabled (the default). It is not a command or cluster member switch of another cluster. It is connected to the standby cluster command switches through the management VLAN and to the cluster member switches through a common VLAN.
Note
If your switch cluster has a Catalyst 3750 switch or switch stack, it must be the cluster command switch.
It is running Cisco IOS Release 12.1(11)AX or later. It has an IP address. It has CDP version 2 enabled. It is connected to the command switch and to other standby command switches through its management VLAN. It is connected to all other cluster member switches (except the cluster command and standby command switches) through a common VLAN. It is redundantly connected to the cluster so that connectivity to cluster member switches is maintained. It is not a command or member switch of another cluster.
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 3750 switch, the standby cluster command switches must also be Catalyst 3750 switches. Refer to the switch configuration guide of other cluster-capable switches for their requirements on standby cluster command switches.
6-3
Clustering Switches
It is running cluster-capable software. It has CDP version 2 enabled. It is not a command or cluster member switch of another cluster. If a cluster standby group exists, it is connected to every standby cluster command switch through at least one common VLAN. The VLAN to each standby cluster command switch can be different. It is connected to the cluster command switch through at least one common VLAN.
Note
Catalyst 1900, Catalyst 2820, Catalyst 2900 XL, Catalyst 2950, and Catalyst 3500 XL candidate and cluster member switches must be connected through their management VLAN to the cluster command switch and standby cluster command switches. For complete information about these switches in a switch-cluster environment, refer to the software configuration guide for that specific switch. This requirement does not apply if you have a Catalyst 2970, Catalyst 3550, Catalyst 3560, or Catalyst 3750 cluster command switch. Candidate and cluster member switches can connect through any VLAN in common with the cluster command switch.
Automatic Discovery of Cluster Candidates and Members, page 6-5 HSRP and Standby Cluster Command Switches, page 6-10 IP Addresses, page 6-13 Host Names, page 6-13 Passwords, page 6-14 SNMP Community Strings, page 6-14 Switch Clusters and Switch Stacks, page 6-14 TACACS+ and RADIUS, page 6-16 Access Modes in CMS, page 6-16 LRE Profiles, page 6-17 Availability of Switch-Specific Features in Switch Clusters, page 6-17
6-4
78-16180-02
Chapter 6
Refer to the release notes for the 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 for the required software versions and browser and Java plug-in configurations.
Note
Do not disable CDP on the cluster command switch, on cluster members, or on any cluster-capable switches that you might want a cluster command switch to discover. For more information about CDP, see Chapter 25, Configuring CDP. Following these connectivity guidelines ensures automatic discovery of the switch cluster, cluster candidates, connected switch clusters, and neighboring edge devices:
Discovery Through CDP Hops, page 6-5 Discovery Through Non-CDP-Capable and Noncluster-Capable Devices, page 6-6 Discovery Through Different VLANs, page 6-7 Discovery Through Different Management VLANs, page 6-7 Discovery Through Routed Ports, page 6-8 Discovery of Newly Installed Switches, page 6-9
Note
A switch stack in a cluster equates to a single cluster member switch. There is a restriction specific to adding cluster members through CMS. For more information, see the Switch Clusters and Switch Stacks section on page 6-14. In Figure 6-1, the cluster command switch has ports assigned to VLANs 16 and 62. The CDP hop count is three. The cluster command switch discovers switches 11, 12, 13, and 14 because they are within three hops from the edge of the cluster. It does not discover switch 15 because it is four hops from the edge of the cluster.
6-5
Clustering Switches
Figure 6-1
Command switch
VLAN 16 Member switch 8 Member switch 9 Switch 11 candidate switch Edge of cluster
Switch 12
Switch 13
Candidate switches
Switch 14
Command switch
101321 89377
Switch 15
Candidate switch
Candidate switch
6-6
78-16180-02
Chapter 6
Note
For additional considerations about VLANs in switch stacks, see the Switch Clusters and Switch Stacks section on page 6-14.
Figure 6-3 Discovery Through Different VLANs
Command switch
VLAN 62
VLAN 62
VLAN 16
6-7
Clustering Switches
Note
If the switch cluster has a Catalyst 3750 switch or switch stack, that switch or switch stack must be the cluster command switch. The cluster command switch and standby command switch in Figure 6-4 (assuming they are Catalyst 2970, Catalyst 3550, Catalyst 3560, or Catalyst 3750 cluster command switches) have ports assigned to VLANs 9, 16, and 62. The management VLAN on the cluster command switch is VLAN 9. Each cluster command switch discovers the switches in the different management VLANs except these:
Switches 7 and 10 (switches in management VLAN 4) because they are not connected through a common VLAN (meaning VLANs 62 and 9) with the cluster command switch Switch 9 because automatic discovery does not extend beyond a noncandidate device, which is switch 7
Discovery Through Different Management VLANs with a Layer 3 Cluster Command Switch
Figure 6-4
Command switch VLAN 9 VLAN 16 VLAN 62 Switch 5 (management VLAN 62) VLAN trunk 4, 62
VLAN 16
Switch 7 (management VLAN 4) Switch 4 (management VLAN 16) VLAN 62 Switch 9 (management VLAN 62)
6-8
101323
78-16180-02
Chapter 6
Figure 6-5
Command switch VLAN 9 RP VLAN 62 VLAN 9 VLAN 62 (management VLAN 62) VLAN 4
101324
RP
One cluster-capable switch and its access port are assigned to VLAN 9. The other cluster-capable switch and its access port are assigned to management VLAN 16.
Discovery of Newly Installed Switches
Figure 6-6
Command switch
6-9
Clustering Switches
For a cluster command switch stack, a standby cluster command switch is necessary if the entire switch stack fails. However, if only the stack master in the command switch stack fails, the switch stack elects a new stack master and resumes its role as the cluster command switch stack. For a cluster command switch that is a standalone switch, configure a standby cluster command switch to take over if the primary cluster command switch fails.
A cluster standby group is a group of command-capable switches that meet the requirements described in the Standby Cluster Command Switch Characteristics section on page 6-3. Only one cluster standby group can be assigned per cluster.
Note
If your switch cluster has a Catalyst 3750 switch or switch stack, it must be the cluster command switch.
Note
The cluster standby group is an HSRP group. Disabling HSRP disables the cluster standby group. The switches in the cluster standby group are ranked according to HSRP priorities. The switch with the highest priority in the group is the active cluster command switch (AC). The switch with the next highest priority is the standby cluster command switch (SC). The other switches in the cluster standby group are the passive cluster command switches (PC). If the active cluster command switch and the standby cluster command switch become disabled at the same time, the passive cluster command switch with the highest priority becomes the active cluster command switch. For the limitations to automatic discovery, see the Automatic Recovery of Cluster Configuration section on page 6-12. For information about changing HSRP priority values, see the Configuring HSRP Priority section on page 35-6. The HSRP standby priority interface configuration commands are the same for changing the priority of cluster standby group members and router-redundancy group members.
Note
The HSRP standby hold time interval should be greater than or equal to three times the hello time interval. The default HSRP standby hold time interval is 10 seconds. The default HSRP standby hello time interval is 3 seconds. For more information about the standby hold time and standby hello time intervals, see the Configuring HSRP Authentication and Timers section on page 35-9. These connectivity guidelines ensure automatic discovery of the switch cluster, cluster candidates, connected switch clusters, and neighboring edge devices. These topics also provide more detail about standby cluster command switches:
Virtual IP Addresses, page 6-11 Other Considerations for Cluster Standby Groups, page 6-11 Automatic Recovery of Cluster Configuration, page 6-12
6-10
78-16180-02
Chapter 6
Virtual IP Addresses
You need to assign a unique virtual IP address and group number and name to the cluster standby group. This information must be configured on a specific VLAN or routed port on the active cluster command switch. The active cluster command switch receives traffic destined for the virtual IP address. To manage the cluster, you must access the active cluster command switch through the virtual IP address, not through the command-switch IP address. This is in case the IP address of the active cluster command switch is different from the virtual IP address of the cluster standby group. If the active cluster command switch fails, the standby cluster command switch assumes ownership of the virtual IP address and becomes the active cluster command switch. The passive switches in the cluster standby group compare their assigned priorities to decide the new standby cluster command switch. The passive standby switch with the highest priority then becomes the standby cluster command switch. When the previously active cluster command switch becomes active again, it resumes its role as the active cluster command switch, and the current active cluster command switch becomes the standby cluster command switch again. For more information about IP address in switch clusters, see the IP Addresses section on page 6-13.
For additional considerations about cluster standby groups in switch stacks, see the Switch Clusters and Switch Stacks section on page 6-14. These requirements also apply:
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 3750 switch, the standby cluster command switches must also be Catalyst 3750 switches. Refer to the switch configuration guide of other cluster-capable switches for their requirements on standby cluster command switches. If your switch cluster has a Catalyst 3750 switch or switch stack, it must be the cluster command switch.
Only one cluster standby group can be assigned to a cluster. You can have more than one router-redundancy standby group. An HSRP group can be both a cluster standby group and a router-redundancy group. However, if a router-redundancy group becomes a cluster standby group, router redundancy becomes disabled on that group. You can re-enable it by using the CLI. For more information about HSRP and router redundancy, see Chapter 35, Configuring HSRP.
Note
There is no limit to the number of switches that you can assign as standby cluster command switches. However, the total number of switches in the clusterwhich would include the active cluster command switch, standby-group members, and cluster member switchescannot be more than 16.
Each standby-group member (Figure 6-7) must be connected to the cluster command switch through the same VLAN. In this example, the cluster command switch and standby cluster command switches are Catalyst 2970, Catalyst 3550, Catalyst 3560, or Catalyst 3750 cluster command switches. Each standby-group member must also be redundantly connected to each other through at least one VLAN in common with the switch cluster.
6-11
Clustering Switches
Catalyst 1900, Catalyst 2820, Catalyst 2900 XL, Catalyst 2950, and Catalyst 3500 XL cluster member switches must be connected to the cluster standby group through their management VLANs. For more information about VLANs in switch clusters, see these sections:
Discovery Through Different VLANs section on page 6-7 Discovery Through Different Management VLANs section on page 6-7 Figure 6-7 VLAN Connectivity between Standby-Group Members and Cluster Members
Command switch
Standby Passive command switch command switch VLANs 9,16 VLANs 9,16 Management VLAN 16
VLAN 9
Management VLAN 9
VLAN 9
Management VLAN 16
VLAN 16
Member switches
This limitation applies only to clusters that have Catalyst 2950, Catalyst 3550, Catalyst 3560, and Catalyst 3750 command and standby cluster command switches: If the active cluster command switch and standby cluster command switch become disabled at the same time, the passive cluster command switch with the highest priority becomes the active cluster command switch. However, because it was a passive standby cluster command switch, the previous cluster command switch did not forward cluster-configuration information to it. The active cluster command switch only forwards cluster-configuration information to the standby cluster command switch. You must therefore rebuild the cluster. This limitation applies to all clusters: If the active cluster command switch fails and there are more than two switches in the cluster standby group, the new cluster command switch does not discover any Catalyst 1900, Catalyst 2820, and Catalyst 2916M XL cluster member switches. You must re-add these cluster member switches to the cluster. This limitation applies to all clusters: If the active cluster command switch fails and becomes active again, it does not discover any Catalyst 1900, Catalyst 2820, and Catalyst 2916M XL cluster member switches. You must again add these cluster member switches to the cluster.
6-12
101326
78-16180-02
Chapter 6
When the previously active cluster command switch resumes its active role, it receives a copy of the latest cluster configuration from the active cluster command switch, including members that were added while it was down. The active cluster command switch sends a copy of the cluster configuration to the cluster standby group.
IP Addresses
You must assign IP information to a cluster command switch. You can assign more than one IP address to the cluster command switch, and you can access the cluster through any of the command-switch IP addresses. If you configure a cluster standby group, you must use the standby-group virtual IP address to manage the cluster from the active cluster command switch. Using the virtual IP address ensures that you retain connectivity to the cluster if the active cluster command switch fails and that a standby cluster command switch becomes the active cluster command switch. If the active cluster command switch fails and the standby cluster command switch takes over, you must either use the standby-group virtual IP address or any of the IP addresses available on the new active cluster command switch to access the cluster. You can assign an IP address to a cluster-capable switch, but it is not necessary. A cluster member switch is managed and communicates with other cluster member switches through the command-switch IP address. If the cluster member switch leaves the cluster and it does not have its own IP address, you then must assign IP information to it to manage it as a standalone switch.
Note
Changing the cluster command switch IP address ends your CMS session on the switch. Restart your CMS session by entering the new IP address in the browser Location field (Netscape Communicator) or Address field (Internet Explorer), as described in the release notes. For more information about IP addresses, see Chapter 4, Assigning the Switch IP Address and Default Gateway.
Host Names
You do not need to assign a host name to either a cluster command switch or an eligible cluster member. However, a host name assigned to the cluster command switch can help to identify the switch cluster. The default host name for the switch is Switch. If a switch joins a cluster and it does not have a host name, the cluster command switch appends a unique member number to its own host name and assigns it sequentially as each switch joins the cluster. The number means the order in which the switch was added to the cluster. For example, a cluster command switch named eng-cluster could name the fifth cluster member eng-cluster-5. If a switch has a host name, it retains that name when it joins a cluster. It retains that host name even after it leaves the cluster. If a switch received its host name from the cluster command switch, was removed from a cluster, was then added to a new cluster, and kept the same member number (such as 5 ), the old host name (such as eng-cluster-5) is overwritten with the host name of the cluster command switch in the new cluster (such as mkg-cluster-5). If the switch member number changes in the new cluster (such as 3), the switch retains the previous name ( eng-cluster-5 ).
6-13
Clustering Switches
Passwords
You do not need to assign passwords to an individual switch if it will be a cluster member. When a switch joins a cluster, it inherits the command-switch password and retains it when it leaves the cluster. If no command-switch password is configured, the cluster member switch inherits a null password. Cluster member switches only inherit the command-switch password. If you change the member-switch password to be different from the command-switch password and save the change, the switch is not manageable by the cluster command switch until you change the member-switch password to match the command-switch password. Rebooting the member switch does not revert the password back to the command-switch password. We recommend that you do not change the member-switch password after it joins a cluster. For more information about passwords, see the Preventing Unauthorized Access to Your Switch section on page 9-1. For password considerations specific to the Catalyst 1900 and Catalyst 2820 switches, refer to the installation and configuration guides for those switches.
command-switch-readonly-community-string @esN, where N is the member-switch number. command-switch-readwrite-community-string@ esN , where N is the member-switch number.
If the cluster command switch has multiple read-only or read-write community strings, only the first read-only and read-write strings are propagated to the cluster member switch. The switches support an unlimited number of community strings and string lengths. For more information about SNMP and community strings, see Chapter 30, Configuring SNMP. For SNMP considerations specific to the Catalyst 1900 and Catalyst 2820 switches, refer to the installation and configuration guides specific to those switches.
Switch Stack Made up of Catalyst 3750 switches only Stack members are connected through StackWise ports
Switch Cluster Made up of cluster-capable switches, such as Catalyst 3750, Catalyst 3550, and Catalyst 2950 switches Cluster members are connected through LAN ports
Requires one stack master and supports up to eight other stack Requires 1 cluster command switch and supports up to members 15 other cluster member switches Can be a cluster command switch or a cluster member switch Cannot be a stack master or stack member
6-14
78-16180-02
Chapter 6
Table 6-1
Switch Stack Stack master is the single point of complete management for all stack members in a particular switch stack
Switch Cluster Cluster command switch is the single point of some management for all cluster members in a particular switch cluster
Back-up stack master is automatically determined in case the Standby cluster command switch must be pre-assigned in case stack master fails the cluster command switch fails Switch stack supports up to eight simultaneous stack master failures Switch cluster supports only one cluster command switch failure at a time
Stack members (as a switch stack) behave and is presented as Cluster members are various, independent switches that are a single, unified system in the network not managed as and do not behave as a unified system Integrated management of stack members through a single configuration file Stack- and interface-level configurations are stored on each stack member New stack members are automatically added to the switch stack Cluster members have separate, individual configuration files Cluster configuration are stored on the cluster command switch and the standby cluster command switch New cluster members must be manually added to the switch cluster
Recall that stack members work together to behave as a unified system (as a single switch stack) in the network and are presented to the network as such by Layer 2 and Layer 3 protocols. Therefore, the switch cluster recognizes switch stacks, not individual stack members, as eligible cluster members. Individual stack members cannot join a switch cluster or participate as separate cluster members. Because a switch cluster must have 1 cluster command switch and can have up to 15 cluster members, a cluster can potentially have up to 16 switch stacks, totalling 144 devices. Cluster configuration of switch stacks is through the stack master.
Note
From the CLI, you can configure a switch cluster to contain up to 16 switch stacks. However, from CMS, the maximum number of actual devices in a switch cluster is 16, irrespective of the number of devices in switch stack cluster members. For example, if a switch stack contains three stack members, they are counted as three separate devices. If you used the CLI to configure a switch cluster that contains more than 16 actual devices and then try to display the cluster from CMS, CMS requires you to remove cluster members until the CMS limit of 16 is reached. These are considerations to keep in mind when you have switch stacks in switch clusters:
If the cluster command switch is not a Catalyst 3750 switch or switch stack and a new stack master is elected in a cluster member switch stack, the switch stack loses its connectivity to the switch cluster if there are no redundant connections between the switch stack and the cluster command switch. You must add the switch stack to the switch cluster. If the cluster command switch is a switch stack and new stack masters are simultaneously elected in the cluster command switch stack and in cluster member switch stacks, connectivity between the switch stacks is lost if there are no redundant connections between the switch stack and the cluster command switch. You must add the switch stacks to the cluster, including the cluster command switch stack.
6-15
Clustering Switches
All stack members should have redundant connectivity to all VLANs in the switch cluster. Otherwise, if a new stack master is elected, stack members connected to any VLANs not configured on the new stack master lose their connectivity to the switch cluster. You must change the VLAN configuration of the stack master or the stack members and add the stack members back to the switch cluster. If a cluster member switch stack reloads and a new stack master is elected, the switch stack loses connectivity with the cluster command switch. You must add the switch stack back to the switch cluster. If a cluster command switch stack reloads, and the original stack master is not re-elected, you must rebuild the entire switch cluster.
For more information about switch stacks, see Chapter 5, Managing Switch Stacks,
Catalyst 2900 XL or Catalyst 3500 XL cluster member switches running Cisco IOS Release 12.0(5)WC2 or earlier Catalyst 2950 cluster member switches running Cisco IOS Release 12.0(5)WC2 or earlier Catalyst 3550 cluster member switches running Cisco IOS Release 12.1(6)EA1 or earlier
Catalyst 1900 and Catalyst 2820 Catalyst 2900 XL switches with 4-MB CPU DRAM
In read-only mode, these switches appear as unavailable devices and cannot be configured from CMS. For more information about CMS access modes, see the Access to Older Switches in a Cluster section on page 3-7.
6-16
78-16180-02
Chapter 6
LRE Profiles
A configuration conflict occurs if a switch cluster has Long-Reach Ethernet (LRE) switches that use both private and public profiles. If one LRE switch in a cluster is assigned a public profile, all LRE switches in that cluster must have that same public profile. Before you add an LRE switch to a cluster, make sure that you assign it the same public profile used by other LRE switches in the cluster. A cluster can have a mix of LRE switches that use different private profiles.
Enabling a Cluster Command Switch, page 6-17 Adding Cluster Member Switches, page 6-18 Creating a Cluster Standby Group, page 6-20
This section assumes you have already connected the switches, as described in the switch hardware installation guide, and followed the guidelines described in the Planning a Switch Cluster section on page 6-4.
Note
Refer to the release notes for the 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 for the required software versions and browser and Java plug-in configurations.
Note
If your switch cluster has a Catalyst 3750 switch or switch stack, it must be the cluster command switch. You can enable a cluster command switch, name the cluster, and assign an IP address and a password to the cluster command switch when you run the setup program during initial switch setup. For information about using the setup program, refer to the release notes.
6-17
Clustering Switches
If you did not enable a cluster command switch during initial switch setup, launch Device Manager from a command-capable switch, and select Cluster > Create Cluster. Enter a cluster number (the default is 0), and use up to 31 characters to name the cluster (Figure 6-8). Instead of using CMS to enable a cluster command switch, you can use the cluster enable global configuration command.
Figure 6-8 Create Cluster Window
This task is available only on the stack master. As explained in the Automatic Discovery of Cluster Candidates and Members section on page 6-5, the cluster command switch automatically discovers candidate switches. When you add new cluster-capable switches to the network, the cluster command switch discovers them and adds them to a list of candidate switches.
Note
A switch stack in a cluster equates to a single cluster member switch. There is a restriction specific to adding cluster members through CMS. From CMS, you can create a switch cluster with up to 15 cluster members. From the CLI, you can create a switch cluster with up to 144 devices. For more information, see the Switch Clusters and Switch Stacks section on page 6-14. To display an updated cluster candidates list from the Add to Cluster window (Figure 6-9), either relaunch CMS and redisplay this window, or follow these steps:
1. 2. 3.
Close the Add to Cluster window. Select View > Refresh. Select Cluster > Add to Cluster to redisplay the Add to Cluster window. Select Cluster > Add to Cluster, select a candidate switch from the list, click Add, and click OK. To add more than one candidate switch, press Ctrl, and make your choices, or press Shift, and choose the first and last switch in a range. Display the Topology view, right-click a candidate-switch icon, and select Add to Cluster (Figure 6-10). In the Topology view, candidate switches are cyan, and cluster member switches are green. To add more than one candidate switch, press Ctrl, and left-click the candidates that you want to add.
6-18
78-16180-02
Chapter 6
Instead of using CMS to add members to the cluster, you can use the cluster member global configuration command from the cluster command switch. Use the password option in this command if the candidate switch has a password. You can select 1 or more switches as long as the total number of switches in the cluster does not exceed 16 (this includes the cluster command switch). When a cluster has 16 members, the Add to Cluster option is not available for that cluster. In this case, you must remove a cluster member switch before adding a new one. If a password has been configured on a candidate switch, you are prompted to enter it before it can be added it to the cluster. If the candidate switch does not have a password, any entry is ignored. If multiple candidates switches have the same password, you can select them as a group, and add them at the same time. If a candidate switch in the group has a password different from the group, only that specific candidate switch is not added to the cluster. When a candidate switch joins a cluster, it inherits the command-switch password. For more information about setting passwords, see the Passwords section on page 6-14. For additional authentication considerations in switch clusters, see the TACACS+ and RADIUS section on page 6-16.
Figure 6-9 Add to Cluster Window
3750G-24T
Select a switch, and click Add. Press Ctrl and leftclick to select more than one switch.
93334
Enter the password of the candidate switch. If no password exists for the switch, leave this field blank.
6-19
Clustering Switches
Figure 6-10 Using the Topology View to Add Cluster Member Switches
stack1 - 4
stack1 - 2
stack1 - 1
stack1 - 3 stack12
Right-click a candidate switch to display the pop-up menu, and select Add to Cluster to add the switch to the cluster.
This task is available only on the stack master. The cluster standby group members must meet the requirements described in the Standby Cluster Command Switch Characteristics section on page 6-3 and HSRP and Standby Cluster Command Switches section on page 6-10. To create a cluster standby group, select Cluster > Standby Command Switches (Figure 6-11). Instead of using CMS to add switches to a standby group and to bind the standby group to a cluster, you can use the standby ip, the standby name, and the standby priority interface configuration commands and the cluster standby group global configuration command.
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 3750 switch, the standby cluster command switches must also be Catalyst 3750 switches. Refer to the switch configuration guide of other cluster-capable switches for their requirements on standby cluster command switches. These abbreviations are appended to the switch host names in the Standby Command Group list to show their eligibility or status in the cluster standby group:
6-20
78-16180-02
93335
Chapter 6
PCMember of the cluster standby group but not the standby cluster command switch HCCandidate switch that can be added to the cluster standby group CCCluster command switch when HSRP is disabled
You must enter a virtual IP address for the cluster standby group. This address must be in the same subnet as the IP addresses of the switch. The group number must be unique within the IP subnet. It can be from 0 to 255, and the default is 0. The group name can have up to 31 characters. The Standby Command Configuration window uses the default values for the preempt and name commands that you have set by using the CLI. If you use this window to create the standby group, all switches in the group have the preempt command enabled. You must also provide a name for the group.
Note
The HSRP standby hold time interval should be greater than or equal to three times the hello time interval. The default HSRP standby hold time interval is 10 seconds. The default HSRP standby hello time interval is 3 seconds. For more information about the standby hold time and standby hello time intervals, see the Configuring HSRP Authentication and Timers section on page 35-9.
Must be a valid IP address in the same subnet as the active command switch. Once entered, this information cannot be changed.
93336
6-21
Clustering Switches
Enter the cluster command switch IP address in the browser Location field (Netscape Communicator) or Address field (Microsoft Internet Explorer) to access all switches in the cluster. Enter the command-switch password. Select View > Topology to display the cluster topology and to view link information (Figure 3-8 on page 3-15). For complete information about the Topology view, including descriptions of the icons, links, and colors, see the Topology View section on page 3-2. Select Reports > Inventory to display an inventory of the switches in the cluster (Figure 6-12). The summary includes information such as switch model numbers, serial numbers, software versions, IP information, and location. You can also display port and switch statistics from Reports > Port Statistics and Port > Port Settings > Runtime Status.
Step 4
Instead of using CMS to verify the cluster, you can use the show cluster members user EXEC command from the cluster command switch or use the show cluster user EXEC command from the cluster command switch or from a cluster member switch.
Figure 6-12 Inventory Window
If you lose connectivity with a cluster member switch or if a cluster command switch fails, see the cluster-related recovery procedures in Chapter 39, Troubleshooting. For more information about creating and managing clusters, refer to the online help. For information about the cluster commands, refer to the switch command reference.
6-22
78-16180-02
Chapter 6
If you do not know the member-switch number, enter the show cluster members privileged EXEC command on the cluster command switch. For more information about the rcommand command and all other cluster commands, refer to the switch command reference. The Telnet session accesses the member-switch CLI at the same privilege level as on the cluster command switch. The Cisco IOS commands then operate as usual. For instructions on configuring the switch for a Telnet session, see the Disabling Password Recovery section on page 9-5.
Note
The CLI supports creating and maintaining switch clusters with up to 16 switch stacks. For more information about switch stack and switch cluster, see the Switch Clusters and Switch Stacks section on page 6-14.
If the command-switch privilege level is 1 to 14, the cluster member switch is accessed at privilege level 1. If the command-switch privilege level is 15, the cluster 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, refer to the installation and configuration guides for those switches.
6-23
Clustering Switches
Note
When a cluster standby group is configured, the cluster command switch can change without your knowledge. Use the first read-write and read-only community strings to communicate with the cluster command switch if there is a cluster standby group configured for the cluster. If the cluster member switch does not have an IP address, the cluster command switch redirects traps from the cluster member switch to the management station, as shown in Figure 6-13. If a cluster member switch has its own IP address and community strings, the cluster member switch can send traps directly to the management station, without going through the cluster command switch. If a cluster member switch has its own IP address and community strings, they can be used in addition to the access provided by the cluster command switch. For more information about SNMP and community strings, see Chapter 30, Configuring SNMP.
Figure 6-13 SNMP Management for a Cluster
SNMP Manager
Command switch
Tr ap
Trap
Member 1
Member 2
Member 3
6-24
33020
78-16180-02
C H A P T E R
Managing the System Time and Date, page 7-1 Configuring a System Name and Prompt, page 7-14 Creating a Banner, page 7-18 Managing the MAC Address Table, page 7-20 Managing the ARP Table, page 7-28
Note
For complete syntax and usage information for the commands used in this section, refer to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This section contains this configuration information:
Understanding the System Clock, page 7-2 Understanding Network Time Protocol, page 7-2 Configuring NTP, page 7-4 Configuring Time and Date Manually, page 7-11
7-1
Network Time Protocol Manual configuration User show commands Logging and debugging messages
The system clock keeps track of time internally based on Universal Time Coordinated (UTC), also known as Greenwich Mean Time (GMT). You can configure information about the local time zone and summer time (daylight saving time) so that the time appears correctly for the local time zone. The system clock keeps track of whether the time is authoritative or not (that is, whether it has been set by a time source considered to be authoritative). If it is not authoritative, the time is available only for display purposes and is not redistributed. For configuration information, see the Configuring Time and Date Manually section on page 7-11.
7-2
78-16180-02
Chapter 7
Ciscos implementation of NTP does not support stratum 1 service; it is not possible to connect to a radio or atomic clock. We recommend that the time service for your network be derived from the public NTP servers available on the IP Internet. Figure 7-1 shows a typical network example using NTP. Switch A is the NTP master, with Switches B, C, and D configured in NTP server mode, in server association with Switch A. Switch E is configured as an NTP peer to the upstream and downstream switches, Switch B and Switch F.
Figure 7-1 Typical NTP Network Configuration
Switch E
Workstations Switch F
Workstations
If the network is isolated from the Internet, Ciscos implementation of NTP allows a device to act as if it is synchronized through NTP, when in fact it has learned 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.
101349
7-3
Configuring NTP
The switch does not have a hardware-supported clock and 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. This section contains this configuration information:
Default NTP Configuration, page 7-4 Configuring NTP Authentication, page 7-5 Configuring NTP Associations, page 7-6 Configuring NTP Broadcast Service, page 7-7 Configuring NTP Access Restrictions, page 7-8 Configuring the Source IP Address for NTP Packets, page 7-10 Displaying the NTP Configuration, page 7-11
Feature NTP authentication NTP peer or server associations NTP broadcast service NTP access restrictions NTP packet source IP address
Default Setting Disabled. No authentication key is specified. None configured. Disabled; no interface sends or receives NTP broadcast packets. No access control is specified. The source address is set by the outgoing interface.
NTP is enabled on all interfaces by default. All interfaces receive NTP packets.
7-4
78-16180-02
Chapter 7
Purpose Enter global configuration mode. Enable the NTP authentication feature, which is disabled by default. 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
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.
Return to privileged EXEC mode. Verify your entries. (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 devices NTP packets:
Switch(config)# ntp authenticate Switch(config)# ntp authentication-key 42 md5 aNiceKey Switch(config)# ntp trusted-key 42
7-5
Purpose Enter global configuration mode. Configure the switch system clock to synchronize a peer or to be synchronized by a peer (peer association). or
configure terminal ntp peer ip-address [version number] [key keyid] [source interface] [prefer] 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.
Return to privileged EXEC mode. Verify your entries. (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
7-6
78-16180-02
Chapter 7
Purpose Enter global configuration mode. Specify the interface to send NTP broadcast packets, and enter interface configuration mode.
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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file. 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 gigabitethernet1/0/1 Switch(config-if)# ntp broadcast version 2
7-7
Beginning in privileged EXEC mode, follow these steps to configure the switch to receive NTP broadcast packets from connected peers: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface to receive NTP broadcast packets, and enter interface configuration mode. Enable the interface to receive NTP broadcast packets. By default, no interfaces receive NTP broadcast packets. Return to global configuration mode. (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. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ntp broadcast client exit ntp broadcastdelay microseconds
Step 4 Step 5
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 gigabitethernet1/0/1 Switch(config-if)# ntp broadcast client
Creating an Access Group and Assigning a Basic IP Access List, page 7-9 Disabling NTP Services on a Specific Interface, page 7-10
7-8
78-16180-02
Chapter 7
Purpose Enter global configuration mode. Create an access group, and apply a basic IP access list. The keywords have these meanings:
query-onlyAllows only NTP control queries. serve-onlyAllows only time requests. serveAllows time requests and NTP control queries, but does not allow the switch to synchronize to the remote device. peerAllows time requests and NTP control queries and allows the switch to synchronize to the remote device.
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. 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
The access group keywords are scanned in this order, from least restrictive to most restrictive:
1. 2. 3. 4.
peerAllows time requests and NTP control queries and allows the switch to synchronize itself to a device whose address passes the access list criteria. serveAllows 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. serve-onlyAllows only time requests from a device whose address passes the access list criteria. query-onlyAllows 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.
7-9
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
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to disable. Disable NTP packets from being received on the interface. By default, all interfaces receive NTP packets. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ntp disable end show running-config copy running-config startup-config
To re-enable receipt of NTP packets on an interface, use the no ntp disable interface configuration command.
Purpose Enter global configuration mode. Specify the interface type and number from which the IP source address is taken. By default, the source address is set by the outgoing interface. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
7-10
78-16180-02
Chapter 7
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 7-6.
For detailed information about the fields in these displays, refer to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2.
Note
You must reset this setting if you have manually set the system clock and the stack master fails and different stack member resumes the role of stack master. This section contains this configuration information:
Setting the System Clock, page 7-11 Displaying the Time and Date Configuration, page 7-12 Configuring the Time Zone, page 7-12 Configuring Summer Time (Daylight Saving Time), page 7-13
Purpose Manually set the system clock using one of these formats.
clock set hh :mm:ss day month year or clock set hh :mm:ss month day year
For hh:mm:ss, specify the time in hours (24-hour format), minutes, 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).
7-11
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
*Time is not authoritative. (blank)Time is authoritative. .Time is authoritative, but NTP is not synchronized.
Purpose Enter global configuration mode. Set the time zone. 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.
Return to privileged EXEC mode. Verify your entries. (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.
7-12
78-16180-02
Chapter 7
configure terminal
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.
Return to privileged EXEC mode. Verify your entries. (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
7-13
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
Step 1 Step 2
configure terminal
Configure summer time to start on the first date and end on the second clock summer-time zone date [month 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.
Return to privileged EXEC mode. Verify your entries. (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
7-14
78-16180-02
Chapter 7
For complete syntax and usage information for the commands used in this section, refer to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 and the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2. This section contains this configuration information:
Default System Name and Prompt Configuration, page 7-15 Configuring a System Name, page 7-15 Configuring a System Prompt, page 7-16 Understanding DNS, page 7-16
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (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.
7-15
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (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 7-17 Setting Up DNS, page 7-17 Displaying the DNS Configuration, page 7-18
7-16
78-16180-02
Chapter 7
Feature DNS enable state DNS default domain name DNS servers
Default Setting Enabled. None configured. No name server addresses are configured.
Setting Up DNS
Beginning in privileged EXEC mode, follow these steps to set up your switch to use the DNS: Command
Step 1 Step 2
Purpose Enter global configuration mode. 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 Dynamic Host Configuration Protocol (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
Specify the address of one or more name servers to use for name and address resolution. 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. (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 4
ip domain-lookup
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
7-17
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 Cisco IOS 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, refer to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This section contains this configuration information:
Default Banner Configuration, page 7-18 Configuring a Message-of-the-Day Login Banner, page 7-19 Configuring a Login Banner, page 7-20
7-18
78-16180-02
Chapter 7
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (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 that appears from the previous configuration:
Unix> telnet 172.2.5.4 Trying 172.2.5.4... Connected to 172.2.5.4. Escape character is '^]'. This is a secure site. Only authorized users are allowed. For access, contact technical support. User Access Verification Password:
7-19
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (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)#
Dynamic address: a source MAC address that the switch learns and then ages when it is not in use. Static address: a manually entered unicast address that does not age and that is not lost when the switch resets.
The address table lists the destination MAC address, the associated VLAN ID, and port number associated with the address and the type (static or dynamic).
Note
For complete syntax and usage information for the commands used in this section, refer to the command reference for this release.
7-20
78-16180-02
Chapter 7
Building the Address Table, page 7-21 MAC Addresses and VLANs, page 7-21 MAC Addresses and Switch Stacks, page 7-22 Default MAC Address Table Configuration, page 7-22 Changing the Address Aging Time, page 7-22 Removing Dynamic Address Entries, page 7-23 Configuring MAC Address Notification Traps, page 7-23 Adding and Removing Static Address Entries, page 7-25 Configuring Unicast MAC Address Filtering, page 7-26 Displaying Address Table Entries, page 7-28
Dynamic MAC addresses learned in one VLAN of a private VLAN are replicated in the associated VLANs. For example, a MAC address learned in a private-VLAN secondary VLAN is replicated in the primary VLAN. Static MAC addresses configured in a primary or secondary VLAN are not replicated in the associated VLANs. When you configure a static MAC address in a private VLAN primary or secondary VLAN, you should also configure the same static MAC address in all associated VLANs.
7-21
For more information about private VLANs, see Chapter 15, Configuring Private VLANs.
Purpose Enter global configuration mode. Set the length of time that a dynamic entry remains in the MAC 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. For vlan-id , valid IDs are 1 to 4094. Do not enter leading zeros.
Step 3
end
7-22
78-16180-02
Chapter 7
Command
Step 4 Step 5
Purpose Verify your entries. (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.
7-23
Beginning in privileged EXEC mode, follow these steps to configure the switch to send MAC address notification traps to an NMS host: Command
Step 1 Step 2
configure terminal
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.
snmp-server enable traps mac-notification mac address-table notification mac address-table notification [interval value] | [history-size value]
Enable the switch to send MAC address traps to the NMS. Enable the MAC address notification feature. Enter the trap interval time and the history table size.
(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 Layer 2 interface on which to enable the SNMP MAC address notification trap. Enable the MAC address notification trap.
Step 7
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
7-24
78-16180-02
Chapter 7
Command
Step 9
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
show mac address-table notification interface show running-config copy running-config startup-config
Step 10
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 gigabitethernet1/0/2 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.
It is manually entered in the address table and must be manually removed. It can be a unicast or multicast address. It does not age and is retained when the switch restarts.
You can add and remove static addresses and define the forwarding behavior for them. The forwarding behavior defines how a port that receives a packet forwards it to another port for transmission. Because all ports are associated with at least one VLAN, the switch acquires the VLAN ID for the address from the ports that you specify. You can specify a different list of destination ports for each source port. A packet with a static address that arrives on a VLAN where it has not been statically entered is flooded to all ports and not learned. You add a static address to the address table by specifying the destination MAC unicast address and the VLAN from which it is received. Packets received with this destination address are forwarded to the interface specified with the interface-id option. When you configure a static MAC address in a private-VLAN primary or secondary VLAN, you should also configure the same static MAC address in all associated VLANs. Static MAC addresses configured in a private-VLAN primary or secondary VLAN are not replicated in the associated VLAN. For more information about private VLANs, see Chapter 15, Configuring Private VLANs.
7-25
Beginning in privileged EXEC mode, follow these steps to add a static address: Command
Step 1 Step 2
Purpose Enter global configuration mode. Add a static address to the MAC address table.
configure terminal mac address-table static mac-addr vlan vlan-id interface interface-id
For mac-addr, specify the destination MAC unicast address 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; do not enter leading zeros. 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.
Return to privileged EXEC mode. Verify your entries. (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 packet is forwarded to the specified port:
Switch(config)# mac address-table static c2f3.220a.12f4 vlan 4 interface gigabitethernet1/0/1
Multicast MAC addresses, broadcast MAC addresses, and router MAC addresses are not supported. If you specify one of these addresses when entering the mac address-table static mac-addr vlan vlan-id drop global configuration command, one of these messages appears:
% Only unicast addresses can be configured to be dropped % CPU destined address cannot be configured as drop address
Packets that are forwarded to the CPU are also not supported.
7-26
78-16180-02
Chapter 7
If you add a unicast MAC address as a static address and configure unicast MAC address filtering, the switch either adds the MAC address as a static address or drops packets with that MAC address, depending on which command was entered last. The second command that you entered overrides the first command. For example, if you enter the mac address-table static mac-addr vlan vlan-id interface interface-id global configuration command followed by the mac address-table static mac-addr vlan vlan-id drop command, the switch drops packets with the specified MAC address as a source or destination. If you enter the mac address-table static mac-addr vlan vlan-id drop global configuration command followed by the mac address-table static mac-addr vlan vlan-id interface interface-id command, the switch adds the MAC address as a static address.
You enable unicast MAC address filtering and configure the switch to drop packets with a specific address by specifying the source or destination unicast MAC address and the VLAN from which it is received. Beginning in privileged EXEC mode, follow these steps to configure the switch to drop a source or destination unicast static address: Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable unicast MAC address filtering and configure the switch to drop a packet with the specified source or destination unicast static address.
For mac-addr, specify a source or destination unicast MAC address. Packets with this MAC address are dropped. For vlan-id, specify the VLAN for which the packet with the specified MAC address is received. Valid VLAN IDs are 1 to 4094.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable unicast MAC address filtering, use the no mac address-table static mac-addr vlan vlan-id global configuration command. This example shows how to enable unicast MAC address filtering and to configure the switch to drop packets that have a source or destination address of c2f3.220a.12f4. When a packet is received in VLAN 4 with this MAC address as its source or destination, the packet is dropped:
Switch(config)# mac address-table static c2f3.220a.12f4 vlan 4 drop
7-27
Command show ip igmp snooping groups show mac address-table address show mac address-table aging-time show mac address-table count show mac address-table dynamic show mac address-table interface show mac address-table notification show mac address-table static show mac address-table vlan
Description Displays the Layer 2 multicast entries for all VLANs or the specified VLAN. Displays MAC address table information for the specified MAC address. Displays the aging time in all VLANs or the specified VLAN. Displays the number of addresses present in all VLANs or the specified VLAN. Displays only dynamic MAC address table entries. Displays the MAC address table information for the specified interface. Displays the MAC notification parameters and history table. Displays only static MAC address table entries. Displays the MAC address table information for the specified VLAN.
7-28
78-16180-02
C H A P T E R
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding the SDM Templates, page 8-1 Configuring the Switch SDM Template, page 8-3 Displaying the SDM Templates, page 8-5
RoutingThe routing template maximizes system resources for unicast routing, typically required for a router or aggregator in the center of a network. VLANsThe VLAN template disables routing and supports the maximum number of unicast MAC addresses. It would typically be selected for a Layer 2 switch. DefaultThe default template gives balance to all functions.
There are two versions of each template: a desktop template and an aggregator template. The Catalyst 3750-12S switch can use the larger ternary content addressable memory (TCAM) size available in the aggregator templates or can use the standard desktop templates. All other Catalyst 3750 switches support only the desktop templates. If you do not enter the desktop keyword on an aggregator switch, the aggregator templates are selected. Table 8-1 lists the approximate numbers of each resource supported in each of the three templates for a desktop or an aggregator switch.
8-1
Table 8-1
Desktop Templates Resource Unicast MAC addresses IGMP groups and multicast routes Unicast routes
Default 6K 1K 8K 6K 2K 0 512 1K 1K
VLAN 12 K 1K 0 0 0 0 512 1K 1K
Policy-based routing ACEs QoS classification ACEs Security ACEs Layer 2 VLANs
The first eight rows in the tables (unicast MAC addresses through security ACEs) represent approximate hardware boundaries set when a template is selected. If a section of a hardware resource is full, all processing overflow is sent to the CPU, seriously impacting switch performance. The last row is a guideline used to calculate hardware resource consumption related to the number of Layer 2 VLANs on the switch.
Note
For more information about stacking, refer to Chapter 5, Managing Switch Stacks. If the stack master is a desktop switch and a Catalyst 3750-12S running the aggregator template is added as a stack member, the stack operates with the desktop template selected on the stack master. This could result in configuration losses on the Catalyst 3750-12S if the number of TCAM entries on it exceeds desktop template sizes. If the stack master is a Catalyst 3750-12S switch using an aggregator template and a new stack member is not a Catalyst 3750-12S, the stack member is not able to support the template that is running on the stack master. The switch attempting to join the stack goes into SDM mismatch mode, the stack master does not attempt to change the SDM template, and the switch cannot be a functioning member of the stack.
8-2
78-16180-02
Chapter 8
You can use the show switch privileged EXEC command to see if any stack members are in SDM mismatch mode. This example shows the output from the show switch privileged EXEC command when an SDM mismatch exists:
Switch# show switch Current Switch# Role Mac Address Priority State -----------------------------------------------------------*2 Master 000a.fdfd.0100 5 Ready 4 Slave 0003.fd63.9c00 5 SDM Mismatch
If the stack master is a Catalyst 3750-12S, changing the template can create these results:
If you change the template from an aggregator template to a desktop template and reload the switch, the entire stack operates with the selected desktop template. This could cause configuration losses if the number of TCAM entries exceeds the desktop template sizes. If you change the template from a desktop template to an aggregator template and reload the switch, any desktop switches that were part of the stack go into the SDM mismatch mode. When this occurs, a syslog message is sent to the stack master indicating that a stack member has gone into the SDM mismatch mode and suggesting the steps to take to bring the switch out of the mismatch mode.
This is an example of a syslog message notifying the stack master that a stack member is in SDM mismatch mode:
2d23h:%STACKMGR-6-SWITCH_ADDED_SDM:Switch 2 has been ADDED to the stack (SDM_MISMATCH) 2d23h:%SDM-6-MISMATCH_ADVISE: 2d23h:%SDM-6-MISMATCH_ADVISE: 2d23h:%SDM-6-MISMATCH_ADVISE:System (#2) is incompatible with the SDM 2d23h:%SDM-6-MISMATCH_ADVISE:template currently running on the stack and 2d23h:%SDM-6-MISMATCH_ADVISE:will not function unless the stack is 2d23h:%SDM-6-MISMATCH_ADVISE:downgraded. Issuing the following commands 2d23h:%SDM-6-MISMATCH_ADVISE:will downgrade the stack to use a smaller 2d23h:%SDM-6-MISMATCH_ADVISE:compatible desktop SDM template: 2d23h:%SDM-6-MISMATCH_ADVISE: 2d23h:%SDM-6-MISMATCH_ADVISE: "sdm prefer vlan desktop" 2d23h:%SDM-6-MISMATCH_ADVISE: "reload"
Default SDM Template, page 8-3 SDM Template Configuration Guidelines, page 8-4 Setting the SDM Template, page 8-4
8-3
Purpose Enter global configuration mode. Specify the SDM template to be used on the switch: The keywords have these meanings:
defaultVisible only on Catalyst 3750-12S switches to use with the desktop keyword to set the switch to the default desktop template. (Use the no sdm prefer command to set a desktop switch to the default desktop template or to set an aggregator switch to the default aggregator template.) routing Maximizes routing on the switch. vlanMaximizes VLAN configuration on the switch with no routing supported in hardware. desktopSupported only on Catalyst 3750-12S switches. Sets the switch to the default, routing, or VLAN desktop template.
end reload
Return to privileged EXEC mode. Reload the operating system. After the system reboots, you can use the show sdm prefer privileged EXEC command to verify the new template configuration. If you enter the show sdm prefer command before you enter the reload privileged EXEC command, the show sdm prefer command shows the template currently in use and the template that will become active after a reload. This is an example of an output display when you have changed the template and have not reloaded the switch:
Switch# show sdm prefer The current template is "desktop routing" template. The selected template optimizes the resources in the switch to support this level of features for 8 routed interfaces and 1024 VLANs.
8-4
78-16180-02
Chapter 8
number of unicast mac addresses: number of igmp groups + multicast routes: number of unicast routes: number of directly connected hosts: number of indirect routes: number of qos aces: number of security aces:
3K 1K 11K 3K 8K 512 1K
To return to the default template, use the no sdm prefer global configuration command. This example shows how to configure a switch with the routing template (the desktop routing template for a desktop switch or the aggregator routing template for a Catalyst 3750-12S).
Switch(config)# sdm prefer routing Switch(config)# end Switch# reload Proceed with reload? [confirm]
This example shows how to configure the desktop routing template on a Catalyst 3750-12S switch:
Switch(config)# sdm prefer routing desktop Switch(config)# end Switch# reload Proceed with reload? [confirm]
Note
The desktop keyword is available only on Catalyst 3750-12S aggregator switches. This is an example of output from the show sdm prefer command, displaying the template in use.
Switch# show sdm prefer The current template is "desktop default" template. The selected template optimizes the resources in the switch to support this level of features for 8 routed interfaces and 1024 VLANs. number of unicast mac addresses: number of igmp groups + multicast routes: number of unicast routes: number of directly connected hosts: number of indirect routes: number of policy based routing aces: number of qos aces: number of security aces: 6K 1K 8K 6K 2K 0 512 1K
8-5
This is an example of output from the show sdm prefer routing command entered on an aggregator switch:
Switch# show sdm prefer routing "aggregate routing" template: The selected template optimizes the resources in the switch to support this level of features for 8 routed interfaces and 1024 VLANs. number of unicast mac addresses: number of igmp groups + multicast routes: number of unicast routes: number of directly connected hosts: number of indirect routes: number of policy based routing aces: number of qos aces: number of security aces: 6K 1K 20K 6K 14K 512 512 1K
This is an example of output from the show sdm prefer routing command entered on a desktop switch:
Switch# show sdm prefer routing "desktop routing" template: The selected template optimizes the resources in the switch to support this level of features for 8 routed interfaces and 1024 VLANs. number of unicast mac addresses: number of igmp groups + multicast routes: number of unicast routes: number of directly connected hosts: number of indirect routes: number of policy based routing aces: number of qos aces: number of security aces: 3K 1K 11K 3K 8K 512 512 1K
8-6
78-16180-02
C H A P T E R
Preventing Unauthorized Access to Your Switch, page 9-1 Protecting Access to Privileged EXEC Commands, page 9-2 Controlling Switch Access with TACACS+, page 9-10 Controlling Switch Access with RADIUS, page 9-18 Controlling Switch Access with Kerberos, page 9-32 Configuring the Switch for Local Authentication and Authorization, page 9-36 Configuring the Switch for Secure Shell, page 9-37
At a minimum, you should configure passwords and privileges at each switch port. These passwords are locally stored on the switch. When users attempt to access the switch through a port or line, they must enter the password specified for the port or line before they can access the switch. For more information, see the Protecting Access to Privileged EXEC Commands section on page 9-2. For an additional layer of security, you can also configure username and password pairs, which are locally stored on the switch. These pairs are assigned to lines or ports and authenticate each user before that user can access the switch. If you have defined privilege levels, you can also assign a specific privilege level (with associated rights and privileges) to each username and password pair. For more information, see the Configuring Username and Password Pairs section on page 9-7. If you want to use username and password pairs, but you want to store them centrally on a server instead of locally, you can store them in a database on a security server. Multiple networking devices can then use the same database to obtain user authentication (and, if necessary, authorization) information. For more information, see the Controlling Switch Access with TACACS+ section on page 9-10.
9-1
Note
For complete syntax and usage information for the commands used in this section, refer to the Cisco IOS Security Command Reference, Release 12.2 . 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 9-2 Setting or Changing a Static Enable Password, page 9-3 Protecting Enable and Enable Secret Passwords with Encryption, page 9-4 Disabling Password Recovery, page 9-5 Setting a Telnet Password for a Terminal Line, page 9-6 Configuring Username and Password Pairs, page 9-7 Configuring Multiple Privilege Levels, page 9-8
Feature Enable password and privilege level Enable secret password and privilege level Line password
Default Setting No password is defined. The default is level 15 (privileged EXEC level). The password is not encrypted in the configuration file. No password is defined. The default is level 15 (privileged EXEC level). The password is encrypted before it is written to the configuration file. No password is defined.
9-2
78-16180-02
Chapter 9
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (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
9-3
Purpose Enter global configuration mode. Define a new password or change an existing password for access to privileged EXEC mode. or Define a secret password, which is saved using a nonreversible encryption method.
configure terminal enable password [level level] {password | encryption-type encrypted-password} or enable secret [level level] {password | encryption-type encrypted-password}
(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 passwordan encrypted password that you copy from another switch configuration. 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.
Note
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 Step 5
Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
9-4
78-16180-02
Chapter 9
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 9-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 a Lost or Forgotten Password section on page 39-4. Beginning in privileged EXEC mode, follow these steps to disable password recovery:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Disable password recovery. This setting is saved in an area of the flash memory that is accessible by the boot loader and the Cisco IOS image, but it is not part of the file system and is not accessible by any user.
Step 3 Step 4
Return to privileged EXEC mode. Verify the configuration by checking the last few lines of the command output.
9-5
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.
Purpose 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.
Enter privileged EXEC mode. Enter global configuration mode. 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 Step 7
Return to privileged EXEC mode. Verify your entries. The password is listed under the command line vty 0 15. (Optional) Save your entries in the configuration file.
Step 8
To remove the password, use the no password global configuration command. This example shows how to set the Telnet password to let45me67in89:
Switch(config)# line vty 10 Switch(config-line)# password let45me67in89
9-6
78-16180-02
Chapter 9
Purpose Enter global configuration mode. Enter the username, privilege level, and password 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 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
Enter line configuration mode, and configure the console port (line 0) or the VTY lines (line 0 to 15).
Enable local password checking at login time. Authentication is based on the username specified in Step 2. Return to privileged EXEC mode. Verify your entries. (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.
9-7
Setting the Privilege Level for a Command, page 9-8 Changing the Default Privilege Level for Lines, page 9-9 Logging into and Exiting a Privilege Level, page 9-10
Purpose Enter global configuration mode. 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. 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 3
Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. The first command shows the password and access level configuration. The second command shows the privilege level configuration. (Optional) Save your entries in the configuration file.
Step 6
9-8
78-16180-02
Chapter 9
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
Purpose Enter global configuration mode. Select the virtual terminal line on which to restrict access. 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 Step 5
Return to privileged EXEC mode. Verify your entries. The first command shows the password and access level configuration. The second command shows the privilege level configuration. (Optional) Save your entries in the configuration file.
Step 6
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.
9-9
Purpose Log in to a specified privilege level. For level, the range is 0 to 15. Exit to a specified privilege level. For level, the range is 0 to 15.
Step 2
Note
For complete syntax and usage information for the commands used in this section, refer to the Cisco IOS Security Command Reference, Release 12.2 . This section contains this configuration information:
Understanding TACACS+, page 9-10 TACACS+ Operation, page 9-12 Configuring TACACS+, page 9-13 Displaying the TACACS+ Configuration, page 9-17
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.
Note
We recommend a redundant connection between a switch stack and the TACACS+ server. This is to help ensure that the TACACS+ server remains accessible in case one of the connected stack members is removed from the switch stack. 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 serviceauthentication, authorization, and accountingindependently. 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.
9-10
78-16180-02
Chapter 9
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 9-1.
Figure 9-1 Typical TACACS+ Network Configuration
171.20.10.8
Workstations
Configure the switches with the TACACS+ server addresses. Set an authentication key (also configure the same key on the TACACS+ servers). Enable AAA. Create a login authentication method list. Apply the list to the terminal lines. Create an authorization and accounting Workstations method list as required.
TACACS+, administered through the AAA security services, can provide these services:
AuthenticationProvides 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, mothers 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 companys password aging policy.
AuthorizationProvides fine-grained control over user capabilities for the duration of the users 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. AccountingCollects 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.
101230
9-11
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 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 users mothers maiden name.
2.
The switch eventually receives one of these responses from the TACACS+ daemon:
ACCEPTThe user is authenticated and service can begin. If the switch is configured to require authorization, authorization begins at this time. REJECTThe user is not authenticated. The user can be denied access or is prompted to retry the login sequence, depending on the TACACS+ daemon. ERRORAn 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. CONTINUEThe 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 and 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
9-12
78-16180-02
Chapter 9
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. This section contains this configuration information:
Default TACACS+ Configuration, page 9-13 Identifying the TACACS+ Server Host and Setting the Authentication Key, page 9-13 Configuring TACACS+ Login Authentication, page 9-14 Configuring TACACS+ Authorization for Privileged EXEC Access and Network Services, page 9-16 Starting TACACS+ Accounting, page 9-17
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.
9-13
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
Step 1 Step 2
Purpose Enter global configuration mode. Identify the IP host or hosts maintaining a TACACS+ server. Enter this command multiple times to create a list of preferred hosts. The software searches for hosts in the order in which you specify them.
configure terminal tacacs-server host hostname [port integer] [timeout integer] [key string]
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 Step 4
Enable AAA. (Optional) Define the AAA server-group with a group name. This command puts the switch in a server group subconfiguration mode. (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. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Step 5
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.
9-14
78-16180-02
Chapter 9
authenticate users; if that method fails to respond, the software selects the next authentication method in the method list. This process continues until there is successful communication with a listed authentication method or until all defined methods are exhausted. If authentication fails at any point in this cyclemeaning that the security server or local username database responds by denying the user accessthe authentication process stops, and no other authentication methods are attempted. Beginning in privileged EXEC mode, follow these steps to configure login authentication: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable AAA. Create a login authentication method list.
configure terminal aaa new-model aaa authentication login {default | 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 ports. 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. enableUse 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 9-13. lineUse 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. localUse the local username database for authentication. You must enter username information in the database. Use the username password global configuration command. local-caseUse 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. noneDo not use any authentication for login.
Step 4
Enter line configuration mode, and configure the lines to which you want to apply the authentication list.
9-15
Command
Step 5
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.
Return to privileged EXEC mode. Verify your entries. (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 users profile, which is located either in the local user database or on the security server, to configure the users 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 users 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
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Configure the switch for user TACACS+ authorization for all network-related service requests. Configure the switch for user TACACS+ authorization if the user has privileged EXEC access. The exec keyword might return user profile information (such as autocommand information).
configure terminal aaa authorization network tacacs+ aaa authorization exec tacacs+
Step 4
end
9-16
78-16180-02
Chapter 9
Command
Step 5 Step 6
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To disable authorization, use the no aaa authorization {network | exec} method1 global configuration command.
Purpose Enter global configuration mode. Enable TACACS+ accounting for all network-related service requests. 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. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal aaa accounting network start-stop tacacs+ aaa accounting exec start-stop tacacs+ end show running-config copy running-config startup-config
To disable accounting, use the no aaa accounting {network | exec} {start-stop} method1... global configuration command.
9-17
Note
For complete syntax and usage information for the commands used in this section, refer to the Cisco IOS Security Command Reference, Release 12.2 . This section contains this configuration information:
Understanding RADIUS, page 9-18 RADIUS Operation, page 9-19 Configuring RADIUS, page 9-20 Displaying the RADIUS Configuration, page 9-31
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, refer to the RADIUS server documentation.
Note
We recommend a redundant connection between a switch stack and the RADIUS server. This is to help ensure that the RADIUS server remains accessible in case one of the connected stack members is removed from the switch stack. 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 Enigmas 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 9-2 on page 9-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 10, Configuring 802.1x Port-Based Authentication.
9-18
78-16180-02
Chapter 9
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.
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.
Transitioning from RADIUS to TACACS+ Services
Figure 9-2
R1
R2
T1
Remote PC
T2
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. 2. 3.
The user is prompted to enter a username and password. The username and encrypted password are sent over the network to the RADIUS server. The user receives one of these responses from the RADIUS server:
a. ACCEPTThe user is authenticated. b. REJECTThe user is either not authenticated and is prompted to re-enter the username and
86891
9-19
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 9-20 Identifying the RADIUS Server Host, page 9-21 (required) Configuring RADIUS Login Authentication, page 9-23 (required) Defining AAA Server Groups, page 9-25 (optional) Configuring RADIUS Authorization for User Privileged Access and Network Services, page 9-27 (optional) Starting RADIUS Accounting, page 9-28 (optional) Configuring Settings for All RADIUS Servers, page 9-29 (optional) Configuring the Switch to Use Vendor-Specific RADIUS Attributes, page 9-29 (optional) Configuring the Switch for Vendor-Proprietary RADIUS Server Communication, page 9-31 (optional)
9-20
78-16180-02
Chapter 9
Host name or IP address Authentication destination port Accounting destination port Key string Timeout period Retransmission value
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 servicefor example, accountingthe 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 9-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 9-25.
9-21
Beginning in privileged EXEC mode, follow these steps to configure per-server RADIUS server communication. This procedure is required. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the IP address or host name of the remote RADIUS server host.
configure terminal radius-server host {hostname | ip-address} [auth-port port-number ] [acct-port port-number ] [timeout seconds] [retransmit retries] [key string]
(Optional) For auth-port port-number, specify the UDP destination port for authentication requests. (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. 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.
Note
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 Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
9-22
78-16180-02
Chapter 9
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, refer to the RADIUS server documentation.
9-23
Beginning in privileged EXEC mode, follow these steps to configure login authentication. This procedure is required. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable AAA. Create a login authentication method list.
configure terminal aaa new-model aaa authentication login {default | 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 ports. 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:
enableUse 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 radiusUse 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 9-21.
lineUse 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.
localUse the local username database for authentication. You
must enter username information in the database. Use the username name password global configuration command.
local-caseUse a case-sensitive local username database for
authentication. You must enter username information in the database by using the username password global configuration command.
noneDo not use any authentication for login. Step 4
Enter line configuration mode, and configure the lines to which you want to apply the authentication list.
9-24
78-16180-02
Chapter 9
Command
Step 5
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.
Return to privileged EXEC mode. Verify your entries. (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.
9-25
Beginning in privileged EXEC mode, follow these steps to define the AAA server group and associate a particular RADIUS server with it: Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the IP address or host name of the remote RADIUS server host.
configure terminal radius-server host {hostname | ip-address} [auth-port port-number ] [acct-port port-number ] [timeout seconds] [retransmit retries] [key string]
(Optional) For auth-port port-number, specify the UDP destination port for authentication requests. (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. 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.
Note
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 Step 4
Enable AAA. Define the AAA server-group with a group name. This command puts the switch in a server group configuration mode. 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. Return to privileged EXEC mode. Verify your entries.
Step 5
Step 6 Step 7
9-26
78-16180-02
Chapter 9
Command
Step 8 Step 9
Purpose (Optional) Save your entries in the configuration file. Enable RADIUS login authentication. See the Configuring RADIUS Login Authentication section on page 9-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 users profile, which is in the local user database or on the security server, to configure the users 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 users 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.
9-27
Beginning in privileged EXEC mode, follow these steps to specify RADIUS authorization for privileged EXEC access and network services: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Configure the switch for user RADIUS authorization for all network-related service requests. Configure the switch for user RADIUS authorization if the user has privileged EXEC access. The exec keyword might return user profile information (such as autocommand information).
configure terminal aaa authorization network radius aaa authorization exec radius
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable authorization, use the no aaa authorization {network | exec} method1 global configuration command.
Purpose Enter global configuration mode. Enable RADIUS accounting for all network-related service requests. 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. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal aaa accounting network start-stop radius aaa accounting exec start-stop radius end show running-config copy running-config startup-config
To disable accounting, use the no aaa accounting {network | exec} {start-stop} method1... global configuration command.
9-28
78-16180-02
Chapter 9
Purpose Enter global configuration mode. 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 Step 4
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. 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. 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. Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
Step 5
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.
9-29
For example, this AV pair activates Ciscos multiple named ip address pools feature during IP authorization (during PPP 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
This example shows how to apply an input ACL in ASCII format to an interface for the duration of this connection:
cisco-avpair= ip:inacl#1=deny ip 10.10.10.10 0.0.255.255 20.20.20.20 255.255.0.0 cisco-avpair= ip:inacl#2=deny ip 10.10.10.10 0.0.255.255 any cisco-avpair= mac:inacl#3=deny any any decnet-iv
This example shows how to apply an output ACL in ASCII format to an interface for the duration of this connection:
cisco-avpair= ip:outacl#2=deny ip 10.10.10.10 0.0.255.255 any
Other vendors have their own unique vendor-IDs, options, and associated VSAs. For more information about vendor-IDs and VSAs, refer to 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
Step 1 Step 2
Purpose Enter global configuration mode. Enable the switch to recognize and use VSAs as defined by RADIUS IETF 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 Step 4 Step 5
Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
For a complete list of RADIUS attributes or more information about vendor-specific attribute 26, refer to the RADIUS Attributes appendix in the Cisco IOS Security Configuration Guide, Release 12.2 .
9-30
78-16180-02
Chapter 9
Purpose Enter global configuration mode. 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. 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
Step 3
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.
Return to privileged EXEC mode. Verify your settings. (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
9-31
Understanding Kerberos, page 9-32 Kerberos Operation, page 9-34 Configuring Kerberos, page 9-36
For Kerberos configuration examples, refer to the Kerberos Configuration Examples section in the Security Server Protocols chapter of the Cisco IOS Security Configuration Guide, Release 12.2, at this URL: http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_c/fsecsp/
Note
For complete syntax and usage information for the commands used in this section, refer to the Kerberos Commands section in the Security Server Protocols chapter of the Cisco IOS Security Command Reference, Release 12.2, at this URL: http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_c/fsecsp/index.htm.
Note
In the Kerberos configuration examples and in the Cisco IOS Security Command Reference, Release 12.2, the trusted third party can be a Catalyst 3750 switch that supports Kerberos, that is configured as a network security server, and that can authenticate users by using the Kerberos protocol.
Understanding Kerberos
Kerberos is a secret-key network authentication protocol, which was developed at the Massachusetts Institute of Technology (MIT). It uses the Data Encryption Standard (DES) cryptographic algorithm for encryption and authentication and authenticates requests for network resources. Kerberos uses the concept of a trusted third party to perform secure verification of users and services. This trusted third party is called the key distribution center (KDC). Kerberos verifies that users are who they claim to be and the network services that they use are what the services claim to be. To do this, a KDC or trusted Kerberos server issues tickets to users. These tickets, which have a limited lifespan, are stored in user credential caches. The Kerberos server uses the tickets instead of usernames and passwords to authenticate users and network services.
Note
A Kerberos server can be a Catalyst 3750 switch that is configured as a network security server and that can authenticate users by using the Kerberos protocol. The Kerberos credential scheme uses a process called single logon. This process authenticates a user once and then allows secure authentication (without encrypting another password) wherever that user credential is accepted.
9-32
78-16180-02
Chapter 9
This software release supports Kerberos 5, which allows organizations that are already using Kerberos 5 to use the same Kerberos authentication database on the KDC that they are already using on their other network hosts (such as UNIX servers and PCs). In this software release, Kerberos supports these network services:
Term Authentication
Definition A process by which a user or service identifies itself to another service. For example, a client can authenticate to a switch or a switch can authenticate to another switch. A means by which the switch identifies what privileges the user has in a network or on the switch and what actions the user can perform. A general term that refers to authentication tickets, such as TGTs1 and service credentials. Kerberos credentials verify the identity of a user or service. If a network service decides to trust the Kerberos server that issued a ticket, it can be used in place of re-entering a username and password. Credentials have a default lifespan of eight hours. An authorization level label for Kerberos principals. Most Kerberos principals are of the form user@REALM (for example, smith@EXAMPLE.COM). A Kerberos principal with a Kerberos instance has the form user/instance@REALM (for example, smith/admin@EXAMPLE.COM). The Kerberos instance can be used to specify the authorization level for the user if authentication is successful. The server of each network service might implement and enforce the authorization mappings of Kerberos instances but is not required to do so.
Note
Authorization Credential
Instance
The Kerberos principal and instance names must be in all lowercase characters. The Kerberos realm name must be in all uppercase characters.
Note
Key distribution center that consists of a Kerberos server and database program that is running on a network host. A term that describes applications and services that have been modified to support the Kerberos credential infrastructure. A domain consisting of users, hosts, and network services that are registered to a Kerberos server. The Kerberos server is trusted to verify the identity of a user or network service to another user or network service.
Note
Kerberos server
A daemon that is running on a network host. Users and network services register their identity with the Kerberos server. Network services query the Kerberos server to authenticate to other network services.
9-33
Table 9-2
Term KEYTAB
3
Definition A password that a network service shares with the KDC. In Kerberos 5 and later Kerberos versions, the network service authenticates an encrypted service credential by using the KEYTAB to decrypt it. In Kerberos versions earlier than Kerberos 5, KEYTAB is referred to as SRVTAB 4. Also known as a Kerberos identity, this is who you are or what a service is according to the Kerberos server.
Note
Principal
Service credential
A credential for a network service. When issued from the KDC, this credential is encrypted with the password shared by the network service and the KDC. The password is also shared with the user TGT. A password that a network service shares with the KDC. In Kerberos 5 or later Kerberos versions, SRVTAB is referred to as KEYTAB. Ticket granting ticket that is a credential that the KDC issues to authenticated users. When users receive a TGT, they can authenticate to network services within the Kerberos realm represented by the KDC.
SRVTAB TGT
1. TGT = ticket granting ticket 2. KDC = key distribution center 3. KEYTAB = key table 4. SRVTAB = server table
Kerberos Operation
A Kerberos server can be a Catalyst 3750 switch that is configured as a network security server and that can authenticate remote users by using the Kerberos protocol. Although you can customize Kerberos in a number of ways, remote users attempting to access network services must pass through three layers of security before they can access network services. To authenticate to network services by using a Catalyst 3750 switch as a Kerberos server, remote users must follow these steps:
1. 2. 3.
Authenticating to a Boundary Switch, page 9-35 Obtaining a TGT from a KDC, page 9-35 Authenticating to Network Services, page 9-35
9-34
78-16180-02
Chapter 9
The user opens an un-Kerberized Telnet connection to the boundary switch. The switch prompts the user for a username and password. The switch requests a TGT from the KDC for this user. The KDC sends an encrypted TGT that includes the user identity to the switch. The switch attempts to decrypt the TGT by using the password that the user entered.
If the decryption is successful, the user is authenticated to the switch. If the decryption is not successful, the user repeats Step 2 either by re-entering the username and password (noting if Caps Lock or Num Lock is on or off) or by entering a different username and password.
A remote user who initiates a un-Kerberized Telnet session and authenticates to a boundary switch is inside the firewall, but the user must still authenticate directly to the KDC before getting access to the network services. The user must authenticate to the KDC because the TGT that the KDC issues is stored on the switch and cannot be used for additional authentication until the user logs on to the switch.
9-35
Configuring Kerberos
So that remote users can authenticate to network services, you must configure the hosts and the KDC in the Kerberos realm to communicate and mutually authenticate users and network services. To do this, you must identify them to each other. You add entries for the hosts to the Kerberos database on the KDC and add KEYTAB files generated by the KDC to all hosts in the Kerberos realm. You also create entries for the users in the KDC database. When you add or create entries for the hosts and users, follow these guidelines:
The Kerberos principal name must be in all lowercase characters. The Kerberos instance name must be in all lowercase characters. The Kerberos realm name must be in all uppercase characters.
Note
A Kerberos server can be a Catalyst 3750 switch that is configured as a network security server and that can authenticate users by using the Kerberos protocol. To set up a Kerberos-authenticated server-client system, follow these steps:
Configure the KDC by using Kerberos commands. Configure the switch to use the Kerberos protocol.
For instructions, refer to the Kerberos Configuration Task List section in the Security Server Protocols chapter of the Cisco IOS Security Configuration Guide, Release 12.2, at this URL: http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_c/fsecsp/scfkerb.ht m#1001027.
Purpose Enter global configuration mode. Enable AAA. Set the login authentication to use the local username database. The default keyword applies the local user database authentication to all ports. Configure user AAA authorization, check the local database, and allow the user to run an EXEC shell. Configure user AAA authorization for all network-related service requests.
Step 4 Step 5
9-36
78-16180-02
Chapter 9
Command
Step 6
Purpose Enter the local database, and establish a username-based authentication 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.
Return to privileged EXEC mode. Verify your entries. (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.
Understanding SSH, page 9-38 Configuring SSH, page 9-39 Displaying the SSH Configuration and Status, page 9-41
For SSH configuration examples, refer to the SSH Configuration Examples section in the Configuring Secure Shell chapter of the Cisco IOS Security Configuration Guide, Cisco IOS Release 12.2 , at this URL: http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_c/fothersf/ scfssh.htm
Note
For complete syntax and usage information for the commands used in this section, refer to 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.
9-37
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 9-38 Limitations, page 9-39
Note
The SSH connection to the switch stack can be lost if a stack master running the cryptographic version of the SMI or EMI software fails and is replaced by a switch that is running a noncryptographic version of the software. We recommend that a switch running the cryptographic version of the SMI or EMI software be the stack master. Encryption features are unavailable if the stack master is running the noncryptographic version of the SMI or EMI software.
TACACS+ (for more information, see the Controlling Switch Access with TACACS+ section on page 9-10) RADIUS (for more information, see the Controlling Switch Access with RADIUS section on page 9-18) Local authentication and authorization (for more information, see the Configuring the Switch for Local Authentication and Authorization section on page 9-36)
Note
9-38
78-16180-02
Chapter 9
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 9-39 Setting Up the Switch to Run SSH, page 9-39 (required) Configuring the SSH Server, page 9-40 (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 the SSH server is running on a stack master and the stack master fails, the new stack master uses the RSA key pair generated by the previous stack master. 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 9-39. 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.
Download the cryptographic software image from Cisco.com. This step is required. For more information, refer to the release notes for this release. Configure a host name and IP domain name for the switch. Follow this procedure only if you are configuring the switch as an SSH server.
9-39
3. 4.
Generate an RSA key pair for the switch, which automatically enables SSH. Follow this procedure only if you are configuring the switch as an SSH server. Configure user authentication for local or remote access. This step is required. For more information, see the Configuring the Switch for Local Authentication and Authorization section on page 9-36.
Beginning in privileged EXEC mode, follow these steps to configure a host name and an IP domain name and to generate an RSA key pair. This procedure is required if you are configuring the switch as an SSH server. Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Configure a host name for your switch. Configure a host domain for your switch. 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.
configure terminal hostname hostname ip domain-name domain_name crypto key generate rsa
Step 5 Step 6
Return to privileged EXEC mode. Show the version and configuration information for your SSH server.
Show the status of the SSH server on the switch. (Optional) Save your entries in the configuration file.
Step 7
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.
Purpose Enter global configuration mode. (Optional) Configure the switch to run SSH Version 1 or SSH Version 2.
1Configure the switch to run SSH Version 1. 2Configure 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 supports SSHv1 and SSHv2, the SSH server selects SSHv2.
9-40
78-16180-02
Chapter 9
Command
Step 3
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.
Return to privileged EXEC mode. Show the version and configuration information for your SSH server. Show the status of the SSH server connections on the switch. (Optional) Save your entries in the configuration file.
Step 6
To return to the default SSH control parameters, use the no ip ssh {timeout | authentication-retries} global configuration command.
Purpose Shows the version and configuration information for the SSH server. Shows the status of the SSH server.
For more information about these commands, refer to 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.
9-41
9-42
78-16180-02
C H A P T E R
10
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding 802.1x Port-Based Authentication, page 10-1 Configuring 802.1x Authentication, page 10-10 Displaying 802.1x Statistics and Status, page 10-22
Device Roles, page 10-2 Authentication Initiation and Message Exchange, page 10-3 Ports in Authorized and Unauthorized States, page 10-4 802.1x Accounting, page 10-5 Supported Topologies, page 10-5 Using 802.1x with Port Security, page 10-6 Using 802.1x with Voice VLAN Ports, page 10-7 Using 802.1x with VLAN Assignment, page 10-7
10-1
Using 802.1x with Guest VLAN, page 10-8 Using 802.1x with Per-User ACLs, page 10-9 802.1x and Switch Stacks, page 10-10
Device Roles
With 802.1x port-based authentication, the devices in the network have specific roles as shown in Figure 10-1.
Figure 10-1 802.1x Device Roles
Clientthe 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 serverperforms 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.
10-2
101229
78-16180-02
Chapter 10
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 or examined during encapsulation, and the authentication server must support EAP within the native frame format. When the switch receives frames from the authentication server, the servers 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 10-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 10-4. The specific exchange of EAP frames depends on the authentication method being used. Figure 10-2 shows a message exchange initiated by the client using the One-Time-Password (OTP) authentication method with a RADIUS server.
10-3
Client
EAPOL-Start EAP-Request/Identity EAP-Response/Identity EAP-Request/OTP EAP-Response/OTP EAP-Success RADIUS Access-Request RADIUS Access-Challenge RADIUS Access-Request RADIUS Access-Accept Port Authorized EAPOL-Logoff
101228
Port Unauthorized
force-authorizeddisables 802.1x authentication and causes the port to change to the authorized state without any authentication exchange required. The port sends and receives normal traffic without 802.1x-based authentication of the client. This is the default setting. force-unauthorizedcauses the port to remain in the unauthorized state, ignoring all attempts by the client to authenticate. The switch cannot provide authentication services to the client through the port. 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 changes 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 MAC address.
10-4
78-16180-02
Chapter 10
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 change to the unauthorized state. If the link state of a port changes 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.
Supported Topologies
The 802.1x port-based authentication is supported in two topologies:
In a point-to-point configuration (see Figure 10-1 on page 10-2), only one client can be connected to the 802.1x-enabled switch port. The switch detects the client when the port link state changes to the up state. If a client leaves or is replaced with another client, the switch changes the port link state to down, and the port returns to the unauthorized state. Figure 10-3 shows 802.1x port-based authentication in a wireless LAN. The 802.1x port is configured as a multiple-hosts port that becomes authorized as soon as one client is authenticated. When the port is authorized, all other hosts indirectly attached to the port are granted access to the network. If the port becomes unauthorized (re-authentication fails or an EAPOL-logoff message is received), the switch denies access to the network to all of the attached clients. In this topology, the wireless access point is responsible for authenticating the clients attached to it, and the wireless access point acts as a client to the switch.
10-5
When a client is authenticated, and the port security table is not full, the client 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 the 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 address is aged, its place in the secure host table can be taken by another host. If the security violation is caused by the first authenticated host, the port becomes error-disabled and immediately shuts down. The port security violation modes determine the action for security violations. For more information, see the Security Violations section on page 24-8.
When you manually remove an 802.1x client address from the port security table by using the no switchport port-security mac-address mac-address interface configuration command, you should re-authenticate the 802.1x client by using the dot1x re-authenticate interface interface-id privileged EXEC command. When an 802.1x client logs off, the port changes 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).
For more information about enabling port security on your switch, see the Configuring Port Security section on page 24-7.
10-6
101227
78-16180-02
Chapter 10
VVID to carry voice traffic to and from the IP phone. The VVID is used to configure the IP phone connected to the port. PVID to carry the data traffic to and from the workstation connected to the switch through the IP phone. The PVID is the native VLAN of the port.
Each port that you configure for a voice VLAN is associated with a PVID and a VVID. This configuration allows voice traffic and data traffic to be separated onto different VLANs. Before Cisco IOS Release 12.1(14)EA1, a switch in single-host mode accepted traffic from a single host, and voice traffic was not allowed. In multiple-hosts mode, the switch did not accept voice traffic until the client was authenticated on the primary VLAN, thus making the IP phone inoperable until the user logged in. With Cisco IOS Release 12.1(14)EA1 and later, the IP phone uses the VVID for its voice traffic regardless of the authorized or unauthorized state of the port. This allows the phone to work independently of 802.1x authentication. When you enable the single-host mode, multiple IP phones are allowed on the VVID; only one 802.1x client is allowed on the PVID. When you enable the multiple-hosts mode and when an 802.1x user is authenticated on the primary VLAN, additional clients on the voice VLAN are unrestricted after 802.1x authentication succeeds on the primary VLAN. A voice VLAN port becomes active when there is link, and the device MAC address appears after the first CDP message from the IP phone. Cisco IP phones do not relay CDP messages from other devices. As a result, if several IP phones are connected in series, the switch recognizes only the one directly connected to it. When 802.1x is enabled on a voice VLAN port, the switch drops packets from unrecognized IP phones more than one hop away. When 802.1x is enabled on a port, you cannot configure a port VLAN that is equal to a voice VLAN.
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. For more information about voice VLANs, see Chapter 16, Configuring Voice VLAN.
10-7
When configured on the switch and the RADIUS server, 802.1x with VLAN assignment has these characteristics:
If no VLAN is supplied by the RADIUS server or if 802.1x authorization is disabled, the port is configured in its access VLAN after successful authentication. If 802.1x authorization is enabled but the VLAN information from the RADIUS server is not valid, the port returns to the unauthorized state and remains in the configured access VLAN. This prevents ports from appearing unexpectedly in an inappropriate VLAN because of a configuration error. Configuration errors could include specifying a VLAN for a routed port, a malformed VLAN ID, a nonexistent or internal (routed port) VLAN ID, or an attempted assignment to a voice VLAN ID.
If 802.1x authorization is enabled and all information from the RADIUS server is valid, the port is placed in the specified VLAN after authentication. If the multiple-hosts mode is enabled on an 802.1x port, all hosts are placed in the same VLAN (specified by the RADIUS server) as the first authenticated host. If 802.1x and port security are enabled on a port, the port is placed in RADIUS server assigned VLAN. If 802.1x is disabled on the port, it is returned to the configured access VLAN.
When the port is in the force authorized, force unauthorized, unauthorized, or shutdown state, it is put into the configured access VLAN. If an 802.1x port is authenticated and put in the RADIUS server assigned VLAN, any change to the port access VLAN configuration does not take effect. 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 by using the network keyword to allow interface configuration from the RADIUS server. 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 9-29.
10-8
78-16180-02
Chapter 10
If an 802.1x port is configured, the switch assigns clients to a guest VLAN for the 802.1x port when one of these situations occurs:
The authentication server does not receive a response to its EAPOL request/identity frame. 802.1x EAPOL packets are not sent by the client. New 802.1x EAPOL packets are sent by the client, but authentication fails.
Any number of hosts are allowed access when the switch port is moved to the guest VLAN. If an 802.1x-capable host joins the same port on which the guest VLAN is configured, the port is put into the unauthorized state in the user-configured access VLAN, and authentication is restarted. Guest VLANs are supported on 802.1x ports in single-host or multiple-hosts mode. You can configure any active VLAN except an RSPAN VLAN or a voice VLAN as an 802.1x guest VLAN. The guest VLAN feature is not supported on internal VLANs (routed ports) or trunk ports; it is supported only on access ports. For more information, see the Configuring a Guest VLAN section on page 10-20.
10-9
The maximum size of the per-user ACL is 4000 ASCII characters. For examples of vendor-specific attributes, see the Configuring the Switch to Use Vendor-Specific RADIUS Attributes section on page 9-29. For more information about configuring ACLs, see Chapter 31, Configuring Network Security with ACLs. To configure per-user ACLs, you need to perform these tasks:
Enable AAA authentication. Enable AAA authorization by using the network keyword to allow interface configuration from the RADIUS server. Enable 802.1x. Configure the user profile and VSAs on the RADIUS server. Configure the 802.1x port for single-host mode.
Ports that are already authenticated and that do not have periodic re-authentication enabled remain in the authenticated state. Communication with the RADIUS server is not required. Ports that are already authenticated and that have periodic re-authentication enabled (with the dot1x re-authentication global configuration command) fail the authentication process when the re-authentication occurs. Ports return to the unauthenticated state during the re-authentication process. Communication with the RADIUS server is required. For an ongoing authentication, the authentication fails immediately because there is no server connectivity.
If the switch that failed comes up and rejoins the switch stack, the authentications might or might not fail depending on the boot-up time and whether the connectivity to the RADIUS server is re-established by the time the authentication is attempted. To avoid loss of connectivity to the RADIUS server, you should ensure that there is a redundant connection to it. For example, you can have a redundant connection to the stack master and another to a stack member, and if the stack master fails, the switch stack still has connectivity to the RADIUS server.
Default 802.1x Configuration, page 10-11 802.1x Configuration Guidelines, page 10-12 Upgrading from a Previous Software Release, page 10-13 Configuring 802.1x Authentication, page 10-13 (required)
10-10
78-16180-02
Chapter 10
Configuring the Switch-to-RADIUS-Server Communication, page 10-15 (required) Configuring Periodic Re-Authentication, page 10-16 (optional) Manually Re-Authenticating a Client Connected to a Port, page 10-16 (optional) Changing the Quiet Period, page 10-17 (optional) Changing the Switch-to-Client Retransmission Time, page 10-17 (optional) Setting the Switch-to-Client Frame-Retransmission Number, page 10-18 (optional) Configuring the Host Mode, page 10-19 (optional) Configuring a Guest VLAN, page 10-20 (optional) Resetting the 802.1x Configuration to the Default Values, page 10-21 (optional) Configuring 802.1x Accounting, page 10-21 (optional)
Disabled. Disabled (force-authorized). The port sends and receives normal traffic without 802.1x-based authentication of the client.
Disabled. 3600 seconds. 2 times (number of times that the switch restarts the authentication process before the port changes to the unauthorized state). 60 seconds (number of seconds that the switch remains in the quiet state following a failed authentication exchange with the client). 30 seconds (number of seconds that the switch should wait for a response to an EAP request/identity frame from the client before resending the request). 2 times (number of times that the switch will send an EAP-request/identity frame before restarting the authentication process).
Quiet period
Retransmission time
10-11
Default Setting Single-host mode. None specified. 30 seconds (when relaying a request from the authentication server to the client, the amount of time the switch waits for a response before resending the request to the client.) 30 seconds (when relaying a response from the client to the authentication server, the amount of time the switch waits for a reply before resending the response to the server. This setting is not configurable.)
When 802.1x is enabled, ports are authenticated before any other Layer 2 or Layer 3 features are enabled. The 802.1x protocol is supported on Layer 2 static-access ports, voice VLAN ports, and Layer 3 routed ports, but it is not supported on these port types:
Trunk portIf you try to enable 802.1x on a trunk port, an error message appears, and 802.1x
is not enabled. If you try to change the mode of an 802.1x-enabled port to trunk, an error message appears, and the port mode is not changed.
Dynamic portsA port in dynamic mode can negotiate with its neighbor to become a trunk
port. If you try to enable 802.1x on a dynamic port, an error message appears, and 802.1x is not enabled. If you try to change the mode of an 802.1x-enabled port to dynamic, an error message appears, and the port mode is not changed.
Dynamic-access portsIf you try to enable 802.1x on a dynamic-access (VLAN Query
Protocol [VQP]) port, an error message appears, and 802.1x is not enabled. If you try to change an 802.1x-enabled port to dynamic VLAN assignment, an error message appears, and the VLAN configuration is not changed.
EtherChannel portDo not configure a port that is an active or a not-yet-active member of an
EtherChannel as an 802.1x port. If you try to enable 802.1x on an EtherChannel port, an error message appears, and 802.1x is not enabled.
Note
In software releases earlier than Cisco IOS Release 12.2(18)SE, if 802.1x is enabled on a not-yet active port of an EtherChannel, the port does not join the EtherChannel.
Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN) destination portsYou can
enable 802.1x on a port that is a SPAN or RSPAN destination port. However, 802.1x is disabled until the port is removed as a SPAN or RSPAN destination port. You can enable 802.1x on a SPAN or RSPAN source port.
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 internal VLANs (routed ports) or trunk ports; it is supported only on access ports.
10-12
78-16180-02
Chapter 10
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 private-VLAN ports, trunk ports, dynamic ports, or with dynamic-access port assignment through a VMPS. You can configure 802.1x on a private-VLAN port, but do not configure 802.1x with port security, voice VLAN, or per-user ACL on private-VLAN ports. 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).
10-13
VLAN assignment is enabled, as appropriate, based on the RADIUS server configuration. The switch sends a start message to an accounting server. Re-authentication is performed, as necessary. The switch sends an interim accounting update to the accounting server that is based on the result of re-authentication. The user disconnects from the port. The switch sends a stop message to the accounting server.
Beginning in privileged EXEC mode, follow these steps to configure 802.1x port-based authentication: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable AAA. Create an 802.1x authentication method list. 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:
configure terminal aaa new-model aaa authentication dot1x {default} method1 [method2 ...]
group radiusUse the list of all RADIUS servers for authentication. noneUse no authentication. The client is automatically authenticated by the switch without using the information supplied by the client.
Step 4 Step 5
Enable 802.1x authentication globally on the switch. (Optional) Configure the switch for user RADIUS authorization for all 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 Step 7
Specify the port connected to the client that is to be enabled for 802.1x authentication, and enter interface configuration mode. Enable 802.1x authentication on the port. For feature interaction information, see the 802.1x Configuration Guidelines section on page 10-12.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
10-14
78-16180-02
Chapter 10
configure terminal
radius-server host {hostname | Configure the RADIUS server parameters. 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. The range is 0 to 65536. 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
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 9-29.
10-15
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, refer to the RADIUS server documentation.
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. Enable periodic re-authentication of the client, which is disabled by default. 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.
configure terminal interface interface-id dot1x reauthentication dot1x timeout reauth-period seconds
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable periodic re-authentication, use the no dot1x reauthentication interface configuration command. To return to the default number of seconds between re-authentication attempts, use the no dot1x timeout reauth-period interface configuration command. This example shows how to enable periodic re-authentication and set the number of seconds between re-authentication attempts to 4000:
Switch(config-if)# dot1x reauthentication Switch(config-if)# dot1x timeout reauth-period 4000
10-16
78-16180-02
Chapter 10
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. 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.
10-17
Command
Step 4 Step 5 Step 6
Purpose Return to privileged EXEC mode. Verify your entries. (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
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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
10-18
78-16180-02
Chapter 10
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 re-authentication number. This procedure is optional.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. Set the number of times that the switch restarts the authentication process before the port changes to the unauthorized state. The range is 1 to 10; the default is 2. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default re-authentication number, use the no dot1x max-reauth-req interface configuration command. This example shows how to set 4 as the number of times that the switch restarts the authentication process before the port changes to the unauthorized state:
Switch(config-if)# dot1x max-reauth-req 4
Purpose Enter global configuration mode. Specify the port to which multiple hosts are indirectly attached, and enter interface configuration mode.
10-19
Command
Step 3
Purpose 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.
Return to privileged EXEC mode. Verify your entries. (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 802.1x and to allow multiple hosts:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# dot1x port-control auto Switch(config-if)# dot1x host-mode multi-host
Purpose Enter global configuration mode. 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 10-12. Specify an active VLAN as an 802.1x guest VLAN. The range is 1 to 4094. You can configure any active VLAN except an internal VLAN (routed port), an RSPAN VLAN, or a voice VLAN as an 802.1x guest VLAN.
Step 3
Return to privileged EXEC mode. Verify your entries. (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 2 as an 802.1x guest VLAN:
Switch(config)# interface gigabitethernet2/0/2 Switch(config-if)# dot1x guest-vlan 2
10-20
78-16180-02
Chapter 10
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
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the port to be configured. Reset the configurable 802.1x parameters to the default values. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id dot1x default end show dot1x interface interface-id copy running-config startup-config
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.
10-21
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
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. Enable 802.1x accounting using the list of all RADIUS servers. (Optional) Enables system accounting (using the list of all RADIUS servers) and generates system accounting reload event messages when the switch reloads. Return to privileged EXEc mode. Verify your entries. (Optional) Saves your entries in the configuration file.
configure terminal interface interface-id aaa accounting dot1x default start-stop group radius aaa accounting system default start-stop group radius end show running-config copy running-config startup-config
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
10-22
78-16180-02
C H A P T E R
11
Understanding Interface Types, page 11-1 Using Interface Configuration Mode, page 11-7 Configuring Ethernet Interfaces, page 11-12 Configuring Layer 3 Interfaces, page 11-21 Configuring the System MTU, page 11-22 Monitoring and Maintaining the Interfaces, page 11-24
Note
For complete syntax and usage information for the commands used in this chapter, refer to the switch command reference for this release and the online Cisco IOS Interface Command Reference, Release 12.2.
Note
The stack ports on the rear of the switch are not Ethernet ports and cannot be configured. These sections are included:
Port-Based VLANs, page 11-2 Switch Ports, page 11-2 Routed Ports, page 11-3 10-Gigabit Ethernet Interfaces, page 11-4 Switch Virtual Interfaces, page 11-4
11-1
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. VLANs can be formed with ports across the stack. 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 database configuration mode. The VLAN configurations for VLAN IDs 1 to 1005 are saved in the VLAN database, which is downloaded to all switches in a stack. All switches in the stack build the same 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. The running configuration and the saved configuration are the same for all switches in a stack. 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.
Switch Ports
Switch ports are Layer 2-only interfaces associated with a physical port. Switch ports belong to one or more VLANs. A switch port can be an access port or a trunk port. You can configure a port as an access port or trunk port or let the Dynamic Trunking Protocol (DTP) operate on a per-port basis to set the switchport mode by negotiating with the port on the other end of the link. Switch ports are used for managing the physical interface and associated Layer 2 protocols and do not handle routing or bridging. Configure switch ports by using the switchport interface configuration commands. Use the switchport command with no keywords to put an interface that is in Layer 3 mode into Layer 2 mode.
Note
When you put an interface that is in Layer 3 mode into Layer 2 mode, the previous configuration information related to the affected interface might be lost, and the interface is returned to its default configuration. For detailed information about configuring access port and trunk port characteristics, see Chapter 13, Configuring VLANs.
11-2
78-16180-02
Chapter 11
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 a tagged packet (Inter-Switch Link [ISL] or 802.1Q tagged), the packet is dropped, and the source address is not learned. 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 6500 series switch; the Catalyst 3750 switch cannot be a VMPS server.
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. For more information about voice VLAN ports, see Chapter 16, 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. Two types of trunk ports are supported:
In an ISL trunk port, all received packets are expected to be encapsulated with an ISL header, and all transmitted packets are sent with an ISL header. Native (non-tagged) frames received from an ISL trunk port are dropped. 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.
Routed Ports
A routed port is a physical port that acts like a port on a router; it does not have to be connected to a router. A routed port is not associated with a particular VLAN, as is an access port. A routed port behaves like a regular router interface, except that it does not support VLAN subinterfaces. Routed ports can be configured with a Layer 3 routing protocol. A routed port is a Layer 3 interface only and does not support Layer 2 protocols, such as DTP and STP.
11-3
Configure routed ports by putting the interface into Layer 3 mode with the no switchport interface configuration command. Then assign an IP address to the port, enable routing, and assign routing protocol characteristics by using the ip routing and router protocol global configuration commands.
Note
Entering a no switchport interface configuration command shuts down the interface and then re-enables it, which might generate messages on the device to which the interface is connected. When you put an interface that is in Layer 2 mode into Layer 3 mode, the previous configuration information related to the affected interface might be lost. The number of routed ports that you can configure is not limited by software. However, the interrelationship between this number and the number of other features being configured might impact CPU performance because of hardware limitations. See the Configuring Layer 3 Interfaces section on page 11-21 for information about what happens when hardware resource limitations are reached. For more information about IP unicast and multicast routing and routing protocols, see Chapter 34, Configuring IP Unicast Routing and Chapter 36, Configuring IP Multicast Routing.
Note
The standard multilayer image (SMI) supports static routing and the Routing Information Protocol (RIP). For full Layer 3 routing or for fallback bridging, you must have the enhanced multilayer image (EMI) installed on the stack master.
Note
The 10-Gigabit Ethernet module ports are referred to as 10-Gigabit Ethernet XENPAK modules in the hardware installation guide.
11-4
78-16180-02
Chapter 11
Although the switch stack supports a total or 1005 VLANs (and SVIs), the interrelationship between the number of SVIs and routed ports and the number of other features being configured might impact CPU performance because of hardware limitations. See the Configuring Layer 3 Interfaces section on page 11-21 for information about what happens when hardware resource limitations are reached. SVIs are created the first time that you enter the vlan interface configuration command for a VLAN interface. The VLAN corresponds to the VLAN tag associated with data frames on an ISL or 802.1Q encapsulated trunk or the VLAN ID configured for an access port. Configure a VLAN interface for each VLAN for which you want to route traffic, and assign it an IP address. For more information, see the Manually Assigning IP Information section on page 4-10.
Note
When you create an SVI, it does not become active until it is associated with a physical port. SVIs support routing protocols and bridging configurations. For more information about configuring IP routing, see Chapter 34, Configuring IP Unicast Routing, Chapter 36, Configuring IP Multicast Routing,and Chapter 38, Configuring Fallback Bridging.
Note
The SMI supports static routing and RIP; for more advanced routing or for fallback bridging, you must have the EMI installed on the stack master.
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. With a standard Layer 2 switch, ports in different VLANs have to exchange information through a router. In the configuration shown in Figure 11-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.
11-5
Cisco router
Switch
Host A
Host B
VLAN 20
VLAN 30
By using the switch with routing enabled, when you configure VLAN 20 and VLAN 30 each with an SVI to which an IP address is assigned, packets can be sent from Host A to Host B directly through the switch with no need for an external router (Figure 11-2).
Figure 11-2 Connecting VLANs with the Catalyst 3750 Switch
172.20.128.1
SVI 1
SVI 2
172.20.129.1
Host A
Host B
46647
VLAN 20
VLAN 30
11-6
101350
78-16180-02
Chapter 11
When the EMI is running on the stack master, the switch supports two methods of forwarding traffic between interfaces: routing and fallback bridging. If the SMI is on the stack master, only basic routing (static routing and RIP) is supported. Whenever possible, to maintain high performance, forwarding is done by the switch hardware. However, only IP version 4 packets with Ethernet II encapsulation can be routed in hardware. Non-IP traffic and traffic with other encapsulation methods can be fallback-bridged by hardware.
The routing function can be enabled on all SVIs and routed ports. The switch routes only IP traffic. When IP routing protocol parameters and address configuration are added to an SVI or routed port, any IP traffic received from these ports is routed. For more information, see Chapter 34, Configuring IP Unicast Routing, Chapter 36, Configuring IP Multicast Routing, and Chapter 37, Configuring MSDP. Fallback bridging forwards traffic that the switch does not route or traffic belonging to a nonroutable protocol, such as DECnet. Fallback bridging connects multiple VLANs into one bridge domain by bridging between two or more SVIs or routed ports. When configuring fallback bridging, you assign SVIs or routed ports to bridge groups with each SVI or routed port assigned to only one bridge group. All interfaces in the same group belong to the same bridge domain. For more information, see Chapter 38, Configuring Fallback Bridging.
Physical portsincluding switch ports and routed ports VLANsswitch virtual interfaces Port-channelsEtherChannel of interfaces
You can also configure a range of interfaces (see the Configuring a Range of Interfaces section on page 11-9). To configure a physical interface (port), enter interface configuration mode, and specify the interface type, stack member number, module number, and switch port number.
TypeFast Ethernet (fastethernet or fa) for 10/100 Mbps Ethernet or Gigabit Ethernet (gigabitethernet or gi) for 10/100/1000 Mbps Ethernet ports, or 10-Gigabit Ethernet (tengigabitethernet or te) for 10,000 Mbps, or small form-factor pluggable (SFP) Gigabit Ethernet interfaces. Stack member numberThe number that identifies the switch within the stack. The switch number range is 1 to 9 and is assigned the first time the switch initializes. The default switch number, before it is integrated into a switch stack, is 1. When a switch has been assigned a stack member number, it keeps that number until another is assigned to it. You can use the switch port LEDs in Stack mode to identify the stack member number of a switch. For information about stack member numbers, see the Stack Member Numbers section on page 5-6.
Module numberThe module or slot number on the switch (always 0 on the Catalyst 3750 switch). Port numberThe interface number on the switch. The port numbers always begin at 1, starting at the left when facing the front of the switch, for example, fastethernet 1/0/1, fastethernet 1/0/2. If there is more than one interface type (for example, 10/100 ports and Gigabit Ethernet ports), the port numbers start again from 1with the second interface type: gigabitethernet1/0/1, gigabitethernet 1/0/2.
11-7
You can identify physical interfaces by physically checking the interface location on the switch. You can also use the Cisco IOS show privileged EXEC commands to display information about a specific interface or all the interfaces on the switch. The remainder of this chapter primarily provides physical interface configuration procedures. These are examples of identifying interfaces:
If the switch has SFP modules, the numbering of these ports depends on the type of other interfaces on the switch. If the port type changes from Fast Ethernet to Gigabit Ethernet (SFP), the port numbers begin again from 1; if the port type remains Gigabit Ethernet, the port numbers continue consecutively.
To configure the first SFP port on stack member 1 with 24 10/100/1000 ports, enter this command:
Switch(config)# interface gigabitethernet1/0/25
To configure the first SFP port on stack member 1 with 24 10/100 ports, enter this command:
Switch(config)# interface gigabitethernet1/0/1
Step 2
Enter the interface global configuration command. Identify the interface type, the switch number, and the number of the connector. In this example, Gigabit Ethernet port 1 on switch 1 is selected:
Switch(config)# interface gigabitethernet1/0/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 1/0/1 , gigabitethernet1/0/1, gi 1/0/1, or gi1/0/1.
Step 3
Follow each interface command with the interface configuration commands that the interface requires. The commands that 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.
11-8
78-16180-02
Chapter 11
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 11-24.
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.
Purpose Enter global configuration mode. Enter interface range configuration mode by entering the range of 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 11-10. In a comma-separated port-range, you must enter the interface type for each entry and enter spaces before and after the comma. In a hyphen-separated port-range, you do not need to re-enter the interface type, but you must enter a space before the hyphen.
You can now use the normal configuration commands to apply the configuration parameters to all interfaces in the range. end show interfaces [interface-id] copy running-config startup-config Return to privileged EXEC mode. Verify the configuration of the interfaces in the range. (Optional) Save your entries in the configuration file.
When using the interface range global configuration command, note these guidelines:
11-9
1 to 12
Note
When you use the interface range command with port channels, the first and last port channel number must be active port channels.
You must add a space between the first interface number and the hyphen when using the interface range command. For example, the command interface range ethernet 1/0/1 - 4 is a valid range; the command interface range ethernet 1/0/1-4 is not a valid range. The interface range command only works with VLAN interfaces that have been configured with the interface vlan command. The show running-config privileged EXEC command displays the configured VLAN interfaces. VLAN interfaces not displayed by the show running-config command cannot be used with the interface range command. All interfaces defined as in a range must be the same type (all Fast Ethernet ports, all Gigabit Ethernet ports, all EtherChannel ports, or all VLANs), but you can enter multiple ranges in a command.
This example shows how to use the interface range global configuration command to set the speed on ports 1 to 4 on switch 1 to 100 Mbps:
Switch# configure terminal Switch(config)# interface range tethernet1/0/1 - 4 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 Fast Ethernet ports 1 to 3 on switch 1 and Gigabit Ethernet ports 1 and 2 on switch 2 to receive flow control pause frames:
Switch# configure terminal Switch(config)# interface range fastethernet1/0/1 - 3 , gigabitethernet2/0/1 - 2 Switch(config-if-range)# flowcontrol receive on
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.
11-10
78-16180-02
Chapter 11
Beginning in privileged EXEC mode, follow these steps to define an interface range macro: Command
Step 1 Step 2
Purpose Enter global configuration mode. Define the interface-range macro, and save it in NVRAM.
The macro_name is a 32-character maximum character string. A macro can contain up to five comma-separated interface ranges. Each interface-range must consist of the same port type.
Step 3
Select the interface range to be configured 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.
Return to privileged EXEC mode. Show the defined interface range macro configuration. (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:
1 to 12.
Note
When you use the interface ranges with port channels, the first and last port channel number must be active port channels.
You must add a space between the first interface number and the hyphen when entering an interface-range. For example, ethernet 1/0/1 - 4 is a valid range; ethernet 1/0/1-4 is not a valid range. The VLAN interfaces must have been configured with the interface vlan command. The show running-config privileged EXEC command displays the configured VLAN interfaces. VLAN interfaces not displayed by the show running-config command cannot be used as interface-ranges. All interfaces defined as in a range must be the same type (all Fast Ethernet ports, all Gigabit Ethernet ports, all EtherChannel ports, or all VLANs), but you can combine multiple interface types in a macro.
11-11
This example shows how to define an interface-range named enet_list to include ports 1 and 2 on switch 1 and to verify the macro configuration:
Switch# configure terminal Switch(config)# define interface-range enet_list gigabitethernet1/0/1 - 2 Switch(config)# end Switch# show running-config | include define define interface-range enet_list GigabitEthernet1/0/1 - 2
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 was deleted.
Switch# configure terminal Switch(config)# no define interface-range enet_list Switch(config)# end Switch# show run | include define Switch#
Default Ethernet Interface Configuration, page 11-12 Configuration Guidelines for 10-Gigabit Ethernet Interfaces, page 11-14 Configuring Interface Speed and Duplex Mode, page 11-14 Configuring IEEE 802.3z Flow Control, page 11-17 Configuring Auto-MDIX on an Interface, page 11-18 Configuring Power over Ethernet on an Interface, page 11-19 Adding a Description for an Interface, page 11-20
11-12
78-16180-02
Chapter 11
Note
To configure Layer 2 parameters, if the interface is in Layer 3 mode, you must enter the switchport interface configuration command without any parameters to put the interface into Layer 2 mode. This shuts down the interface and then re-enables it, which might generate messages on the device to which the interface is connected. When you put an interface that is in Layer 3 mode into Layer 2 mode, the previous configuration information related to the affected interface might be lost, and the interface is returned to its default configuration.
Table 11-1 Default Layer 2 Ethernet Interface Configuration
Feature Operating mode Allowed VLAN range Default VLAN (for access ports) VLAN trunking Port enable state Port description Speed Duplex mode Flow control EtherChannel (PAgP)
Default Setting Layer 2 or switching mode (switchport command). VLANs 1 4094. VLAN 1 (Layer 2 interfaces only). Switchport mode dynamic auto (supports DTP) (Layer 2 interfaces only). All ports are enabled. None defined. Autonegotiate. (Not supported on the 10-Gigabit interfaces.) Autonegotiate. (Not supported on the 10-Gigabit interfaces.) Flow control is set to receive: off. It is always off for sent packets. Disabled on all Ethernet ports. See Chapter 33, Configuring EtherChannels.
Port blocking (unknown multicast Disabled (not blocked) (Layer 2 interfaces only). See the and unknown unicast traffic) Configuring Port Blocking section on page 24-6. Broadcast, multicast, and unicast storm control Protected port Port security Port Fast Auto-MDIX Disabled. See the Default Storm Control Configuration section on page 24-3. Disabled (Layer 2 interfaces only). See the Configuring Protected Ports section on page 24-5. Disabled (Layer 2 interfaces only). See the Default Port Security Configuration section on page 24-9. Disabled. Enabled.
Note
The switch might not support a pre-standard powered devicesuch as Cisco IP phones and access points that do not fully support IEEE 802.3afif that powered device is connected to the switch through a crossover cable. This is regardless of whether Auto-MIDX is enabled on the switch port.
11-13
The speed and duplex features are not supported. The 10-Gigabit interfaces do not support these QoS features:
Policing Auto-QoS for VoIP with Cisco IP Phones Servicing the egress queues by using shaped round robin (SRR) weights Limiting the bandwidth on an egress interface
If a 10-Gigabit module port is configured as a SPAN or RSPAN destination port, its link rate decreases. Support for a cross-stack EtherChannel with up to two 10-Gigabit module ports.
You cannot configure speed or duplex mode on 10-Gigabit module ports; these ports operate only at 10,000 Mbps and in full duplex mode. You can configure interface speed on Fast Ethernet (10/100-Mbps) and Gigabit Ethernet (10/100/1000-Mbps) ports. You can configure duplex mode to full, half, or autonegotiate on Fast Ethernet interfaces. You can configure Gigabit Ethernet ports to full-duplex mode or to autonegotiate; you cannot configure half-duplex mode on Gigabit Ethernet ports. You cannot configure speed on SFP module ports, but you can configure speed to not negotiate (nonegotiate) if connected to a device that does not support autonegotiation. However, when a 1000BASE-T SFP module is in the SFP module port, you can configure speed as 10, 100, or 1000 Mbps, or auto. You cannot configure duplex mode on SFP module ports unless a 1000BASE-T SFP module or a 100BASE-FX MMF SFP module is in the port. All other SFP modules operate only in full-duplex mode.
When a 1000BASE-T SFP module is in the SFP module port, you can configure duplex mode
to auto or full.
When a 100BASE-FX SFP module is in the SFP module port, you can configure duplex mode
to half or full.
Note
Half-duplex mode is supported on Gigabit Ethernet interfaces; however you cannot configure these interfaces to operate in half-duplex mode.
11-14
78-16180-02
Chapter 11
These sections describe how to configure the interface speed and duplex mode:
Configuration Guidelines, page 11-15 Setting the Interface Speed and Duplex Parameters, page 11-15
Configuration Guidelines
When configuring an interface speed and duplex mode, note these guidelines:
If both ends of the line support autonegotiation, we highly recommend the default setting of auto negotiation. If one interface supports autonegotiation and the other end does not, configure duplex and speed on both interfaces; do not use the auto setting on the supported side. You cannot configure duplex mode on SFP module ports; they operate in full-duplex mode. However, when a 1000BASE-T SFP module is inserted in an SFP module port, you can configure the duplex mode to full or auto and half-duplex mode is supported with the auto configuration. When a 100BASE-FX SFP module is in the SFP module port, you can configure duplex mode to half or full. Although the auto keyword is available, it puts the interface in half-duplex mode (the default for this SFP module) because the 100BASE-FX SFP module does not support autonegotiation. You cannot configure speed on SFP module ports, except to nonegotiate. However, when a 1000BASE-T SFP module is in the SFP module port, the speed can be configured to 10 , 100, 1000, or auto, but not nonegotiate. When 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.
Purpose Enter global configuration mode. Enter interface configuration mode and the physical interface identification.
11-15
Command
Step 3
Purpose
speed {10 | 100 | 1000 | auto | nonegotiate} Enter the appropriate speed parameter for the interface: Enter 10, 100, or 1000 to set a specific speed for the interface. The 1000 keyword is available only for 10/100/1000 Mbps ports or SFP module ports with a 1000BASE-T SFP module. Enter auto to enable the interface to autonegotiate speed with the device connected to the interface. The nonegotiate keyword is available only for SFP module ports. SFP module ports operate only at 1000 Mbps but can be configured to not negotiate if connected to a device that does not support autonegotiation.
When a 1000BASE-T SFP module is in the SFP module port, the speed can be configured to 10 , 100, 1000 , or auto, but not nonegotiate.
Step 4
Enter the duplex parameter for the interface. Enable half-duplex mode (for interfaces operating only at 10 or 100 Mbps). You cannot configure half-duplex mode for interfaces operating at 1000 Mbps. This command is not available on a 10-Gigabit Ethernet interface. This command is not available on SFP module ports with these exceptions:
If a 1000BASE-T SFP module is inserted, you can configure duplex to auto or full. If a 100BASE-FX SFP module is inserted, you can configure duplex to full or half. Although the auto keyword is available, it puts the interface in half-duplex mode (the default)
Return to privileged EXEC mode. Display the interface speed and duplex mode configuration. (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 10/100 Mbps port:
Switch# configure terminal Switch(config)# interface fasttethernet1/0/3 Switch(config-if)# speed 10 Switch(config-if)# duplex half
This example shows how to set the interface speed to 100 Mbps on a 10/100/1000 Mbps port:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# speed 100
11-16
78-16180-02
Chapter 11
Note
Catalyst 3750 ports are capable of receiving, but not sending, pause frames. You use the flowcontrol interface configuration command to set the interfaces ability to receive pause frames to on, off, or desired . The default state is off. When set to desired, an interface can operate with an attached device that is required to send flow-control packets or with an attached device that is not required to but can send flow-control packets. These rules apply to flow control settings on the device:
receive on (or desired): 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: 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 on the command settings and the resulting flow control resolution on local and remote ports, refer to 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
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Purpose Enter global configuration mode Enter interface configuration mode and the physical interface to be configured. Configure the flow control mode for the port. Return to privileged EXEC mode. Verify the interface flow control settings. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id flowcontrol {receive} {on | off | desired} end show interfaces interface-id copy running-config startup-config
To disable flow control, use the flowcontrol receive off interface configuration command. This example shows how to turn on flow control on a port:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# flowcontrol receive on Switch(config-if)# end
11-17
Remote Side Auto-MDIX With Correct Cabling On Off On Off Link up Link up Link up Link up
Beginning in privileged EXEC mode, follow these steps to configure Auto-MDIX on an interface: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8
Purpose Enter global configuration mode Enter interface configuration mode for the physical interface to be configured. Configure the interface to autonegotiate speed with the connected device. Configure the interface to autonegotiate duplex mode with the connected device. Enable Auto-MDIX on the interface. Return to privileged EXEC mode.
configure terminal interface interface-id speed auto duplex auto mdix auto end
show controllers ethernet-controller Verify the operational state of the Auto-MDIX feature on the interface. interface-id phy copy running-config startup-config (Optional) Save your entries in the configuration file.
To disable Auto-MDIX, use the no mdix auto interface configuration command. This example shows how to enable Auto-MDIX on a port:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# speed auto Switch(config-if)# duplex auto Switch(config-if)# mdix auto Switch(config-if)# end
11-18
78-16180-02
Chapter 11
If enough power is available, the switch grants power, updates the power budget, turns on power to the interface, and updates the LEDs. If granting power would exceed the system power budget, the switch denies power, ensures that power to the interface is turned off, generates a syslog message, and updates the LEDs. After power has been denied, the switch periodically rechecks the power budget and continues to attempt to grant the request for power. If enough power is available for all powered devices connected to a switch, power is turned on to all devices. If there is not enough available PoE, or if a device is disconnected and reconnected while other devices are waiting for power, devices to be granted or denied power cannot be predetermined.
After power is applied to an interface, the switch uses Cisco Discovery Protocol (CDP) to determine the power requirement of the connected Cisco PoE (standard and pre-standard) devices, and the switch adjusts the power budget accordingly. This does not apply to third-party PoE devices. If the switch detects a fault caused by an undervoltage, overvoltage, overtemperature, oscillator-fault, or short-circuit condition, it turns off power to the port, generates a syslog message, and updates the power budget and LEDs. The PoE feature operates the same whether or not the switch is a stack member. The power budget is per-switch and independent of any other switch in the stack. Election of a new stack master does not affect PoE operation. The stack master keeps track of PoE status for all switches and interfaces in the stack and includes the status in output displays.
11-19
Beginning in privileged EXEC mode, follow these steps to enable or disable PoE on an interface on a PoE-capable switch. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode for the physical interface to be configured. Configure PoE on the interface:
Enter auto (the default) to set the interface to automatically detect if a connected device requires power and to supply power to the device if enough power is available. Enter never to disable power detection and supply for the interface.
end show power inline [interface-id | module switch-number] copy running-config startup-config
Return to privileged EXEC mode. Display PoE status for a switch or switch stack, for the specified interface, or for a specified stack member. (Optional) Save your entries in the configuration file.
For information about the output of the show power inline user EXEC command, refer to the command reference for this release. For more information about PoE-related commands, see the Troubleshooting Power over Ethernet Switch Ports section on page 39-13. This example shows how to enable automatic PoE on a port and the response from the show power inline command for the interface when a Cisco IEEE-compliant IP Phone is being supplied with power:
Switch# configure terminal Switch(config)# interface fastethernet1/0/1 Switch(config-if)# power inline auto Switch(config-if)# end Switch# show power inline fastethernet1/0/1 Interface Power Device Class (Watts) ---------- ----- ---------- ------- ------------------- ----------Fa1/0/1 auto on 6.3 Cisco IP Phone 7960 Class 2 Admin Oper
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the interface for which you are adding a description. Add a description (up to 240 characters) for an interface.
11-20
78-16180-02
Chapter 11
Command
Step 4 Step 5
Step 6
Use the no description interface configuration command to delete the description. This example shows how to add a description on a port and how to verify the description:
Switch# config terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# description Connects to Marketing Switch(config-if)# end Switch# show interfaces gigabitethernet1/0/2 description Interface Status Protocol Description Gi1/0/2 admin down down Connects to Marketing
SVIs: You should configure SVIs for any VLANs for which you want to route traffic. SVIs are created when you enter a VLAN ID following the interface vlan global configuration command. To delete an SVI, use the no interface vlan global configuration command.
Note
When you create an SVI, it does not become active until it is associated with a physical port. For information about assigning Layer 2 ports to VLANs, see Chapter 13, Configuring VLANs.
Routed ports: Routed ports are physical ports configured to be in Layer 3 mode by using the no switchport interface configuration command. Layer 3 EtherChannel ports: EtherChannel interfaces made up of routed ports. EtherChannel port interfaces are described in Chapter 33, Configuring EtherChannels.
A Layer 3 switch can have an IP address assigned to each routed port and SVI. There is no defined limit to the number of SVIs and routed ports that can be configured in a switch stack. However, the interrelationship between the number of SVIs and routed ports and the number of other features being configured might have an impact on CPU usage because of hardware limitations. If the switch is using maximum hardware resources, attempts to create a routed port or SVI have these results:
If you try to create a new routed port, the switch generates a message that there are not enough resources to convert the interface to a routed port, and the interface remains as a switchport. If you try to create an extended-range VLAN, an error message is generated, and the extended-range VLAN is rejected.
11-21
If the switch is notified by VLAN Trunking Protocol (VTP) of a new VLAN, it sends a message that there are not enough hardware resources available and shuts down the VLAN. The output of the show vlan user EXEC command shows the VLAN in a suspended state. If the switch attempts to boot up with a configuration that has more VLANs and routed ports than hardware can support, the VLANs are created, but the routed ports are shut down, and the switch sends a message that this was due to insufficient hardware resources.
All Layer 3 interfaces require an IP address to route traffic. This procedure shows how to configure an interface as a Layer 3 interface and how to assign an IP address to an interface.
Note
If the physical port is in Layer 2 mode (the default), you must enter the no switchport interface configuration command to put the interface into Layer 3 mode. Entering a no switchport command disables and then re-enables the interface, which might generate messages on the device to which the interface is connected. Furthermore, when you put an interface that is in Layer 2 mode into Layer 3 mode, the previous configuration information related to the affected interface might be lost, and the interface is returned to its default configuration Beginning in privileged EXEC mode, follow these steps to configure a Layer 3 interface:
Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
configure terminal
interface {{fastethernet | gigabitethernet} interface-id} Enter interface configuration mode, and enter the | {vlan vlan-id} | {port-channel port-channel-number} interface to be configured as a Layer 3 interface. no switchport ip address ip_address subnet_mask no shutdown end show interfaces [interface-id] show ip interface [interface-id ] show running-config interface [interface-id] For physical ports only, enter Layer 3 mode. Configure the IP address and IP subnet. Enable the interface. Return to privileged EXEC mode. Verify the configuration.
Step 8
To remove an IP address from an interface, use the no ip address interface configuration command. This example shows how to configure a port as a routed port and to assign it an IP address:
Switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# no switchport Switch(config-if)# ip address 192.20.135.21 255.255.255.0 Switch(config-if)# no shutdown
11-22
78-16180-02
Chapter 11
support jumbo frames on all Gigabit Ethernet interfaces by using the system mtu jumbo global configuration command. Gigabit Ethernet ports are not affected by the system mtu command; 10/100 ports are not affected by the system jumbo mtu command. You cannot set the MTU size for an individual interface; you set it for all 10/100 or all Gigabit Ethernet interfaces on the switch stack. When you change the MTU size, you must reset the switch before the new configuration takes effect. The size of frames that can be received by the switch CPU is limited to 1992 bytes, no matter what value was entered with the system mtu or system mtu jumbo commands. Although frames that are forwarded or routed typically are not received by the CPU, in some cases packets are sent to the CPU, such as traffic sent to control traffic, SNMP, Telnet, or routing protocols. Routed packets are subjected to MTU checks on the egress ports. The MTU value used for routed ports is derived from the system mtu configured value (not the system mtu jumbo value). That is, the routed MTU is never greater than the system MTU for any VLAN. The system MTU value is used by routing protocols when negotiating adjacencies and the MTU of the link. For example Open Shortest Path First (OSPF) protocol uses this MTU value before setting up an adjacency with a peer router. To view the MTU value for routed packets for a specific VLAN, use the show platform port-asic mvid privileged EXEC command.
Note
If Layer 2 Gigabit Ethernet interfaces are configured to accept frames greater than the 10/100 interfaces, jumbo frames ingressing on a Layer 2 Gigabit Ethernet interface and egressing on a Layer 2 10/100 interface are dropped. Beginning in privileged EXEC mode, follow these steps to change MTU size for all 10/100 or Gigabit Ethernet interfaces:
Command
Step 1 Step 2
Purpose Enter global configuration mode. (Optional) Change the MTU size for all interfaces on the switch stack that are operating at 10 or 100 Mbps. The range is 1500 to 1546 bytes; the default is 1500 bytes. (Optional) Change the MTU size for all Gigabit Ethernet interfaces on the switch stack. The range is 1500 to 9000 bytes; the default is 1500 bytes. Return to privileged EXEC mode. Save your entries in the configuration file. Reload the operating system. If you enter a value that is outside the allowed range for the specific type of interface, the value is not accepted. Once the switch reloads, you can verify your settings by entering the show system mtu privileged EXEC command. This example shows how to set the maximum packet size for a Gigabit Ethernet port to 1800 bytes:
Switch(config)# system jumbo mtu 1800 Switch(config)# exit Switch# reload
Step 3
11-23
This example shows the response when you try to set Gigabit Ethernet interfaces to an out-of-range number:
Switch(config)# system mtu jumbo 2500 ^ % Invalid input detected at '^' marker.
Monitoring Interface Status, page 11-24 Clearing and Resetting Interfaces and Counters, page 11-25 Shutting Down and Restarting the Interface, page 11-25
Command show interfaces [interface-id] show interfaces interface-id status [err-disabled ] show interfaces [interface-id] switchport
Purpose Display the status and configuration of all interfaces or a specific interface. Display interface status or a list of interfaces in an error-disabled state. Display administrative and operational status of switching (nonrouting) ports. You can use this command to find out if a port is in routing or switching mode. Display the description configured on an interface or all interfaces and the interface status. Display the usability status of all interfaces configured for IP routing or the specified interface. Display the input and output packets by the switching path for the interface. Display physical and operational status about an SFP module. Display the running configuration in RAM for the interface. Display the hardware configuration, software version, the names and sources of configuration files, and the boot images. Verify the operational state of the Auto-MDIX feature on the interface.
show interfaces [interface-id] description show ip interface [interface-id ] show interface [interface-id] stats show interfaces [interface-id] [{transceiver calibration | properties | detail}] module number ] show running-config interface [interface-id] show version show controllers ethernet-controller interface-id phy
11-24
78-16180-02
Chapter 11
Command clear counters [interface-id] clear interface interface-id clear line [number | console 0 | vty number]
Purpose Clear interface counters. Reset the hardware logic on an interface. 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 interface privileged EXEC command.
configure terminal
interface {vlan vlan-id} | {{fastethernet | gigabitethernet} Select the interface to be configured. interface-id} | {port-channel port-channel-number} shutdown end show running-config Shut down an interface. Return to privileged EXEC mode. Verify your entry.
Use the no shutdown interface configuration command to restart the interface. To verify that an interface is disabled, enter the show interfaces privileged EXEC command. A disabled interface is shown as administratively down in the show interface command display.
11-25
11-26
78-16180-02
C H A P T E R
12
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Smartports Macros, page 12-1 Configuring Smartports Macros, page 12-2 Displaying Smartports Macros, page 12-8
Description Use this global configuration macro to enable rapid PVST+, loop guard, and dynamic port error recovery for link state failures. Use this interface configuration macro for increased network security and reliability when connecting a desktop device, such as a PC, to a switch port.
12-1
Description Use this interface configuration macro when connecting a desktop device such as a PC with a Cisco IP Phone to a switch port. This macro is an extension of the cisco-desktop macro and provides the same security and resiliency features, but with the addition of dedicated voice VLANs to ensure proper treatment of delay-sensitive voice traffic. Use this interface configuration macro when connecting an access switch and a distribution switch or between access switches connected using GigaStack modules or GBICs. Use this interface configuration macro when connecting the switch and a WAN router.
cisco-switch
cisco-router
1. Cisco-default Smartports macros vary depending on the software version running on your switch.
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, refer to this Smartports website: http://www.cisco.com/go/smartports
Default Smartports Macro Configuration, page 12-2 Smartports Macro Configuration Guidelines, page 12-3 Creating Smartports Macros, page 12-4 Applying Smartports Macros, page 12-5 Applying Cisco-Default Smartports Macros, page 12-6
12-2
78-16180-02
Chapter 12
When creating a macro, do not use the exit or end commands or change the command mode by using interface interface-id. This could cause commands that follow exit, end, or interface interface-id to execute in a different command mode. 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 (see Table 12-1). 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.
12-3
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.
Purpose Enter global configuration mode. 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 Step 4
Return to privileged EXEC mode. 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 @
12-4
78-16180-02
Chapter 12
Purpose Enter global configuration mode. Apply each individual command defined in the macro to the switch by entering macro global apply macro-name. Specify macro global trace macro-name to apply and debug a macro to find any syntax or 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.
configure terminal macro global {apply | trace} macro-name [parameter {value}] [parameter {value}] [parameter {value}]
macro global description text interface interface-id default interface interface-id macro {apply | trace} macro-name [parameter {value}] [parameter {value}] [parameter {value}]
(Optional) Enter a description about the macro that is applied to the switch. (Optional) Enter interface configuration mode, and specify the interface on which to apply the macro. (Optional) Clear all configuration from the specified interface. Apply each individual command defined in the macro to the interface by entering macro apply macro-name. Specify macro trace macro-name 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.
macro description text end show parser macro description [interface interface-id] copy running-config startup-config
(Optional) Enter a description about the macro that is applied to the interface. Return to privileged EXEC mode. Verify that the macro is applied to the interface. (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.
12-5
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 gigabitethernet1/0/2 Switch(config-if)# macro apply desktop-config Switch(config-if)# end Switch# show parser macro description Interface Macro Description -------------------------------------------------------------Gi1/0/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
Purpose Display the Cisco-default Smartports macros embedded in the switch software. Display the specific macro that you want to apply. Enter global configuration mode. Append the Cisco-default macro with the required values by using the parameter value keywords and apply the macro to the switch. Keywords that begin with $ mean that a unique parameter value is 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.
show parser macro show parser macro macro-name configure terminal macro global {apply | trace} macro-name [parameter {value}] [parameter {value}] [parameter {value}]
Step 5
interface interface-id
(Optional) Enter interface configuration mode, and specify the interface on which to apply the macro.
12-6
78-16180-02
Chapter 12
Command
Step 6 Step 7
Purpose (Optional) Clear all configuration from the specified interface. Append the Cisco-default macro with the required values by using the parameter value keywords, and apply the macro to the interface. 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.
default interface interface-id macro {apply | trace} macro-name [parameter {value}] [parameter {value}] [parameter {value}]
Return to privileged EXEC mode. Verify that the macro is applied to an interface. (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 # Basic interface - Enable data VLAN only # Recommended value for access vlan (AVID) should not be 1 switchport access vlan $AVID switchport mode access # Enable port security limiting port to a single # MAC address -- that of desktop switchport port-security switchport port-security maximum 1 # Ensure port-security age is greater than one minute # and use inactivity timer switchport port-security violation restrict switchport port-security aging time 2 switchport port-security aging type inactivity # Configure port as an edge network port spanning-tree portfast spanning-tree bpduguard enable -------------------------------------------------------------Switch# Switch# configure terminal Switch(config)# gigabitethernet1/0/4 Switch(config-if)# macro apply cisco-desktop $AVID 25
12-7
Command show parser macro show parser macro name macro-name show parser macro brief show parser macro description [interface interface-id]
Purpose Displays all configured macros. Displays a specific macro. Displays the configured macro names. Displays the macro description for all interfaces or for a specified interface.
12-8
78-16180-02
C H A P T E R
13
Configuring VLANs
This chapter describes how to configure normal-range VLANs (VLAN IDs 1 to 1005) and extended-range VLANs (VLAN IDs 1006 to 4094) on the Catalyst 3750 switch. It includes information about VLAN membership modes, VLAN configuration modes, VLAN trunks, and dynamic VLAN assignment from a VLAN Membership Policy Server (VMPS). Unless otherwise noted, the term switch refers to a standalone switch and a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. The chapter includes these sections:
Understanding VLANs, page 13-1 Configuring Normal-Range VLANs, page 13-5 Configuring Extended-Range VLANs, page 13-12 Displaying VLANs, page 13-16 Configuring VLAN Trunks, page 13-16 Configuring VMPS, page 13-27
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 a switch supporting fallback bridging, as shown in Figure 13-1. VLANs can be formed with ports across the stack. Because a VLAN is considered a separate logical network, it contains its own bridge Management Information Base (MIB) information and can support its own implementation of spanning tree. See Chapter 17, Configuring STP.
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.
13-1
Configuring VLANs
Figure 13-1 shows an example of VLANs segmented into logically defined networks.
Figure 13-1 VLANs as Logically Defined Networks
Engineering VLAN Cisco router Marketing VLAN Accounting VLAN
Floor 2
Floor 1
90571
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. Traffic between VLANs must be routed or fallback bridged. The switch can route traffic between VLANs by using switch virtual interfaces (SVIs). An SVI must be explicitly configured and assigned an IP address to route traffic between VLANs. For more information, see the Switch Virtual Interfaces section on page 11-4 and the Configuring Layer 3 Interfaces section on page 11-21.
Note
If you plan to configure many VLANs on the switch and to not enable routing, you can use the sdm prefer vlan global configuration command to set the Switch Database Management (sdm) feature to the VLAN template, which configures system resources to support the maximum number of unicast MAC addresses. For more information on the SDM templates, see Chapter 8, Configuring SDM Templates, or refer to the sdm prefer command in the command reference for this release.
13-2
78-16180-02
Chapter 13
Supported VLANs
The switch supports 1005 VLANs in VTP client, server, and transparent modes. 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. Although the switch stack supports a total of 1005 (normal-range and extended-range) VLANs, the number of routed ports, SVIs, and other configured features affects the use of the switch hardware. The switch supports per-VLAN spanning-tree plus (PVST+) or rapid PVST+ with a maximum of 128 spanning-tree instances. One spanning-tree instance is allowed per VLAN. See the Normal-Range VLAN Configuration Guidelines section on page 13-6 for more information about the number of spanning-tree instances and the number of VLANs. The switch supports both Inter-Switch Link (ISL) and IEEE 802.1Q trunking methods for sending VLAN traffic over Ethernet ports.
VLAN Membership Characteristics A static-access port can belong to one VLAN and is manually assigned to that VLAN. For more information, see the Assigning Static-Access Ports to a VLAN section on page 13-11.
VTP Characteristics VTP is not required. If you do not want VTP to globally propagate information, set the VTP mode to transparent. To participate in VTP, there must be at least one trunk port on the switch stack connected to a trunk port of a second switch or switch stack. VTP is recommended but not required. VTP maintains VLAN configuration consistency by managing the addition, deletion, and renaming of VLANs on a network-wide basis. VTP exchanges VLAN configuration messages with other switches over trunk links.
A trunk port is a member of all VLANs by default, including extended-range VLANs, but membership can be limited by configuring the allowed-VLAN list. You can also modify the pruning-eligible list to block flooded traffic to VLANs on trunk ports that are included in the list. For information about configuring trunk ports, see the Configuring an Ethernet Interface as a Trunk Port section on page 13-19.
13-3
Configuring VLANs
VLAN Membership Characteristics A dynamic-access port can belong to one VLAN (VLAN ID 1 to 4094) and is dynamically assigned by a VMPS. The VMPS can be a Catalyst 5000 or Catalyst 6500 series switch, for example, but never a Catalyst 3750 switch. The Catalyst 3750 switch is a VMPS client.
VTP Characteristics VTP is required. Configure the VMPS and the client with the same VTP domain name.
To participate in VTP, there must be at least one trunk port on the switch stack You can have dynamic-access ports and trunk ports on the connected to a trunk port of a second same switch, but you must connect the dynamic-access switch or switch stack. port to an end station or hub and not to another switch. For configuration information, see the Configuring Dynamic-Access Ports on VMPS Clients section on page 13-30.
Voice VLAN
A voice VLAN port is an access port attached to a Cisco VTP is not required; it has no affect on a voice VLAN. IP Phone, configured to use one VLAN for voice traffic and another VLAN for data traffic from a device attached to the phone. For more information about voice VLAN ports, see Chapter 16, Configuring Voice VLAN.
Private VLAN
A private VLAN port is a host or promiscuous port that belongs to a private VLAN primary or secondary VLAN. To use this feature, the stack master must be running the enhanced multilayer image (EMI). For information about private VLANs, see Chapter 15, Configuring Private VLANs.
The switch must be in VTP transparent mode when you configure private VLANs. When private VLANs are configured on the switch, do not change VTP mode from transparent to client or server mode.
For more detailed definitions of access and trunk modes and their functions, see Table 13-4 on page 13-18. 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 7-20.
13-4
78-16180-02
Chapter 13
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-12. 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 on the stack master. Stack members have a vlan.dat file that is consistent with the stack master.
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, refer to the command reference for this release.
13-5
Configuring VLANs
This section includes information about these topics about normal-range VLANs:
Token Ring VLANs, page 13-6 Normal-Range VLAN Configuration Guidelines, page 13-6 VLAN Configuration Mode Options, page 13-7 Saving VLAN Configuration, page 13-8 Default Ethernet VLAN Configuration, page 13-8 Creating or Modifying an Ethernet VLAN, page 13-9 Deleting a VLAN, page 13-11 Assigning Static-Access Ports to a VLAN, page 13-11
For more information on configuring Token Ring VLANs, refer to the Catalyst 5000 Series Software Configuration Guide.
The switch supports 1005 VLANs in VTP client, server, and transparent modes. Normal-range VLANs are identified with a number between 1 and 1001. VLAN numbers 1002 through 1005 are reserved for Token Ring and FDDI VLANs. VLAN configuration for VLANs 1 to 1005 are always saved in the VLAN database. If VTP mode is transparent, VTP and VLAN configuration is also saved in the switch running configuration file. The switch also supports VLAN IDs 1006 through 4094 in VTP transparent mode (VTP disabled). These are extended-range VLANs and configuration options are limited. Extended-range VLANs are not saved in the VLAN database. See the Configuring Extended-Range VLANs section on page 13-12. Before you can create a VLAN, the switch must be in VTP server mode or VTP transparent mode. If the switch is a VTP server, you must define a VTP domain or VTP will not function. The switch does not support Token Ring or FDDI media. The switch does not forward FDDI, FDDI-Net, TrCRF, or TrBRF traffic, but it does propagate the VLAN configuration through VTP. The switch supports 128 spanning-tree instances. If a switch has more active VLANs than supported spanning-tree instances, spanning tree can be enabled on 128 VLANs and is disabled on the remaining VLANs. If you have already used all available spanning-tree instances on a switch, adding another VLAN anywhere in the VTP domain creates a VLAN on that switch that is not running spanning-tree. If you have the default allowed list on the trunk ports of that switch (which is to allow all VLANs), 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 would not be broken, particularly if there
13-6
78-16180-02
Chapter 13
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 18, Configuring MSTP.
When a switch in a stack learns a new VLAN or deletes or modifies an existing VLAN (either through VTP over network ports or through the CLI), the VLAN information is communicated to all stack members. When a switch joins a stack or when stacks merge, VTP information (the vlan.dat file) on the new switches will be consistent with the stack master.
VLAN Configuration in config-vlan Mode, page 13-7 You access config-vlan mode by entering the vlan vlan-id global configuration command.
VLAN Configuration in VLAN Database Configuration Mode, page 13-7 You access VLAN database configuration mode by entering the vlan database privileged EXEC command.
13-7
Configuring VLANs
If the VTP mode is transparent in the startup configuration, and the VLAN database and the VTP domain name from the VLAN database matches that in the startup configuration file, the VLAN database is ignored (cleared), and the VTP and VLAN configurations in the startup configuration file are used. The VLAN database revision number remains unchanged in the VLAN database. If the VTP mode or domain name in the startup configuration does not match the VLAN database, the domain name and VTP mode and configuration for the first 1005 VLANs use the VLAN database information. If VTP mode is server, the domain name and VLAN configuration for the first 1005 VLANs use the VLAN database information
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.
Table 13-2 Ethernet VLAN Defaults and Ranges
Parameter VLAN ID
Default 1
Range 1 to 4094.
Note
Extended-range VLANs (VLAN IDs 1006 to 4094) are not saved in the VLAN database.
VLAN name
No range VLANxxxx, where xxxx represents four numeric digits (including leading zeros) equal to the VLAN ID number 100001 (100000 plus the VLAN ID) 1500 14294967294 150018190
13-8
78-16180-02
Chapter 13
Parameter Translational bridge 1 Translational bridge 2 VLAN state Remote SPAN Private VLANs
Range 01005 01005 active, suspend enabled, disabled 2 to 1001, 1006 to 4094.
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-12. For the list of default parameters that are assigned when you add a VLAN, see the Configuring Normal-Range VLANs section on page 13-5. Beginning in privileged EXEC mode, follow these steps to use config-vlan mode to create or modify an Ethernet VLAN:
Command
Step 1 Step 2
Purpose Enter global configuration mode. 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-12.
Step 3
name vlan-name
(Optional) Enter a name for the VLAN. If no name is entered for the VLAN, 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. (Optional) Change the MTU size (or other VLAN characteristic). (Optional) Configure the VLAN as the RSPAN VLAN for a remote SPAN session. For more information on remote SPAN, see Chapter 27, Configuring SPAN and RSPAN. Return to privileged EXEC mode.
Step 4 Step 5
Step 6
end
13-9
Configuring VLANs
Command
Step 7 Step 8
Purpose (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.
show vlan {name vlan-name | id vlan-id} Verify your entries. copy running-config startup config
To return the VLAN name to the default settings, use the no name, no mtu, or no remote-span 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
You can also create or modify Ethernet VLANs by using the VLAN database configuration mode.
Note
VLAN database configuration mode does not support RSPAN VLAN configuration or extended-range VLANs. Beginning in privileged EXEC mode, follow these steps to use VLAN database configuration mode to create or modify an Ethernet VLAN:
Command
Step 1 Step 2
Purpose Enter VLAN database configuration mode. Add an Ethernet VLAN by assigning a number to it. The range is 1 to 1001. You can create or modify a range of consecutive VLANs by entering vlan first-vlan-id end last-vlan-id.
Note
When entering a VLAN ID in VLAN database configuration mode, do not enter leading zeros.
If no name is entered for the VLAN, 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 Step 4 Step 5 Step 6
vlan vlan-id mtu mtu-size exit show vlan {name vlan-name | id vlan-id} copy running-config startup config
(Optional) To modify a VLAN, identify the VLAN and change a characteristic, such as the MTU size. Update the VLAN database, propagate it throughout the administrative domain, and return to privileged EXEC mode. Verify your entries. (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 or no vlan vlan-id mtu VLAN database configuration command.
13-10
78-16180-02
Chapter 13
This example shows how to use VLAN 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....
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 stack. 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
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Remove the VLAN by entering the VLAN ID. Return to privileged EXEC mode. Verify the VLAN removal. (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.
configure terminal no vlan vlan-id end show vlan brief copy running-config startup config
To delete a VLAN by using VLAN database configuration mode, use the vlan database privileged EXEC command to enter VLAN database configuration mode and the no vlan vlan-id VLAN database 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-9.)
13-11
Configuring VLANs
Beginning in privileged EXEC mode, follow these steps to assign a port to a VLAN in the VLAN database: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8
Purpose Enter global configuration mode Enter the interface to be added to the VLAN. Define the VLAN membership mode for the port (Layer 2 access port). Assign the port to a VLAN. Valid VLAN IDs are 1 to 4094. Return to privileged EXEC mode. Verify the VLAN membership mode of the interface. Verify your entries in the Administrative Mode and the Access Mode VLAN fields of the display. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id switchport mode access switchport access vlan vlan-id end show running-config interface interface-id show interfaces interface-id switchport copy running-config startup-config
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 gigabitethernet2/0/1 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 2 Switch(config-if)# end
Note
Although the switch supports 4094 VLAN IDs, see the Supported VLANs section on page 13-3 for the actual number of VLANs supported. This section includes this information about extended-range VLANs:
Default VLAN Configuration, page 13-13 Extended-Range VLAN Configuration Guidelines, page 13-13
13-12
78-16180-02
Chapter 13
Creating an Extended-Range VLAN, page 13-14 Creating an Extended-Range VLAN with an Internal VLAN ID, page 13-15
To add an extended-range VLAN, you must use the vlan vlan-id global configuration command and access config-vlan mode. You cannot add extended-range VLANs in VLAN database configuration mode (accessed by entering the vlan database privileged EXEC command). VLAN IDs in the extended range are not saved in the VLAN database and are not recognized by VTP. You cannot include extended-range VLANs in the pruning eligible range. The switch must be in VTP transparent mode when you create extended-range VLANs. If VTP mode is server or client, an error message is generated, and the extended-range VLAN is rejected. You can set the VTP mode to transparent in global configuration mode or in VLAN database configuration mode. See the Disabling VTP (VTP Transparent Mode) section on page 14-12. You should 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. STP is enabled by default on extended-range VLANs, but you can disable it by using the no spanning-tree vlan vlan-id global configuration command. When the maximum number of spanning-tree instances (128) are on the switch, spanning tree is disabled on any newly created VLANs. If the number of VLANs on the switch exceeds the maximum number of 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 18, Configuring MSTP. Each routed port on the switch creates an internal VLAN for its use. These internal VLANs use extended-range VLAN numbers, and the internal VLAN ID cannot be used for an extended-range VLAN. If you try to create an extended-range VLAN with a VLAN ID that is already allocated as an internal VLAN, an error message is generated, and the command is rejected.
Because internal VLAN IDs are in the lower part of the extended range, we recommend that you
create extended-range VLANs beginning from the highest number (4094) and moving to the lowest (1006) to reduce the possibility of using an internal VLAN ID.
Before configuring extended-range VLANs, enter the show vlan internal usage privileged
EXEC command to see which VLANs have been allocated as internal VLANs.
If necessary, you can shut down the routed port assigned to the internal VLAN, which frees up
the internal VLAN, and then create the extended-range VLAN and re-enable the port, which then uses another VLAN as its internal VLAN. See the Creating an Extended-Range VLAN with an Internal VLAN ID section on page 13-15.
13-13
Configuring VLANs
Although the switch stack supports a total of 1005 (normal-range and extended-range) VLANs, the number of routed ports, SVIs, and other configured features affects the use of the switch hardware. If you try to create an extended-range VLAN and there are not enough hardware resources available, an error message is generated, and the extended-range VLAN is rejected. In a switch stack, the whole stack uses the same running configuration and saved configuration, and extended-range VLAN information is shared across the stack.
Note
Before you create an extended-range VLAN, you can verify that the VLAN ID is not used internally by entering the show vlan internal usage privileged EXEC command. If the VLAN ID is used internally and you want to free it up, go to theCreating an Extended-Range VLAN with an Internal VLAN ID section on page 13-15 before creating the extended-range VLAN. Beginning in privileged EXEC mode, follow these steps to create an extended-range VLAN:
Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Configure the switch for VTP transparent mode, disabling VTP. Enter an extended-range VLAN ID and enter config-vlan mode. The range is 1006 to 4094. (Optional) Modify the VLAN by changing the MTU size.
Note
Although all VLAN commands appear in the CLI help in config-vlan mode, only the mtu mtu-size and remote-span commands are supported for extended-range VLANs.
Step 5 Step 6
remote-span end
(Optional) Configure the VLAN as the RSPAN VLAN. See the Configuring a VLAN as an RSPAN VLAN section on page 27-18. Return to privileged EXEC mode.
13-14
78-16180-02
Chapter 13
Command
Step 7 Step 8
Purpose Verify that the VLAN has been created. 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-11. 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
Purpose Display the VLAN IDs being used internally by the switch. If the VLAN ID that you want to use is an internal VLAN, the display shows the routed port that is using the VLAN ID. Enter that port number in Step 3. Enter global configuration mode. Enter the interface ID for the routed port that is using the VLAN ID. Shut down the port to free the internal VLAN ID. Return to global configuration mode. Set the VTP mode to transparent for creating extended-range VLANs. Enter the new extended-range VLAN ID, and enter config-vlan mode. Exit from config-vlan mode, and return to global configuration mode. Enter the interface ID for the routed port that you shut down in Step 4. Re-enable the routed port. It will be assigned a new internal VLAN ID.
configure terminal interface interface-id shutdown exit vtp mode transparent vlan vlan-id exit interface interface-id no shutdown
13-15
Configuring VLANs
Command
Step 11 Step 12
Purpose Return to privileged EXEC mode. Save your entries in the switch startup configuration file. To save an extended-range VLAN configuration, 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.
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 database configuration command (accessed by entering the vlan database privileged EXEC command). Table 13-3 lists the commands for monitoring VLANs.
Table 13-3 VLAN Monitoring Commands
Command show show current [vlan-id] show interfaces [vlan vlan-id] show vlan [id vlan-id ]
Command Mode VLAN database configuration VLAN database configuration Privileged EXEC Privileged EXEC
Purpose Display status of VLANs in the VLAN database. Display status of all or the specified VLAN in the VLAN database. Display characteristics for all interfaces or for the specified VLAN configured on the switch. Display parameters for all VLANs or the specified VLAN on the switch.
For more details about the show command options and explanations of output fields, refer to the command reference for this release.
Trunking Overview, page 13-17 Encapsulation Types, page 13-18 Default Layer 2 Ethernet Interface VLAN Configuration, page 13-19 Configuring an Ethernet Interface as a Trunk Port, page 13-19 Configuring Trunk Ports for Load Sharing, page 13-24
13-16
78-16180-02
Chapter 13
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. Ethernet trunks carry the traffic of multiple VLANs over a single link, and you can extend the VLANs across an entire network. Two trunking encapsulations are available on all Ethernet interfaces:
Inter-Switch Link (ISL)ISL is Cisco-proprietary trunking encapsulation. 802.1Q802.1Q is industry-standard trunking encapsulation.
Figure 13-2 shows a network of switches that are connected by ISL trunks.
Figure 13-2 Switches in an ISL Trunking Environment
ISL trunk
ISL trunk
Switch
Switch
VLAN1
VLAN3
VLAN2
VLAN2
VLAN1
VLAN3
45828
You can configure a trunk on a single Ethernet interface or on an EtherChannel bundle. For more information about EtherChannel, see Chapter 33, 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. Use the switchport trunk encapsulation isl or switchport trunk encapsulation dot1q interface to select the encapsulation type on the trunk port.
13-17
Configuring VLANs
You can also specify on DTP interfaces whether the trunk uses ISL or 802.1Q encapsulation or if the encapsulation type is autonegotiated. The DTP supports autonegotiation of both ISL and 802.1Q trunks.
Note
Function Puts the interface (access port) into permanent nontrunking mode and negotiates to convert the link into a nontrunk link. The interface becomes a nontrunk interface regardless of whether or not the neighboring interface is a trunk interface. 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. The default switchport mode for all Ethernet interfaces is dynamic auto. Makes the interface actively attempt to convert the link to a trunk link. The interface becomes a trunk interface if the neighboring interface is set to trunk, desirable, or auto mode. Puts the interface into permanent trunking mode and negotiates to convert the neighboring link into a trunk link. The interface becomes a trunk interface even if the neighboring interface is not a trunk interface. 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.
switchport nonegotiate
Encapsulation Types
Table 13-5 lists the Ethernet trunk encapsulation types and keywords.
Table 13-5 Ethernet Trunk Encapsulation Types
Function Specifies ISL encapsulation on the trunk link. Specifies 802.1Q encapsulation on the trunk link.
switchport trunk encapsulation negotiate Specifies that the interface negotiate with the neighboring interface to become an ISL (preferred) or 802.1Q trunk, depending on the configuration and capabilities of the neighboring interface. This is the default for the switch.
Note
The switch does not support Layer 3 trunks; you cannot configure subinterfaces or use the encapsulation keyword on Layer 3 interfaces. The switch does support Layer 2 trunks and Layer 3 VLAN interfaces, which provide equivalent capabilities. The trunking mode, the trunk encapsulation type, and the hardware capabilities of the two connected interfaces decide whether a link becomes an ISL or 802.1Q trunk.
13-18
78-16180-02
Chapter 13
In a network of Cisco switches connected through 802.1Q trunks, the switches maintain one instance of spanning tree for each VLAN allowed on the trunks. Non-Cisco devices might support one spanning-tree instance for all VLANs. When you connect a Cisco switch to a non-Cisco device through an 802.1Q trunk, the Cisco switch combines the spanning-tree instance of the VLAN of the trunk with the spanning-tree instance of the non-Cisco 802.1Q switch. However, spanning-tree information for each VLAN is maintained by Cisco switches separated by a cloud of non-Cisco 802.1Q switches. The non-Cisco 802.1Q cloud separating the Cisco switches is treated as a single trunk link between the switches.
Make sure the native VLAN for an 802.1Q trunk is the same on both ends of the trunk link. If the native VLAN on one end of the trunk is different from the native VLAN on the other end, spanning-tree loops might result. Disabling spanning tree on the native VLAN of an 802.1Q trunk without disabling spanning tree on every VLAN in the network can potentially cause spanning-tree loops. We recommend that you leave spanning tree enabled on the native VLAN of an 802.1Q trunk or disable spanning tree on every VLAN in the network. Make sure your network is loop-free before disabling spanning tree.
Feature Interface mode Trunk encapsulation Allowed VLAN range VLAN range eligible for pruning Default VLAN (for access ports) Native VLAN (for 802.1Q trunks)
Default Setting switchport mode dynamic auto switchport trunk encapsulation negotiate VLANs 1 to 4094 VLANs 2 to 1001 VLAN 1 VLAN 1
Interaction with Other Features, page 13-20 Defining the Allowed VLANs on a Trunk, page 13-21 Changing the Pruning-Eligible List, page 13-22 Configuring the Native VLAN for Untagged Traffic, page 13-23
13-19
Configuring VLANs
Note
By default, an interface is in Layer 2 mode. The default mode for Layer 2 interfaces is switchport mode dynamic auto. If the neighboring interface supports trunking and is configured to allow trunking, the link is a Layer 2 trunk or, if the interface is in Layer 3 mode, it becomes a Layer 2 trunk when you enter the switchport interface configuration command. By default, trunks negotiate encapsulation. If the neighboring interface supports ISL and 802.1Q encapsulation and both interfaces are set to negotiate the encapsulation type, the trunk uses ISL encapsulation.
A trunk port cannot be a secure port. Trunk ports can be grouped into EtherChannel port groups, but all trunks in the group must have the same configuration. When a group is first created, all ports follow the parameters set for the first port to be added to the group. If you change the configuration of one of these parameters, the switch propagates the setting you entered to all ports in the group:
allowed-VLAN list. STP port priority for each VLAN. STP Port Fast setting. trunk status: if one port in a port group ceases to be a trunk, all ports cease to be trunks.
We recommend that you configure no more than 24 trunk ports in PVST mode and no more than 40 trunk ports in MST mode. If you try to enable 802.1x on a trunk port, an error message appears, and 802.1x is not enabled. If you try to change the mode of an 802.1x-enabled port to trunk, the port mode is not changed. A port in dynamic mode can negotiate with its neighbor to become a trunk port. If you try to enable 802.1x on a dynamic port, an error message appears, and 802.1x is not enabled. If you try to change the mode of an 802.1x-enabled port to dynamic, the port mode is not changed.
Purpose Enter global configuration mode. Enter the interface configuration mode and the port to be configured for trunking. Configure the port to support ISL or 802.1Q encapsulation or to negotiate (the default) with the neighboring interface for encapsulation type. You must configure each end of the link with the same encapsulation type.
configure terminal interface interface-id switchport trunk encapsulation {isl | dot1q | negotiate}
13-20
78-16180-02
Chapter 13
Command
Step 4
Purpose Configure the interface as a Layer 2 trunk (required only if the interface is a Layer 2 access port to specify the trunking mode).
dynamic autoSet the interface to a trunk link if the neighboring interface is set to trunk or desirable mode. This is the default. dynamic desirableSet the interface to a trunk link if the neighboring interface is set to trunk, desirable, or auto mode. trunkSet 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.
switchport access vlan vlan-id switchport trunk native vlan vlan-id end
(Optional) Specify the default VLAN, which is used if the interface stops trunking. Specify the native VLAN for 802.1Q trunks. Return to privileged EXEC mode.
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. show interfaces interface-id trunk copy running-config startup-config Display the trunk configuration of the interface. (Optional) Save your entries in the configuration file.
Step 9 Step 10
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 gigabitethernet1/0/2 Switch(config-if)# switchport mode dynamic desirable Switch(config-if)# switchport trunk encapsulation dot1q Switch(config-if)# end
Note
VLAN 1 is the default VLAN on all trunk ports in all Cisco switches, and it has previously been a requirement that VLAN 1 always be enabled on every trunk link. You can use the VLAN 1 minimization feature to disable VLAN 1 on any individual VLAN trunk link so that no user traffic (including spanning tree advertisements) is sent or received on VLAN 1.
13-21
Configuring VLANs
To reduce the risk of spanning-tree loops or storms, you can disable VLAN 1 on any individual VLAN trunk port by removing VLAN 1 from the allowed list. When you remove VLAN 1 from a trunk port, the interface continues to sent and receive management traffic, for example, Cisco Discovery Protocol (CDP), Port Aggregation Protocol (PAgP), Link Aggregation Control Protocol (LACP), 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 will be 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 ISL or 802.1Q trunk: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enter interface configuration mode and the port to be configured. Configure the interface as a VLAN trunk port. (Optional) Configure the list of VLANs allowed on the trunk. For explanations about using the add, all, except, and remove keywords, refer to 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.
configure terminal interface interface-id switchport mode trunk switchport trunk allowed vlan {add | all | except | remove} vlan-list
Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
show interfaces interface-id switchport Verify your entries in the Trunking VLANs Enabled field of the display.
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 on a port:
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# switchport trunk allowed vlan remove 2 Switch(config-if)# end
13-22
78-16180-02
Chapter 13
Beginning in privileged EXEC mode, follow these steps to remove VLANs from the pruning-eligible list on a trunk port: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and select the trunk port for which VLANs should be pruned. Configure the list of VLANs allowed to be pruned from the trunk. (See the VTP Pruning section on page 14-5). For explanations about using the add, except, none, and remove keywords, refer to 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.
configure terminal interface interface-id switchport trunk pruning vlan {add | except | none | remove} vlan-list [,vlan[,vlan[,,,]]
Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
show interfaces interface-id switchport Verify your entries in the Pruning VLANs Enabled field of the display.
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. For information about 802.1Q configuration issues, see the 802.1Q Configuration Considerations section on page 13-19. Beginning in privileged EXEC mode, follow these steps to configure the native VLAN on an 802.1Q trunk:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Enter interface configuration mode, and define the interface that is configured as the 802.1Q trunk.
13-23
Configuring VLANs
Command
Step 3
Purpose Configure the VLAN that is sending and receiving untagged traffic on the trunk port. For vlan-id , the range is 1 to 4094. Return to privileged EXEC mode. Verify your entries in the Trunking Native Mode VLAN field. (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.
VLANs 8 through 10 are assigned a port priority of 16 on Trunk 1. VLANs 3 through 6 retain the default port priority of 128 on Trunk 1. VLANs 3 through 6 are assigned a port priority of 16 on Trunk 2. VLANs 8 through 10 retain the default port priority of 128 on Trunk 2.
In this way, Trunk 1 carries traffic for VLANs 8 through 10, and Trunk 2 carries traffic for VLANs 3 through 6. If the active trunk fails, the trunk with the lower priority takes over and carries the traffic for all of the VLANs. No duplication of traffic occurs over any trunk port.
13-24
78-16180-02
Chapter 13
Switch A
Switch B
Note
If your switch is a member of a switch stack, you must use the spanning-tree [vlan vlan-id] cost cost interface configuration command instead of the spanning-tree [vlan vlan-id] port-priority priority interface configuration command to select an interface to put in the forwarding state. Assign lower cost values to interfaces that you want selected first and higher cost values that you want selected last. For more information, see the Load Sharing Using STP Path Cost section on page 13-26. Beginning in privileged EXEC mode, follow these steps to configure the network shown in Figure 13-3.
Command
Step 1 Step 2
Purpose Enter global configuration mode on Switch A. Configure a VTP administrative domain. The domain name can be from 1 to 32 characters. Configure Switch A as the VTP server. Return to privileged EXEC mode. 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.
configure terminal vtp domain domain-name vtp mode server end show vtp status
show vlan configure terminal interface gigabitethernet1/ 0/1 switchport trunk encapsulation {isl | dot1q | negotiate} switchport mode trunk end show interfaces gigabitethernet1/ 0/1 switchport
Verify that the VLANs exist in the database on Switch A. Enter global configuration mode. Enter interface configuration mode, and define the interface to be configured as a trunk. Configure the port to support ISL or 802.1Q encapsulation or to negotiate with the neighboring interface. You must configure each end of the link with the same encapsulation type. Configure the port as a trunk port. Return to privileged EXEC mode. Verify the VLAN configuration. Repeat Steps 7 through 11 on Switch A for a second interface in the switch stack. Repeat Steps 7 through 11 on Switch B to configure the trunk ports that connect to the trunk ports configured on Switch A.
13-25
Configuring VLANs
Command
Step 15
Purpose 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. Enter global configuration mode on Switch A. Enter interface configuration mode, and define the interface to set the STP port priority. Assign the port priority of 16 for VLANs 8 through 10. Return to global configuration mode. Enter interface configuration mode, and define the interface to set the STP port priority. Assign the port priority of 16 for VLANs 3 through 6. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
show vlan
configure terminal interface gigabitethernet1/ 0/1 spanning-tree vlan 8-10 port-priority 16 exit interface gigabitethernet1/0/2 spanning-tree vlan 3-6 port-priority 16 end show running-config copy running-config startup-config
VLANs 2 through 4 are assigned a path cost of 30 on Trunk port 1. VLANs 8 through 10 retain the default 100BASE-T path cost on Trunk port 1 of 19. VLANs 8 through 10 are assigned a path cost of 30 on Trunk port 2. VLANs 2 through 4 retain the default 100BASE-T path cost on Trunk port 2 of 19.
Switch A
Trunk port 1 VLANs 2 4 (path cost 30) VLANs 8 10 (path cost 19)
Trunk port 2 VLANs 8 10 (path cost 30) VLANs 2 4 (path cost 19)
90573
Switch B
13-26
78-16180-02
Chapter 13
Beginning in privileged EXEC mode, follow these steps to configure the network shown in Figure 13-4: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode on Switch A. Enter interface configuration mode, and define the interface to be configured as a trunk. Configure the port to support ISL or 802.1Q encapsulation. You must configure each end of the link with the same encapsulation type. Configure the port as a trunk port. The trunk defaults to ISL trunking. Return to global configuration mode. Repeat Steps 2 through 4 on a second interface in the Switch A stack. Return to privileged EXEC mode. Verify your entries. In the display, make sure that the interfaces configures in Steps 2 and 6 are configured as trunk ports. 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. Enter global configuration mode. Enter interface configuration mode, and define the interface on which to set the STP cost. Set the spanning-tree path cost to 30 for VLANs 2 through 4. Return to global configuration mode. Repeat Steps 9 through 11 on the other configured trunk interface on Switch A, and set the spanning-tree path cost to 30 for VLANs 8, 9, and 10.
configure terminal interface gigabitethernet1/0/1 switchport trunk encapsulation {isl | dot1q | negotiate} switchport mode trunk exit end show running-config show vlan
Return to privileged EXEC mode. Verify your entries. In the display, verify that the path costs are set correctly for both trunk interfaces. (Optional) Save your entries in the configuration file.
Configuring VMPS
The VLAN Query Protocol (VQP) is used to support dynamic-access ports, which are not permanently assigned to a VLAN, but given VLAN assignments based on the MAC source addresses seen on the port. Each time an unknown MAC address is seen, the switch sends a VQP query to a remote VMPS; the query includes the newly seen MAC address and the port on which it was seen. The VMPS responds with a VLAN assignment for the port. The switch cannot be a VMPS server but can act as a client to the VMPS and communicate with it through VQP. This section includes this information about configuring VMPS:
Understanding VMPS section on page 13-28 Default VMPS Client Configuration section on page 13-29
13-27
Configuring VLANs
VMPS Configuration Guidelines section on page 13-29 Configuring the VMPS Client section on page 13-30 Monitoring the VMPS section on page 13-32 Troubleshooting Dynamic-Access Port VLAN Membership section on page 13-33 VMPS Configuration Example section on page 13-33
Understanding VMPS
Each time the client switch receives the MAC address of a new host, it sends a VQP query to the VMPS. When the VMPS receives this query, 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 open or secure mode. In secure mode, the server shuts down the port when an illegal host is detected. In open mode, the server simply denies the host access to the port. If the port is currently unassigned (that is, it does not yet have a VLAN assignment), the VMPS provides one of these responses:
If the host is allowed on the port, the VMPS sends the client a vlan-assignment response containing the assigned VLAN name and allowing access to the host. If the host is not allowed on the port and the VMPS is in open mode, the VMPS sends an access-denied response. If the VLAN is not allowed on the port and the VMPS is in secure mode, the VMPS sends a port-shutdown response. If the VLAN in the database matches the current VLAN on the port, the VMPS sends an success response, allowing access to the host. If the VLAN in the database does not match the current VLAN on the port and active hosts exist on the port, the VMPS sends an access-denied or a port-shutdown response, depending on the secure mode of the VMPS.
If the port already has a VLAN assignment, the VMPS provides one of these responses:
If the switch receives an access-denied response from the VMPS, it continues to block traffic to and from the host MAC address. The switch continues to monitor the packets directed to the port and sends a query to the VMPS when it identifies a new host address. If the switch receives a port-shutdown response from the VMPS, it disables the port. The port must be manually re-enabled by using the CLI, CMS, or SNMP.
13-28
78-16180-02
Chapter 13
Multiple hosts (MAC addresses) can be active on a dynamic-access port if they are all in the same VLAN; however, the VMPS shuts down a dynamic-access port if more than 20 hosts are active on the port. If the link goes down on a dynamic-access port, the port returns to an isolated state and does not belong to a VLAN. Any hosts that come online through the port are checked again through the VQP with the VMPS before the port is assigned to a VLAN. Dynamic-access ports can be used for direct host connections, or they can connect to a network. A maximum of 20 MAC addresses are allowed per port on the switch. A dynamic-access port can belong to only one VLAN at a time, but the VLAN can change over time, depending on the MAC addresses seen.
Feature VMPS domain server VMPS reconfirm interval VMPS server retry count Dynamic-access ports
You should configure the VMPS before you configure ports as dynamic-access ports. When you configure a port as a dynamic-access port, the spanning-tree Port Fast feature is automatically enabled for that port. The Port Fast mode accelerates the process of bringing the port into the forwarding state. 802.1x ports cannot be configured as dynamic-access ports. If you try to enable 802.1x on a dynamic-access (VQP) port, an error message appears, and 802.1x is not enabled. If you try to change an 802.1x-enabled port to dynamic VLAN assignment, an error message appears, and the VLAN configuration is not changed. Trunk ports cannot be dynamic-access ports, but you can enter the switchport access vlan dynamic interface configuration command for a trunk port. In this case, the switch retains the setting and applies it if the port is later configured as an access port. You must turn off trunking on the port before the dynamic-access setting takes effect.
Dynamic-access ports cannot be monitor ports. Secure ports cannot be dynamic-access ports. You must disable port security on a port before it becomes dynamic. Private VLAN ports cannot be dynamic-access ports. Dynamic-access ports cannot be members of an EtherChannel group. Port channels cannot be configured as dynamic-access ports. A dynamic-access port can participate in fallback bridging.
13-29
Configuring VLANs
The VTP management domain of the VMPS client and the VMPS server must be the same. The VLAN configured on the VMPS server should not be a voice VLAN.
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
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter the IP address of the switch acting as the primary VMPS server. (Optional) Enter the IP address of the switch acting as a secondary VMPS server. You can enter up to three secondary server addresses. Return to privileged EXEC mode. Verify your entries in the VMPS Domain Server field of the display. (Optional) Save your entries in the configuration file.
Note
You must have IP connectivity to the VMPS for dynamic-access ports to work. You can test for IP connectivity by pinging the IP address of the VMPS and verifying that you get a response.
Caution
Dynamic-access 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.
13-30
78-16180-02
Chapter 13
Beginning in privileged EXEC mode, follow these steps to configure a dynamic-access port on a VMPS client switch: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enter interface configuration mode for the switch port that is connected to the end station. Set the port to access mode. Configure the port as eligible for dynamic VLAN membership. The dynamic-access port must be connected to an end station. Return to privileged EXEC mode. Verify your entries in the Operational Mode field of the display. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id switchport mode access switchport access vlan dynamic end show interfaces interface-id switchport copy running-config startup-config
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 auto), 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 vlan interface configuration command.
Purpose Reconfirm dynamic-access port VLAN membership. Verify the dynamic VLAN reconfirmation status.
Purpose Enter global configuration mode. Enter the number of minutes between reconfirmations of the dynamic VLAN membership. The range is from 1 to 120. The default is 60 minutes. Return to privileged EXEC mode.
13-31
Configuring VLANs
Command
Step 4 Step 5
Purpose Verify the dynamic VLAN reconfirmation status in the Reconfirm Interval field of the display. (Optional) Save your entries in the configuration file.
To return the switch to its default setting, use the no vmps reconfirm global configuration command.
Purpose Enter global configuration mode. Change the retry count. The retry range is from 1 to 10; the default is 3. Return to privileged EXEC mode. Verify your entry in the Server Retry Count field of the display. (Optional) Save your entries in the configuration file.
configure terminal vmps retry count end show vmps copy running-config startup-config
To return the switch to its default setting, use the no vmps retry global configuration command.
VMPS VQP Versionthe version of VQP used to communicate with the VMPS. The switch queries the VMPS that is using VQP version 1. Reconfirm Intervalthe number of minutes the switch waits before reconfirming the VLAN-to-MAC-address assignments. Server Retry Countthe 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 serverthe 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 Actionthe 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 CMS or SNMP equivalent
This is an example of output for the show vmps privileged EXEC command:
Switch# show vmps VQP Client Status: -------------------VMPS VQP Version: 1 Reconfirm Interval: 60 min Server Retry Count: 3
13-32
78-16180-02
Chapter 13
VMPS domain server: 172.20.128.86 (primary, current) 172.20.128.87 Reconfirmation status --------------------VMPS Action: other
The VMPS is in secure mode, and it does not allow the host to connect to the port. The VMPS shuts down the port to prevent the host from connecting to the network. More than 20 active hosts reside on a dynamic-access port.
To re-enable a disabled dynamic-access port, enter the shutdown interface configuration command followed by the no shutdown interface configuration command.
The VMPS server and the VMPS client are separate switches. The Catalyst 6500 series Switch A is the primary VMPS server. The Catalyst 6500 series Switch C and Switch J are secondary VMPS servers. End stations are connected to the clients, Switch B and Switch I. The database configuration file is stored on the TFTP server with the IP address 172.20.22.7.
13-33
Configuring VLANs
Catalyst 6000 series switch A Primary VMPS Server 1 172.20.26.150 Client switch B End station 1 Dynamic-access port 172.20.26.151 Trunk port Switch C Catalyst 6000 series Secondary VMPS Server 2 Switch D 172.20.26.152
Router
TFTP server
172.20.22.7
Switch E
172.20.26.154
Switch F
172.20.26.155
Switch G
172.20.26.156
End station 2
Switch J
13-34
78-16180-02
C H A P T E R
14
Configuring VTP
This chapter describes how to use the VLAN Trunking Protocol (VTP) and the VLAN database for managing VLANs with the Catalyst 3750 switch. Unless otherwise noted, the term switch refers to a standalone switch and a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. The chapter includes these sections:
Understanding VTP, page 14-1 Configuring VTP, page 14-7 Monitoring VTP, page 14-16
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 is designed to work in an environment where updates are made on a single switch and are sent through VTP to other switches in the domain. It does not work well in a situation where multiple updates to the VLAN database occur simultaneously on switches in the same domain, which would result in an inconsistency in the VLAN database. VTP functionality is supported across the stack, and all switches in the stack maintain the same VLAN and VTP configuration inherited from the stack master. When a switch learns of a new VLAN through VTP messages or when a new VLAN is configured by the user, the new VLAN information is communicated to all switches in the stack. When a switch joins the stack or when stacks merge, the new switches get VTP information from the stack master.
14-1
Configuring VTP
The switch supports 1005 VLANs, but the number of routed ports, SVIs, and other configured features affects the usage of the switch hardware. If the switch is notified by VTP of a new VLAN and the switch is already using the maximum available hardware resources, it sends a message that there are not enough hardware resources available and shuts down the VLAN. The output of the show vlan user EXEC command shows the VLAN in a suspended state. 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 and characteristics.
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-5 VTP and Switch Stacks, page 14-6
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-15 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 trunk connections, including Inter-Switch Link (ISL) and IEEE 802.1Q. VTP dynamically maps VLANs with unique names and internal index associates across multiple LAN types. Mapping eliminates excessive device administration required from network administrators.
14-2
78-16180-02
Chapter 14
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 stack to be in one of the VTP modes listed in Table 14-1.
Table 14-1 VTP Modes
Description In VTP server mode, you can create, modify, and delete VLANs, and specify other configuration parameters (such as the VTP version) for the entire VTP domain. VTP servers advertise their VLAN configurations to other switches in the same VTP domain and synchronize their VLAN configurations with other switches based on advertisements received over trunk links. In VTP server mode, VLAN configurations are saved in nonvolatile RAM (NVRAM). VTP server is the default mode.
VTP client
A VTP client behaves like a VTP server and transmits and receives VTP updates on its trunks, but you cannot create, change, or delete VLANs on a VTP client. VLANs are configured on another switch in the domain that is in server mode. In VTP client mode, VLAN configurations are not saved in NVRAM.
VTP transparent VTP transparent switches do not participate in VTP. A VTP transparent switch does not advertise its VLAN configuration and does not synchronize its VLAN configuration based on received advertisements. However, in VTP Version 2, transparent switches do forward VTP advertisements that they receive from other switches through their trunk interfaces. You can create, modify, and delete VLANs on a switch in VTP transparent mode. The switch must be in VTP transparent mode when you create extended-range VLANs. See the Configuring Extended-Range VLANs section on page 13-12. The switch must be in VTP transparent mode when you create private VLANs. See Chapter 15, Configuring Private VLANs. When private VLANs are configured, do not change the VTP mode from transparent to client or server mode. When the switch is in VTP transparent mode, the VTP and VLAN configurations are saved in NVRAM, but they are not advertised to other switches. In this mode, VTP mode and domain name are saved in the switch running configuration, and you can save this information in the switch startup configuration file by using the copy running-config startup-config privileged EXEC command. The running configuration and the saved configuration are the same for all switches in a stack.
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.
14-3
Configuring VTP
Note
Because trunk ports send and receive VTP advertisements, you must ensure that at least one trunk port is configured on the switch stack and that this trunk port is connected to the trunk port of another switch. Otherwise, the switch cannot receive any VTP advertisements. For more information on trunk ports, see the Configuring VLAN Trunks section on page 13-16. VTP advertisements distribute this global domain information:
VTP domain name VTP configuration revision number Update identity and update timestamp 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 (ISL and 802.1Q) 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 that are not supported in Version 1:
Token Ring supportVTP 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-5. Unrecognized Type-Length-Value (TLV) supportA 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 ModeIn 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 ChecksIn VTP Version 2, VLAN consistency checks (such as VLAN names and values) are performed only when you enter new information through the CLI, the Cluster Management Software (CMS), 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.
14-4
78-16180-02
Chapter 14
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.
Figure 14-1 Flooding Traffic without VTP Pruning
Switch D Port 2
Switch E
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).
14-5
Configuring VTP
Port 4
Switch E
Port 5 Port 1
89241
Switch F
Switch C
Switch A
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 trunk only (not on all switches in the VTP domain). See the Enabling VTP Pruning section on page 14-14. 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-22). 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.
When a switch joins the stack, it inherits the VTP and VLAN properties of the stack master. All VTP updates are carried across the stack. When VTP mode is changed in a switch in the stack, the other switches in the stack also change VTP mode, and the switch VLAN database remains consistent.
For more information about the switch stack, see Chapter 5, Managing Switch Stacks.
14-6
78-16180-02
Chapter 14
Configuring VTP
This section includes guidelines and procedures for configuring VTP. These sections are included:
Default VTP Configuration, page 14-7 VTP Configuration Options, page 14-7 VTP Configuration Guidelines, page 14-8 Configuring a VTP Server, page 14-10 Configuring a VTP Client, page 14-11 Disabling VTP (VTP Transparent Mode), page 14-12 Enabling VTP Version 2, page 14-13 Enabling VTP Pruning, page 14-14 Adding a VTP Client Switch to a VTP Domain, page 14-15
Feature VTP domain name VTP mode VTP version VTP password VTP pruning
VTP Configuration in Global Configuration Mode, page 14-7 VTP Configuration in VLAN Database Configuration Mode, page 14-8 You access VLAN database configuration mode by entering the vlan database privileged EXEC command.
For detailed information about vtp commands, refer to the command reference for this release.
14-7
Configuring VTP
configuration file, and you can save it in the switch startup configuration file by entering the copy running-config startup-config privileged EXEC command. You must use this command if you want to save VTP mode as transparent, even if the switch resets. When you save VTP information in the switch startup configuration file and reboot the switch, the switch configuration is selected as follows:
If the VTP mode is transparent in the startup configuration and the VLAN database and the VTP domain name from the VLAN database matches that in the startup configuration file, the VLAN database is ignored (cleared), and the VTP and VLAN configurations in the startup configuration file are used. The VLAN database revision number remains unchanged in the VLAN database. If the VTP mode or domain name in the startup configuration do not match the VLAN database, the domain name and VTP mode and configuration for the first 1005 VLANs use the VLAN database information.
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.
14-8
78-16180-02
Chapter 14
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 that have 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 on the switch stack so that the switch can send and receive VTP advertisements to and from other switches in the domain. For more information, see the Configuring VLAN Trunks section on page 13-16. 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, refer to the command reference for this release. If you are configuring extended-range VLANs on the switch, the switch must be in VTP transparent mode. VTP does not support private VLANs. If you configure private VLANs, the switch must be in VTP transparent mode. When private VLANs are configured on the switch, do not change the VTP mode from transparent to client or server mode.
14-9
Configuring VTP
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. Beginning in privileged EXEC mode, follow these steps to configure the switch as a VTP server:
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Configure the switch for VTP server mode (the default). 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. (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 4
Step 5 Step 6
Return to privileged EXEC mode. 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 Switch(config)# vtp mode server Switch(config)# vtp domain eng_group Switch(config)# vtp password mypassword Switch(config)# end
You can also use VLAN database configuration mode to configure VTP parameters. Beginning in privileged EXEC mode, follow these steps to use VLAN database configuration mode to configure the switch as a VTP server: Command
Step 1 Step 2
Purpose Enter VLAN database configuration mode. Configure the switch for VTP server mode (the default).
14-10
78-16180-02
Chapter 14
Command
Step 3
Purpose 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. (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 4
Step 5 Step 6
Update the VLAN database, propagate it throughout the administrative domain, and return to privileged EXEC mode. 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 database configuration command. This example shows how to use VLAN database 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.... Switch#
Note
If extended-range VLANs are configured on the switch stack, 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.
14-11
Configuring VTP
Beginning in privileged EXEC mode, follow these steps to configure the switch as a VTP client: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Configure the switch for VTP client mode. The default setting is VTP server. (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.
(Optional) Enter the password for the VTP domain. Return to privileged EXEC mode. 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 privileged EXEC 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 database configuration mode and entering the vtp client command, similar to the second procedure under Configuring a VTP Server section on page 14-10. Use the no vtp client VLAN database configuration command to return the switch to VTP server mode or the no vtp password VLAN database 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).
14-12
78-16180-02
Chapter 14
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
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Configure the switch for VTP transparent mode (disable VTP). Return to privileged EXEC mode. Verify your entries in the VTP Operating Mode and the VTP Domain Name fields of the display. (Optional) Save the configuration in the startup configuration file.
Note
configure terminal vtp mode transparent end show vtp status copy running-config startup-config
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 stack, you cannot change the 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 database configuration mode and by entering the vtp transparent command, similar to the second procedure under the Configuring a VTP Server section on page 14-10. Use the no vtp transparent VLAN database 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-9.
14-13
Configuring VTP
Beginning in privileged EXEC mode, follow these steps to enable VTP Version 2: Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable VTP Version 2 on the switch. VTP Version 2 is disabled by default on VTP Version 2-capable switches. Return to privileged EXEC mode. In the VTP V2 Mode field of the display, verify that VTP Version 2 is enabled.
Step 3 Step 4
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 database configuration mode and by entering the vtp v2-mode VLAN database configuration command. To disable VTP Version 2, use the no vtp v2-mode VLAN database configuration command.
Purpose Enter global configuration mode. 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 Step 4
Return to privileged EXEC mode. 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 database configuration mode and entering the vtp pruning VLAN database configuration command. To disable VTP pruning, use the no vtp pruning VLAN database configuration command. You can also enable VTP Version 2 by using the vtp pruning privileged EXEC 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.
14-14
78-16180-02
Chapter 14
Only VLANs included in the pruning-eligible list can be pruned. By default, VLANs 2 through 1001 are pruning-eligible on trunk ports. Reserved VLANs and extended-range VLANs cannot be pruned. To change the pruning-eligible VLANs, see the Changing the Pruning-Eligible List section on page 13-22.
Purpose 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. b. c.
Write down the domain name. Write down the configuration revision number. Continue with the next steps to reset the switch configuration revision number.
configure terminal vtp domain domain-name end show vtp status configure terminal vtp domain domain-name end show vtp status
Enter global configuration mode. Change the domain name from the original one displayed in Step 1 to a new name. The VLAN information on the switch is updated and the configuration revision number is reset to 0. You return to privileged EXEC mode. Verify that the configuration revision number has been reset to 0. Enter global configuration mode. Enter the original domain name on the switch. The VLAN information on the switch is updated, and you return to privileged EXEC mode. (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 database 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 database configuration command to disable VTP on the switch, and then change its VLAN information without affecting the other switches in the VTP domain.
14-15
Configuring VTP
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.
Table 14-3 VTP Monitoring Commands
Purpose Display the VTP switch configuration information. Display counters about VTP messages that have been sent and received.
14-16
78-16180-02
C H A P T E R
15
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. The chapter includes these sections:
Understanding Private VLANs, page 15-1 Configuring Private VLANs, page 15-6 Monitoring Private VLANs, page 15-15
Note
When you configure private VLANs, the switch must be in VTP transparent mode. See Chapter 14, Configuring VTP.
Scalability: The switch supports up to 1005 active VLANs. If a service provider assigns one VLAN per customer, this limits the numbers of customers the service provider can support. To enable IP routing, each VLAN is assigned a subnet address space or a block of addresses, which can result in wasting the unused IP addresses, and cause IP address management problems.
Using private VLANs addresses the scalability problem and provides IP address management benefits for service providers and Layer 2 security for customers. Private VLANs partition a regular VLAN domain into subdomains. A subdomain is represented by a pair of VLANs: a primary VLAN and a secondary VLAN. A private VLAN can have multiple VLAN pairs, one pair for each subdomain. All VLAN pairs in a private VLAN share the same primary VLAN. The secondary VLAN ID differentiates one subdomain from another. See Figure 15-1.
15-1
Subdomain
Isolated VLANsPorts within an isolated VLAN cannot communicate with each other at the Layer 2 level. Community VLANsPorts within a community VLAN can communicate with each other but cannot communicate with ports in other communities at the Layer 2 level.
Private VLANs provide Layer 2 isolation between ports within the same private VLAN. Private-VLAN ports are access ports that are one of these types:
PromiscuousA promiscuous port belongs to the primary VLAN and can communicate with all interfaces, including the community and isolated host ports that belong to the secondary VLANs associated with the primary VLAN. IsolatedAn isolated port is a host port that belongs to an isolated secondary VLAN. It has complete Layer 2 separation from other ports within the same private VLAN, except for the promiscuous ports. Private VLANs block all traffic to isolated ports except traffic from promiscuous ports. Traffic received from an isolated port is forwarded only to promiscuous ports. CommunityA community port is a host port that belongs to a community secondary VLAN. Community ports communicate with other ports in the same community VLAN and with promiscuous ports. These interfaces are isolated at Layer 2 from all other interfaces in other communities and from isolated ports within their private VLAN.
Note
Trunk ports carry traffic from regular VLANs and also from primary, isolated, and community VLANs.
15-2
116083
78-16180-02
Chapter 15
Primary VLANA private VLAN has only one primary VLAN. Every port in a private VLAN is a member of the primary VLAN. The primary VLAN carries unidirectional traffic downstream from the promiscuous ports to the (isolated and community) host ports and to other promiscuous ports. Isolated VLAN A private VLAN has only one isolated VLAN. An isolated VLAN is a secondary VLAN that carries unidirectional traffic upstream from the hosts toward the promiscuous ports and the gateway. Community VLANA community VLAN is a secondary VLAN that carries upstream traffic from the community ports to the promiscuous port gateways and to other host ports in the same community. You can configure multiple community VLANs in a private VLAN.
A promiscuous port can serve only one primary VLAN, one isolated VLAN, and multiple community VLANs. Layer 3 gateways are typically connected to the switch through a promiscuous port. With a promiscuous port, you can connect a wide range of devices as access points to a private VLAN. For example, you can use a promiscuous port to monitor or back up all the private-VLAN servers from an administration workstation. In a switched environment, you can assign an individual private VLAN and associated IP subnet to each individual or common group of end stations. The end stations need to communicate only with a default gateway to communicate outside the private VLAN. You can use private VLANs to control access to end stations in these ways:
Configure selected interfaces connected to end stations as isolated ports to prevent any communication at Layer 2. For example, if the end stations are servers, this configuration prevents Layer 2 communication between the servers. Configure interfaces connected to default gateways and selected end stations (for example, backup servers) as promiscuous ports to allow all end stations access to a default gateway.
You can extend private VLANs across multiple devices by trunking the primary, isolated, and community VLANs to other devices that support private VLANs. To maintain the security of your private-VLAN configuration and to avoid other use of the VLANs configured as private VLANs, configure private VLANs on all intermediate devices, including devices that have no private-VLAN ports.
Assigning a block of addresses to a customer VLAN can result in unused IP addresses. If the number of devices in the VLAN increases, the number of assigned address might not be large enough to accommodate them.
These problems are reduced by using private VLANs, where all members in the private VLAN share a common address space, which is allocated to the primary VLAN. Hosts are connected to secondary VLANs, and the DHCP server assigns them IP addresses from the block of addresses allocated to the primary VLAN. Subsequent IP addresses can be assigned to customer devices in different secondary VLANs, but in the same primary VLAN. When new devices are added, the DHCP server assigns them the next available address from a large pool of subnet addresses.
15-3
Trunk ports
VLAN 100
VLAN 201
VLAN 202
VLAN 202
116084
VLAN 100 = Primary VLAN VLAN 201 = Secondary isolated VLAN VLAN 202 = Secondary community VLAN
Because VTP does not support private VLANs, you must manually configure private VLANs on all switches in the Layer 2 network. If you do not configure the primary and secondary VLAN association in some switches in the network, the Layer 2 databases in these switches are not merged. This can result in unnecessary flooding of private-VLAN traffic on those switches.
Note
When configuring private VLANs on the switch, always use the default Switch Database Management (SDM) template to balance system resources between unicast routes and Layer 2 entries. If another SDM template is configured, use the sdm prefer default global configuration command to set the default template. See Chapter 8, Configuring SDM Templates.
Private VLANs and Unicast, Broadcast, and Multicast Traffic, page 15-5 Private VLANs and SVIs, page 15-5 Private VLANs and Switch Stacks, page 15-5
15-4
78-16180-02
Chapter 15
You should also see the Secondary and Primary VLAN Configuration section on page 15-7 under the Private-VLAN Configuration Guidelines section.
An isolated port sends a broadcast only to the promiscuous ports or trunk ports. A community port sends a broadcast to all promiscuous ports, trunk ports, and ports in the same community VLAN. A promiscuous port sends a broadcast to all ports in the private VLAN (other promiscuous ports, trunk ports, isolated ports, and community ports).
Multicast traffic is routed or bridged across private-VLAN boundaries and within a single community VLAN. Multicast traffic is not forwarded between ports in the same isolated VLAN or between ports in different secondary VLANs.
If you try to configure a VLAN with an active SVI as a secondary VLAN, the configuration is not allowed until you disable the SVI. If you try to create an SVI on a VLAN that is configured as a secondary VLAN and the secondary VLAN is already mapped at Layer 3, the SVI is not created, and an error is returned. If the SVI is not mapped at Layer 3, the SVI is created, but it is automatically shut down.
When the primary VLAN is associated with and mapped to the secondary VLAN, any configuration on the primary VLAN is propagated to the secondary VLAN SVIs. For example, if you assign an IP subnet to the primary VLAN SVI, this subnet is the IP subnet address of the entire private VLAN.
If a stack contains only one private-VLAN promiscuous port and the stack member that contains that port is removed from the stack, host ports in that private VLAN lose connectivity outside the private VLAN.
15-5
If a stack master stack that contains the only private-VLAN promiscuous port in the stack fails or leaves the stack and a new stack master is elected, host ports in a private VLAN that had its promiscuous port on the old stack master lose connectivity outside of the private VLAN. If two stacks merge, private VLANs on the winning stack are not affected, but private-VLAN configuration on the losing switch is lost when that switch reboots.
For more information about switch stacks, see Chapter 5, Managing Switch Stacks.
Tasks for Configuring Private VLANs, page 15-6 Default Private-VLAN Configuration, page 15-7 Private-VLAN Configuration Guidelines, page 15-7 Configuring and Associating VLANs in a Private VLAN, page 15-10 Configuring a Layer 2 Interface as a Private-VLAN Host Port, page 15-11 Configuring a Layer 2 Interface as a Private-VLAN Promiscuous Port, page 15-13 Mapping Secondary VLANs to a Primary VLAN Layer 3 VLAN Interface, page 15-14
Set VTP mode to transparent. Create the primary and secondary VLANs and associate them. See the Configuring and Associating VLANs in a Private VLAN section on page 15-10.
If the VLAN is not created already, the private-VLAN configuration process creates it.
Configure interfaces to be isolated or community host ports, and assign VLAN membership to the host port. See the Configuring a Layer 2 Interface as a Private-VLAN Host Port section on page 15-11. Configure interfaces as promiscuous ports, and map the promiscuous ports to the primary-secondary VLAN pair. See the Configuring a Layer 2 Interface as a Private-VLAN Promiscuous Port section on page 15-13. If inter-VLAN routing will be used, configure the primary SVI, and map secondary VLANs to the primary. See the Mapping Secondary VLANs to a Primary VLAN Layer 3 VLAN Interface section on page 15-14. Verify private-VLAN configuration.
Step 5
Step 6
15-6
78-16180-02
Chapter 15
Secondary and Primary VLAN Configuration, page 15-7 Private-VLAN Port Configuration, page 15-8 Limitations with Other Features, page 15-9
Set VTP to transparent mode. After you configure a private VLAN, you should not change the VTP mode to client or server. For information about VTP, see Chapter 14, Configuring VTP. You must use VLAN configuration (config-vlan) mode to configure private VLANs. You cannot configure private VLANs in VLAN database configuration mode. For more information about VLAN configuration, see VLAN Configuration Mode Options section on page 13-7. After you have configured private VLANs, use the copy running-config startup config privileged EXEC command to save the VTP transparent mode configuration and private-VLAN configuration in the switch startup configuration file. Otherwise, if the switch resets, it defaults to VTP server mode, which does not support private VLANs. VTP does not propagate private-VLAN configuration. You must configure private VLANs on each device where you want private-VLAN ports. You cannot configure VLAN 1 or VLANs 1002 to 1005 as primary or secondary VLANs. Extended VLANs (VLAN IDs 1006 to 4094) can belong to private VLANs A primary VLAN can have one isolated VLAN and multiple community VLANs associated with it. An isolated or community VLAN can have only one primary VLAN associated with it. Although a private VLAN contains more than one VLAN, only one Spanning Tree Protocol (STP) instance runs for the entire private VLAN. When a secondary VLAN is associated with the primary VLAN, the STP parameters of the primary VLAN are propagated to the secondary VLAN. You can enable DHCP snooping on private VLANs. When you enable DHCP snooping on the primary VLAN, it is propagated to the secondary VLANs. If you configure DHCP on a secondary VLAN, the configuration does not take effect if the primary VLAN is already configured. We recommend that you prune the private VLANs from the trunks on devices that carry no traffic in the private VLANs. You can apply different quality of service (QoS) configurations to primary, isolated, and community VLANs. When you configure private VLANs, sticky Address Resolution Protocol (ARP) is enabled by default, and ARP entries learned on Layer 3 private VLAN interfaces are sticky ARP entries. For security reasons, private VLAN port sticky ARP entries do not age out.
Note
We recommend that you display and verify private-VLAN interface ARP entries.
15-7
Connecting a device with a different MAC address but with the same IP address generates a message and the ARP entry is not created. Because the private-VLAN port sticky ARP entries do not age out, you must manually remove private-VLAN port ARP entries if a MAC address changes.
You can remove a private-VLAN ARP entry by using the no arp ip-address global configuration
command.
You can add a private-VLAN ARP entry by using the arp ip-address hardware-address type
You can configure VLAN maps on primary and secondary VLANs (see the Configuring VLAN Maps section on page 31-30). However, we recommend that you configure the same VLAN maps on private-VLAN primary and secondary VLANs. When a frame is Layer-2 forwarded within a private VLAN, the same VLAN map is applied at the ingress side and at the egress side. When a frame is routed from inside a private VLAN to an external port, the private-VLAN map is applied at the ingress side.
For frames going upstream from a host port to a promiscuous port, the VLAN map configured
configured on the primary VLAN is applied. To filter out specific IP traffic for a private VLAN, you should apply the VLAN map to both the primary and secondary VLANs.
You can apply router ACLs only on the primary-VLAN SVIs. The ACL is applied to both primary and secondary VLAN Layer 3 traffic. Although private VLANs provide host isolation at Layer 2, hosts can communicate with each other at Layer 3. Private VLANs support these Switched Port Analyzer (SPAN) features:
You can configure a private-VLAN port as a SPAN source port. You can use VLAN-based SPAN (VSPAN) on primary, isolated, and community VLANs or use
Use only the private-VLAN configuration commands to assign ports to primary, isolated, or community VLANs. Layer 2 access ports assigned to the VLANs that you configure as primary, isolated, or community VLANs are inactive while the VLAN is part of the private-VLAN configuration. Layer 2 trunk interfaces remain in the STP forwarding state. Do not configure ports that belong to a PAgP or LACP EtherChannel as private-VLAN ports. While a port is part of the private-VLAN configuration, any EtherChannel configuration for it is inactive. Enable Port Fast and BPDU guard on isolated and community host ports to prevent STP loops due to misconfigurations and to speed up STP convergence (see Chapter 19, Configuring Optional Spanning-Tree Features). When enabled, STP applies the BPDU guard feature to all Port Fast-configured Layer 2 LAN ports. Do not enable Port Fast and BPDU guard on promiscuous ports. If you delete a VLAN used in the private-VLAN configuration, the private-VLAN ports associated with the VLAN become inactive. Private-VLAN ports can be on different network devices if the devices are trunk-connected and the primary and secondary VLANs have not been removed from the trunk.
15-8
78-16180-02
Chapter 15
Note
In some cases, the configuration is accepted with no error messages, but the commands have no effect.
Do not configure fallback bridging on switches with private VLANs. When IGMP snooping is enabled on the switch (the default), the switch stack supports no more than 20 private-VLAN domains. IP source guard is not supported in private VLANs. Do not configure a remote SPAN (RSPAN) VLAN as a private-VLAN primary or secondary VLAN. For more information about SPAN, see Chapter 27, Configuring SPAN and RSPAN. Do not configure private-VLAN ports on interfaces configured for these other features:
dynamic-access port VLAN membership Dynamic Trunking Protocol (DTP) Port Aggregation Protocol (PAgP) Link Aggregation Control Protocol (LACP) Multicast VLAN Registration (MVR) voice VLAN dynamic ARP inspection
A private-VLAN port cannot be a secure port and should not be configured as a protected port. You can configure IEEE 802.1x port-based authentication on a private-VLAN port, but do not configure 802.1x with port security, voice VLAN, or per-user ACL on private-VLAN ports. A private-VLAN host or promiscuous port cannot be a SPAN destination port. If you configure a SPAN destination port as a private-VLAN port, the port becomes inactive. If you configure a static MAC address on a promiscuous port in the primary VLAN, you must add the same static address to all associated secondary VLANs. If you configure a static MAC address on a host port in a secondary VLAN, you must add the same static MAC address to the associated primary VLAN. When you delete a static MAC address from a private-VLAN port, you must remove all instances of the configured MAC address from the private VLAN.
Note
Dynamic MAC addresses learned in one VLAN of a private VLAN are replicated in the associated VLANs. For example, a MAC address learned in a secondary VLAN is replicated in the primary VLAN. When the original dynamic MAC address is deleted or aged out, the replicated addresses are removed from the MAC address table.
15-9
Note
The private-vlan commands do not take effect until you exit VLAN configuration mode.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Set VTP mode to transparent (disable VTP). Enter VLAN configuration mode and designate or create a VLAN that will be the primary VLAN. The VLAN ID range is 2 to 1001 and 1006 to 4094. Designate the VLAN as the primary VLAN. Return to global configuration mode. (Optional) Enter VLAN configuration mode and designate or create a VLAN that will be an isolated VLAN. The VLAN ID range is 2 to 1001 and 1006 to 4094. Designate the VLAN as an isolated VLAN. Return to global configuration mode. (Optional) Enter VLAN configuration mode and designate or create a VLAN that will be a community VLAN. The VLAN ID range is 2 to 1001 and 1006 to 4094. Designate the VLAN as a community VLAN. Return to global configuration mode. Enter VLAN configuration mode for the primary VLAN designated in Step 2. Associate the secondary VLANs with the primary VLAN. Return to privileged EXEC mode. Verify the configuration.
Step 10 private-vlan community Step 11 exit Step 12 vlan vlan-id Step 13 private-vlan association [ add | remove]
secondary_vlan_list
Step 14 end Step 15 show vlan private-vlan [type]
Save your entries in the switch startup configuration file. To save the private-VLAN configuration, you need to save the VTP transparent mode configuration and private-VLAN configuration in the switch startup configuration file. Otherwise, if the switch resets, it defaults to VTP server mode, which does not support private VLANs.
15-10
78-16180-02
Chapter 15
When you associate secondary VLANs with a primary VLAN, note this syntax information:
The secondary_vlan_list parameter cannot contain spaces. It can contain multiple comma-separated items. Each item can be a single private-VLAN ID or a hyphenated range of private-VLAN IDs. The secondary_vlan_list parameter can contain multiple community VLAN IDs but only one isolated VLAN ID. Enter a secondary_vlan_list, or use the add keyword with a secondary_vlan_list to associate secondary VLANs with a primary VLAN. Use the remove keyword with a secondary_vlan_list to clear the association between secondary VLANs and a primary VLAN. The command does not take effect until you exit VLAN configuration mode.
This example shows how to configure VLAN 20 as a primary VLAN, VLAN 501 as an isolated VLAN, and VLANs 502 and 503 as community VLANs, to associate them in a private VLAN, and to verify the configuration:
Switch# configure terminal Switch(config)# vlan 20 Switch(config-vlan)# private-vlan primary Switch(config-vlan)# exit Switch(config)# vlan 501 Switch(config-vlan)# private-vlan isolated Switch(config-vlan)# exit Switch(config)# vlan 502 Switch(config-vlan)# private-vlan community Switch(config-vlan)# exit Switch(config)# vlan 503 Switch(config-vlan)# private-vlan community Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# private-vlan association 501-503 Switch(config-vlan)# end Switch(config)# show vlan private vlan Primary Secondary Type Ports ------- --------- ----------------- -----------------------------------------20 501 isolated 20 502 community 20 503 community 20 504 non-operational
Note
Command
Step 1 Step 2
Purpose Enter global configuration mode. Enter interface configuration mode for the Layer 2 interface to be configured.
15-11
Command
Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Configure the Layer 2 port as a private-VLAN host port. Associate the Layer 2 port with a private VLAN. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the switch startup configuration file.
switchport mode private-vlan host switchport private-vlan host-association primary_vlan_id secondary_vlan_id end show interfaces [interface-id] switchport copy running-config startup config
This example shows how to configure an interface as a private-VLAN host port, associate it with a private-VLAN pair, and verify the configuration:
Switch# configure terminal Switch(config)# interface fastethernet 1/0/22 Switch(config-if)# switchport mode private-vlan host Switch(config-if)# switchport private-vlan host-association 20 25 Switch(config-if)# end Switch# show interfaces fastethernet 1/0/22 switchport Name: Fa1/0/22 Switchport: Enabled Administrative Mode: private-vlan host Operational Mode: private-vlan host Administrative Trunking Encapsulation: negotiate Operational Trunking Encapsulation: native Negotiation of Trunking: Off Access Mode VLAN: 1 (default) Trunking Native Mode VLAN: 1 (default) Administrative Native VLAN tagging: enabled Voice VLAN: none Administrative private-vlan host-association: 20 (VLAN0020) 25 (VLAN0025) Administrative private-vlan mapping: none Administrative private-vlan trunk native VLAN: none Administrative private-vlan trunk Native VLAN tagging: enabled Administrative private-vlan trunk encapsulation: dot1q Administrative private-vlan trunk normal VLANs: none Administrative private-vlan trunk private VLANs: none Operational private-vlan: 20 (VLAN0020) 25 (VLAN0025) <output truncated>
15-12
78-16180-02
Chapter 15
Note
Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Enter global configuration mode. Enter interface configuration mode for the Layer 2 interface to be configured. Configure the Layer 2 port as a private-VLAN promiscuous port. Map the private-VLAN promiscuous port to a primary VLAN and to selected secondary VLANs. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the switch startup configuration file.
configure terminal interface interface-id switchport mode private-vlan promiscuous switchport private-vlan mapping primary_vlan_id {add | remove} secondary_vlan_list end show interfaces [interface-id] switchport copy running-config startup config
When you configure a Layer 2 interface as a private-VLAN promiscuous port, note this syntax information:
The secondary_vlan_list parameter cannot contain spaces. It can contain multiple comma-separated items. Each item can be a single private-VLAN ID or a hyphenated range of private-VLAN IDs. Enter a secondary_vlan_list, or use the add keyword with a secondary_vlan_list to map the secondary VLANs to the private-VLAN promiscuous port. Use the remove keyword with a secondary_vlan_list to clear the mapping between secondary VLANs and the private-VLAN promiscuous port.
This example shows how to configure an interface as a private-VLAN promiscuous port and map it to a private VLAN. The interface is a member of primary VLAN 20 and secondary VLANs 501 to 503 are mapped to it.
Switch# configure terminal Switch(config)# interface fastethernet 1/0/2 Switch(config-if)# switchport mode private-vlan promiscuous Switch(config-if)# switchport private-vlan mapping 20 add 501-503 Switch(config-if)# end
Use the show vlan private-vlan or the show interface status privileged EXEC command to display primary and secondary VLANs and private-VLAN ports on the switch.
15-13
Note
Isolated and community VLANs are both secondary VLANs. Beginning in privileged EXEC mode, follow these steps to map secondary VLANs to the SVI of a primary VLAN to allow Layer 3 switching of private-VLAN traffic:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Enter interface configuration mode for the primary VLAN, and configure the VLAN as an SVI. The VLAN ID range is 2 to 1001 and 1006 to 4094. Map the secondary VLANs to the Layer 3 VLAN interface of a primary VLAN to allow Layer 3 switching of private-VLAN ingress traffic. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the switch startup configuration file.
Step 3
private-vlan mapping [add | remove] secondary_vlan_list end show interface private-vlan mapping copy running-config startup config
Note
The private-vlan mapping interface configuration command only affects private-VLAN traffic that is Layer 3 switched. When you map secondary VLANs to the Layer 3 VLAN interface of a primary VLAN, note this syntax information:
The secondary_vlan_list parameter cannot contain spaces. It can contain multiple comma-separated items. Each item can be a single private-VLAN ID or a hyphenated range of private-VLAN IDs. Enter a secondary_vlan_list, or use the add keyword with a secondary_vlan_list to map the secondary VLANs to the primary VLAN. Use the remove keyword with a secondary_vlan_list to clear the mapping between secondary VLANs and the primary VLAN.
This example shows how to map the interfaces of VLANs 501and 502 to primary VLAN 10, which permits routing of secondary VLAN ingress traffic from private VLANs 501 to 502:
Switch# configure terminal Switch(config)# interface vlan 10 Switch(config-if)# private-vlan mapping 501-502 Switch(config-if)# end Switch# show interfaces private-vlan mapping Interface Secondary VLAN Type --------- -------------- ----------------vlan10 501 isolated vlan10 502 community
15-14
78-16180-02
Chapter 15
Command show interfaces status show vlan private-vlan [type] show interface switchport show interface private-vlan mapping
Purpose Displays the status of interfaces, including the VLANs to which they belongs. Display the private-VLAN information for the switch stack. Display private-VLAN configuration on interfaces. Display information about the private-VLAN mapping for VLAN SVIs.
This is an example of the output from the show vlan private-vlan command:
Switch(config)# show vlan private-vlan Primary Secondary Type Ports ------- --------- ----------------- -----------------------------------------10 501 isolated Fa2/0/1, Gi3/0/1, Gi3/0/2 10 502 community Fa2/0/11, Gi3/0/1, Gi3/0/4 10 503 non-operational
15-15
15-16
78-16180-02
C H A P T E R
16
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Voice VLAN, page 16-1 Configuring Voice VLAN, page 16-3 Displaying Voice VLAN, page 16-6
Port 1 connects to the switch or other voice-over-IP (VoIP) device. Port 2 is an internal 10/100 interface that carries the IP phone traffic. Port 3 (access port) connects to a PC or other device.
16-1
Phone ASIC
PC
In the voice VLAN tagged with a Layer 2 CoS priority value In the access VLAN tagged with a Layer 2 CoS priority value In the access VLAN, untagged (no Layer 2 CoS priority value)
Note
In all configurations, the voice traffic carries a Layer 3 IP precedence value (the default is 5 for voice traffic and 3 for voice control traffic).
In trusted mode, all traffic received through the access port on the Cisco IP Phone passes through the IP phone unchanged. In untrusted mode, all traffic in 802.1Q or 802.1p frames received through the access port on the IP phone receive a configured Layer 2 CoS value. The default Layer 2 CoS value is 0. Untrusted mode is the default.
Note
Untagged traffic from the device attached to the Cisco IP Phone passes through the IP phone unchanged, regardless of the trust state of the access port on the IP phone.
16-2
101351
78-16180-02
Chapter 16
Default Voice VLAN Configuration, page 16-3 Voice VLAN Configuration Guidelines, page 16-3 Configuring a Port Connected to a Cisco 7960 IP Phone, page 16-4
You should configure voice VLAN on switch access ports; voice VLAN is not supported on trunk ports. You can only configure a voice VLAN on Layer 2 ports.
Note
Voice VLAN is only supported on access ports and not on trunk ports, even though the configuration is allowed.
Do not configure voice VLAN on private VLAN ports. The Power over Ethernet (PoE) switches are capable of automatically providing power to Cisco pre-standard and IEEE 802.3af-compliant powered devices if they are not being powered by an AC power source. For information about PoE interfaces, see the Configuring Power over Ethernet on an Interface section on page 11-19. Before you enable voice VLAN, we recommend that you enable QoS on the switch by entering the mls qos global configuration command and configure the port trust state to trust by entering the mls qos trust cos interface configuration command. If you use the auto-QoS feature, these settings are automatically configured. For more information, see Chapter 32, Configuring QoS. You must enable CDP on the switch port connected to the Cisco IP Phone to send configuration to the Cisco IP Phone. (CDP is enabled by default globally and on all switch interfaces.) The Port Fast feature is automatically enabled when voice VLAN is configured. When you disable voice VLAN, the Port Fast feature is not automatically disabled. If the Cisco IP Phone and a device attached to the Cisco IP Phone are in the same VLAN, they must be in the same IP subnet. These conditions indicate that they are in the same VLAN:
They both use 802.1p or untagged frames. The Cisco IP Phone uses 802.1p frames and the device uses untagged frames. The Cisco IP Phone uses untagged frames and the device uses 802.1p frames. The Cisco IP Phone uses 802.1Q frames and the voice VLAN is the same as the access VLAN.
16-3
The Cisco IP Phone and a device attached to the phone cannot communicate if they are in the same VLAN and subnet but use different frame types because traffic in the same subnet is not routed (routing would eliminate the frame type difference). You cannot configure static secure MAC addresses in the voice VLAN. Voice VLAN ports can also be these port types:
Dynamic access port. See the Configuring Dynamic-Access Ports on VMPS Clients section
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 24-5 for more
information.
A source or destination port for a SPAN or RSPAN session. Secure port. See the Configuring Port Security section on page 24-7 for more information.
Note
When you enable port security on an interface that is also configured with a voice VLAN, you must set the maximum allowed secure addresses on the port to two plus the maximum number of secure addresses allowed on the access VLAN. When the port is connected to a Cisco IP phone, the IP phone requires up to two MAC addresses. The IP phone address is learned on the voice VLAN and might also be learned on the access VLAN. Connecting a PC to the IP phone requires additional MAC addresses.
Configuring IP Phone Voice Traffic, page 16-4 Configuring the Priority of Incoming Data Frames, page 16-6
16-4
78-16180-02
Chapter 16
Beginning in privileged EXEC mode, follow these steps to configure voice traffic on a port: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface connected to the IP phone. Configure the interface to classify ingress traffic packets by using the packet CoS value. For untagged packets, the port default CoS value is used.
Note
Before configuring the port trust state, you must first globally enable QoS by using the mls qos global configuration command. vlan-idConfigure 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. dot1pConfigure the Cisco IP Phone 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. noneAllow the IP phone to use its own configuration to send untagged voice traffic. untaggedConfigure the phone to send untagged voice traffic.
Step 4
Step 5 Step 6
Return to privileged EXEC mode. Verify your voice VLAN entries. Verify your QoS and voice VLAN entries. (Optional) Save your entries in the configuration file.
Step 7
This example shows how to configure a port connected to an IP phone to use the CoS value to classify ingress traffic, to use 802.1p priority tagging for voice traffic, and to use and the default native VLAN (VLAN 0) to carry all traffic:
Switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# mls qos trust cos Switch(config-if)# switchport voice vlan dot1p Switch(config-if)# end
To return the port to its default setting, use the no switchport voice vlan interface configuration command.
16-5
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface connected to the IP phone. Set the priority of data traffic received from the IP phone access port:
configure terminal interface interface-id switchport priority extend {cos value | trust}
cos valueConfigure the IP phone to override the priority received from the PC or the attached device with the specified CoS value. The value is a number from 0 to 7, with 7 as the highest priority. The default priority is cos 0. trustConfigure the IP phone access port to trust the priority received from the PC or the attached device.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
This example shows how to configure a port connected to an IP phone to not change the priority of frames received from the PC or the attached device:
Switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# switchport priority extend trust Switch(config-if)# end
To return the port to its default setting, use the no switchport priority extend interface configuration command.
16-6
78-16180-02
C H A P T E R
17
Configuring STP
This chapter describes how to configure the Spanning Tree Protocol (STP) on port-based VLANs on the Catalyst 3750 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. A switch stack appears as a single spanning-tree node to the rest of the network, and all stack members use the same bridge ID. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack. For information about the Multiple Spanning Tree Protocol (MSTP) and how to map multiple VLANs to the same spanning-tree instance, see Chapter 18, Configuring MSTP. For information about other spanning-tree features such as Port Fast, UplinkFast, root guard, and so forth, see Chapter 19, Configuring Optional Spanning-Tree Features.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Spanning-Tree Features, page 17-1 Configuring Spanning-Tree Features, page 17-12 Displaying the Spanning-Tree Status, page 17-24
STP Overview, page 17-2 Spanning-Tree Topology and BPDUs, page 17-3 Bridge ID, Switch Priority, and Extended System ID, page 17-4 Spanning-Tree Interface States, page 17-5 How a Switch or Port Becomes the Root Switch or Root Port, page 17-8 Spanning Tree and Redundant Connectivity, page 17-9 Spanning-Tree Address Management, page 17-9 Accelerated Aging to Retain Connectivity, page 17-9 Spanning-Tree Modes and Protocols, page 17-10
17-1
Configuring STP
Supported Spanning-Tree Instances, page 17-10 Spanning-Tree Interoperability and Backward Compatibility, page 17-11 STP and IEEE 802.1Q Trunks, page 17-11 VLAN-Bridge Spanning Tree, page 17-12 Spanning Tree and Switch Stacks, page 17-12
For configuration information, see the Configuring Spanning-Tree Features section on page 17-12. For information about optional spanning-tree features, see Chapter 19, Configuring Optional Spanning-Tree Features.
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:
RootA forwarding port elected for the spanning-tree topology DesignatedA forwarding port elected for every switched LAN segment AlternateA blocked port providing an alternate path to the root port in the spanning tree BackupA 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 ports on a switch are part of a loop, the spanning-tree port priority and path cost settings control which port is put in the forwarding state and which is put in the blocking state. The spanning-tree port priority value represents the location of a port in the network topology and how well it is located to pass traffic. The path cost value represents the media speed.
Note
In Cisco IOS Release 12.2(18)SE and later releases, the switch sends keepalive messages (to ensure the connection is up) only on interfaces that do not have small form-factor pluggable (SFP) modules.
17-2
78-16180-02
Chapter 17
The unique bridge ID (switch priority and MAC address) associated with each VLAN on each switch. In a switch stack, all switches use the same bridge ID for a given spanning-tree instance. The spanning-tree path cost to the root switch. The port identifier (port priority and MAC address) associated with each Layer 2 interface.
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). In a switch stack, one stack member is elected as the stack root switch. The stack root switch contains the outgoing root port (Switch 1), as shown in Figure 17-1 on page 17-4. 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 17-1 on page 17-5.
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. When selecting the root port on a switch stack, spanning tree follows this sequence:
Selects the lowest root bridge ID Selects the lowest path cost to the root switch Selects the lowest designated bridge ID Selects the lowest designated path cost Selects the lowest port ID
17-3
Configuring STP
Only one outgoing port on the stack root switch is selected as the root port. The remaining switches in the stack become its designated switches (Switch 2 and Switch 3) as shown in Figure 17-1 on page 17-4.
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.
DP Switch 1
Outgoing RP
DP
RP Switch B
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.
17-4
86491
78-16180-02
Chapter 17
uniqueness of the bridge ID. As shown in Table 17-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.
Table 17-1 Switch Priority Value and Extended System ID
Switch Priority Value Bit 16 32768 Bit 15 16384 Bit 14 8192 Bit 13 4096
Extended System ID (Set Equal to the VLAN ID) Bit 12 2048 Bit 11 1024 Bit 10 512 Bit 9 256 Bit 8 128 Bit 7 64 Bit 6 32 Bit 5 16 Bit 4 8 Bit 3 4 Bit 2 2 Bit 1 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. Because the switch stack appears as a single switch to the rest of the network, all switches in the stack use the same bridge ID for a given spanning tree. If the stack master fails, the stack members recalculate their bridge IDs of all running spanning trees based on the new MAC address of the new stack master. 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 17-16, the Configuring a Secondary Root Switch section on page 17-17, and the Configuring the Switch Priority of a VLAN section on page 17-21.
BlockingThe interface does not participate in frame forwarding. ListeningThe first transitional state after the blocking state when the spanning tree decides that the interface should participate in frame forwarding. LearningThe interface prepares to participate in frame forwarding. ForwardingThe interface forwards frames. DisabledThe interface is not participating in spanning tree because of a shutdown port, no link on the port, or no spanning-tree instance running on the port. From initialization to blocking From blocking to listening or to disabled From listening to learning or to disabled From learning to forwarding or to disabled From forwarding to disabled
17-5
Configuring STP
Power-on initialization Blocking state Listening state Learning state Forwarding state
Disabled 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. 2. 3. 4.
The interface is in the listening state while spanning tree waits for protocol information to transition the interface to the blocking state. While spanning tree waits the forward-delay timer to expire, it moves the interface to the learning state and resets the forward-delay timer. In the learning state, the interface continues to block frame forwarding as the switch learns end-station location information for the forwarding database. When the forward-delay timer expires, spanning tree moves the interface to the forwarding state, where both learning and frame forwarding are enabled.
17-6
43569
78-16180-02
Chapter 17
Blocking State
A Layer 2 interface in the blocking state does not participate in frame forwarding. After initialization, a BPDU is sent to each switch interface. 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 interface moves to the listening state. An interface always enters the blocking state after switch initialization. An interface in the blocking state performs these functions:
Discards frames received on the interface 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 decides that the interface should participate in frame forwarding. An interface in the listening state performs these functions:
Discards frames received on the interface 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 these functions:
Discards frames received on the interface 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 these functions:
Receives and forwards frames received on the interface Forwards frames switched from another interface Learns addresses Receives BPDUs
17-7
Configuring STP
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 these functions:
Discards frames received on the interface Discards frames switched from another interface for forwarding Does not learn addresses Does not receive BPDUs
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 port to a higher priority (lower numerical value) than the root port, the Gigabit Ethernet port becomes the new root port.
17-8
78-16180-02
Chapter 17
Workstations
You can also create redundant links between switches by using EtherChannel groups. For more information, see the Chapter 33, Configuring EtherChannels.
101226
17-9
Configuring STP
Because each VLAN is a separate spanning-tree instance, the switch accelerates aging on a per-VLAN basis. A spanning-tree reconfiguration on one VLAN can cause the dynamic addresses learned on that VLAN to be subject to accelerated aging. Dynamic addresses on other VLANs can be unaffected and remain subject to the aging interval entered for the switch.
PVST+This spanning-tree mode is based on the IEEE 802.1D standard and Cisco proprietary extensions. It is the default spanning-tree mode used on all Ethernet, Fast Ethernet, and Gigabit Ethernet port-based VLANs. The PVST+ runs on each VLAN on the switch up to the maximum supported, ensuring that each has a loop-free path through the network. The PVST+ provides Layer 2 load balancing for the VLAN on which it runs. You can create different logical topologies by using the VLANs on your network to ensure that all of your links are used but that no one link is oversubscribed. Each instance of PVST+ on a VLAN has a single root switch. This root switch propagates the spanning-tree information associated with that VLAN to all other switches in the network. Because each switch has the same information about the network, this process ensures that the network topology is maintained.
Rapid PVST+This spanning-tree mode is the same as PVST+ except that is uses a rapid convergence based on the IEEE 802.1w standard. To provide rapid convergence, the rapid PVST+ immediately deletes dynamically learned MAC address entries on a per-port basis upon receiving a topology change. By contrast, PVST+ uses a short aging time for dynamically learned MAC address entries. The rapid PVST+ uses the same configuration as PVST+ (except where noted), and the switch needs only minimal extra configuration. The benefit of rapid PVST+ is that you can migrate a large PVST+ install base to rapid PVST+ without having to learn the complexities of the MSTP configuration and without having to reprovision your network. In rapid-PVST+ mode, each VLAN runs its own spanning-tree instance up to the maximum supported.
MSTPThis spanning-tree mode is based on the IEEE 802.1s standard. You can map multiple VLANs to the same spanning-tree instance, which reduces the number of spanning-tree instances required to support a large number of VLANs. The MSTP runs on top of the RSTP (based on IEEE 802.1w), which provides for rapid convergence of the spanning tree by eliminating the forward delay and by quickly transitioning root ports and designated ports to the forwarding state. In a switch stack, the cross-stack rapid transition (CSRT) feature performs the same function as RSTP. You cannot run MSTP without RSTP or CSRT. The most common initial deployment of MSTP is in the backbone and distribution layers of a Layer 2 switched network. For more information, see Chapter 18, Configuring MSTP.
For information about the number of supported spanning-tree instances, see the next section.
17-10
78-16180-02
Chapter 17
PVST+ PVST+ MSTP Rapid PVST+ Yes Yes (with restrictions) Yes (reverts to PVST+)
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. All stack members run the same version of spanning tree (all PVST+, all rapid PVST+, or all MSTP).
17-11
Configuring STP
A switch stack appears as a single spanning-tree node to the rest of the network, and all stack members use the same bridge ID for a given spanning tree. The bridge ID is derived from the MAC address of the stack master. When a new switch joins the stack, it sets its bridge ID to the stack-master bridge ID. If the newly added switch has the lowest ID and if the root path cost is the same among all stack members, the newly added switch becomes the stack root. When a stack member leaves the stack, spanning-tree reconvergence occurs within the stack (and possibly outside the stack). The remaining stack member with the lowest stack port ID becomes the stack root. If the stack master fails or leaves the stack, the stack members elect a new stack master, and all stack members change their bridge IDs of the spanning trees to the new master bridge ID. If the switch stack is the spanning-tree root and the stack master fails or leaves the stack, the stack members elect a new stack master, and a spanning-tree reconvergence occurs. If a neighboring switch external to the switch stack fails or is powered down, normal spanning-tree processing occurs. Spanning-tree reconvergence might occur as a result of losing a switch in the active topology. If a new switch external to the switch stack is added to the network, normal spanning-tree processing occurs. Spanning-tree reconvergence might occur as a result of adding a switch in the network.
For more information about switch stacks, see Chapter 5, Managing Switch Stacks.
Default Spanning-Tree Configuration, page 17-13 Spanning-Tree Configuration Guidelines, page 17-13 Changing the Spanning-Tree Mode., page 17-14 (required) Disabling Spanning Tree, page 17-15 (optional) Configuring the Root Switch, page 17-16 (optional)
17-12
78-16180-02
Chapter 17
Configuring a Secondary Root Switch, page 17-17 (optional) Configuring Port Priority, page 17-18 (optional) Configuring Path Cost, page 17-20 (optional) Configuring the Switch Priority of a VLAN, page 17-21 (optional) Configuring Spanning-Tree Timers, page 17-22 (optional)
Default Setting Enabled on VLAN 1. For more information, see the Supported Spanning-Tree Instances section on page 17-10.
Spanning-tree mode Switch priority Spanning-tree port priority (configurable on a per-interface basis) Spanning-tree port cost (configurable on a per-interface basis)
PVST+. (Rapid PVST+ and MSTP are disabled.) 32768. 128. 1000 Mbps: 4. 100 Mbps: 19. 10 Mbps: 100.
Spanning-tree VLAN port priority (configurable on a per-VLAN basis) Spanning-tree VLAN port cost (configurable on a per-VLAN basis)
Spanning-tree timers
17-13
Configuring STP
If 128 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 control 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.) All stack members run the same version of spanning tree. For information about the different spanning-tree modes and how they interoperate, see the Spanning-Tree Interoperability and Backward Compatibility section on page 17-11. For configuration guidelines about UplinkFast, BackboneFast, and cross-stack UplinkFast, see the Optional Spanning-Tree Configuration Guidelines section on page 19-12.
17-14
78-16180-02
Chapter 17
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
Step 1 Step 2
Purpose Enter global configuration mode. Configure a spanning-tree mode. All stack members run the same version of spanning-tree.
Select pvst to enable PVST+ (the default setting). Select mst to enable MSTP (and RSTP). For more configuration steps, see Chapter 18, 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. The VLAN ID range is 1 to 4094. The port-channel range is 1 to 12. (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 4
Step 5 Step 6
Return to privileged EXEC mode. (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 detects that this switch is running rapid PVST+.
Step 7
Step 8
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.
17-15
Configuring STP
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
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. For vlan-id , the range is 1 to 4094. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal no spanning-tree vlan vlan-id end show spanning-tree vlan vlan-id copy running-config startup-config
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.
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.
17-16
78-16180-02
Chapter 17
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 through 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
Step 1 Step 2
Purpose Enter global configuration mode. Configure a switch to become the root for the specified VLAN.
configure terminal spanning-tree vlan vlan-id root primary [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; the default is 2.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id root global configuration command.
17-17
Configuring STP
Beginning in privileged EXEC mode, follow these steps to configure a switch to become the secondary root for the specified VLAN. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure a switch to become the secondary root for the specified VLAN.
configure terminal spanning-tree vlan vlan-id root secondary [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; the default is 2.
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 17-16.
Step 3 Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id root global configuration command.
Note
If your switch is a member of a switch stack, you must use the spanning-tree [vlan vlan-id] cost cost interface configuration command instead of the spanning-tree [vlan vlan-id] port-priority priority interface configuration command to select an interface to put in the forwarding state. Assign lower cost values to interfaces that you want selected first and higher cost values that you want selected last. For more information, see the Configuring Path Cost section on page 17-20.
17-18
78-16180-02
Chapter 17
Beginning in privileged EXEC mode, follow these steps to configure the port priority of an interface. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Valid interfaces include physical ports and port-channel logical interfaces (port-channel port-channel-number).
Step 3
Configure the port priority for an interface. For priority, the range is 0 to 240, in increments of 16; the default is 128. Valid values are 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, and 240. All other values are rejected. The lower the number, the higher the priority.
Step 4
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. Valid values are 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, and 240. All other values are rejected. The lower the number, the higher the priority.
Step 5 Step 6
Step 7
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 to the 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 Configuring Trunk Ports for Load Sharing section on page 13-24.
17-19
Configuring STP
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Valid interfaces include physical ports and port-channel logical interfaces (port-channel port-channel-number). 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 3
Step 4
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 Step 6
Step 7
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.
17-20
78-16180-02
Chapter 17
To return to the 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 Configuring Trunk Ports for Load Sharing section on page 13-24.
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
Step 1 Step 2
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id priority global configuration command.
17-21
Configuring STP
Description Controls how often the switch broadcasts hello messages to other switches. Controls how long each of the listening and learning states last before the interface begins forwarding. Controls the amount of time the switch stores protocol information received on an interface. The sections that follow provide the configuration steps.
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
Step 1 Step 2
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id hello-time global configuration command.
17-22
78-16180-02
Chapter 17
Purpose Enter global configuration mode. Configure the forward time of a VLAN. The forward delay is the number of seconds an interface 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id forward-time global configuration command.
Purpose Enter global configuration mode. 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.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no spanning-tree vlan vlan-id max-age global configuration command.
17-23
Configuring STP
Command show spanning-tree active show spanning-tree detail show spanning-tree interface interface-id show spanning-tree summary [totals]
Purpose Displays spanning-tree information on active interfaces only. Displays a detailed summary of interface information. Displays spanning-tree information for the specified interface. Displays a summary of interface 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, refer to the command reference for this release.
17-24
78-16180-02
C H A P T E R
18
Configuring MSTP
This chapter describes how to configure the Cisco implementation of the IEEE 802.1s Multiple STP (MSTP) on the Catalyst 3750 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 environment. 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 17, Configuring STP. For information about other spanning-tree features such as Port Fast, UplinkFast, root guard, and so forth, see Chapter 19, Configuring Optional Spanning-Tree Features. A switch stack appears as a single spanning-tree node to the rest of the network, and all stack members use the same bridge ID. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
18-1
Configuring MSTP
Configuring MSTP Features, page 18-12 Displaying the MST Configuration and Status, page 18-24
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 18-2 IST, CIST, and CST, page 18-3 Hop Count, page 18-5 Boundary Ports, page 18-5 MSTP and Switch Stacks section on page 18-6 Interoperability with 802.1D STP section on page 18-6
For configuration information, see the Configuring MSTP Features section on page 18-12.
18-2
78-16180-02
Chapter 18
An internal spanning tree (IST), which is the spanning tree that runs in an MST region. Within each MST region, the MSTP maintains multiple spanning-tree instances. Instance 0 is a special instance for a region, known as the internal spanning tree (IST). All other MST instances are numbered from 1 to 15. The IST is the only spanning-tree instance that sends and receives BPDUs; all of the other spanning-tree instance information is contained in M-records, which are encapsulated within MSTP BPDUs. Because the MSTP BPDU carries information for all instances, the number of BPDUs that need to be processed by a switch to support multiple spanning-tree instances is significantly reduced. 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 18-3 and the Operations Between MST Regions section on page 18-4.
18-3
Configuring MSTP
IST master
IST master
Figure 18-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.
18-4
78-16180-02
88762
MST Region 2
MST Region 3
Chapter 18
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 (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 regions 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.
18-5
Configuring MSTP
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.
18-6
78-16180-02
Chapter 18
Port Roles and the Active Topology, page 18-7 Rapid Convergence, page 18-8 Synchronization of Port Roles, page 18-9 Bridge Protocol Data Unit Format and Processing, page 18-10
For configuration information, see the Configuring MSTP Features section on page 18-12.
Root portProvides the best path (lowest cost) when the switch forwards packets to the root switch. Designated portConnects to the designated switch, which 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. Alternate portOffers an alternate path toward the root switch to that provided by the current root port. Backup portActs as a backup for the path provided by a designated port toward the leaves of the spanning tree. A backup port can exist only when two ports are connected together in a loopback by a point-to-point link or when a switch has two or more connections to a shared LAN segment. Disabled portHas no role within the operation of the spanning tree.
A port with the root or a designated port role is included in the active topology. A port with the alternate or backup port role is excluded from the active topology. In a stable topology with consistent port roles throughout the network, the RSTP ensures that every root port and designated port immediately transition to the forwarding state while all alternate and backup ports are always in the discarding state (equivalent to blocking in 802.1D). The port state controls the operation of the forwarding and learning processes. Table 18-1 provides a comparison of 802.1D and RSTP port states.
Table 18-1 Port State Comparison
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.
18-7
Configuring MSTP
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 portsIf 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 portsIf 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 linksIf 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 18-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 Bs 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. In a switch stack, the cross-stack rapid transition (CSRT) feature ensures that a stack member receives acknowledgments from all stack members during the proposal-agreement handshaking before moving the port to the forwarding state. CSRT is automatically enabled when the switch is in MST mode. The switch learns 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 controlled by the duplex setting by using the spanning-tree link-type interface configuration command.
18-8
78-16180-02
Chapter 18
Switch A
Proposal
Switch B
Agreement
Proposal
Agreement
F RP
That port is in the blocking state. It is an edge port (a port configured to be at the edge of the network).
If a designated port is in the forwarding state and is not configured as an edge port, it transitions to the blocking state when the RSTP forces it to synchronize with new root information. In general, when the RSTP forces a port to synchronize with root information and the port does not satisfy any of the above conditions, its port state is set to blocking. After ensuring all of the ports are synchronized, the switch sends an agreement message to the designated switch corresponding to its root port. When the switches connected by a point-to-point link are in agreement about their port roles, the RSTP immediately transitions the port states to forwarding. The sequence of events is shown in Figure 18-3.
88760
18-9
Configuring MSTP
4. Agreement
1. Proposal
2. Block 9. Forward
8. Agreement
6. Proposal
10. Agreement
88761
Bit 0 1 23: 00 01 10 11 4 5 6 7
Function Topology change (TC) Proposal Port role: Unknown Alternate port Root port Designated port Learning Forwarding Agreement 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.
18-10
78-16180-02
Chapter 18
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.
DetectionUnlike 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. NotificationUnlike 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. AcknowledgementWhen 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.
18-11
Configuring MSTP
PropagationWhen an RSTP switch receives a TC message from another switch through a designated or root port, it propagates the change to all of its nonedge, designated ports and to the root port (excluding the port on which it is received). The switch starts the TC-while timer for all such ports and flushes the information learned on them. Protocol migrationFor backward compatibility with 802.1D switches, RSTP selectively sends 802.1D configuration BPDUs and TCN BPDUs on a per-port basis. When a port is initialized, the migrate-delay timer is started (specifies the minimum time during which RSTP BPDUs are sent), and RSTP BPDUs are sent. While this timer is active, the switch processes all BPDUs received on that port and ignores the protocol type. If the switch receives an 802.1D BPDU after the ports migration-delay timer has expired, it assumes that it is connected to an 802.1D switch and starts using only 802.1D BPDUs. However, if the RSTP switch is using 802.1D BPDUs on a port and receives an RSTP BPDU after the timer has expired, it restarts the timer and starts using RSTP BPDUs on that port.
Default MSTP Configuration, page 18-13 MSTP Configuration Guidelines, page 18-13 Specifying the MST Region Configuration and Enabling MSTP, page 18-14 (required) Configuring the Root Switch, page 18-15 (optional) Configuring a Secondary Root Switch, page 18-17 (optional) Configuring Port Priority, page 18-18 (optional) Configuring Path Cost, page 18-19 (optional) Configuring the Switch Priority, page 18-20 (optional) Configuring the Hello Time, page 18-20 (optional) Configuring the Forwarding-Delay Time, page 18-21 (optional) Configuring the Maximum-Aging Time, page 18-22 (optional) Configuring the Maximum-Hop Count, page 18-22 (optional) Specifying the Link Type to Ensure Rapid Transitions, page 18-23 (optional) Restarting the Protocol Migration Process, page 18-23 (optional)
18-12
78-16180-02
Chapter 18
Feature Spanning-tree mode Switch priority (configurable on a per-CIST port basis) Spanning-tree port priority (configurable on a per-CIST port basis) Spanning-tree port cost (configurable on a per-CIST port basis)
Default Setting PVST+ (Rapid PVST+ and MSTP are disabled). 32768. 128. 1000 Mbps: 4. 100 Mbps: 19. 10 Mbps: 100.
2 seconds. 15 seconds. 20 seconds. 20 hops. For information about the supported number of spanning-tree instances, see the Supported Spanning-Tree Instances section on page 17-10.
When you enable MST by using the spanning-tree mode mst global configuration command, RSTP is automatically enabled. For two or more stacked switches to be in the same MST region, they must have the same VLAN-to-instance map, the same configuration revision number, and the same name. The switch stack supports up to 16 MST instances. The number of VLANs that can be mapped to a particular MST instance is unlimited. PVST+, rapid PVST+, and MSTP are supported, 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 more information, see the Spanning-Tree Interoperability and Backward Compatibility section on page 17-11. For information on the recommended trunk port configuration, see the Interaction with Other Features section on page 13-20. All stack members run the same version of spanning tree (all PVST+, rapid PVST+, or MSTP). For more information, see the Spanning-Tree Interoperability and Backward Compatibility section on page 17-11. VTP propagation of the MST configuration is not supported. However, you can manually configure the MST configuration (region name, revision number, and VLAN-to-instance mapping) on each switch within the MST region by using the command-line interface (CLI) or through the SNMP support.
18-13
Configuring MSTP
For load balancing across redundant paths in the network to work, all VLAN-to-instance mapping assignments must match; otherwise, all traffic flows on a single link. You can achieve load balancing across a switch stack by manually configuring the path cost. All MST boundary ports must be forwarding for load balancing between a PVST+ and an MST cloud or between a rapid-PVST+ and an MST cloud. For this to occur, the IST master of the MST cloud should also be the root of the CST. If the MST cloud consists of multiple MST regions, one 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, BackboneFast, and cross-stack UplinkFast, see the Optional Spanning-Tree Configuration Guidelines section on page 19-12.
Purpose Enter global configuration mode. Enter MST configuration mode. Map VLANs to an MST instance.
For instance-id, 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 Step 5 Step 6 Step 7
Specify the configuration name. The name string has a maximum length of 32 characters and is case sensitive. Specify the configuration revision number. The range is 0 to 65535. Verify your configuration by displaying the pending configuration. Apply all changes, and return to global configuration mode.
18-14
78-16180-02
Chapter 18
Command
Step 8
Caution
Changing spanning-tree modes can disrupt traffic because all spanning-tree instances are stopped for the previous mode and restarted in the new mode.
You cannot run both MSTP and PVST+ or both MSTP and rapid PVST+ at the same time.
Step 9 Step 10 Step 11
Return to privileged EXEC mode. Verify your entries. (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)#
18-15
Configuring MSTP
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 17-1 on page 17-5.)
Note
Catalyst 3750 switches running software earlier than Cisco IOS Release 12.1(14)EA1 do not support the MSTP.
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, 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 through the spanning-tree mst hello-time, spanning-tree mst forward-time, and the spanning-tree mst max-age global configuration commands. Beginning in privileged EXEC mode, follow these steps to configure a switch as the root switch. This procedure is optional.
Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure a switch as the root switch.
configure terminal spanning-tree mst instance-id root primary [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
18-16
78-16180-02
Chapter 18
Command
Step 4 Step 5
Purpose Verify your entries. (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.
Purpose Enter global configuration mode. Configure a switch as the secondary root switch.
configure terminal spanning-tree mst instance-id root secondary [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.
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 18-15.
Step 3 Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. (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.
18-17
Configuring MSTP
Note
If your switch is a member of a switch stack, you must use the spanning-tree mst [instance-id] cost cost interface configuration command instead of the spanning-tree mst [instance-id] port-priority priority interface configuration command to select a port to put in the forwarding state. Assign lower cost values to ports that you want selected first and higher cost values to ports that you want selected last. For more information, see the Configuring Path Cost section on page 18-19. Beginning in privileged EXEC mode, follow these steps to configure the MSTP port priority of an interface. This procedure is optional.
Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Valid interfaces include physical ports and port-channel logical interfaces. The port-channel range is 1 to 12.
Step 3
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. The 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 Step 5
end show spanning-tree mst interface interface-id or show spanning-tree mst instance-id
Step 6
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.
18-18
78-16180-02
Chapter 18
To return the interface to its default setting, use the no spanning-tree mst instance-id port-priority interface configuration command.
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Valid interfaces include physical ports and port-channel logical interfaces. The port-channel range is 1 to 12. Configure the cost. 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.
Step 3
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 Step 5
end show spanning-tree mst interface interface-id or show spanning-tree mst instance-id
Step 6
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.
18-19
Configuring MSTP
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
Step 1 Step 2
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. 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.
Return to privileged EXEC mode. Verify your entries. (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.
18-20
78-16180-02
Chapter 18
Beginning in privileged EXEC mode, follow these steps to configure the hello time for all MST instances. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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.
Purpose Enter global configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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.
18-21
Configuring MSTP
Purpose Enter global configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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.
Purpose Enter global configuration mode. 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. Return to privileged EXEC mode. Verify your entries. (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.
18-22
78-16180-02
Chapter 18
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Valid interfaces include physical ports, VLANs, and port-channel logical interfaces. The VLAN ID range is 1 to 4094. The port-channel range is 1 to 12. Specify that the link type of a port is point-to-point. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
spanning-tree link-type point-to-point end show spanning-tree mst interface interface-id copy running-config startup-config
To return the port to its default setting, use the no spanning-tree link-type interface configuration command.
18-23
Configuring MSTP
Purpose Displays the MST region configuration. Displays MST information for the specified instance.
show spanning-tree mst interface interface-id Displays MST information for the specified interface. For information about other keywords for the show spanning-tree privileged EXEC command, refer to the command reference for this release.
18-24
78-16180-02
C H A P T E R
19
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Optional Spanning-Tree Features, page 19-1 Configuring Optional Spanning-Tree Features, page 19-11 Displaying the Spanning-Tree Status, page 19-19
Understanding Port Fast, page 19-2 Understanding BPDU Guard, page 19-3 Understanding BPDU Filtering, page 19-3 Understanding UplinkFast, page 19-4 Understanding Cross-Stack UplinkFast, page 19-5 Understanding BackboneFast, page 19-7 Understanding EtherChannel Guard, page 19-10 Understanding Root Guard, page 19-10 Understanding Loop Guard, page 19-11
19-1
Note
Because the purpose of Port Fast is to minimize the time interfaces must wait for spanning-tree to converge, it is effective only when used on interfaces connected to end stations. If you enable Port Fast on an interface 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.
Figure 19-1 Port Fast-Enabled Interfaces
Server
19-2
101225
78-16180-02
Chapter 19
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.
19-3
Understanding UplinkFast
Switches in hierarchical networks can be grouped into backbone switches, distribution switches, and access switches. Figure 19-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.
Figure 19-2 Switches in a Hierarchical Network
Distribution switches
Access switches
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 19-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.
19-4
101231
78-16180-02
Chapter 19
Switch A (Root) L1
Switch B
L2
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 interface on Switch C and transitions it to the forwarding state without going through the listening and learning states, as shown in Figure 19-4. This change takes approximately 1 to 5 seconds.
Figure 19-4 UplinkFast Example After Direct Link Failure
Switch A (Root) L1
Switch B
L2 Link failure
19-5
Stack-root port
Switch 1
When certain link loss or spanning-tree events occur (described in Events that Cause Fast Convergence section on page 19-7), the Fast Uplink Transition Protocol uses the neighbor list to send fast-transition requests to stack members. The switch sending the fast-transition request needs to do a fast transition to the forwarding state of a port that it has chosen as the root port, and it must obtain an acknowledgement from each stack switch before performing the fast transition.
19-6
78-16180-02
86479
Chapter 19
Each switch in the stack decides if the sending switch is a better choice than itself to be the stack root of this spanning-tree instance by comparing the root, cost, and bridge ID. If the sending switch is the best choice as the stack root, each switch in the stack returns an acknowledgement; otherwise, it sends a fast-transition request. The sending switch then has not received acknowledgements from all stack switches. When acknowledgements are received from all stack switches, the Fast Uplink Transition Protocol on the sending switch immediately transitions its alternate stack-root port to the forwarding state. If acknowledgements from all stack switches are not obtained by the sending switch, the normal spanning-tree transitions (blocking, listening, learning, and forwarding) take place, and the spanning-tree topology converges at its normal rate (2 * forward-delay time + max-age time). The Fast Uplink Transition Protocol is implemented on a per-VLAN basis and affects only one spanning-tree instance at a time.
The stack-root port link fails. If two switches in the stack have alternate paths to the root, only one of the switches performs the fast transition.
The failed link, which connects the stack root to the spanning-tree root, recovers. A network reconfiguration causes a new stack-root switch to be selected. A network reconfiguration causes a new port on the current stack-root switch to be chosen as the stack-root port.
Note
The fast transition might not occur if multiple events occur simultaneously. For example, if a stack member is powered off, and at the same time, the link connecting the stack root to the spanning-tree root comes back up, the normal spanning-tree convergence occurs. Normal spanning-tree convergence (30 to 40 seconds) occurs under these conditions:
The stack-root switch is powered off, or the software failed. The stack-root switch, which was powered off or failed, is powered on. A new switch, which might become the stack root, is added to the stack.
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 controls 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.
19-7
BackboneFast, which is enabled by using the spanning-tree backbonefast global configuration command, starts when a root port or blocked interface 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 switch 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 find if it has an alternate path to the root switch. If the inferior BPDU arrives on a blocked interface, the root port and other blocked interfaces 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 interfaces become alternate paths to the root switch. If the inferior BPDU arrives on the root port and there are no blocked interfaces, 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 learn if any stack member has an alternate root to the root switch and waits for an RLQ reply from other switches in the network and in the stack. When a stack member receives an RLQ reply from a nonstack member on a blocked interface and the reply is destined for another nonstacked switch, it forwards the reply packet, regardless of the spanning-tree interface state. When a stack member receives an RLQ reply from a nonstack member and the response is destined for the stack, the stack member forwards the reply so that all the other stack members receive it. If the switch discovers that it still has an alternate path to the root, it expires the maximum aging time on the interface 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 interface that received the RLQ reply. If one or more alternate paths can still connect to the root switch, the switch makes all interfaces 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 19-6 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.
Figure 19-6 BackboneFast Example Before Indirect Link Failure
Switch A (Root) L1
Switch B
L2
19-8
78-16180-02
Chapter 19
If link L1 fails as shown in Figure 19-7, 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 interface on Switch C to move immediately to the listening state without waiting for the maximum aging time for the interface 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 19-7 shows how BackboneFast reconfigures the topology to account for the failure of link L1.
Figure 19-7 BackboneFast Example After Indirect Link Failure
Switch B
Switch C
If a new switch is introduced into a shared-medium topology as shown in Figure 19-8, BackboneFast is not activated because the inferior BPDUs did not come from the recognized designated switch (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 switch to Switch A, the root switch.
Figure 19-8 Adding a Switch in a Shared-Medium Topology
Switch A (Root)
Switch C
Blocked port
Added switch
44965
44964
BackboneFast changes port through listening and learning states to forwarding state.
19-9
Caution
19-10
78-16180-02
Chapter 19
Service-provider network
Enable the root-guard feature on these interfaces to prevent switches in the customer network from becoming the root switch or being in the path to the root.
Default Optional Spanning-Tree Configuration, page 19-12 Optional Spanning-Tree Configuration Guidelines, page 19-12 Enabling Port Fast, page 19-12 (optional) Enabling BPDU Guard, page 19-13 (optional) Enabling BPDU Filtering, page 19-14 (optional) Enabling UplinkFast for Use with Redundant Links, page 19-15 (optional) Enabling Cross-Stack UplinkFast, page 19-16 (optional)
19-11
101232
Enabling BackboneFast, page 19-16 (optional) Enabling EtherChannel Guard, page 19-17 (optional) Enabling Root Guard, page 19-17 (optional) Enabling Loop Guard, page 19-18 (optional)
Feature Port Fast, BPDU filtering, BPDU guard UplinkFast BackboneFast Root guard Loop guard
Default Setting Globally disabled (unless they are individually configured per interface). Globally disabled. (On Catalyst 3750 switches, the UplinkFast feature is the CSUF feature.) Globally disabled. Disabled on all interfaces. Disabled on all interfaces.
Caution
Use Port Fast only when connecting a single end station to an access or trunk port. Enabling this feature on an interface 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 16, Configuring Voice VLAN. You can enable this feature if your switch is running PVST+, rapid PVST+, or MSTP.
19-12
78-16180-02
Chapter 19
Beginning in privileged EXEC mode, follow these steps to enable Port Fast. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. 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.
Caution
Make sure that there are no loops in the network between the trunk port and the workstation or server before you enable Port Fast on a trunk port.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
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 interfaces that connect to end stations; otherwise, an accidental topology loop could cause a data packet loop and disrupt switch and network operation.
19-13
You also can use the spanning-tree bpduguard enable interface configuration command to enable BPDU guard on any interface without also enabling the Port Fast feature. When the interface 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
Step 1 Step 2
Purpose Enter global configuration mode. Globally enable BPDU guard. By default, BPDU guard is disabled. Specify the interface connected to an end station, and enter interface configuration mode. Enable the Port Fast feature. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal spanning-tree portfast bpduguard default interface interface-id spanning-tree portfast end show running-config copy running-config startup-config
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 interfaces 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 interface without also enabling the Port Fast feature. This command prevents the interface 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.
19-14
78-16180-02
Chapter 19
Beginning in privileged EXEC mode, follow these steps to globally enable the BPDU filtering feature. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Globally enable BPDU filtering. By default, BPDU filtering is disabled. Specify the interface connected to an end station, and enter interface configuration mode. Enable the Port Fast feature. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal spanning-tree portfast bpdufilter default interface interface-id spanning-tree portfast end show running-config copy running-config startup-config
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 stack. You cannot configure UplinkFast on an individual VLAN. You can configure the UplinkFast or the CSUF 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 and CSUF. This procedure is optional.
Command
Step 1 Step 2
configure terminal
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. When you enter this command, CSUF also is enabled on all nonstack port interfaces.
19-15
Command
Step 3 Step 4 Step 5
Purpose Return to privileged EXEC mode. Verify your entries. (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 reduce the chance that a 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 configure 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 Enter global configuration mode. Enable BackboneFast. Return to privileged EXEC mode.
19-16
78-16180-02
Chapter 19
Command
Step 4 Step 5
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To disable the BackboneFast feature, use the no spanning-tree backbonefast global configuration command.
Purpose Enter global configuration mode. Enable EtherChannel guard. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal spanning-tree etherchannel guard misconfig end show spanning-tree summary copy running-config startup-config
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.
19-17
Beginning in privileged EXEC mode, follow these steps to enable root guard on an interface. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify an interface to configure, and enter interface configuration mode. Enable root guard on the interface. By default, root guard is disabled on all interfaces. Return to privileged EXEC mode. Verify your entries.
configure terminal interface interface-id spanning-tree guard root end show running-config
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
Step 1
Step 2 Step 3
configure terminal spanning-tree loopguard default end show running-config copy running-config startup-config
Enter global configuration mode. Enable loop guard. By default, loop guard is disabled. Return to privileged EXEC mode. Verify your entries. (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.
19-18
78-16180-02
Chapter 19
Command show spanning-tree active show spanning-tree detail show spanning-tree interface interface-id show spanning-tree mst interface interface-id show spanning-tree summary [totals]
Purpose Displays spanning-tree information on active interfaces only. Displays a detailed summary of interface information. Displays spanning-tree information for the specified interface. Displays MST information for the specified interface. Displays a summary of interface 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, refer to the command reference for this release.
19-19
19-20
78-16180-02
C H A P T E R
20
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. The chapter includes these sections:
Understanding Flex Links, page 20-1 Configuring Flex Links, page 20-2 Monitoring Flex Links, page 20-3
20-1
Uplink switch B
Uplink switch C
Port 1 Switch A
Port 2
116082
If a primary (forwarding) link goes down, a trap notifies the network management stations. If the standby link goes down, a trap notifies the users. Flex Links are supported only on Layer 2 ports and port channels, not on VLANs or Layer 3 ports.
Default Flex Link Configuration, page 20-2 Flex Link Configuration Guidelines, page 20-2 Configuring Flex Links, page 20-3
You can configure only one Flex Link backup link for any active link, and it must be a different interface from the active interface. An interface can belong to only one Flex Link pair. An interface can be a backup link for only one active link. An active link cannot belong to another Flex Link pair. Neither of the links can be a member of an EtherChannel. However, you can configure two port channels as Flex Links, and you can configure a port channel and a physical interface as Flex Links, with either the port channel or the physical interface as the active link. A backup link does not have to be the same type (Fast Ethernet, Gigabit Ethernet, or port channel) as the active link. However, you should configure both Flex Links with similar characteristics so that there are no loops or changes in behavior if the standby link begins to forward traffic. STP is disabled on Flex Link ports. If STP is configured on the switch, Flex Links do not participate in STP in all VLANs in which STP is configured. With STP not running, be sure that there are no loops in the configured topology.
20-2
78-16180-02
Chapter 20
Purpose Enter global configuration mode. Enter interface configuration mode. The interface can be a physical Layer 2 interface or a port channel. The valid port-channel range is 1 to 12. Configure a physical Layer 2 interface (or port channel) as part of a Flex Link pair with the interface. When one link is forwarding traffic, the other interface is in standby mode. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the switch startup configuration file.
Step 3
end show interface [interface-id] switchport backup copy running-config startup config
This example shows how to configure an interfacewith a backup interface and to verify the configuration:
Switch# configure terminal Switch(conf)# interface fastethernet1/0/1 Switch(conf-if)# switchport backup interface fastethernet1/0/2 Switch(conf-if)# end Switch# show interface switchport backup Switch Backup Interface Pairs: Active Interface Backup Interface State -----------------------------------------------------------------------------------------------------FastEthernet1/0/1 FastEthernet1/0/2 Active Up/Backup Standby FastEthernet1/0/3 FastEthernet2/0/4 Active Up/Backup Standby Port-channel1 GigabitEthernet7/0/1 Active Up/Backup Standby
Purpose Display the Flex Link backup interface configured for an interface or all Flex Links configured on the switch and the state of each active and backup interface (up or standby mode).
20-3
20-4
78-16180-02
C H A P T E R
21
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release, and refer to the DHCP Commands section in the Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2. This chapter consists of these sections:
Understanding DHCP Features, page 21-1 Configuring DHCP Features, page 21-7 Displaying DHCP Snooping Information, page 21-14 Understanding IP Source Guard, page 21-15 Configuring IP Source Guard, page 21-16 Displaying IP Source Guard Information, page 21-19
DHCP Server, page 21-2 DHCP Relay Agent, page 21-2 DHCP Snooping, page 21-2 Option-82 Data Insertion, page 21-3 DHCP Snooping and Switch Stacks, page 21-6 Cisco IOS DHCP Server Database, page 21-5 DHCP Snooping Binding Database, page 21-5
21-1
For information about the DHCP client, refer to the Configuring DHCP section of the IP Addressing and Services section of the Cisco IOS IP Configuration Guide, Release 12.2 .
DHCP Server
The DHCP server assigns IP addresses from specified address pools on a switch or router to DHCP clients and manages them. If the DHCP server cannot give the DHCP client the requested configuration parameters from its database, it can forward the request to one or more secondary DHCP servers defined by the network administrator.
DHCP Snooping
DHCP snooping is a DHCP security feature that provides network security by filtering untrusted DHCP messages and by building and maintaining a DHCP snooping binding database, also referred to as a DHCP snooping binding table. For more information about this database, see the Displaying the DHCP Snooping Binding Database section on page 21-14. DHCP snooping acts like a firewall between untrusted hosts and DHCP servers. You use DHCP snooping to differentiate between untrusted interfaces connected to the end user and trusted interfaces connected to the DHCP server or another switch.
Note
For DHCP snooping to function properly, all DHCP servers must be connected to the switch through trusted interfaces. An untrusted DHCP message is a message that is received from outside the network or firewall. When you use DHCP snooping in a service-provider environment, an untrusted message is sent from a device that is not in the service-provider network, such as a customers switch. Messages from unknown devices are untrusted because they can be sources of traffic attacks. The DHCP snooping binding database has the MAC address, the IP address, the lease time, the binding type, the VLAN number, and the interface information that corresponds to the local untrusted interfaces of a switch. It does not have information regarding hosts interconnected with a trusted interface. In a service-provider network, a trusted interface is connected to a port on a device in the same network. An untrusted interface is connected to an untrusted interface in the network or to an interface on a device that is not in the network. When a switch receives a packet on an untrusted interface and the interface belongs to a VLAN in which DHCP snooping is enabled, the switch compares the source MAC address and the DHCP client hardware address. If the addresses match (the default), the switch forwards the packet. If the addresses do not match, the switch drops the packet.
21-2
78-16180-02
Chapter 21
The switch drops a DHCP packet when one of these situations occurs:
A packet from a DHCP server, such as a DHCPOFFER, DHCPACK, DHCPNAK, or DHCPLEASEQUERY packet, is received from outside the network or firewall. A packet is received on an untrusted interface, and the source MAC address and the DHCP client hardware address do not match. The switch receives a DHCPRELEASE or DHCPDECLINE broadcast message that has a MAC address in the DHCP snooping binding database, but the interface information in the binding database does not match the interface on which the message was received. A DHCP relay agent forwards a DHCP packet that includes a relay-agent IP address that is not 0.0.0.0, or the relay agent forwards a packet that includes option-82 information to an untrusted port.
Note
The DHCP option-82 feature is supported only when DHCP snooping is enabled globally and on the VLANs to which subscriber devices using this feature are assigned. Figure 21-1 is an example of a metropolitan Ethernet network in which a centralized DHCP server assigns IP addresses to subscribers connected to the switch at the access layer. Because the DHCP clients and their associated DHCP server do not reside on the same IP network or subnet, a DHCP relay agent (the Catalyst switch) is configured with a helper address to enable broadcast forwarding and to transfer DHCP messages between the clients and the server.
Figure 21-1 DHCP Relay Agent in a Metropolitan Ethernet Network
DHCP server
Access layer
21-3
When you enable the DHCP snooping information option 82 on the switch, this sequence of events occurs:
The host (DHCP client) generates a DHCP request and broadcasts it on the network. When the switch receives the DHCP request, it adds the option-82 information in the packet. The option-82 information is the switch MAC address (the remote ID suboption) and the port identifier, vlan-mod-port, from which the packet is received (the circuit ID suboption). If the IP address of the relay agent is configured, the switch adds this IP address in the DHCP packet. The switch forwards the DHCP request that includes the option-82 field to the DHCP server. The DHCP server receives the packet. If the server is option-82-capable, it can use the remote ID, the circuit ID, or both to assign IP addresses and implement policies, such as restricting the number of IP addresses that can be assigned to a single remote ID or circuit ID. Then the DHCP server echoes the option-82 field in the DHCP reply. The DHCP server unicasts the reply to the switch if the request was relayed to the server by the switch. The switch verifies that it originally inserted the option-82 data by inspecting the remote ID and possibly the circuit ID fields. The switch removes the option-82 field and forwards the packet to the switch port that connects to the DHCP client that sent the DHCP request.
When the previously described sequence of events occurs, the values in these fields in Figure 21-2 do not change:
Figure 21-2 shows the packet formats for the remote ID suboption and the circuit ID suboption. For the circuit ID suboption, the module number corresponds to the switch number in the stack. The switch uses the packet formats when DHCP snooping is globally enabled and when the ip dhcp snooping information option global configuration command is entered.
21-4
78-16180-02
Chapter 21
21-5
When a switch learns of new bindings or when it loses bindings, the switch updates the entries in the database and in the binding file. The frequency at which database and file are updated is based on a configurable delay, and the updates are batched. If the database and file are not updated in a specified time (set by the write-delay and abort-timeout values), the update stops. This is the format of the file that has the bindings:
<initial-checksum> TYPE DHCP-SNOOPING VERSION 1 BEGIN <entry-1> <checksum-1> <entry-2> <checksum-1-2> ... ... <entry-n> <checksum-1-2-..-n> END
Each entry in the file is tagged with a checksum value that the switch uses to verify the entries when it reads the file. The initial-checksum entry on the first line distinguishes entries associated with the latest file update from entries associated with a previous file update. This is an example of a binding file:
3ebe1518 TYPE DHCP-SNOOPING VERSION 1 BEGIN 1.1.1.1 512 0001.0001.0005 3EBE2881 Gi1/0/1 e5e1e733 1.1.1.1 512 0001.0001.0002 3EBE2881 Gi1/0/1 4b3486ec 1.1.1.1 1536 0001.0001.0004 3EBE2881 Gi1/0/1 f0e02872 1.1.1.1 1024 0001.0001.0003 3EBE2881 Gi1/0/1 ac41adf9 1.1.1.1 1 0001.0001.0001 3EBE2881 Gi1/0/1 34b3273e END
When the switch starts and the calculated checksum value equals the stored checksum value, the switch reads entries from the binding file and adds the bindings to its DHCP snooping binding database. The switch ignores an entry when one of these situations occurs:
The switch reads the entry and the calculated checksum value does not equal the stored checksum value. The entry and the ones following it are ignored. An entry has an expired lease time (the switch might not remove a binding entry when the lease time expires). The interface in the entry no longer exists on the system. The interface is a routed interface or a DHCP snooping-trusted interface.
21-6
78-16180-02
Chapter 21
Default DHCP Configuration, page 21-7 DHCP Snooping Configuration Guidelines, page 21-8 Configuring the DHCP Server, page 21-8 DHCP Server and Switch Stacks, page 21-9 Configuring the DHCP Relay Agent, page 21-9 Specifying the Packet Forwarding Address, page 21-9 Enabling DHCP Snooping and Option 82, page 21-10 Enabling DHCP Snooping on Private VLANs, page 21-12 Enabling the Cisco IOS DHCP Server Database, page 21-12 Enabling the DHCP Snooping Binding Database Agent, page 21-12
Feature DHCP server DHCP relay agent DHCP packet forwarding address Checking the relay agent information DHCP relay agent forwarding policy Cisco IOS DHCP server binding database3 DHCP snooping enabled globally DHCP snooping information option DHCP snooping limit rate DHCP snooping trust DHCP snooping VLAN DHCP snooping MAC address verification DHCP snooping binding database agent
3
Default Setting Enabled1 Enabled2 None configured Enabled (invalid messages are dropped) 2 Replace the existing relay agent information2 Enabled4 Disabled Enabled None configured Untrusted Disabled Enabled Enabled
1. The switch responds to DHCP requests only if it is configured as a DHCP server. 2. The switch relays DHCP packets only if the IP address of the DHCP server is configured on the SVI of the DHCP client. 3. This feature is supported only when your switch is running the enhanced multilayer image (EMI). 4. The switch gets network addresses and configuration parameters only from a device configured as DHCP server.
21-7
You must globally enable DHCP snooping on the switch. DHCP snooping is not active until DHCP snooping is enabled on a VLAN. Before globally enabling DHCP snooping on the switch, make sure that the devices acting as the DHCP server and the DHCP relay agent are configured and enabled. When you globally enable DHCP snooping on the switch, these Cisco IOS commands are not available until snooping is disabled. If you enter these commands, the switch returns an error message, and the configuration is not applied.
ip dhcp relay information check global configuration command ip dhcp relay information policy global configuration command ip dhcp relay information trust-all global configuration command ip dhcp relay information trusted interface configuration command
Before configuring the DHCP snooping information option on your switch, be sure to configure the device that is acting as the DHCP server. For example, you must specify the IP addresses that the DHCP server can assign or exclude, or you must configure DHCP options for these devices. Before configuring the DHCP relay agent on your switch, make sure to configure the device that is acting as the DHCP server. For example, you must specify the IP addresses that the DHCP server can assign or exclude, configure DHCP options for devices, or set up the DHCP database agent. If the DHCP relay agent is enabled but DHCP snooping is disabled, the DHCP option-82 data insertion feature is not supported. If a switch port is connected to a DHCP server, configure a port as trusted by entering the ip dhcp snooping trust interface configuration command. If a switch port is connected to a DHCP client, configure a port as untrusted by entering the no ip dhcp snooping trust interface configuration command. Follow these guidelines when configuring the DHCP snooping binding database:
Because both NVRAM and the flash memory have limited storage capacity, we recommend that
and FTP) before the switch can initially write bindings to the binding file at that URL for the first time.
To ensure that the lease time in the database is accurate, we recommend that NTP is enabled and
configured. For more information, see the Configuring NTP section on page 7-4.
If NTP is not configured, the switch writes binding changes to the binding file only when the
21-8
78-16180-02
Chapter 21
Purpose Enter global configuration mode. Enable the DHCP server and relay agent on your switch. By default, this feature is enabled. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal service dhcp end show running-config copy running-config startup-config
To disable the DHCP server and relay agent, use the no service dhcp global configuration command. Refer to the Configuring DHCP section of the IP Addressing and Services section of the Cisco IOS IP Configuration Guide, Release 12.2 for these procedures:
Checking (validating) the relay agent information Configuring the relay agent forwarding policy
21-9
Beginning in privileged EXEC mode, follow these steps to specify the packet forwarding address: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enter interface configuration mode, and create a switch virtual interface. Configure the interface with an IP address and an IP subnet. Specify the DHCP packet forwarding address. The helper address can be a specific DHCP server address, or it can be the network address if other DHCP servers are on the destination network segment. Using the network address enables other servers to respond to DHCP requests. If you have multiple servers, you can configure one helper address for each server.
configure terminal interface vlan vlan-id ip address ip-address subnet-mask ip helper-address address
Step 5 Step 6
Return to global configuration mode. Configure multiple physical ports that are connected to the DHCP clients, and enter interface range configuration mode. or Configure a single physical port that is connected to the DHCP client, and enter interface configuration mode. Define the VLAN membership mode for the port. Assign the ports to the same VLAN as configured in Step 2. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
or interface interface-id
switchport mode access switchport access vlan vlan-id end show running-config copy running-config startup-config
To remove the DHCP packet forwarding address, use the no ip helper-address address interface configuration command.
21-10
78-16180-02
Chapter 21
Command
Step 3
Purpose Enable DHCP snooping on a VLAN or range of VLANs. The range is 1 to 4094. You can enter a single VLAN ID identified by VLAN ID number, a series of VLAN IDs separated by commas, a range of VLAN IDs separated by hyphens, or a range of VLAN IDs separated by entering the starting and ending VLAN IDs separated by a space.
Step 4
Enable the switch to insert and remove DHCP relay information (option-82 field) in forwarded DHCP request messages to the DHCP server. The default is enabled. Enter interface configuration mode, and specify the interface to be configured. (Optional) Configure the interface as trusted or untrusted. You can use the no keyword to configure an interface to receive messages from an untrusted client. The default is untrusted. (Optional) Configure the number of DHCP packets per second than an interface can receive. The range is 1 to 4294967294. The default is no rate limit configured.
Note
Step 5 Step 6
Step 7
We recommend an untrusted rate limit of not more than 100 packets per second. If you configure rate limiting for trusted interfaces, you might need to increase the rate limit if the port is a trunk port assigned to more than one VLAN on which DHCP snooping is enabled.
Step 8
(Optional) Configure the switch to verify that the source MAC address in a DHCP packet that is received on untrusted ports matches the client hardware address in the packet. The default is to verify that the source MAC address matches the client hardware address in the packet. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable DHCP snooping, use the no ip dhcp snooping global configuration command. To disable DHCP snooping on a VLAN or range of VLANs, use the no ip dhcp snooping vlan vlan-range global configuration command. To disable the insertion and removal of the option-82 field, use the no ip dhcp snooping information option global configuration command. This example shows how to enable DHCP snooping globally and on VLAN 10 and to configure a rate limit of 100 packets per second on a port:
Switch(config)# ip dhcp snooping Switch(config)# ip dhcp snooping vlan 10 Switch(config)# ip dhcp snooping information option Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# ip dhcp snooping limit rate 100
21-11
The show ip dhcp snooping privileged EXEC command output shows all VLANs, including primary and secondary private VLANs, on which DHCP snooping is enabled.
Purpose Enter global configuration mode. Specify the URL for the database agent or the binding file by using one of these forms:
flash[number]:/filename (Optional) Use the number parameter to specify the stack member number of the stack master. The range for number is 1 to 9.
Step 3
Specify when to stop the database transfer process after the binding database changes. The range is from 0 to 86400. Use 0 for an infinite duration. The default is 300 seconds (5 minutes).
Step 4
ip dhcp snooping database write-delay Specify the duration for which the transfer should be delayed after the seconds binding database changes. The range is from 15 to 86400 seconds. The default is 300 seconds (5 minutes). end Return to privileged EXEC mode.
Step 5
21-12
78-16180-02
Chapter 21
Command
Step 6
Purpose
ip dhcp snooping binding mac-address (Optional) Add binding entries to the DHCP snooping binding database. vlan vlan-id ip-address interface The vlan-id range is from 1 to 4904. The seconds range is from 1 to interface-id expiry seconds 4294967295. Enter this command for each entry that you add. show ip dhcp snooping database [detail] copy running-config startup-config Display the status and statistics of the DHCP snooping binding database agent. (Optional) Save your entries in the configuration file.
Step 7 Step 8
To delete the database agent or binding file, use the no ip dhcp snooping database interface configuration command. To reset the timeout or delay values, use the ip dhcp snooping database timeout seconds or the ip dhcp snooping database write-delay seconds interface configuration command. To clear the statistics of the DHCP snooping binding database agent, use the clear ip dhcp snooping database statistics privileged EXEC command. To renew the database, use the renew ip dhcp snooping database privileged EXEC command. To delete binding entries from the DHCP snooping binding database, use the no ip dhcp snooping binding mac-address vlan vlan-id ip-address interface interface-id expiry seconds privileged EXEC command. Enter this command for each entry that you delete. This example shows how to enable the DHCP snooping binding database agent, configure the database agent, and add binding entries to the binding database:
Switch(config)# ip dhcp snooping database flash:/database1 Switch(config)# ip dhcp snooping database timeout 30 Switch(config)# ip dhcp snooping database write-delay 30 Switch# ip dhcp snooping binding 0001.0200.0004 vlan 100 172.16.22.44 interface gigabitethernet2/0/1 expiry 5000 Switch# ip dhcp snooping binding 0022.0300.0008 vlan 100 172.16.24.44 interface gigabitethernet2/0/1 expiry 5000 Switch(config)# ip dhcp snooping binding 0004.0070.0012 vlan 100 172.16.26.44 interface gigabitethernet2/0/1 expiry 5000 Switch(config)# show ip dhcp snooping database Agent URL : flash:/database1 Write delay Timer : 30 seconds Abort Timer : 30 seconds Agent Running : No Delay Timer Expiry : 19 (00:00:19) Abort Timer Expiry : Not Running Last Succeded Time : 17:06:10 pst Tue Mar 2 1993 Last Failed Time : None Last Failed Reason : No failure recorded. Total Attempts Successful Transfers Successful Reads Successful Writes Media Failures Switch(config)# copy : 4 Startup Failures : 4 Failed Transfers : 0 Failed Reads : 4 Failed Writes : 0 running-config startup-config : : : : 0 0 0 0
21-13
Displaying the DHCP Snooping Configuration, page 21-14 Displaying the DHCP Snooping Binding Database, page 21-14
Table 21-2 describes the fields in the show ip dhcp snooping binding command output.
21-14
78-16180-02
Chapter 21
Description Client hardware MAC address Client IP address assigned from the DHCP server Remaining lease time for the IP address Binding type VLAN number of the client interface Interface that connects to the DHCP client host
This example shows how to display the DHCP snooping binding database status and statistics:
Switch# show ip dhcp snooping database Agent URL : Write delay Timer : 300 seconds Abort Timer : 300 seconds Agent Running : No Delay Timer Expiry : Not Running Abort Timer Expiry : Not Running Last Succeded Time : None Last Failed Time : None Last Failed Reason : No failure recorded. Total Attempts Successful Transfers Successful Reads Successful Writes Media Failures : : : : : 0 0 0 0 0 Startup Failures Failed Transfers Failed Reads Failed Writes : : : : 0 0 0 0
21-15
Default IP Source Guard Configuration, page 21-16 Configuration Guidelines, page 21-17 Enabling IP Source Guard, page 21-17 Displaying IP Source Guard Information, page 21-19
21-16
78-16180-02
Chapter 21
Configuration Guidelines
These are the configuration guides for IP source guard:
You can configure static IP bindings only on nonrouted ports. If you enter the ip source binding ip-address mac-address vlan vlan-id interface interface-id global configuration command on a routed interface, this error message appears:
Static IP source binding can only be configured on switch port.
When IP source guard with source IP filtering is enabled on a VLAN, DHCP snooping must be enabled on the access VLAN to which the interface belongs. If you are enabling IP source guard on a trunk interface with multiple VLANs and DHCP snooping is enabled on all the VLANs, the source IP address filter is applied on all the VLANs.
Note
If IP source guard is enabled and you enable or disable DHCP snooping on a VLAN on the trunk interface, the switch might not properly filter traffic.
When IP source guard with source IP and MAC address filtering is enabled, DHCP snooping and port security must be enabled on the interface. IP source guard is not supported on EtherChannels. You can enable this feature when Virtual Routing Function (VRF) Lite or 802.1x port-based authentication is enabled. If the number of ternary content addressable memory (TCAM) entries exceeds the maximum available, the CPU usage increases.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to be configured. Enable IP source guard with source IP address filtering. Enable IP source guard with source IP and MAC address filtering. Return to global configuration mode. Add a static IP source binding. Enter this command for each static binding. Return to privileged EXEC mode. Display the IP source guard configuration for all interfaces or for a specific interface.
Step 4 Step 5
exit ip source binding mac-address vlan vlan-id ip-address inteface interface-id end show ip verify source [interface interface-id]
Step 6 Step 7
21-17
Command
Step 8
Purpose Display the IP source bindings on the switch, on a specific VLAN, or on a specific interface. (Optional) Save your entries in the configuration file.
show ip source binding [ip-address] [mac-address] [dhcp-snooping | static] [inteface interface-id ] [vlan vlan-id ] copy running-config startup-config
Step 9
To disable IP source guard with source IP address filtering, use the no ip verify source interface configuration command. To delete a static IP source binding entry, use the no ip source binding ip-address mac-address vlan vlan-id inteface interface-id interface configuration command. This example shows how to enable IP source guard with source IP and MAC filtering on VLANs 10 and 11:
Switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip verify source port-security Switch(config-if)# exit Switch(config)# ip source binding 0100.0022.0010 vlan 10 10.0.0.2 interface gigabitethernet1/0/2 Switch(config)# ip source binding 0100.0230.0002 vlan 11 10.0.0.4 interface gigabitethernet1/0/2 Switch(config)# end Switch# show ip verify source Interface Filter-type Filter-mode IP-address Mac-address Vlan --------- ----------- ----------- --------------- -------------- --------gi1/0/2 ip-mac active 10.0.0.2 0100.0022.0010 10 gi1/0/2 ip-mac active 10.0.0.4 0100.0230.0002 11 Switch# show ip source binding MacAddress IpAddress Lease(sec) Type ---------------------------- ---------- ------------01:00:00:22:00:10 10.0.0.2 infinite static 01:00:00:22:00:10 10.0.0.2 infinite static 01:00:02:30:00:02 10.0.0.9 10000 dhcp-snooping Switch(config)# copy running-config startup-config
VLAN ---10 10 10
21-18
78-16180-02
Chapter 21
Configuring DHCP Features and IP Source Guard Displaying IP Source Guard Information
10 11 12-20 10 11-20
21-19
21-20
78-16180-02
C H A P T E R
22
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding Dynamic ARP Inspection, page 22-1 Configuring Dynamic ARP Inspection, page 22-5 Displaying Dynamic ARP Inspection Information, page 22-14
22-1
A C
Hosts A, B, and C are connected to the switch on interfaces A, B and C, all of which are on the same subnet. Their IP and MAC addresses are shown in parentheses; for example, Host A uses IP address IA and MAC address MA. When Host A needs to communicate to Host B at the IP layer, it broadcasts an ARP request for the MAC address associated with IP address IB. When the switch and Host B receive the ARP request, they populate their ARP caches with an ARP binding for a host with the IP address IA and a MAC address MA; for example, IP address IA is bound to MAC address MA. When Host B responds, the switch and Host A populate their ARP caches with a binding for a host with the IP address IB and a MAC address MB. Host C can poison the ARP caches of the switch, Host A, and Host B by broadcasting forged ARP responses with bindings for a host with an IP address of IA (or IB) and a MAC address of MC. Hosts with poisoned ARP caches use the MAC address MC as the destination MAC address for traffic intended for IA or IB. This means that Host C intercepts that traffic. Because Host C knows the true MAC addresses associated with IA and IB, it can forward the intercepted traffic to those hosts by using the correct MAC address as the destination. Host C has inserted itself into the traffic stream from Host A to Host B, the classic man-in-the middle attack. Dynamic ARP inspection is a security feature that validates ARP packets in a network. It intercepts, logs, and discards ARP packets with invalid IP-to-MAC address bindings. This capability protects the network from certain man-in-the-middle attacks. Dynamic ARP inspection ensures that only valid ARP requests and responses are relayed. The switch performs these activities:
Intercepts all ARP requests and responses on untrusted ports Verifies that each of these intercepted packets has a valid IP-to-MAC address binding before updating the local ARP cache or before forwarding the packet to the appropriate destination Drops invalid ARP packets
Dynamic ARP inspection determines the validity of an ARP packet based on valid IP-to-MAC address bindings stored in a trusted database, the DHCP snooping binding database. This database is built by DHCP snooping if DHCP snooping is enabled on the VLANs and on the switch. If the ARP packet is received on a trusted interface, the switch forwards the packet without any checks. On untrusted interfaces, the switch forwards the packet only if it is valid. You enable dynamic ARP inspection on a per-VLAN basis by using the ip arp inspection vlan vlan-range global configuration command. For configuration information, see the Configuring Dynamic ARP Inspection in DHCP Environments section on page 22-7. In non-DHCP environments, dynamic ARP inspection can validate ARP packets against user-configured ARP access control lists (ACLs) for hosts with statically configured IP addresses. You define an ARP ACL by using the arp access-list acl-name global configuration command. For configuration information, see the Configuring ARP ACLs for Non-DHCP Environments section on page 22-8. The switch logs dropped packets. For more information about the log buffer, see the Logging of Dropped Packets section on page 22-4.
22-2
111750
78-16180-02
Chapter 22
You can configure dynamic ARP inspection to drop ARP packets when the IP addresses in the packets are invalid or when the MAC addresses in the body of the ARP packets do not match the addresses specified in the Ethernet header. Use the ip arp inspection validate {[src-mac] [dst-mac] [ip]} global configuration command. For more information, see the Performing Validation Checks section on page 22-11.
Caution
Use the trust state configuration carefully. Configuring interfaces as untrusted when they should be trusted can result in a loss of connectivity. In Figure 22-2, assume that both Switch A and Switch B are running dynamic ARP inspection on the VLAN that includes Host 1 and Host 2. If Host 1 and Host 2 acquire their IP addresses from the DHCP server connected to Switch A, only Switch A binds the IP-to-MAC address of Host 1. Therefore, if the interface between Switch A and Switch B is untrusted, the ARP packets from Host 1 are dropped by Switch B. Connectivity between Host 1 and Host 2 is lost.
Figure 22-2 ARP Packet Validation on a VLAN Enabled for Dynamic ARP Inspection
DHCP server
Switch A Port 1
Switch B Port 3
Host 1
Host 2
Configuring interfaces to be trusted when they are actually untrusted leaves a security hole in the network. If Switch A is not running dynamic ARP inspection, Host 1 can easily poison the ARP cache of Switch B (and Host 2, if the link between the switches is configured as trusted). This condition can occur even though Switch B is running dynamic ARP inspection.
111751
22-3
Dynamic ARP inspection ensures that hosts (on untrusted interfaces) connected to a switch running dynamic ARP inspection do not poison the ARP caches of other hosts in the network. However, dynamic ARP inspection does not prevent hosts in other portions of the network from poisoning the caches of the hosts connected to a switch running dynamic ARP inspection. In cases in which some switches in a VLAN run dynamic ARP inspection and other switches do not, configure the interfaces connecting such switches as untrusted. However, to validate the bindings of packets from nondynamic ARP inspection switches, configure the switch running dynamic ARP inspection with ARP ACLs. When you cannot determine such bindings, at Layer 3, isolate switches running dynamic ARP inspection from switches not running dynamic ARP inspection switches. For configuration information, see the Configuring ARP ACLs for Non-DHCP Environments section on page 22-8.
Note
Depending on the setup of the DHCP server and the network, it might not be possible to validate a given ARP packet on all switches in the VLAN.
22-4
78-16180-02
Chapter 22
You use the ip arp inspection log-buffer global configuration command to configure the number of entries in the buffer and the number of entries needed in the specified interval to generate system messages. You specify the type of packets that are logged by using the ip arp inspection vlan logging global configuration command. For configuration information, see the Configuring the Log Buffer section on page 22-12.
Default Dynamic ARP Inspection Configuration, page 22-5 Dynamic ARP Inspection Configuration Guidelines, page 22-6 Configuring Dynamic ARP Inspection in DHCP Environments, page 22-7 (required in DHCP environments) Configuring ARP ACLs for Non-DHCP Environments, page 22-8 (required in non-DHCP environments) Limiting the Rate of Incoming ARP Packets, page 22-10 (optional) Performing Validation Checks, page 22-11 (optional) Configuring the Log Buffer, page 22-12 (optional)
Feature Dynamic ARP inspection Interface trust state Rate limit of incoming ARP packets
Default Setting Disabled on all VLANs. All interfaces are untrusted. The rate is 15 pps on untrusted interfaces, assuming that the network is a switched network with a host connecting to as many as 15 new hosts per second. The rate is unlimited on all trusted interfaces. The burst interval is 1 second.
No ARP ACLs are defined. No checks are performed. When dynamic ARP inspection is enabled, all denied or dropped ARP packets are logged. The number of entries in the log is 32. The number of system messages is limited to 5 per second. The logging-rate interval is 1 second.
Per-VLAN logging
22-5
Dynamic ARP inspection is an ingress security feature; it does not perform any egress checking. Dynamic ARP inspection is not effective for hosts connected to switches that do not support dynamic ARP inspection or that do not have this feature enabled. Because man-in-the-middle attacks are limited to a single Layer 2 broadcast domain, separate the domain with dynamic ARP inspection checks from the one with no checking. This action secures the ARP caches of hosts in the domain enabled for dynamic ARP inspection. Dynamic ARP inspection depends on the entries in the DHCP snooping binding database to verify IP-to-MAC address bindings in incoming ARP requests and ARP responses. Make sure to enable DHCP snooping to permit ARP packets that have dynamically assigned IP addresses. For configuration information, see Chapter 21, Configuring DHCP Features and IP Source Guard. When DHCP snooping is disabled or in non-DHCP environments, use ARP ACLs to permit or to deny packets.
Dynamic ARP inspection is supported on access ports, trunk ports, and EtherChannel ports. It is not supported on private VLAN ports. A physical port can join an EtherChannel port channel only when the trust state of the physical port and the channel port match. Otherwise, the physical port remains suspended in the port channel. A port channel inherits its trust state from the first physical port that joins the channel. Consequently, the trust state of the first physical port need not match the trust state of the channel. Conversely, when you change the trust state on the port channel, the switch configures a new trust state on all the physical ports that comprise the channel.
The rate limit is calculated separately on each switch in a switch stack. For a cross-stack EtherChannel, this means that the actual rate limit might be higher than the configured value. For example, if you set the rate limit to 30 pps on an EtherChannel that has one port on switch 1 and one port on switch 2, each port can receive packets at 29 pps without causing the EtherChannel to become error-disabled. The operating rate for the port channel is cumulative across all the physical ports within the channel. For example, if you configure the port channel with an ARP rate-limit of 400 pps, all the interfaces combined on the channel receive an aggregate 400 pps. The rate of incoming ARP packets on EtherChannel ports is equal to the sum of the incoming rate of packets from all the channel members. Configure the rate limit for EtherChannel ports only after examining the rate of incoming ARP packets on the channel-port members. The rate of incoming packets on a physical port is checked against the port-channel configuration rather than the physical-ports configuration. The rate-limit configuration on a port channel is independent of the configuration on its physical ports. If the EtherChannel receives more ARP packets than the configured rate, the channel (including all physical ports) is placed in the error-disabled state.
Make sure to limit the rate of ARP packets on incoming trunk ports. Configure trunk ports with higher rates to reflect their aggregation and to handle packets across multiple dynamic ARP inspection-enabled VLANs. You also can use the ip arp inspection limit none interface configuration command to make the rate unlimited. A high rate-limit on one VLAN can cause a denial-of-service attack to other VLANs when the software places the port in the error-disabled state.
22-6
78-16180-02
Chapter 22
Note
Dynamic ARP inspection depends on the entries in the DHCP snooping binding database to verify IP-to-MAC address bindings in incoming ARP requests and ARP responses. Make sure to enable DHCP snooping to permit ARP packets that have dynamically assigned IP addresses. For configuration information, see Chapter 21, Configuring DHCP Features and IP Source Guard. For information on how to configure dynamic ARP inspection when only one switch supports the feature, see the Configuring ARP ACLs for Non-DHCP Environments section on page 22-8. Beginning in privileged EXEC mode, follow these steps to configure dynamic ARP inspection. You must perform this procedure on both switches. This procedure is required.
Command
Step 1 Step 2 Step 3
Purpose Verify the connection between the switches. Enter global configuration mode. Enable dynamic ARP inspection on a per-VLAN basis. By default, dynamic ARP inspection is disabled on all VLANs. For vlan-range, 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. Specify the same VLAN ID for both switches.
Step 4 Step 5
Specify the interface connected to the other switch, and enter interface configuration mode. Configure the connection between the switches as trusted. By default, all interfaces are untrusted. The switch does not check ARP packets that it receives from the other switch on the trusted interface. It simply forwards the packets. For untrusted interfaces, the switch intercepts all ARP requests and responses. It verifies that the intercepted packets have valid IP-to-MAC address bindings before updating the local cache and before forwarding the packet to the appropriate destination. The switch drops invalid packets and logs them in the log buffer according to the logging configuration specified with the ip arp inspection vlan logging global configuration command. For more information, see the Configuring the Log Buffer section on page 22-12.
Step 6
end
22-7
Command
Step 7
Purpose Verify the dynamic ARP inspection configuration. Verify the DHCP bindings. Check the dynamic ARP inspection statistics. (Optional) Save your entries in the configuration file.
show ip arp inspection interfaces show ip arp inspection vlan vlan-range show ip dhcp snooping binding show ip arp inspection statistics vlan vlan-range copy running-config startup-config
To disable dynamic ARP inspection, use the no ip arp inspection vlan vlan-range global configuration command. To return the interfaces to an untrusted state, use the no ip arp inspection trust interface configuration command. This example shows how to configure dynamic ARP inspection on Switch A in VLAN 1. You would perform a similar procedure on Switch B:
Switch(config)# ip arp inspection vlan 1 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip arp inspection trust
Purpose Enter global configuration mode. Define an ARP ACL, and enter ARP access-list configuration mode. By default, no ARP access lists are defined.
Note
At the end of the ARP access list, there is an implicit deny ip any mac any command.
22-8
78-16180-02
Chapter 22
Command
Step 3
Purpose Permit ARP packets from the specified host (Host 2).
For sender-ip, enter the IP address of Host 2. For sender-mac, enter the MAC address of Host 2. (Optional) Specify log to log a packet in the log buffer when it matches the access control entry (ACE). Matches are logged if you also configure the matchlog keyword in the ip arp inspection vlan logging global configuration command. For more information, see the Configuring the Log Buffer section on page 22-12.
Step 4 Step 5
Return to global configuration mode. Apply the ARP ACL to the VLAN. By default, no defined ARP ACLs are applied to any VLAN.
For arp-acl-name, specify the name of the ACL created in Step 2. For vlan-range, specify the VLAN that the switches and hosts are in. 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) Specify static to treat implicit denies in the ARP ACL as explicit denies and to drop packets that do not match any previous clauses in the ACL. DHCP bindings are not used. If you do not specify this keyword, it means that there is no explicit deny in the ACL that denies the packet, and DHCP bindings determine whether a packet is permitted or denied if the packet does not match any clauses in the ACL.
ARP packets containing only IP-to-MAC address bindings are compared against the ACL. Packets are permitted only if the access list permits them.
Step 6
interface interface-id
Specify the Switch A interface that is connected to Switch B, and enter interface configuration mode.
22-9
Command
Step 7
Purpose Configure the Switch A interface that is connected to Switch B as untrusted. By default, all interfaces are untrusted. For untrusted interfaces, the switch intercepts all ARP requests and responses. It verifies that the intercepted packets have valid IP-to-MAC address bindings before updating the local cache and before forwarding the packet to the appropriate destination. The switch drops invalid packets and logs them in the log buffer according to the logging configuration specified with the ip arp inspection vlan logging global configuration command. For more information, see the Configuring the Log Buffer section on page 22-12.
Step 8 Step 9
end show arp access-list [acl-name] show ip arp inspection vlan vlan-range show ip arp inspection interfaces
Step 10
To remove the ARP ACL, use the no arp access-list global configuration command. To remove the ARP ACL attached to a VLAN, use the no ip arp inspection filter arp-acl-name vlan vlan-range global configuration command. This example shows how to configure an ARP ACL called host2 on Switch A, to permit ARP packets from Host 2 (IP address 1.1.1.1 and MAC address 0001.0001.0001), to apply the ACL to VLAN 1, and to configure port 1 on Switch A as untrusted:
Switch(config)# arp access-list host2 Switch(config-arp-acl)# permit ip host 1.1.1.1 mac host 1.1.1 Switch(config-arp-acl)# exit Switch(config)# ip arp inspection filter host2 vlan 1 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# no ip arp inspection trust
Note
Unless you explicitly configure a rate limit on an interface, changing the trust state of the interface also changes its rate limit to the default value for that trust state. After you configure the rate limit, the interface retains the rate limit even when its trust state is changed. If you enter the no ip arp inspection limit interface configuration command, the interface reverts to its default rate limit.
22-10
78-16180-02
Chapter 22
For configuration guidelines for rate limiting trunk ports and EtherChannel ports, see the Dynamic ARP Inspection Configuration Guidelines section on page 22-6. Beginning in privileged EXEC mode, follow these steps to limit the rate of incoming ARP packets. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface to be rate-limited, and enter interface configuration mode. Limit the rate of incoming ARP requests and responses on the interface. The default rate is 15 pps on untrusted interfaces and unlimited on trusted interfaces. The burst interval is 1 second. The keywords have these meanings:
configure terminal interface interface-id ip arp inspection limit {rate pps [burst interval seconds ] | none}
For rate pps, specify an upper limit for the number of incoming packets processed per second. The range is 0 to 2048 pps. (Optional) For burst interval seconds, specify the consecutive interval in seconds, over which the interface is monitored for a high rate of ARP packets.The range is 1 to 15. For rate none, specify no upper limit for the rate of incoming ARP packets that can be processed.
Step 4 Step 5
Return to global configuration mode. (Optional) Enable error recovery from the dynamic ARP inspection error-disable state. By default, recovery is disabled, and the recovery interval is 300 seconds. For interval interval, specify the time in seconds to recover from the error-disable state. The range is 30 to 86400.
Step 6 Step 7
exit show ip arp inspection interfaces show errdisable recovery copy running-config startup-config
Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
Step 8
To return to the default rate-limit configuration, use the no ip arp inspection limit interface configuration command. To disable error recovery for dynamic ARP inspection, use the no errdisable recovery cause arp-inspection global configuration command.
22-11
Beginning in privileged EXEC mode, follow these steps to perform specific checks on incoming ARP packets. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Perform a specific check on incoming ARP packets. By default, no checks are performed. The keywords have these meanings:
For src-mac, check the source MAC address in the Ethernet header against the sender MAC address in the ARP body. This check is performed on both ARP requests and responses. When enabled, packets with different MAC addresses are classified as invalid and are dropped. For dst-mac, check the destination MAC address in the Ethernet header against the target MAC address in ARP body. This check is performed for ARP responses. When enabled, packets with different MAC addresses are classified as invalid and are dropped. For ip, check the ARP body for invalid and unexpected IP addresses. Addresses include 0.0.0.0, 255.255.255.255, and all IP multicast addresses. Sender IP addresses are checked in all ARP requests and responses, and target IP addresses are checked only in ARP responses.
You must specify at least one of the keywords. Each command overrides the configuration of the previous command; that is, if a command enables src and dst mac validations, and a second command enables IP validation only, the src and dst mac validations are disabled as a result of the second command.
Step 3 Step 4 Step 5
Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
To disable checking, use the no ip arp inspection validate [src-mac] [dst-mac] [ip] global configuration command. To display statistics for forwarded, dropped, MAC validation failure, and IP validation failure packets, use the show ip arp inspection statistics privileged EXEC command.
22-12
78-16180-02
Chapter 22
If the log buffer overflows, it means that a log event does not fit into the log buffer, and the display for the show ip arp inspection log privileged EXEC command is affected. A -- in the display appears in place of all data except the packet count and the time. No other statistics are provided for the entry. If you see this entry in the display, increase the number of entries in the log buffer or increase the logging rate. The log buffer configuration applies to each stack member in a switch stack. Each stack member has the specified logs number entries and generates system messages at the configured rate. For example, if the interval (rate) is one entry per second, up to five system messages are generated per second in a five-member switch stack. Beginning in privileged EXEC mode, follow these steps to configure the log buffer. This procedure is optional. Command
Step 1 Step 2
configure terminal
ip arp inspection log-buffer {entries Configure the dynamic ARP inspection logging buffer. number | logs number interval By default, when dynamic ARP inspection is enabled, denied or dropped seconds} ARP packets are logged. The number of log entries is 32. The number of system messages is limited to 5 per second. The logging-rate interval is 1 second. The keywords have these meanings:
For entries number, specify the number of entries to be logged in the buffer. The range is 0 to 1024. For logs number interval seconds, specify the number of entries to generate system messages in the specified interval. For logs number, the range is 0 to 1024. A 0 value means that the entry is placed in the log buffer, but a system message is not generated. For interval seconds , the range is 0 to 86400 seconds (1 day). A 0 value means that a system message is immediately generated (and the log buffer is always empty). An interval setting of 0 overrides a log setting of 0.
The logs and interval settings interact. If the logs number X is greater than interval seconds Y, X divided by Y (X/Y) system messages are sent every second. Otherwise, one system message is sent every Y divided by X (Y/X) seconds.
22-13
Command
Step 3
Purpose Control the type of packets that are logged per VLAN. By default, all denied or all dropped packets are logged. The term logged means the entry is placed in the log buffer and a system message is generated. The keywords have these meanings:
ip arp inspection vlan vlan-range logging {acl-match {matchlog | none} | dhcp-bindings {all | none | permit}}
For vlan-range, 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 acl-match matchlog, log packets based on the ACE logging configuration. If you specify the matchlog keyword in this command and the log keyword in the permit or deny ARP access-list configuration command, ARP packets permitted or denied by the ACL are logged. For acl-match none, do not log packets that match ACLs. For dhcp-bindings all, log all packets that match DHCP bindings. For dhcp-bindings none, do not log packets that match DHCP bindings. For dhcp-bindings permit, log DHCP-binding permitted packets.
Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
To return to the default log buffer settings, use the no ip arp inspection log-buffer {entries | logs} global configuration command. To return to the default VLAN log settings, use the no ip arp inspection vlan vlan-range logging {acl-match | dhcp-bindings} global configuration command. To clear the log buffer, use the clear ip arp inspection log privileged EXEC command.
show ip arp inspection interfaces [interface-id] Displays the trust state and the rate limit of ARP packets for the specified interface or all interfaces. show ip arp inspection vlan vlan-range Displays the configuration and the operating state of dynamic ARP inspection for all VLANs configured on the switch, for a specified VLAN, or for a range of VLANs.
22-14
78-16180-02
Chapter 22
To clear or display dynamic ARP inspection statistics, use the privileged EXEC commands in Table 22-3:
Table 22-3 Commands for Clearing or Displaying Dynamic ARP Inspection Statistics
Command clear ip arp inspection statistics show ip arp inspection statistics [vlan vlan-range]
Description Clears dynamic ARP inspection statistics. Displays statistics for forwarded, dropped, MAC validation failure, IP validation failure, ACL permitted and denied, and DHCP permitted and denied packets for all VLANs configured on the switch, for a specified VLAN, or for a range of VLANs.
For the show ip arp inspection statistics command, the switch increments the number of forwarded packets for each ARP request and response packet on a trusted dynamic ARP inspection port. The switch increments the number of ACL or DHCP permitted packets for each packet that is denied by source MAC, destination MAC, or IP validation checks, and the switch increments the appropriate failure count. To clear or display dynamic ARP inspection logging information, use the privileged EXEC commands in Table 22-4:
Table 22-4 Commands for Clearing or Displaying Dynamic ARP Inspection Logging Information
Description Clears the dynamic ARP inspection log buffer. Displays the configuration and contents of the dynamic ARP inspection log buffer.
For more information about these commands, refer to the command reference for this release.
22-15
22-16
78-16180-02
C H A P T E R
23
Note
For complete syntax and usage information for the commands used in this chapter, refer to the switch command reference for this release and the IP Multicast Routing Commands section in the Cisco IOS IP Command Reference, Volume 3 of 3:Multicast, Release 12.2. This chapter consists of these sections:
Understanding IGMP Snooping, page 23-1 Configuring IGMP Snooping, page 23-6 Displaying IGMP Snooping Information, page 23-12 Understanding Multicast VLAN Registration, page 23-13 Configuring MVR, page 23-15 Displaying MVR Information, page 23-19 Configuring IGMP Filtering and Throttling, page 23-19 Displaying IGMP Filtering and Throttling Configuration, page 23-25
Note
You can either manage IP multicast group addresses through features such as IGMP snooping and MVR, or you can use static IP addresses.
23-1
the switch adds the host port number to the forwarding table entry; when it receives an IGMP Leave Group message from a host, it removes the host port from the table entry. It also periodically deletes entries if it does not receive IGMP membership reports from the multicast clients.
Note
For more information on IP multicast and IGMP, refer to RFC 1112 and RFC 2236. The multicast router (which could be a Catalyst 3750 switch with the enhanced multilayer image on the stack master) sends out periodic general queries to all VLANs. All hosts interested in this multicast traffic send join requests and are added to the forwarding table entry. The switch creates one entry per VLAN in the IGMP snooping IP multicast forwarding table for each group from which it receives an IGMP join request. The Catalyst 3750 switch supports IP multicast group-based bridging, rather than MAC-addressed based groups. With multicast MAC address-based groups, if an IP address being configured translates (aliases) to a previously configured MAC address or to any reserved multicast MAC addresses (in the range 224.0.0.xxx), the command fails. Because the Catalyst 3750 switch uses IP multicast groups, there are no address aliasing issues. The IP multicast groups learned through IGMP snooping are dynamic. However, you can statically configure multicast groups by using the ip igmp snooping vlan vlan-id static ip_address interface interface-id 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. These sections describe characteristics of IGMP snooping on the switch and switch stack:
IGMP Versions, page 23-2 Joining a Multicast Group, page 23-3 Leaving a Multicast Group, page 23-5 Immediate Leave, page 23-5 IGMP Report Suppression, page 23-5 IGMP Snooping and Switch Stacks, page 23-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.
23-2
78-16180-02
Chapter 23
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, refer to 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
Host 1
Host 2
Host 3
Host 4
45750
Forwarding table
23-3
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. 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 23-1, that includes the port numbers connected to Host 1 and the router.
Table 23-1 IGMP Snooping Forwarding Table
Ports 1, 2
The switch hardware can distinguish IGMP information packets from other packets for the multicast group. The information in the table tells the switching engine to send frames addressed to the 224.1.2.3 multicast IP address that are not IGMP packets 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 23-2), the CPU receives that message and adds the port number of Host 4 to the forwarding table as shown in Table 23-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.
Figure 23-2 Second Host Joining a Multicast Group
Router A
1 VLAN
Host 1
Host 2
Host 3
Host 4
23-4
45751
Forwarding table
Ports 1, 2, 5
78-16180-02
Chapter 23
Immediate Leave
Immediate Leave is only supported on IGMP Version 2 hosts. The switch uses IGMP snooping Immediate Leave 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 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 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.
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.
23-5
Default IGMP Snooping Configuration, page 23-6 Enabling or Disabling IGMP Snooping, page 23-7 Setting the Snooping Method, page 23-7 Configuring a Multicast Router Port, page 23-9 Configuring a Host Statically to Join a Group, page 23-10 Enabling IGMP Immediate Leave, page 23-11 Disabling IGMP Report Suppression, page 23-11
Feature IGMP snooping Multicast routers Multicast router learning (snooping) method IGMP snooping Immediate Leave Static groups IGMP report suppression
Default Setting Enabled globally and per VLAN None configured PIM-DVMRP Disabled None configured Enabled
23-6
78-16180-02
Chapter 23
Purpose Enter global configuration mode. Globally enable IGMP snooping in all existing VLAN interfaces. Return to privileged EXEC mode. (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
Step 1 Step 2
Purpose Enter global configuration mode. Enable IGMP snooping on the VLAN interface.The VLAN ID range is 1 to 4094.
Note
IGMP snooping must be globally enabled before you can enable VLAN snooping.
Step 3 Step 4
Return to privileged EXEC mode. (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.
Snooping on IGMP queries, Protocol Independent Multicast (PIM) packets, and Distance Vector Multicast Routing Protocol (DVMRP) packets Listening to Cisco Group Management Protocol (CGMP) packets from other routers Statically connecting to a multicast router port with the ip igmp snooping mrouter global configuration command
23-7
You can configure the switch either to snoop on IGMP queries and PIM/DVMRP packets or to listen to CGMP self-join or proxy-join packets. By default, the switch snoops on PIM/DVMRP packets on all VLANs. To learn of multicast router ports through only CGMP packets, use the ip igmp snooping vlan vlan-id mrouter learn cgmp global configuration command. When this command is entered, the router listens to only CGMP self-join and CGMP proxy-join packets and no other CGMP packets. To learn of multicast router ports through only PIM-DVMRP packets, use the ip igmp snooping vlan vlan-id mrouter learn pim-dvmrp global configuration command.
Note
If you want to use CGMP as the learning method and no multicast routers in the VLAN are CGMP proxy-enabled, you must enter the ip cgmp router-only command to dynamically access the router. For more information, see Chapter 36, Configuring IP Multicast Routing. Beginning in privileged EXEC mode, follow these steps to alter the method in which a VLAN interface dynamically accesses a multicast router:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable IGMP snooping on a VLAN. The VLAN ID range is 1 to 4094. Specify the multicast router learning method:
configure terminal ip igmp snooping vlan vlan-id mrouter learn {cgmp | pim-dvmrp }
cgmpListen 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.
Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
23-8
78-16180-02
Chapter 23
This example shows how to configure IGMP snooping to use CGMP packets as the learning method and verify the configuration:
Switch# configure terminal Switch(config)# ip igmp snooping vlan 1 mrouter learn cgmp Switch(config)# end Switch# show ip igmp snooping vlan 1 Global IGMP Snooping configuration: ----------------------------------IGMP snooping :Enabled IGMPv3 snooping (minimal) :Enabled Report suppression :Enabled TCN solicit query :Disabled TCN flood query count :2 Vlan 1: -------IGMP snooping Immediate leave Multicast router learning mode Source only learning age timer CGMP interoperability mode
To return to the default learning method, use the no ip igmp snooping vlan vlan-id mrouter learn cgmp global configuration command.
Note
Static connections to multicast routers are supported only on switch ports. Beginning in privileged EXEC mode, follow these steps to enable a static connection to a multicast router:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the multicast router VLAN ID and specify the interface to the multicast router.
The VLAN ID range is 1 to 4094. The interface can be a physical interface or a port channel. The port channel range is 1 to 12.
Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
show ip igmp snooping mrouter [vlan vlan-id] Verify that IGMP snooping is enabled on the VLAN interface.
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.
23-9
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 gigabitethernet1/0/2 Switch(config)# end Switch# show ip igmp snooping mrouter vlan 200 Vlan ports -----+---------------------------------------200 Gi1/0/2(static)
configure terminal
ip igmp snooping vlan vlan-id static ip_address Statically configure a Layer 2 port as a member of a multicast interface interface-id group:
vlan-id is the multicast group VLAN ID. ip-address is the group IP address. interface-id is the member port. It can be a physical interface or port channel (1 to 12).
Return to privileged EXEC mode. Verify the member port and the IP address. (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 a port and verify the configuration:
Switch# configure terminal Switch(config)# ip igmp snooping vlan 105 static 224.2.4.12 interface gigabitethernet1/0/1 Switch(config)# end Switch# show ip igmp snooping groups Vlan Group Type Version Port List ------------------------------------------------------------104 224.1.4.2 igmp v2 Gi1/0/1 104 224.1.4.3 igmp v2 Gi1/0/1 105 224.2.4.12 user Gi1/0/1
23-10
78-16180-02
Chapter 23
Note
Immediate Leave is supported only on IGMP Version 2 hosts. Beginning in privileged EXEC mode, follow these steps to enable IGMP Immediate Leave:
Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Enable IGMP Immediate Leave on the VLAN interface. Return to privileged EXEC mode. Verify that Immediate Leave is enabled on the VLAN interface. (Optional) Save your entries in the configuration file.
configure terminal ip igmp snooping vlan vlan-id immediate-leave end show ip igmp snooping vlan vlan-id copy running-config startup-config
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 on VLAN 130:
Switch# configure terminal Switch(config)# ip igmp snooping vlan 130 immediate-leave Switch(config)# end
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. IGMP report suppression is enabled by default. When it is enabled, the switch forwards only one IGMP report per multicast router query. When report suppression is disabled, all IGMP reports are forwarded to the multicast routers. Beginning in privileged EXEC mode, follow these steps to disable IGMP report suppression:
Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Disable IGMP report suppression. Return to privileged EXEC mode. Verify that IGMP report suppression is disabled. (Optional) Save your entries in the configuration file.
configure terminal no ip igmp snooping report-suppression end show ip igmp snooping copy running-config startup-config
23-11
To re-enable IGMP report suppression, use the ip igmp snooping report-suppression global configuration command.
Purpose 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. Display multicast table information for the switch or about a specific parameter:
countDisplay the total number of entries for the specified command options instead of the actual entries. dynamicDisplay entries learned through IGMP snooping. userDisplay only the user-configured multicast entries.
show ip igmp snooping groups vlan vlan-id [ip_address | count | dynamic [count] | user[count]]
Display multicast table information for a multicast VLAN or about a specific parameter for the VLAN:
countDisplay the total number of entries for the specified command options instead of the actual entries. dynamicDisplay entries learned through IGMP snooping. ip_addressDisplay characteristics of the multicast group with the specified group IP address. userDisplay only the user-configured multicast entries.
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.
(Optional) Enter vlan vlan-id to display information for a single VLAN. show ip igmp snooping querier [vlan vlan-id] Display information about the IGMP version on an interface. (Optional) Enter vlan vlan-id to display information for a single VLAN. For more information about the keywords and options in these commands, refer to the command reference for this release.
23-12
78-16180-02
Chapter 23
In compatible mode, multicast data received by MVR hosts is forwarded to all MVR data ports, regardless of MVR host membership on those ports. The multicast data is forwarded only to those receiver ports which MVR hosts have explicitly joined, either by IGMP reports or by MVR static configuration. Also, IGMP reports received from MVR hosts are never forwarded out of MVR data ports that were configured in the switch. In dynamic mode, multicast data received by MVR hosts on the switch is forwarded from only those MVR data and client ports that the MVR hosts have explicitly joined, either by IGMP reports or by MVR static configuration. Any IGMP reports received from MVR hosts are also forwarded from all the MVR data ports in the switch. This eliminates using unnecessary bandwidth on MVR data port links, which occurs when the switch runs in compatible mode.
Only Layer 2 ports take part in MVR. You must configure ports as MVR receiver ports. Only one MVR multicast VLAN per switch stack is supported. Receiver ports and source ports can be on different switches in a switch stack. Multicast data sent on the multicast VLAN is forwarded to all MVR receiver ports across the stack. When a new switch is added to a stack, by default it has no receiver ports. If a switch fails or is removed from the stack, only those receiver ports belonging to that switch will not receive the multicast data. All other receiver ports on other switches continue to receive the multicast data.
23-13
configured IP multicast group addresses, the switch CPU modifies the hardware address table to include this receiver port and VLAN as a forwarding destination of the specified multicast stream when it is received from the multicast VLAN. Uplink ports that send and receive multicast data to and from the multicast VLAN are called MVR source ports.
Figure 23-3 Multicast VLAN Registration Example
Multicast VLAN
Cisco router
Switch B SP
SP SP
Multicast server
SP SP SP1 Multicast data Switch A RP1 RP2 RP3 RP4 RP5 RP6 RP7 Customer premises IGMP join Set-top box TV data PC Set-top box Hub SP2
SP
Multicast data
When a subscriber changes channels or turns off the television, the set-top box sends an IGMP leave message for the multicast stream. The switch CPU sends a MAC-based general query through the receiver port VLAN. If there is another set-top box in the VLAN still subscribing to this group, that set-top box must respond within the maximum response time specified in the query. If the CPU does not receive a response, it eliminates the receiver port as a forwarding destination for this group. If the Immediate-Leave feature is enabled on a receiver port, the port leaves a multicast group more quickly. Without Immediate Leave, when the switch receives an IGMP leave message from a subscriber on a receiver port, it sends out an IGMP query on that port and waits for IGMP group membership reports. If no reports are received in a configured time period, the receiver port is removed from multicast group membership. With Immediate Leave, an IGMP query is not sent from the receiver port on which
23-14
101364
78-16180-02
Chapter 23
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. 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 onceonly on the multicast VLAN. The IGMP leave and join messages are 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. Switch B. 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 IP multicast group address 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, based on the MVR mode.
Configuring MVR
These sections include basic MVR configuration information:
Default MVR Configuration, page 23-15 MVR Configuration Guidelines and Limitations, page 23-16 Configuring MVR Global Parameters, page 23-16 Configuring MVR Interfaces, page 23-17
Feature MVR Multicast addresses Query response time Multicast VLAN Mode Interface (per port) default Immediate Leave
Default Setting Disabled globally and per interface None configured 0.5 second VLAN 1 Compatible Neither a receiver nor a source port Disabled on all ports
23-15
Receiver ports can only be access ports; they cannot be trunk ports. Receiver ports on a switch can be in different VLANs, but should not belong to the multicast VLAN. The maximum number of multicast entries (MVR group addresses) that can be configured on a switch (that is, the maximum number of television channels that can be received) is 256. MVR multicast data received in the source VLAN and leaving from receiver ports has its time-to-live (TTL) decremented by 1 in the Catalyst 3750 switch. Because MVR on the Catalyst 3750 switch uses IP multicast addresses instead of MAC multicast addresses, aliased IP multicast addresses are allowed on the switch. However, if the switch is interoperating with Catalyst 3550 or Catalyst 3500 XL switches, you should not configure IP addresses that alias between themselves or with the reserved IP multicast addresses (in the range 224.0.0.xxx). Do not configure MVR on private VLAN ports. MVR is not supported when multicast routing is enabled on a switch. If you enable multicast routing and a multicast routing protocol while MVR is enabled, MVR is disabled, and you receive a warning message. If you try to enable MVR while multicast routing and a multicast routing protocol are enabled, the operation to enable MVR is cancelled, and you receive an error message. MVR can coexist with IGMP snooping on a switch. MVR data received on an MVR receiver port is not forwarded to MVR source ports. MVR does not support IGMPv3 messages.
Note
For complete syntax and usage information for the commands used in this section, refer to the command reference for this release. Beginning in privileged EXEC mode, follow these steps to configure MVR parameters:
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable MVR on the switch. 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.
23-16
78-16180-02
Chapter 23
Command
Step 4
Purpose (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. (Optional) Specify the VLAN in which multicast data is received; all source ports must belong to this VLAN. The VLAN range is 1 to 4094. The default is VLAN 1.
Step 5
Step 6
mvr mode {dynamic | compatible} (Optional) Specify the MVR mode of operation: dynamicAllows dynamic MVR membership on source ports. compatibleIs compatible with Catalyst 3500 XL and Catalyst 2900 XL switches and does not support IGMP dynamic joins on source ports.
Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
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 group address, set the query time to 1 second (10 tenths), specify the MVR multicast VLAN as VLAN 22, and set the MVR mode as dynamic:
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# mvr mvr mvr mvr mvr end group 228.1.23.4 querytime 10 vlan 22 mode dynamic
You can use the show mvr members privileged EXEC command to verify the MVR multicast group addresses on the switch.
Purpose Enter global configuration mode. Enable MVR on the switch. Enter interface configuration mode, and enter the type and number of the Layer 2 port to configure.
23-17
Command
Step 4
sourceConfigure 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. receiverConfigure 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.
Step 6
mvr immediate
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 Step 8
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 port, and verify the results.
Switch(config)# mvr Switch(config)# interface gigabitethernet1/0/2 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 Port Type Status Immediate Leave --------------------------Gi1/0/2 RECEIVER ACTIVE/DOWN ENABLED
23-18
78-16180-02
Chapter 23
Purpose Displays MVR status and values for the switchwhether 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:
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; do not enter leading zeros. 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.
23-19
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.
Note
IGMPv3 join and leave messages are not supported on switches running IGMP filtering. These sections describe how to configure IGMP filtering and throttling:
Default IGMP Filtering and Throttling Configuration, page 23-20 Configuring IGMP Profiles, page 23-21 (optional) Applying IGMP Profiles, page 23-22 (optional) Setting the Maximum Number of IGMP Groups, page 23-23 (optional) Configuring the IGMP Throttling Action, page 23-23 (optional)
Feature IGMP filters IGMP maximum number of IGMP groups IGMP profiles IGMP profile action
Default Setting None applied No maximum set None defined Deny the range addresses
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 23-23.
23-20
78-16180-02
Chapter 23
Configuring IGMP Snooping and MVR Configuring IGMP Filtering and Throttling
deny : Specifies that matching addresses are denied; this is the default. exit: Exits from igmp-profile configuration mode. no: Negates a command or returns to its defaults. permit: Specifies that matching addresses are permitted. range: Specifies a range of IP addresses for the profile. You can enter a single IP address or a range with a start and an end address.
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
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter IGMP profile configuration mode, and assign a number to the profile you are configuring. The range is from 1 to 4294967295. (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. 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 4
Return to privileged EXEC mode. Verify the profile configuration. (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.
23-21
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
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the physical interface to configure. The interface must be a Layer 2 port that does not belong to an EtherChannel port group. Apply the specified IGMP profile to the interface. The profile number can be from 1 to 4294967295. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
ip igmp filter profile number end show running-config interface interface-id copy running-config startup-config
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:
Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# ip igmp filter 4 Switch(config-if)# end
23-22
78-16180-02
Chapter 23
Configuring IGMP Snooping and MVR Configuring IGMP Filtering and Throttling
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the interface to configure. The interface can be a Layer 2 port that does not belong to an EtherChannel group or a EtherChannel interface. 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. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
Step 3
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 a port can join.
Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# ip igmp max-groups 25 Switch(config-if)# end
This restriction can be applied to Layer 2 ports only; you can use this command on a logical EtherChannel interface but cannot use it on ports that belong to an EtherChannel port group. When the maximum group limitation is set to the default (no maximum), entering the ip igmp max-groups action {deny | replace} command has no effect.
23-23
If you configure the throttling action and set the maximum group limitation after an interface has added multicast entries to the forwarding table, the forwarding-table entries are either aged out or removed, depending on the throttling action.
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
Step 1 Step 2
Purpose Enter global configuration mode. 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. When an interface receives an IGMP report and the maximum number of entries is in the forwarding table, specify the action that the interface takes:
Step 3
deny Drop the report. replaceRemove a randomly selected multicast entry in the forwarding table, and add the IGMP group in the report.
Return to privileged EXEC mode. Verify the configuration. (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 a port 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 gigabitethernet1/0/1 Switch(config-if)# ip igmp max-groups action replace Switch(config-if)# end
23-24
78-16180-02
Chapter 23
Configuring IGMP Snooping and MVR Displaying IGMP Filtering and Throttling Configuration
Command show ip igmp profile [profile number] show running-config [interface interface-id]
Purpose Displays the specified IGMP profile or all the IGMP profiles defined on the switch. Displays the configuration of the specified interface or the configuration of 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.
23-25
23-26
78-16180-02
C H A P T E R
24
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Configuring Storm Control, page 24-1 Configuring Protected Ports, page 24-5 Configuring Port Blocking, page 24-6 Configuring Port Security, page 24-7 Displaying Port-Based Traffic Control Settings, page 24-16
Understanding Storm Control, page 24-2 Default Storm Control Configuration, page 24-3 Enabling Storm Control, page 24-3
24-1
Note
When the storm control threshold for multicast traffic is reached, all multicast traffic except control traffic, such as bridge protocol data unit (BDPU) and Cisco Discovery Protocol (CDP) frames, are blocked. However, the switch does not differentiate between routing updates, such as OSPF, and regular multicast data traffic, so both types of traffic are blocked. When storm control is enabled, the switch monitors packets passing from an interface to the switching bus and decides if the packet is unicast, multicast, or broadcast. The switch monitors the number of unicast, multicast, or broadcast packets received within a 200-millisecond time interval, and when a threshold for one type of traffic is reached, that type of traffic is dropped. This threshold is specified as a percentage of total available bandwidth that can be used by unicast, multicast, or broadcast traffic. The graph in Figure 24-1 shows broadcast traffic patterns on an interface over a given period of time. The example can also be applied to multicast and unicast traffic. In this example, the broadcast traffic being forwarded exceeded the configured threshold between time intervals T1 and T2 and between T4 and T5. When the amount of specified traffic exceeds the threshold, all traffic of that kind is dropped for the next time period. Therefore, broadcast traffic is blocked during the intervals following T2 and T5. At the next time interval (for example, T3), if broadcast traffic does not exceed the threshold, it is again forwarded.
Figure 24-1 Broadcast Storm Control Example
Forwarded traffic Blocked traffic Total number of broadcast packets or bytes Threshold
T1
T2
T3
T4
T5
Time
The combination of the storm-control suppression level and the 200-millisecond time interval control the way the storm control algorithm works. A higher threshold allows more packets to pass through. A threshold value of 100 percent means that no limit is placed on the traffic. A value of 0.0 means that all broadcast, multicast, or unicast traffic on that port is blocked.
24-2
46651
78-16180-02
Chapter 24
Note
Because packets do not arrive at uniform intervals, the 200-millisecond time interval during which traffic activity is measured can affect the behavior of storm control. The switch continues to monitor traffic on the port, and when the utilization level is below the threshold level, the type of traffic that was dropped is forwarded again. You use the storm-control interface configuration commands to set the threshold value for each traffic type.
Note
Although visible in the command-line interface (CLI) online help, the switchport broadcast, switchport multicast, and switchport unicast interface configuration commands for setting suppression levels are not available. These commands are obsolete, replaced by the storm-control interface configuration commands.
Note
Storm control is supported only on physical interfaces; it is not supported on EtherChannel port channels or physical interfaces that are members of port channels even though the command is available in the CLI. If a physical interface with storm control configured joins an EtherChannel, the storm control configuration for the physical interface is removed from the running configuration. Beginning in privileged EXEC mode, follow these steps to enable a particular type of storm control:
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the type and number of the physical interface to configure. Specify the broadcast traffic suppression level for an interface as a percentage of total bandwidth. The level can be from 1 to 100; the optional fraction of a level can be from 0 to 99. A threshold value of 100 percent means that no limit is placed on broadcast traffic. A value of 0.0 means that all broadcast traffic on that port is blocked.
24-3
Command
Step 4
Purpose Specify the multicast traffic suppression level for an interface as a percentage of total bandwidth. The level can be from 1 to 100; the optional fraction of a level can be from 0 to 99. A threshold value of 100 percent means that no limit is placed on broadcast traffic. A value of 0.0 means that all multicast traffic on that port is blocked. Specify the unicast traffic suppression level for an interface as a percentage of total bandwidth. The level can be from 1 to 100; the optional fraction of a level can be from 0 to 99. A threshold value of 100 percent means that no limit is placed on broadcast traffic. A value of 0.0 means that all unicast traffic on that port is blocked. Return to privileged EXEC mode.
Step 5
Step 6 Step 7
end
show storm-control [interface-id] [broadcast | Verify the storm control suppression levels set on the interface for multicast | unicast] the specified traffic type. If you do not enter a traffic type, broadcast storm control settings are displayed. copy running-config startup-config (Optional) Save your entries in the configuration file.
Step 8
To disable storm control, use the no storm-control broadcast level, no storm-control multicast level, or no storm-control unicast level interface configuration commands. This example shows how to set the multicast storm control level at 70.5 percent on a port and to verify the configuration:
Switch# configure terminal Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# storm-control multicast level 70.5 Switch(config-if)# end Switch# show storm-control gigabitethernet2/0/1 multicast Interface Filter State Level Current --------- ------------- ------- ------Gi2/0/1 Forwarding 70.50% 0.00%
This example shows how to disable the multicast storm control on a port:
Switch# configure terminal Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# no storm-control multicast level Switch(config-if)# end
24-4
78-16180-02
Chapter 24
A protected port does not forward any traffic (unicast, multicast, or broadcast) to any other port that is also a protected port. Data traffic cannot be forwarded between protected ports at Layer 2; only control traffic, such as PIM packets, is forwarded because these packets are processed by the CPU and forwarded in software. All data traffic passing between protected ports must be forwarded through a Layer 3 device. Forwarding behavior between a protected port and a nonprotected port proceeds as usual.
Because a switch stack represents a single logical switch, Layer 2 traffic is not forwarded between any protected ports in the switch stack, whether they are on the same or different switches in the stack.
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the type and number of the interface to configure, for example gigabitethernet1/0/1. Configure the interface to be a protected port. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
switchport protected end show interfaces interface-id switchport copy running-config startup-config
24-5
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 gigabitethernet1/0/1 Switch(config-if)# switchport protected Switch(config-if)# end
The interface can be a physical interface or an EtherChannel group. When you block multicast or unicast traffic for a port channel, it is blocked on all ports in the port channel group. Beginning in privileged EXEC mode, follow these steps to disable the flooding of multicast and unicast packets out of an interface:
Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the type and number of the interface to configure. Block unknown multicast forwarding out of the port. Block unknown unicast forwarding out of the port. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id switchport block multicast switchport block unicast end show interfaces interface-id switchport copy running-config startup-config
To return the interface to the default condition where no traffic is blocked and normal forwarding occurs on the port, use the no switchport block {multicast | unicast} interface configuration commands.
24-6
78-16180-02
Chapter 24
This example shows how to block unicast and multicast flooding on a port:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# switchport block multicast Switch(config-if)# switchport block unicast Switch(config-if)# end
Understanding Port Security, page 24-7 Default Port Security Configuration, page 24-9 Configuration Guidelines, page 24-10 Enabling and Configuring Port Security, page 24-10 Enabling and Configuring Port Security Aging, page 24-14 Port Security and Switch Stacks, page 24-15
Note
If you try to set the maximum value to a number less than the number of secure addresses already configured on an interface, the command is rejected.
24-7
Static secure MAC addressesThese are manually configured by using the switchport port-security mac-address mac-address interface configuration command, stored in the address table, and added to the switch running configuration. Dynamic secure MAC addressesThese are dynamically configured, stored only in the address table, and removed when the switch restarts. Sticky secure MAC addressesThese can be dynamically learned or manually configured, stored in the address table, and added to the running configuration. If these addresses are saved in the configuration file, when the switch restarts, the interface does not need to dynamically reconfigure them.
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. All sticky secure MAC addresses are added to the running configuration. 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 sticky secure addresses, 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. The maximum number of secure MAC addresses that you can configure on a switch stack is set by the maximum number of available MAC addresses allowed in the system. This number is determined by the active Switch Database Management (SDM) template. See Chapter 8, Configuring SDM Templates. This number is the total of available MAC addresses, including those used for other Layer 2 functions and any other secure MAC addresses configured on interfaces.
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:
protectwhen the number of secure MAC addresses reaches the maximum limit allowed on the port, packets with unknown source addresses are dropped until you remove a sufficient number of secure MAC addresses to drop below the maximum value or increase the number of maximum allowable addresses. You are not notified that a security violation has occurred.
Note
We do not recommend configuring the protect violation 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.
24-8
78-16180-02
Chapter 24
restrictwhen the number of secure MAC addresses reaches the maximum limit allowed on the port, packets with unknown source addresses are dropped until you remove a sufficient number of secure MAC addresses to drop below the maximum value or increase the number of maximum allowable addresses. In this mode, you are notified that a security violation has occurred. An SNMP trap is sent, a syslog message is logged, and the violation counter increments. shutdowna port security violation causes the interface to become error-disabled and to shut down immediately, and the port LED turns off. An SNMP trap is sent, a syslog message is logged, and the violation counter increments. 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 shut down interface configuration commands. This is the default mode.
Table 24-1 shows the violation mode and the actions taken when you configure an interface for port security.
Table 24-1 Security Violation Mode Actions
Traffic is forwarded1 No No No
1. Packets with unknown source addresses are dropped until you remove a sufficient number of secure MAC addresses. 2. The switch returns an error message if you manually configure an address that would cause a security violation.
Feature Port security Sticky address learning Maximum number of secure MAC addresses per port Violation mode Port security aging
Default Setting Disabled on a port. Disabled. 1. Shutdown. The port shuts down when the maximum number of secure MAC addresses is exceeded. Disabled. Aging time is 0. Static aging is disabled. Type is absolute.
24-9
Configuration Guidelines
Follow these guidelines when configuring port security:
Port security can only be configured on static access ports or trunk ports. A secure port cannot be a dynamic access port. A secure port cannot be a destination port for Switched Port Analyzer (SPAN). A secure port cannot belong to a Fast EtherChannel or a Gigabit EtherChannel port group. You cannot configure static secure or sticky secure MAC addresses in the voice VLAN.
Note
Voice VLAN is only supported on access ports and not on trunk ports, even though the configuration is allowed.
A secure port cannot be a private-VLAN port. When you enable port security on an interface that is also configured with a voice VLAN, you must set the maximum allowed secure addresses on the port to two plus the maximum number of secure addresses allowed on the access VLAN. When the port is connected to a Cisco IP phone, the IP phone requires up to two MAC addresses. The IP phone address is learned on the voice VLAN and might also be learned on the access VLAN. Connecting a PC to the IP phone requires additional MAC addresses. If any type of port security is enabled on the access VLAN, dynamic port security is automatically enabled on the voice VLAN. You cannot configure port security on a per-VLAN basis. When a voice VLAN is configured on a secure port that is also configured as a sticky secure port, all addresses 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. When you enter a maximum secure address value for an interface, and the new value is greater than the previous value, the new value overwrites the previously configured value. If the new value is less than the previous value and the number of configured secure addresses on the interface exceeds the new value, the command is rejected. The switch does not support port security aging of sticky secure MAC addresses.
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the physical interface to configure. Set the interface switchport mode as access or trunk; an interface in the default mode (dynamic auto) cannot be configured as a secure port. Enable port security on the interface.
configure terminal interface interface-id switchport mode {access | trunk } switchport port-security
24-10
78-16180-02
Chapter 24
Command
Step 5
Purpose (Optional) Set the maximum number of secure MAC addresses for the interface. The maximum number of secure MAC addresses that you can configure on a switch stack is set by the maximum number of available MAC addresses allowed in the system. This number is set by the active Switch Database Management (SDM) template. See Chapter 8, Configuring SDM Templates.This number is the total of available MAC addresses, including those used for other Layer 2 functions and any other secure MAC addresses configured on interfaces. (Optional) For trunk ports, you can set the maximum number of secure MAC addresses on a VLAN. If the vlan keyword is not entered, the default value is used.
vlanset a per-VLAN maximum value. vlan vlan-listset a per-VLAN maximum value on a range of VLANs separated by a hyphen, or a series of VLANs separated by commas. For non-specified VLANs, the per-VLAN maximum value is used.
Step 6
(Optional) Set the violation mode, the action to be taken when a security violation is detected, as one of these:
protectWhen the number of port secure MAC addresses reaches the maximum limit allowed on the port, packets with unknown source addresses are dropped until you remove a sufficient number of secure MAC addresses to drop below the maximum value or increase the number of maximum allowable addresses. You are not notified that a security violation has occurred. We do not recommend configuring 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. restrictWhen 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. An SNMP trap is sent, a syslog message is logged, and the violation counter increments. shutdownThe interface is error-disabled when a violation occurs, and the port LED turns off. An SNMP trap is sent, a syslog message is logged, and the violation counter increments. 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.
Note
Note
24-11
Command
Step 7
Purpose (Optional) Enter a secure MAC address for the interface. 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. (Optional) On a trunk port, you can specify the VLAN ID and the MAC address. If no VLAN ID is specified, the native VLAN is used.
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 Step 9
(Optional) Enable sticky learning on the interface. (Optional) Enter a sticky secure MAC address, repeating the command as many times as necessary. If you configure fewer secure MAC addresses than the maximum, the remaining MAC addresses are dynamically learned, are converted to sticky secure MAC addresses, and are added to the running configuration.
Note
If you do not enable sticky learning before this command is entered, an error message appears, and you cannot enter a sticky secure MAC address.
Return to privileged EXEC mode. Verify your entries. (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 {protocol | 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. However, if you have previously saved the configuration with the sticky MAC addresses, you should save the configuration again after entering the no switchport port-security mac-address sticky command, or the sticky addresses will be restored if the switch reboots. To delete a specific secure MAC address from the address table, use the no switchport port-security mac-address mac-address interface configuration command. To delete all dynamic secure addresses on an interface from the address table, enter the no switchport port-security interface configuration command followed by the switchport port-security command (to re-enable port security on the interface). If you use the no switchport port-security mac-address sticky interface configuration command to convert sticky secure MAC addresses to dynamic secure MAC addresses before entering the no switchport port-security command, all secure addresses on the interface except those that were manually configured are deleted.
24-12
78-16180-02
Chapter 24
You must specifically delete configured secure MAC addresses from the address table by using the no switchport port-security mac-address mac-address interface configuration 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(config)# interface gigabitethernet1/0/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
This example shows how to configure a static secure MAC address on VLAN 3 on a port:
Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# switchport mode trunk Switch(config-if)# switchport port-security Switch(config-if)# switchport port-security mac-address 0000.02000.0004 vlan 3
AbsoluteThe secure addresses on the port are deleted after the specified aging time. InactivityThe secure addresses on the port are deleted only if the secure addresses are inactive for the specified aging time.
Use this feature to remove and add devices on a secure port without manually deleting the existing secure MAC addresses and to still limit the number of secure addresses on a port. You can enable or disable the aging of secure addresses on a per-port basis. Beginning in privileged EXEC mode, follow these steps to configure port security aging: Command
Step 1 Step 2
Purpose Enter global configuration mode. Enter interface configuration mode for the port on which you want to enable port security aging.
24-13
Command
Step 3
Purpose Enable or disable static aging for the secure port, or set the aging time or type.
Note
The switch does not support port security aging of sticky secure addresses.
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. For type, select one of these keywords:
absoluteSets the aging type as absolute aging. All the secure addresses on this port age out exactly after the time (minutes) specified lapses and are removed from the secure address list. inactivitySets the aging type as inactivity aging. The secure addresses on this port age out only if there is no data traffic from the secure source addresses for the specified time period.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
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 gigabitethernet1/0/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.
24-14
78-16180-02
Chapter 24
When a switch (either the stack master or a stack member) leaves the stack, the remaining stack members are notified, and the secure MAC addresses configured or learned by that switch are deleted from the secure MAC address table. For more information about switch stacks, see Chapter 5, Managing Switch Stacks.
Purpose Displays the administrative and operational status of all switching (nonrouting) ports or the specified port, including port blocking and port protection settings. Displays storm control suppression levels set on all interfaces or the specified interface for the specified traffic type or for broadcast traffic if no traffic type is entered. Displays the storm-control broadcast suppression discard counter with the number of packets discarded for all interfaces or the specified interface. Displays the storm-control multicast suppression discard counter with the number of packets discarded for all interfaces or the specified interface. Displays the storm-control unicast suppression discard counter with the number of packets discarded for all interfaces or the specified interface. 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 storm-control [interface-id] [broadcast | multicast | unicast] show interfaces [interface-id] counters broadcast
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. show port-security interface interface-id vlan Displays the number of secure MAC addresses configured per VLAN on the specified interface.
24-15
24-16
78-16180-02
C H A P T E R
25
Configuring CDP
This chapter describes how to configure Cisco Discovery Protocol (CDP) on the Catalyst 3750 switch. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release and the System Management Commands section in the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This chapter consists of these sections:
Understanding CDP, page 25-1 Configuring CDP, page 25-2 Monitoring and Maintaining CDP, page 25-5
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 Cluster Management Suite 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.
25-1
Configuring CDP
Configuring CDP
These sections include CDP configuration information and procedures:
Default CDP Configuration, page 25-2 Configuring the CDP Characteristics, page 25-2 Disabling and Enabling CDP, page 25-3 Disabling and Enabling CDP on an Interface, page 25-4
Feature CDP global state CDP interface state CDP timer (packet update frequency) CDP holdtime (before discarding) CDP Version-2 advertisements
Note
Steps 2 through 4 are all optional and can be performed in any order.
Command
Step 1 Step 2
Purpose Enter global configuration mode. (Optional) Set the transmission frequency of CDP updates in seconds. The range is 5 to 254; the default is 60 seconds.
25-2
78-16180-02
Chapter 25
Command
Step 3
Purpose (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. (Optional) Configure CDP to send Version-2 advertisements. This is the default state. Return to privileged EXEC mode. Verify your settings. (Optional) Save your entries in the configuration file.
Step 4
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 25-5.
Note
Switch clusters and other Cisco devices (such as Cisco IP Phones) regularly exchange CDP messages. Disabling CDP can interrupt cluster discovery and device connectivity. For more information, see Chapter 6, Clustering Switches. Beginning in privileged EXEC mode, follow these steps to disable the CDP device discovery capability: Command Purpose Enter global configuration mode. Disable CDP. Return to privileged EXEC mode.
25-3
Configuring CDP
Beginning in privileged EXEC mode, follow these steps to enable CDP when it has been disabled: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable CDP after disabling it. Return to privileged EXEC mode. This example shows how to enable CDP if it has been disabled.
Switch# configure terminal Switch(config)# cdp run Switch(config)# end
Purpose Enter global configuration mode. Specify the interface on which you are disabling CDP, and enter interface configuration mode. Disable CDP on the interface. Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id no cdp enable end copy running-config startup-config
Beginning in privileged EXEC mode, follow these steps to enable CDP on a port when it has been disabled: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Specify the interface on which you are enabling CDP, and enter interface configuration mode. Enable CDP on the interface after disabling it. Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id cdp enable end copy running-config startup-config
This example shows how to enable CDP on a port when it has been disabled.
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# cdp enable Switch(config-if)# end
25-4
78-16180-02
Chapter 25
25-5
Configuring CDP
25-6
78-16180-02
C H A P T E R
26
Configuring UDLD
This chapter describes how to configure the UniDirectional Link Detection (UDLD) protocol on the Catalyst 3750 switch. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding UDLD, page 26-1 Configuring UDLD, page 26-4 Displaying UDLD Status, page 26-7
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 disables 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 ports 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 ports on fiber-optic links. In normal and aggressive modes, UDLD works with the Layer 1 mechanisms to learn 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 ports. 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.
26-1
Configuring UDLD
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 port are misconnected and the Layer 1 mechanisms do not detect this misconnection. If the ports 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 this case, the logical link is considered undetermined, and UDLD does not disable the port. 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 ports cannot send or receive traffic. On fiber-optic or twisted-pair links, one of the ports is down while the other is up. One of the fiber strands in the cable is disconnected.
In these cases, UDLD disables the affected port. 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 detects 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.
Neighbor database maintenance UDLD learns about other UDLD-capable neighbors by periodically sending a hello packet (also called an advertisement or probe) on every active port to keep each device informed about its neighbors. When the switch receives a hello message, it caches the information until the age time (hold time or time-to-live) expires. If the switch receives a new hello message before an older cache entry ages, the switch replaces the older entry with the new one. Whenever a port is disabled and UDLD is running, whenever UDLD is disabled on a port, or whenever the switch is reset, UDLD clears all existing cache entries for the ports affected by the configuration change. UDLD sends at least one message to inform the neighbors to flush the part of their caches affected by the status change. The message is intended to keep the caches synchronized.
26-2
78-16180-02
Chapter 26
Event-driven detection and echoing UDLD relies on echoing as its detection mechanism. Whenever a UDLD device learns about a new neighbor or receives a resynchronization request from an out-of-sync neighbor, it restarts the detection window on its side of the connection and sends echo messages in reply. Because this behavior is the same on all UDLD neighbors, the sender of the echoes expects to receive an echo in reply. If the detection window ends and no valid reply message is received, the link might shut down, depending on the UDLD mode. When UDLD is in normal mode, the link might be considered undetermined and might not be shut down. When UDLD is in aggressive mode, the link is considered unidirectional, and the port is disabled.
If UDLD in normal mode is in the advertisement or in the detection phase and all the neighbor cache entries are aged out, UDLD restarts the link-up sequence to resynchronize with any potentially out-of-sync neighbors. If you enable aggressive mode when all the neighbors of a port have aged out either in the advertisement or in the detection phase, UDLD restarts the link-up sequence to resynchronize with any potentially out-of-sync neighbor. UDLD shuts down the port if, after the fast train of messages, the link state is still undetermined. Figure 26-1 shows an example of a unidirectional link condition.
Figure 26-1 UDLD Detection of a Unidirectional Link
Switch A TX RX
TX
RX Switch B
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.
98648
26-3
Configuring UDLD
Configuring UDLD
This section describes how to configure UDLD on your switch. It contains this configuration information:
Default UDLD Configuration, page 26-4 Configuration Guidelines, page 26-4 Enabling UDLD Globally, page 26-5 Enabling UDLD on an Interface, page 26-6 Resetting an Interface Disabled by UDLD, page 26-6
Feature UDLD global enable state UDLD per-port enable state for fiber-optic media UDLD per-port enable state for twisted-pair (copper) media UDLD aggressive mode
Default Setting Globally disabled Disabled on all Ethernet fiber-optic ports Disabled on all Ethernet 10/100 and 1000BASE-TX ports Disabled
Configuration Guidelines
These are the UDLD configuration guidelines:
UDLD is not supported on ATM ports. A UDLD-capable port 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.
26-4
78-16180-02
Chapter 26
configure terminal
udld {aggressive | enable | message time Specify the UDLD mode of operation: message-timer-interval} aggressiveEnables UDLD in aggressive mode on all fiber-optic ports.
enableEnables UDLD in normal mode on all fiber-optic ports 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 26-1.
message time message-timer-intervalConfigures the period of time between UDLD probe messages on ports that are in the advertisement phase and are detected to be bidirectional. The range is from 7 to 90 seconds. The global UDLD setting is automatically applied to switches that join the switch stack. This command affects fiber-optic ports only. Use the udld interface configuration command to enable UDLD on other port types. For more information, see the Enabling UDLD on an Interface section on page 26-6.
Note
Note
Return to privileged EXEC mode. Verify your entries. (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.
26-5
Configuring UDLD
Purpose Enter global configuration mode. Specify the port to be enabled for UDLD, and enter interface configuration mode. UDLD is disabled by default.
Note
When a switch joins a switch stack, it retains its interface-specific UDLD settings. udld portEnables UDLD in normal mode on the specified port. udld port aggressiveEnables UDLD in aggressive mode on the specified port. Use the no udld port interface configuration command to disable UDLD on a specified fiber-optic port. For more information about aggressive and normal modes, see the Modes of Operation section on page 26-1.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
The shutdown interface configuration command followed by the no shutdown interface configuration command restarts the disabled port. The no udld {aggressive | enable} global configuration command followed by the udld {aggressive | enable} global configuration command re-enables the disabled ports. The no udld port interface configuration command followed by the udld port [aggressive] interface configuration command re-enables the disabled fiber-optic port. The errdisable recovery cause udld global configuration command enables the timer to automatically recover from the UDLD error-disabled state, and the errdisable recovery interval interval global configuration command specifies the time to recover from the UDLD error-disabled state.
26-6
78-16180-02
Chapter 26
26-7
Configuring UDLD
26-8
78-16180-02
C H A P T E R
27
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding SPAN and RSPAN, page 27-1 Configuring SPAN and RSPAN, page 27-10 Displaying SPAN and RSPAN Status, page 27-24
27-1
Local SPAN, page 27-2 Remote SPAN, page 27-3 SPAN and RSPAN Concepts and Terminology, page 27-4 SPAN and RSPAN Interaction with Other Features, page 27-9 SPAN and RSPAN and Switch Stacks, page 27-10
Local SPAN
Local SPAN supports a SPAN session entirely within one switch; all source ports or source VLANs and destination ports reside in the same switch or switch stack. Local SPAN copies traffic from one or more source ports in any VLAN or from one or more VLANs to a destination port for analysis. For example, in Figure 27-1, all traffic on port 5 (the source port) is mirrored to port 10 (the destination port). A network analyzer on port 10 receives all network traffic from port 5 without being physically attached to port 5.
Figure 27-1 Example of Local SPAN Configuration on a Single Switch
1 2 3 4 5 6 7 8 9 10 11 12
5 4 3 2 1
8 9 10
11 12
Network analyzer
Figure 27-2 is an example of a local SPAN in a switch stack, where the source and destination ports reside on different stack members.
27-2
43580
78-16180-02
Chapter 27
2/0/15 Switch 2
Network analyzer
Switch 3
86703
Remote SPAN
RSPAN supports source ports, source VLANs, and destination ports on different switches (or different switch stacks), enabling remote monitoring of multiple switches across your network. Figure 27-3 shows source ports on Switch A and Switch B. The traffic for each RSPAN session is carried over a user-specified RSPAN VLAN that is dedicated for that RSPAN session in all participating switches. The RSPAN traffic from the source ports or VLANs is copied into the RSPAN VLAN and forwarded over trunk ports carrying the RSPAN VLAN to a destination session monitoring the RSPAN VLAN. Each RSPAN source switch must have either ports or VLANs as RSPAN sources. The destination is always a physical port, as shown on Switch C in the figure.
27-3
Switch C
RSPAN VLAN
Switch A
Switch B
SPAN Sessions
SPAN sessions (local or remote) allow you to monitor traffic on one or more ports, or one or more VLANs, and send the monitored traffic to one or more destination ports. A local SPAN session is an association of a destination port with source ports or source VLANs, all on a single network device. Local SPAN does not have separate source and destination sessions. Local SPAN sessions gather a set of ingress and egress packets specified by the user and form them into a stream of SPAN data, which is directed to the destination port. RSPAN consists of at least one RSPAN source session, an RSPAN VLAN, and at least one RSPAN destination session. You separately configure RSPAN source sessions and RSPAN destination sessions on different network devices. To configure an RSPAN source session on a device, you associate a set of source ports or source VLANs with an RSPAN VLAN. The output of this session is the stream of SPAN packets that are sent to the RSPAN VLAN. To configure an RSPAN destination session on another device, you associate the destination port with the RSPAN VLAN. The destination session collects all RSPAN VLAN traffic and sends it out the RSPAN destination port.
27-4
78-16180-02
Chapter 27
An RSPAN source session is very similar to a local SPAN session, except for where the packet stream is directed. In an RSPAN source session, SPAN packets are relabeled with the RSPAN VLAN ID and directed over normal trunk ports to the destination switch. An RSPAN destination session takes all packets received on the RSPAN VLAN, strips off the VLAN tagging, and presents them on the destination port. Its purpose is to present a copy of all RSPAN VLAN packets (except Layer 2 control packets) to the user for analysis. There can be more than one source session and more than one destination session active in the same RSPAN VLAN. There can also be intermediate switches separating the RSPAN source and destination sessions. These switches need not be capable of running RSPAN, but they must respond to the requirements of the RSPAN VLAN (see the RSPAN VLAN section on page 27-9). Traffic monitoring in a SPAN session has these restrictions:
Sources can be ports or VLANs, but you cannot mix source ports and source VLANs in the same session. The switch supports up to two source sessions; you can run both a local SPAN and an RSPAN source session in the same switch stack. The switch stack supports a total of 66 source and RSPAN destination sessions. You can have multiple destination ports in a SPAN session, but no more than 64 destination ports per switch stack. You can configure two separate SPAN or RSPAN source sessions with separate or overlapping sets of SPAN source ports and VLANs. Both switched and routed ports can be configured as SPAN sources and destinations. 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, can result in dropped or lost packets. When RSPAN is enabled, each packet being monitored is transmitted twice, once as normal traffic and once as a monitored packet. Therefore monitoring a large number of ports or VLANs could potentially generate large amounts of network traffic. 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 or VLAN for that session. The switch does not support a combination of local SPAN and RSPAN in a single session. That is, an RSPAN source session cannot have a local destination port, an RSPAN destination session cannot have a local source port, and an RSPAN destination session and an RSPAN source session that are using the same RSPAN VLAN cannot run on the same switch stack.
Monitored Traffic
SPAN sessions can monitor these traffic types:
Receive (Rx) SPANThe goal of receive (or ingress) SPAN is to monitor as much as possible all the packets received by the source interface or VLAN before any modification or processing is performed by the switch. A copy of each packet received by the source is sent to the destination port for that SPAN session. Packets that are modified because of routing or quality of service (QoS)for example, modified Differentiated Services Code Point (DSCP)are copied before modification. Features that can cause a packet to be dropped during receive processing have no effect on ingress SPAN; the destination port receives a copy of the packet even if the actual incoming packet is dropped. These features include IP standard and extended input access control lists (ACLs), ingress QoS policing, VLAN ACLs and egress QoS policing.
27-5
Transmit (Tx) SPANThe 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 is modified. Packets that are modified because of routingfor example, with modified time-to-live (TTL), MAC-address, or QoS valuesare duplicated (with the modifications) at the destination port. Features that can cause a packet to be dropped during transmit processing also affect the duplicated copy for SPAN. These features include IP standard and extended output ACLs and egress QoS policing.
BothIn a SPAN session, you can also monitor a port or VLAN for both received and sent packets. This is the default.
The default configuration for local SPAN session ports is to send all packets untagged. SPAN also does not normally monitor bridge protocol data unit (BPDU) packets and Layer 2 protocols, such as Cisco Discovery Protocol (CDP), VLAN Trunk Protocol (VTP), Dynamic Trunking Protocol (DTP), Spanning Tree Protocol (STP), and Port Aggregation Protocol (PAgP). However, when you enter the encapsulation replicate keywords when configuring a destination port, these changes occur:
Packets are sent on the destination port with the same encapsulationuntagged, IEEE 802.1Q, or Inter-Switch Link (ISL)that they had on the source port. Packets of all types, including BPDU and Layer 2 protocol packets are monitored.
Therefore, a local SPAN session with encapsulation replicate enabled can have a mixture of untagged, 802.1Q, and ISL tagged packets appear on the destination port. Switch congestion can cause packets to be dropped at ingress source ports, egress source ports, or SPAN destination ports. In general, these characteristics are independent of one another. For example:
A packet might be forwarded normally but dropped from monitoring due to an oversubscribed SPAN destination port. An ingress packet might be dropped from normal forwarding, but still appear on the SPAN destination port. An egress packet dropped because of switch congestion is also dropped from egress SPAN.
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 Rx monitor on port A and Tx monitor on port B. If a packet enters the switch through port A and is switched to port B, both incoming and outgoing packets are sent to the destination port. Both packets are the same (unless a Layer-3 rewrite occurs, in which case the packets are different because of the packet modification).
Source Ports
A source port (also called a monitored port) is a switched or routed port that you monitor for network traffic analysis. In a local SPAN session or RSPAN source session, you can monitor source ports or VLANs for traffic in one or both directions. The switch supports any number of source ports (up to the maximum number of available ports on the switch) and any number of source VLANs (up to the maximum number of VLANs supported). However, the switch supports a maximum of two sessions (local or RSPAN) with source ports or VLANs and you cannot mix ports and VLANs in a single session. A source port has these characteristics:
It can be monitored in multiple SPAN sessions. Each source port can be configured with a direction (ingress, egress, or both) to monitor.
27-6
78-16180-02
Chapter 27
It can be any port type (for example, EtherChannel, Fast Ethernet, Gigabit Ethernet, and so forth). For EtherChannel sources, you can monitor traffic for the entire EtherChannel or individually on a physical port as it participates in the port channel. It can be an access port, trunk port, routed port, or voice VLAN port. It cannot be a destination port. Source ports can be in the same or different VLANs. You can monitor multiple source ports in a single session.
Source VLANs
VLAN-based SPAN (VSPAN) is the monitoring of the network traffic in one or more VLANs. The SPAN or RSPAN source interface in VSPAN is a VLAN ID and traffic is monitored on all the ports for that VLAN. VSPAN has these characteristics:
All active ports in the source VLAN are included as source ports and can be monitored in either or both directions. On a given port, only traffic on the monitored VLAN is sent to the destination port. If a destination port belongs to a source VLAN, it is excluded from the source list and is not monitored. If ports are added to or removed from the source VLANs, the traffic on the source VLAN received by those ports is added to or removed from the sources being monitored. You cannot use filter VLANs in the same session with VLAN sources. You can monitor only Ethernet VLANs.
VLAN Filtering
When you monitor a trunk port as a source port, by default, all VLANs active on the trunk are monitored. You can limit SPAN traffic monitoring on trunk source ports to specific VLANs by using VLAN filtering.
VLAN filtering applies only to trunk ports or to voice VLAN ports. VLAN filtering applies only to port-based sessions and is not allowed in sessions with VLAN sources. When a VLAN filter list is specified, only those VLANs in the list are monitored on trunk ports or on voice VLAN access ports. SPAN traffic coming from other port types is not affected by VLAN filtering; that is, all VLANs are allowed on other ports. VLAN filtering affects only traffic forwarded to the destination SPAN port and does not affect the switching of normal traffic.
27-7
Destination Port
Each local SPAN session or RSPAN destination session must have a destination port (also called a monitoring port) that receives a copy of traffic from the source ports or VLANs and sends the SPAN packets to the user, usually a network analyzer. A destination port has these characteristics:
For a local SPAN session, the destination port must reside on the same switch stack as the source port. For an RSPAN session, it is located on the switch containing the RSPAN destination session. There is no destination port on a switch or switch stack running only an RSPAN source session. When a port is configured as a SPAN destination port, the configuration overwrites the original port configuration. When the SPAN destination configuration is removed, the port reverts to its previous configuration. If a configuration change is made to the port while it is acting as a SPAN destination port, the change does not take effect until the SPAN destination configuration had been removed. If the port was in an EtherChannel group, it is removed from the group while it is a destination port. If it was a routed port, it is no longer a routed port. It can be any Ethernet physical port. It cannot be a secure port. It cannot be a source port. It cannot be an EtherChannel group or a VLAN. It can participate in only one SPAN session at a time (a destination port in one SPAN session cannot be a destination port for a second SPAN session). When it is active, incoming traffic is disabled. The port does not transmit any traffic except that required for the SPAN session. Incoming traffic is never learned or forwarded on a destination port. If ingress traffic forwarding is enabled for a network security device, the destination port forwards traffic at Layer 2. It does not participate in any of the Layer 2 protocols (STP, VTP, CDP, DTP, PagP). A destination port that belongs to a source VLAN of any SPAN session is excluded from the source list and is not monitored. The maximum number of destination ports in a switch stack is 64.
Local SPAN and RSPAN destination ports behave differently regarding VLAN tagging and encapsulation:
For local SPAN, if the encapsulation replicate keywords are specified for the destination port, these packets appear with the original encapsulation (untagged, ISL, or 802.1Q). If these keywords are not specified, packets appear in the untagged format. Therefore, the output of a local SPAN session with encapsulation replicate enabled can contain a mixture of untagged, 802.1Q, or ISL tagged packets. For RSPAN, the original VLAN ID is lost because it is overwritten by the RSPAN VLAN identification. Therefore, all packets appear on the destination port as untagged.
27-8
78-16180-02
Chapter 27
RSPAN VLAN
The RSPAN VLAN carries SPAN traffic between RSPAN source and destination sessions. It has these special characteristics:
All traffic in the RSPAN VLAN is always flooded. No MAC address learning occurs on the RSPAN VLAN. RSPAN VLAN traffic only flows on trunk ports. RSPAN VLANs must be configured in VLAN configuration mode by using the remote-span VLAN configuration mode command. STP can run on RSPAN VLAN trunks but not on SPAN destination ports. An RSPAN VLAN cannot be a private-VLAN primary or secondary VLAN.
For VLANs 1 to 1005 that are visible to VLAN Trunking Protocol (VTP), the VLAN ID and its associated RSPAN characteristic are propagated by VTP. If you assign an RSPAN VLAN ID in the extended VLAN range (1006 to 4094), you must manually configure all intermediate switches. It is normal to have multiple RSPAN VLANs in a network at the same time with each RSPAN VLAN defining a network-wide RSPAN session. That is, multiple RSPAN source sessions anywhere in the network can contribute packets to the RSPAN session. It is also possible to have multiple RSPAN destination sessions throughout the network, monitoring the same RSPAN VLAN and presenting traffic to the user. The RSPAN VLAN ID separates the sessions.
RoutingSPAN does not monitor routed traffic. VSPAN only monitors traffic that enters or exits the switch, not traffic that is routed between VLANs. For example, if a VLAN is being Rx-monitored and the switch routes traffic from another VLAN to the monitored VLAN, that traffic is not monitored and not received on the SPAN destination port. Spanning Tree Protocol (STP)A destination port does not participate in STP while its SPAN or RSPAN session is active. The destination port can participate in STP after the SPAN or RSPAN session is disabled. On a source port, SPAN does not affect the STP status. STP can be active on trunk ports carrying an RSPAN VLAN. Cisco Discovery Protocol (CDP)A SPAN destination port does not participate in CDP while the SPAN session is active. After the SPAN session is disabled, the port again participates in CDP. VLAN Trunking Protocol (VTP)You can use VTP to prune an RSPAN VLAN between switches. VLAN and trunkingYou can modify VLAN membership or trunk settings for source or destination ports at any time. However, changes in VLAN membership or trunk settings for a destination port do not take effect until you remove the SPAN destination configuration. Changes in VLAN membership or trunk settings for a source port immediately take effect, and the respective SPAN sessions automatically adjust accordingly. EtherChannelYou can configure an EtherChannel group as a source port but not as a SPAN destination port. When a group is configured as a SPAN source, the entire group is monitored. If a physical port is added to a monitored EtherChannel group, the new port is added to the SPAN source port list. If a port is removed from a monitored EtherChannel group, it is automatically removed from the source port list. If the port is the only port in the EtherChannel group, because there are no longer any ports in the group, there is no data to monitor.
27-9
A physical port that belongs to an EtherChannel group can be configured as a SPAN source port and still be a part of the EtherChannel. In this case, data from the physical port is monitored as it participates in the EtherChannel. However, if a physical port that belongs to an EtherChannel group is configured as a SPAN destination, it is removed from the group. After the port is removed from the SPAN session, it rejoins the EtherChannel group. Ports removed from an EtherChannel group remain members of the group, but they are in the inactive or standalone state. If a physical port that belongs to an EtherChannel group is a destination port and the EtherChannel group is a source, the port is removed from the EtherChannel group and from the list of monitored ports.
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. A private-VLAN port cannot be a SPAN destination port. A secure port cannot be a SPAN destination port. For SPAN sessions, do not enable port security on ports with monitored egress when ingress forwarding is enabled on the destination port. For RSPAN source sessions, do not enable port security on any ports with monitored egress.
An 802.1x port can be a SPAN source port. You can enable 802.1x on a port that is a SPAN destination port; however, 802.1x is disabled until the port is removed as a SPAN destination. For SPAN sessions, do not enable 802.1x on ports with monitored egress when ingress forwarding is enabled on the destination port. For RSPAN source sessions, do not enable 802.1x on any ports that are egress monitored.
Default SPAN and RSPAN Configuration, page 27-11 Configuring Local SPAN, page 27-11 Configuring RSPAN, page 27-17
27-10
78-16180-02
Chapter 27
Feature SPAN state (SPAN and RSPAN) Source port traffic to monitor Encapsulation type (destination port) Ingress forwarding (destination port) VLAN filtering RSPAN VLANs
Default Setting Disabled. Both received and sent traffic ( both). Native form (untagged packets). Disabled On a trunk interface used as a source port, all VLANs are monitored. None configured.
SPAN Configuration Guidelines, page 27-11 Creating a Local SPAN Session, page 27-12 Creating a Local SPAN Session and Configuring Ingress Traffic, page 27-15 Specifying VLANs to Filter, page 27-16
You can configure a total of two local SPAN sessions or RSPAN source sessions on each switch stack. You can have a total of 66 SPAN sessions (local, RSPAN source, and RSPAN destination) on a switch stack. If a 10-Gigabit Ethernet module port is configured as a SPAN or RSPAN destination port, its link rate decreases. For SPAN sources, you can monitor traffic for a single port or VLAN or a series or range of ports or VLANs for each session. You cannot mix source ports and source VLANs within a single SPAN session. The destination port cannot be a source port; a source port cannot be a destination port. You cannot have two SPAN sessions using the same destination port. 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. Entering SPAN configuration commands does not remove previously configured SPAN parameters. You must enter the no monitor session {session_number | all | local | remote} global configuration command to delete configured SPAN parameters.
27-11
For local SPAN, outgoing packets through the SPAN destination port carry the original encapsulation headersuntagged, ISL, or IEEE 802.1Qif the encapsulation replicate keywords are specified. If the keywords are not specified, the packets are sent in native form. For RSPAN destination ports, outgoing packets are not tagged. 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 or source VLAN are enabled. You can limit SPAN traffic to specific VLANs by using the filter vlan keyword. If a trunk port is being monitored, only traffic on the VLANs specified with this keyword is monitored. By default, all VLANs are monitored on a trunk port. You cannot mix source VLANs and filter VLANs within a single SPAN session.
Purpose Enter global configuration mode. Remove any existing SPAN configuration for the session. For session_number, the range is from 1 to 66. Specify all to remove all SPAN sessions, local to remove all local sessions, or remote to remove all remote SPAN sessions.
27-12
78-16180-02
Chapter 27
Command
Step 3
Purpose Specify the SPAN session and the source port (monitored port). For session_number, the range is from 1 to 66. For interface-id , specify the source port or source VLAN to monitor.
For source interface-id, specify the source port to monitor. Valid interfaces include physical interfaces and port-channel logical interfaces (port-channel port-channel-number ). Valid port channel numbers are 1 to 12. For vlan-id, specify the source VLAN to monitor. The range is 1 to 4094 (excluding the RSPAN VLAN). A single session can include multiple sources (ports or VLANs), defined in a series of commands, but you cannot combine source ports and source VLANs in one session.
Note
(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 SPAN monitors both sent and received traffic.
Note Step 4
bothMonitor both received and sent traffic. This is the default. rx Monitor received traffic. txMonitor sent traffic. You can use the monitor session session_number source command multiple times to configure multiple source ports.
Specify the SPAN session and the destination port (monitoring port). For session_number, specify the session number entered in step 3.
Note
For local SPAN, you must use the same session number for the source and destination interfaces.
For interface-id, specify the destination port. The destination interface must be a physical port; it cannot be an EtherChannel, and it cannot be a VLAN. (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) Enter encapsulation replicate to specify that the destination interface replicates the source interface encapsulation method. If not selected, the default is to send packets in native form (untagged).
Note
You can use monitor session session_number destination command multiple times to configure multiple destination ports.
Step 5
end
27-13
Command
Step 6
Purpose Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 7
To delete a SPAN session, use the no monitor session session_number global configuration command. To remove a source or destination port or VLAN from the SPAN session, use the no monitor session session_number source {interface interface-id | vlan vlan-id} global configuration command or the no monitor session session_number destination interface interface-id global configuration command. For destination interfaces, the encapsulation replicate keywords are ignored with the no form of the command. This example shows how to set up SPAN session 1 for monitoring source port traffic to a destination port. First, any existing SPAN configuration for session 1 is deleted, and then bidirectional traffic is mirrored from source Gigabit Ethernet port 1 to destination Gigabit Ethernet port 2, retaining the encapsulation method.
Switch(config)# no monitor session 1 Switch(config)# monitor session 1 source interface gigabitethernet1/0/1 Switch(config)# monitor session 1 destination interface gigabitethernet1/0/2 encapsulation replicate Switch(config)# end
This example shows how to remove port 1 as a SPAN source for SPAN session 1:
Switch(config)# no monitor session 1 source interface gigabitethernet1/0/1 Switch(config)# end
This example shows how to disable received traffic monitoring on port 1, which was configured for bidirectional monitoring:
Switch(config)# no monitor session 1 source interface gigabitethernet1/0/1 rx
The monitoring of traffic received on port 1 is disabled, but traffic sent from this port continues to be monitored. This example shows how to remove any existing configuration on SPAN session 2, configure SPAN session 2 to monitor received traffic on all ports belonging to VLANs 1 through 3, and send it to destination Gigabit Ethernet port 2. The configuration is then modified to also monitor all traffic on all ports belonging to VLAN 10.
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# no monitor session 2 monitor session 2 source vlan 1 - 3 rx monitor session 2 destination interface gigabitethernet1/0/2 monitor session 2 source vlan 10 end
27-14
78-16180-02
Chapter 27
Note
Refer to the Creating a Local SPAN Session section on page 27-12 for details about the keywords not related to ingress traffic.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Remove any existing SPAN configuration for the session. Specify the SPAN session and the source port (monitored port).
configure terminal no monitor session {session_number | all | local | remote} monitor session session_number source {interface interface-id | vlan vlan-id } [, | -] [both | rx | tx ] monitor session session_number destination {interface interface-id [, | -] [encapsulation replicate] [ingress {dot1q vlan vlan-id | isl | untagged vlan vlan-id | vlan vlan-id}]}
Step 4
Specify the SPAN session, the destination port, the packet encapsulation, and the ingress VLAN and encapsulation. For session_number, specify the session number entered in step 3. For interface-id, specify the destination port. The destination interface must be a physical port; it cannot be an EtherChannel, and it cannot be a VLAN. (Optional) [, | -] Specify a series or range of interfaces. Enter a space before and after the comma or hyphen. (Optional) Enter encapsulation replicate to specify that the destination interface replicates the source interface encapsulation method. If not selected, the default is to send packets in native form (untagged). Enter ingress with keywords to enable ingress traffic forwarding on the destination port and specify the encapsulation type:
dot1q vlan vlan-idForward ingress packets with 802.1Q encapsulation with the specified VLAN as the default VLAN. islForward ingress packets with ISL encapsulation. untagged vlan vlan-id or vlan vlan-idForward ingress packets with untagged encapsulation type with the specified VLAN as the default VLAN.
Step 5 Step 6
end show monitor [session session_number] show running-config copy running-config startup-config
Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 7
To delete a SPAN session, use the no monitor session session_number global configuration command. To remove a source or destination port or VLAN from the SPAN session, use the no monitor session session_number source {interface interface-id | vlan vlan-id} global configuration command or the no
27-15
monitor session session_number destination interface interface-id global configuration command. For destination interfaces, the encapsulation and ingress options are ignored with the no form of the command. This example shows how to remove any existing configuration on SPAN session 2, configure SPAN session 2 to monitor received traffic on Gigabit Ethernet source port 1, and send it to destination Gigabit Ethernet port 2 with the same egress encapsulation type as the source port, and to enable ingress forwarding with 802.1Q encapsulation and VLAN 6 as the default ingress VLAN.
Switch(config)# no monitor session 2 Switch(config)# monitor session 2 source gigabitethernet1/0/1 rx Switch(config)# monitor session 2 destination interface gigabitethernet1/0/2 encapsulation replicate ingress dot1q vlan 6 Switch(config)# end
Purpose Enter global configuration mode. Remove any existing SPAN configuration for the session. For session_number, the range is from 1 to 66. Specify all to remove all SPAN sessions, local to remove all local sessions, or remote to remove all remote SPAN sessions.
Step 3
Specify the characteristics of the source port (monitored port) and SPAN session. For session_number, the range is from 1 to 66. For interface-id, specify the source port to monitor. The interface specified must already be configured as a trunk port.
Step 4
monitor session session_number filter vlan Limit the SPAN source traffic to specific VLANs. vlan-id [, | -] For session_number, enter the session number specified in Step 3. For vlan-id, the range is 1 to 4094. (Optional) Use a comma (,) to specify a series of VLANs, or use a hyphen (-) to specify a range of VLANs. Enter a space before and after the comma; enter a space before and after the hyphen.
Step 5
Specify the SPAN session and the destination port (monitoring port). For session_number, specify the session number entered in step 3. For interface-id, specify the destination port. The destination interface must be a physical port; it cannot be an EtherChannel, and it cannot be a VLAN. (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) Enter encapsulation replicate to specify that the destination interface replicates the source interface encapsulation method. If not selected, the default is to send packets in native form (untagged).
27-16
78-16180-02
Chapter 27
Command
Step 6 Step 7
Purpose Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
end show monitor [session session_number] show running-config copy running-config startup-config
Step 8
To monitor all VLANs on the trunk port, use the no monitor session session_number filter global configuration command. This example shows how to remove any existing configuration on SPAN session 2, configure SPAN session 2 to monitor traffic received on Gigabit Ethernet trunk port 2, and send traffic for only VLANs 1 through 5 and VLAN 9 to destination Gigabit Ethernet port 1.
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# no monitor session 2 monitor session 2 source interface gigabitethernet1/0/2 rx monitor session 2 filter vlan 1 - 5 , 9 monitor session 2 destination interface gigabitethernet1/0/1 end
Configuring RSPAN
This section describes how to configure RSPAN on your switch. It contains this configuration information:
RSPAN Configuration Guidelines, page 27-17 Configuring a VLAN as an RSPAN VLAN, page 27-18 Creating an RSPAN Source Session, page 27-19 Creating an RSPAN Destination Session, page 27-20 Creating an RSPAN Destination Session and Configuring Ingress Traffic, page 27-21 Specifying VLANs to Filter, page 27-23
All the items in the SPAN Configuration Guidelines section on page 27-11 apply to RSPAN. As RSPAN VLANs have special properties, you should reserve a few VLANs across your network for use as RSPAN VLANs; do not assign access ports to these VLANs. You can apply an output access control list (ACL) to RSPAN traffic to selectively filter or monitor specific packets. Specify these ACLs on the RSPAN VLAN in the RSPAN source switches. For RSPAN configuration, you can distribute the source ports and the destination ports across multiple switches in your network. RSPAN does not support BPDU packet monitoring or other Layer 2 switch protocols. The RSPAN VLAN is configured only on trunk ports and not on access ports. To avoid unwanted traffic in RSPAN VLANs, make sure that the VLAN remote-span feature is supported in all the participating switches. Access ports (including voice VLAN ports) on the RSPAN VLAN are put in the inactive state.
27-17
RSPAN VLANs are included as sources for port-based RSPAN sessions when source trunk ports have active RSPAN VLANs. RSPAN VLANs can also be sources in SPAN sessions. However, since the switch does not monitor spanned traffic, it does not support egress spanning of packets on any RSPAN VLAN identified as the destination of an RSPAN source session on the switch. You can configure any VLAN as an RSPAN VLAN as long as these conditions are met:
The same RSPAN VLAN is used for an RSPAN session in all the switches. All participating switches support RSPAN.
We recommend that you configure an RSPAN VLAN before you configure an RSPAN source or a destination session. If you enable VTP and VTP pruning, RSPAN traffic is pruned in the trunks to prevent the unwanted flooding of RSPAN traffic across the network for VLAN IDs that are lower than 1005.
Purpose Enter global configuration mode. Enter a VLAN ID to create a VLAN, or enter the VLAN ID of an existing VLAN, and enter VLAN configuration mode. The range is from 2 to 1001 and from 1006 to 4094.
Note
The RSPAN VLAN cannot be VLAN 1 (the default VLAN) or VLAN IDs 1002 through 1005 (reserved for Token Ring and FDDI VLANs).
Configure the VLAN as an RSPAN VLAN. Return to privileged EXEC mode. (Optional) Save the configuration in the configuration file.
To remove the remote SPAN characteristic from a VLAN and convert it back to a normal VLAN, use the no remote-span VLAN configuration command. This example shows how to create RSPAN VLAN 901.
Switch(config)# vlan 901 Switch(config-vlan)# remote span Switch(config-vlan)# end
27-18
78-16180-02
Chapter 27
Purpose Enter global configuration mode. Remove any existing RSPAN configuration for the session. For session_number, the range is from 1 to 66. Specify all to remove all RSPAN sessions, local to remove all local sessions, or remote to remove all remote SPAN sessions.
Step 3
Specify the RSPAN session and the source port (monitored port). For session_number, the range is from 1 to 66. Enter a source port or source VLAN for the RSPAN session:
For interface-id, specify the source port to monitor. Valid interfaces include physical interfaces and port-channel logical interfaces (port-channel port-channel-number ). Valid port channel numbers are 1 to 12. For vlan-id, specify the source VLAN to monitor. The range is 1 to 4094 (excluding the RSPAN VLAN). A single session can include multiple sources (ports or VLANs), defined in a series of commands, but you cannot combine source ports and source VLANs in one session.
Note
(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.
Step 4
bothMonitor both received and sent traffic. rx Monitor received traffic. txMonitor sent traffic.
Specify the RSPAN session and the destination RSPAN VLAN. For session_number, enter the number defined in Step 3. For vlan-id, specify the source RSPAN VLAN to monitor. Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 5 Step 6
end show monitor [session session_number] show running-config copy running-config startup-config
Step 7
To delete a SPAN session, use the no monitor session session_number global configuration command.
27-19
To remove a source port or VLAN from the SPAN session, use the no monitor session session_number source {interface interface-id | vlan vlan-id } global configuration command. To remove the RSPAN VLAN from the session, use the no monitor session session_number destination remote vlan vlan-id. This example shows how to remove any existing RSPAN configuration for session 1, configure RSPAN session 1 to monitor multiple source interfaces, and configure the destination as RSPAN VLAN 901.
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# no monitor session 1 monitor session 1 source interface gigabitethernet1/0/1 tx monitor session 1 source interface gigabitethernet1/0/2 rx monitor session 1 source interface port-channel 12 monitor session 1 destination remote vlan 901 end
Purpose Enter global configuration mode. Enter the VLAN ID of the RSPAN VLAN created from the source switch, and enter VLAN configuration mode.
Note
If both switches are participating in VTP and the RSPAN VLAN ID is from 2 to 1005, Steps 2 through 4 are not required because the RSPAN VLAN ID is propagated through the VTP network.
Identify the VLAN as the RSPAN VLAN. Return to global configuration mode. Remove any existing RSPAN configuration for the session. For session_number, the range is from 1 to 66. Specify all to remove all RSPAN sessions, local to remove all local sessions, or remote to remove all remote SPAN sessions.
Step 6
Specify the RSPAN session and the source RSPAN VLAN. For session_number, the range is from 1 to 66. For vlan-id, specify the source RSPAN VLAN to monitor.
27-20
78-16180-02
Chapter 27
Command
Step 7
Purpose Specify the RSPAN session and the destination interface. For session_number, enter the number defined in Step 6.
Note
In an RSPAN destination session, you must use the same session number for the source RSPAN VLAN and the destination port.
For interface-id, specify the destination interface. The destination interface must be a physical interface.
Note
Though visible in the command-line help string, encapsulation replicate is not supported for RSPAN. The original VLAN ID is overwritten by the RSPAN VLAN ID, and all packets appear on the destination port as untagged.
Step 8 Step 9
end show monitor [session session_number] show running-config copy running-config startup-config
Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 10
To delete a SPAN session, use the no monitor session session_number global configuration command. To remove a destination port from the SPAN session, use the no monitor session session_number destination interface interface-id global configuration command. To remove the RSPAN VLAN from the session, use the no monitor session session_number source remote vlan vlan-id. This example shows how to configure VLAN 901 as the source remote VLAN and port 1 as the destination interface:
Switch(config)# monitor session 1 source remote vlan 901 Switch(config)# monitor session 1 destination interface gigabitethernet2/0/1 Switch(config)# end
Note
Refer to the Creating an RSPAN Destination Session section on page 27-20 for details about the keywords not related to ingress traffic. This procedure assumes the RSPAN VLAN has already been configured.
Command
Step 1 Step 2
Purpose Enter global configuration mode. Remove any existing SPAN configuration for the session.
27-21
Command
Step 3
Purpose Specify the RSPAN session and the source RSPAN VLAN. For session_number, the range is from 1 to 66. For vlan-id, specify the source RSPAN VLAN to monitor.
Step 4
Specify the SPAN session, the destination port, the packet monitor session session_number encapsulation, and the ingress VLAN and encapsulation. destination {interface interface-id [, | -] [ingress {dot1q vlan vlan-id | isl | untagged For session_number, enter the number defined in Step 4. vlan vlan-id | vlan vlan-id }]} Note In an RSPAN destination session, you must use the same session number for the source RSPAN VLAN and the destination port. For interface-id, specify the destination interface. The destination interface must be a physical interface.
Note
Though visible in the command-line help string, encapsulation replicate is not supported for RSPAN. The original VLAN ID is overwritten by the RSPAN VLAN ID, and all packets appear on the destination port as untagged.
(Optional) [, | -] Specify a series or range of interfaces. Enter a space before and after the comma; enter a space before and after the hyphen. Enter ingress with additional keywords to enable ingress traffic forwarding on the destination port and to specify the encapsulation type:
dot1q vlan vlan-idForward ingress packets with 802.1Q encapsulation with the specified VLAN as the default VLAN. islForward ingress packets with ISL encapsulation. untagged vlan vlan-id or vlan vlan-idForward ingress packets with untagged encapsulation type with the specified VLAN as the default VLAN.
Step 5 Step 6
end show monitor [session session_number] show running-config copy running-config startup-config
Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 7
To delete an RSPAN session, use the no monitor session session_number global configuration command. To remove a destination port from the RSPAN session, use the no monitor session session_number destination interface interface-id global configuration command. The ingress options are ignored with the no form of the command. This example shows how to configure VLAN 901 as the source remote VLAN in RSPAN session 2, to configure Gigabit Ethernet source port 2 as the destination interface, and to enable ingress forwarding on the interface with VLAN 6 as the default ingress VLAN.
Switch(config)# monitor session 2 source remote vlan 901 Switch(config)# monitor session 2 destination interface gigabitethernet1/0/2 ingress vlan 6 Switch(config)# end
27-22
78-16180-02
Chapter 27
Purpose Enter global configuration mode. Remove any existing SPAN configuration for the session. For session_number, the range is from 1 to 66. Specify all to remove all SPAN sessions, local to remove all local sessions, or remote to remove all remote SPAN sessions.
Step 3
Specify the characteristics of the source port (monitored port) and SPAN session. For session_number, the range is from 1 to 66. For interface-id, specify the source port to monitor. The interface specified must already be configured as a trunk port.
Step 4
monitor session session_number filter vlan Limit the SPAN source traffic to specific VLANs. vlan-id [, | -] For session_number, enter the session number specified in step 3. For vlan-id, the range is 1 to 4094. (Optional) Use a comma (,) to specify a series of VLANs or use a hyphen (-) to specify a range of VLANs. Enter a space before and after the comma; enter a space before and after the hyphen.
Step 5
Specify the RSPAN session and the destination remote VLAN (RSPAN VLAN). For session_number, enter the session number specified in step 3. For vlan-id , specify the RSPAN VLAN to carry the monitored traffic to the destination port.
Step 6 Step 7
end show monitor [session session_number] show running-config copy running-config startup-config
Return to privileged EXEC mode. Verify the configuration. (Optional) Save the configuration in the configuration file.
Step 8
To monitor all VLANs on the trunk port, use the no monitor session session_number filter vlan global configuration command. This example shows how to remove any existing configuration on RSPAN session 2, configure RSPAN session 2 to monitor traffic received on trunk port 2, and send traffic for only VLANs 1 through 5 and 9 to destination RSPAN VLAN 902.
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# no monitor session 2 monitor session 2 source interface gigabitethernet1/0/2 rx monitor session 2 filter vlan 1 - 5 , 9 monitor session 2 destination remote vlan 902 end
27-23
27-24
78-16180-02
C H A P T E R
28
Configuring RMON
This chapter describes how to configure Remote Network Monitoring (RMON) on the Catalyst 3750 switch. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack. 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, refer to the System Management Commands section in the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This chapter consists of these sections:
Understanding RMON, page 28-1 Configuring RMON, page 28-2 Displaying RMON Status, page 28-6
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 as shown in Figure 28-1.
28-1
Configuring RMON
RMON alarms and events configured. SNMP configured. RMON history and statistic collection enabled.
Workstations
Workstations
Statistics (RMON group 1)Collects Ethernet statistics (including Fast Ethernet and Gigabit Ethernet statistics, depending on the switch type and supported interfaces) on an interface. History (RMON group 2)Collects a history group of statistics on Ethernet ports (including Fast Ethernet and Gigabit Ethernet statistics, depending on the switch type and supported interfaces) for a specified polling interval. Alarm (RMON group 3)Monitors a specific management information base (MIB) object for a specified interval, triggers an alarm at a specified value (rising threshold), and resets the alarm at another value (falling threshold). Alarms can be used with events; the alarm triggers an event, which can generate a log entry or an SNMP trap. Event (RMON group 9)Specifies the action to take when an event is triggered by an alarm. The action can be to generate a log entry or an SNMP trap.
Because switches supported by this software release use hardware counters for RMON data processing, the monitoring is more efficient, and little processing power is required.
Configuring RMON
These sections describe how to configure RMON on your switch:
Default RMON Configuration, page 28-3 Configuring RMON Alarms and Events, page 28-3 (required) Collecting Group History Statistics on an Interface, page 28-5 (optional) Collecting Group Ethernet Statistics on an Interface, page 28-6 (optional)
28-2
101233
78-16180-02
Chapter 28
configure terminal rmon alarm number variable interval {absolute | delta } rising-threshold value [event-number] falling-threshold value [event-number ] [owner string]
For number, specify the alarm number. The range is 1 to 65535. 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.
28-3
Configuring RMON
Command
Step 3
Purpose
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 trap community, enter the SNMP community string used for this trap.
Return to privileged EXEC mode. Verify your entries. (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, refer to 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 variables 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
28-4
78-16180-02
Chapter 28
Purpose Enter global configuration mode. Specify the interface on which to collect history, and enter interface configuration mode. Enable history collection for the specified number of buckets and time period.
configure terminal interface interface-id rmon collection history index [buckets bucket-number] [interval seconds] [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. The range is 1 to 3600. The default is 1800 seconds. (Optional) For owner ownername, enter the name of the owner of the RMON group of statistics.
Return to privileged EXEC mode. Verify your entries. Display the contents of the switch history table. (Optional) Save your entries in the configuration file.
To disable history collection, use the no rmon collection history index interface configuration command.
28-5
Configuring RMON
Purpose Enter global configuration mode. Specify the interface on which to collect statistics, and enter interface configuration mode.
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.
Return to privileged EXEC mode. Verify your entries. Display the contents of the switch statistics table. (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. This example shows how to collect RMON statistics for the owner root:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# rmon collection stats 2 owner root
Command show rmon show rmon alarms show rmon events show rmon history show rmon statistics
Purpose Displays general RMON statistics. Displays the RMON alarm table. Displays the RMON event table. Displays the RMON history table. Displays the RMON statistics table.
For information about the fields in these displays, refer to the System Management Commands section in the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2.
28-6
78-16180-02
C H A P T E R
29
Note
For complete syntax and usage information for the commands used in this chapter, refer to the Cisco IOS Configuration Fundamentals Command Reference, for Release 12.2. This chapter consists of these sections:
Understanding System Message Logging, page 29-1 Configuring System Message Logging, page 29-2 Displaying the Logging Configuration, page 29-13
Note
The syslog format is compatible with 4.3 BSD UNIX. 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 active consoles 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 consoles and each of the destinations. You can time-stamp log messages or set the syslog source address to enhance real-time debugging and management. For information on possible messages, refer to the system message guide for this release.
29-1
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 on a standalone switch, and in the case of a switch stack, on the stack master. If a standalone switch or the stack master fails, the log is lost unless you had saved it to flash memory. You can remotely monitor system messages by viewing the logs on a syslog server or by accessing the switch through Telnet or through the console port. In a switch stack, all stack member consoles provide the same console output.
System Log Message Format, page 29-2 Default System Message Logging Configuration, page 29-4 Disabling Message Logging, page 29-4 (optional) Setting the Message Display Destination Device, page 29-5 (optional) Synchronizing Log Messages, page 29-6 (optional) Enabling and Disabling Time Stamps on Log Messages, page 29-7 (optional) Enabling and Disabling Sequence Numbers in Log Messages, page 29-8 (optional) Defining the Message Severity Level, page 29-9 (optional) Limiting Syslog Messages Sent to the History Table and to SNMP, page 29-10 (optional) Configuring UNIX Syslog Servers, page 29-11 (optional)
29-2
78-16180-02
Chapter 29
Description 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 29-8.
timestamp formats: mm/dd hh:mm:ss or hh:mm:ss (short uptime) or d h (long uptime) facility severity MNEMONIC description hostname-n
Date and time of the message or event. This information appears only if the service timestamps log [datetime | log] global configuration command is configured. For more information, see the Enabling and Disabling Time Stamps on Log Messages section on page 29-7.
The facility to which the message refers (for example, SNMP, SYS, and so forth). For a list of supported facilities, see Table 29-4 on page 29-13. Single-digit code from 0 to 7 that is the severity of the message. For a description of the severity levels, see Table 29-3 on page 29-10. Text string that uniquely describes the message. Text string containing detailed information about the event being reported. Host name of a stack member and its switch number in the stack. Though the stack master is a stack member, it does not append its host name to system messages. This example shows a partial switch system message for a stack master and a stack member (host name Switch-2 ):
00:00:46: %LINK-3-UPDOWN: Interface Port-channel1, changed state to up 00:00:47: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/1, changed state to up 00:00:47: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to up 00:00:48: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down 00:00:48: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/1, changed state to down 2 *Mar 1 18:46:11: %SYS-5-CONFIG_I: Configured from console by vty2 (10.34.195.36) 18:47:02: %SYS-5-CONFIG_I: Configured from console by vty2 (10.34.195.36) *Mar 1 18:48:50.483 UTC: %SYS-5-CONFIG_I: Configured from console by vty2 (10.34.195.36) 00:00:46: %LINK-3-UPDOWN: Interface 00:00:47: %LINK-3-UPDOWN: Interface 00:00:47: %LINK-3-UPDOWN: Interface 00:00:48: %LINEPROTO-5-UPDOWN: Line (Switch-2) 00:00:48: %LINEPROTO-5-UPDOWN: Line state to down 2 (Switch-2) Port-channel1, changed state to up (Switch-2) GigabitEthernet2/0/1, changed state to up (Switch-2) GigabitEthernet2/0/2, changed state to up (Switch-2) protocol on Interface Vlan1, changed state to down protocol on Interface GigabitEthernet2/0/1, changed
29-3
Feature System message logging to the console Console severity Logging file configuration Logging buffer size Logging history size Time stamps Synchronous logging Logging server Syslog server IP address Server facility Server severity
Default Setting Enabled. Debugging (and numerically lower levels; see Table 29-3 on page 29-10). No filename specified. 4096 bytes. 1 message. Disabled. Disabled. Disabled. None configured. Local7 (see Table 29-4 on page 29-13). Informational (and numerically lower levels; see Table 29-3 on page 29-10).
Purpose Enter global configuration mode. Disable message logging. Return to privileged EXEC mode. Verify your entries.
Step 5
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.
29-4
78-16180-02
Chapter 29
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 29-6. To re-enable message logging after it has been disabled, use the logging on global configuration command.
Purpose Enter global configuration mode. Log messages to an internal buffer on a standalone switch or, in the case of a switch stack, on the stack master. The default buffer size is 4096. The range is 4096 to 2147483647 bytes. If the standalone switch or the stack master fails, the log file is lost unless you previously saved it to flash memory. See Step 4.
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.
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 29-11.
Step 4
Store log messages in a file in flash memory on a standalone switch or, in the case of a switch stack, on the stack master.
For filename, enter the log message filename. (Optional) For max-file-size, specify the maximum logging file size. The range is 4096 to 2147483647. The default is 4096 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 29-3 on page 29-10. By default, the log file receives debugging messages and numerically lower levels.
Step 5
end
29-5
Command
Step 6
Purpose 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.
terminal monitor
Step 7 Step 8
Verify your entries. (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.
29-6
78-16180-02
Chapter 29
Beginning in privileged EXEC mode, follow these steps to configure synchronous logging. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the line to be configured for synchronous logging of 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
(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 range is 0 to 2147483647. The default is 20.
Return to privileged EXEC mode. Verify your entries. (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.
29-7
Beginning in privileged EXEC mode, follow these steps to enable time-stamping of log messages. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable log time stamps. The first command enables time stamps on log messages, showing the time since the system was rebooted.
service timestamps log datetime [msec] [localtime] The second command enables time stamps on log messages. [show-timezone] Depending on the options selected, the time stamp can include the date, time in milliseconds relative to the local time-zone, and the time zone name.
Step 3 Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable time stamps 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) (Switch-2)
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 (Switch-2)
Purpose Enter global configuration mode. Enable sequence numbers. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal service sequence-numbers end show running-config copy running-config startup-config
To disable sequence numbers, use the no service sequence-numbers global configuration command.
29-8
78-16180-02
Chapter 29
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) (Switch-2)
Purpose Enter global configuration mode. Limit messages logged to the console. By default, the console receives debugging messages and numerically lower levels (see Table 29-3 on page 29-10).
Step 3
Limit messages logged to the terminal lines. By default, the terminal receives debugging messages and numerically lower levels (see Table 29-3 on page 29-10).
Step 4
Limit messages logged to the syslog servers. By default, syslog servers receive informational messages and numerically lower levels (see Table 29-3 on page 29-10). For complete syslog server configuration steps, see the Configuring UNIX Syslog Servers section on page 29-11.
Step 5 Step 6
Step 7
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 29-3 describes the level keywords. It also lists the corresponding UNIX syslog definitions from the most severe level to the least severe level.
29-9
Level Keyword emergencies alerts critical errors warnings notifications informational debugging
Level 0 1 2 3 4 5 6 7
Description System unstable Immediate action needed Critical conditions Error conditions Warning conditions Normal but significant condition Informational messages only Debugging messages
Syslog Definition LOG_EMERG LOG_ALERT LOG_CRIT LOG_ERR LOG_WARNING LOG_NOTICE LOG_INFO LOG_DEBUG
Error messages about software or hardware malfunctions, displayed at levels warnings through emergencies. These types of messages mean that the functionality of the switch is affected. For information on how to recover from these malfunctions, refer to the system message guide for this release. Output from the debug commands, displayed at the debugging level. Debug commands are typically used only by the Technical Assistance Center. Interface up or down transitions and system restart messages, displayed at the notifications level. This message is only for information; switch functionality is not affected. Reload requests and low-process stack messages, displayed at the informational level. This message is only for information; switch functionality is not affected.
29-10
78-16180-02
Chapter 29
Beginning in privileged EXEC mode, follow these steps to change the level and history table size defaults. This procedure is optional. Command
Step 1 Step 2
Change the default level of syslog messages stored in the history file and sent to the SNMP server. See Table 29-3 on page 29-10 for a list of level keywords. By default, warnings, errors, critical, alerts, and emergencies messages are sent.
Step 3
Specify the number of syslog messages that can be stored in the history table. The default is to store one message. The range is 0 to 500 messages. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Table 29-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.
29-11
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 decide what options must be added to or removed from the syslog command line to enable logging of remote syslog messages. Add a line such as the following to the file /etc/syslog.conf:
local7.debug /usr/adm/logs/cisco.log
Step 1
The local7 keyword specifies the logging facility to be used; see Table 29-4 on page 29-13 for information on the facilities. The debug keyword specifies the syslog level; see Table 29-3 on page 29-10 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
For more information, see the man syslog.conf and man syslogd commands on your UNIX system.
Purpose Enter global configuration mode. 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
Limit messages logged to the syslog servers. Be default, syslog servers receive informational messages and lower. See Table 29-3 on page 29-10 for level keywords.
Step 4
Configure the syslog facility. See Table 29-4 on page 29-13 for facility-type keywords. The default is local7. Return to privileged EXEC mode.
Step 5
end
29-12
78-16180-02
Chapter 29
Command
Step 6 Step 7
Purpose Verify your entries. (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 29-4 lists the UNIX system facilities supported by the software. For more information about these facilities, consult the operators manual for your UNIX operating system.
Table 29-4 Logging Facility-Type Keywords
Facility Type Keyword auth cron daemon kern local0-7 lpr mail news sys9-14 syslog user uucp
Description Authorization system Cron facility System daemon Kernel Locally defined messages Line printer system Mail system USENET news System use System log User process UNIX-to-UNIX copy system
29-13
29-14
78-16180-02
C H A P T E R
30
Configuring SNMP
This chapter describes how to configure the Simple Network Management Protocol (SNMP) on the Catalyst 3750 switch. Unless otherwise noted, the term switch refers to a standalone switch and a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the switch command reference for this release and to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This chapter consists of these sections:
Understanding SNMP, page 30-1 Configuring SNMP, page 30-6 Displaying SNMP Status, page 30-17
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 management information base (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 managers 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 Transmission Control Protocol (TCP) connection, loss of connection to a neighbor, or other significant events. On the Catalyst 3750, the stack master handles the SNMP requests and traps for the whole switch stack. The stack master transparently manages any requests or traps that are related to all stack members. When a new stack master is elected, the new master continues to handle SNMP requests and traps as configured on the previous stack master, assuming that IP connectivity to the SNMP management stations is still in place after the new master has taken control. For more information about switch stacks, see Chapter 5, Managing Switch Stacks.
30-1
Configuring SNMP
SNMP Versions, page 30-2 SNMP Manager Functions, page 30-3 SNMP Agent Functions, page 30-4 SNMP Community Strings, page 30-4 Using SNMP to Access MIB Variables, page 30-5 SNMP Notifications, page 30-5 SNMP ifIndex MIB Object Values, page 30-6
SNMP Versions
This software release supports these SNMP versions:
SNMPv1The 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:
SNMPv2Version 2 of the Simple Network Management Protocol, a Draft Internet Standard,
SNMPv3Version 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 integrityensuring that a packet was not tampered with in transit Authenticationdetermining that the message is from a valid source Encryptionmixing the contents of a package to prevent it from being read by an unauthorized
source.
Note
To select encryption, enter the priv keyword. This keyword is available only when the cryptographic (encrypted) software image is installed.
Both SNMPv1 and SNMPv2C use a community-based form of security. The community of managers able to access the agents 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.
30-2
78-16180-02
Chapter 30
Table 30-1 identifies the characteristics of the different combinations of security models and levels.
Table 30-1 SNMP Security Models and Levels
Encryption No No No No DES
Result Uses a community string match for authentication. Uses a community string match for authentication. Uses a username match for authentication. Provides authentication based on the HMAC-MD5 or HMAC-SHA algorithms. Provides authentication based on the HMAC-MD5 or HMAC-SHA algorithms. Provides DES 56-bit encryption in addition to authentication based on the CBC-DES (DES-56) standard.
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, and SNMPv2C, and SNMPv3 protocols.
Description Retrieves a value from a specific variable. Retrieves a value from a variable within a table.1 Retrieves large blocks of data, such as multiple rows in a table, that would otherwise require the transmission of many small blocks of data. Replies to a get-request, get-next-request, and set-request sent by an NMS. Stores a value in a specific variable. 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.
30-3
Configuring SNMP
Get a MIB variableThe SNMP agent begins this function in response to a request from the NMS. The agent retrieves the value of the requested MIB variable and responds to the NMS with that value. Set a MIB variableThe SNMP agent begins this function in response to a message from the NMS. The SNMP agent changes the value of the MIB variable to the value requested by the NMS.
The SNMP agent also sends unsolicited trap messages to notify an NMS that a significant event has occurred on the agent. Examples of trap conditions include, but are not limited to, when a port or module goes up or down, when spanning-tree topology changes occur, and when authentication failures occur.
Read-only (RO)Gives read access to authorized management stations to all objects in the MIB except the community strings, but does not allow write access Read-write (RW)Gives read and write access to authorized management stations to all objects in the MIB, but does not allow access to the community strings
Note
When a cluster is created, the command switch manages the exchange of messages among member switches and the SNMP application. The Cluster Management 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 6, Clustering Switches.
30-4
78-16180-02
Chapter 30
NMS
Network device
SNMP Manager
Get-response, traps
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.
Note
SNMPv1 does not support 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.
43581
30-5
Configuring SNMP
Interface Type SVI1 EtherChannel Loopback Tunnel Physical (such as Gigabit Ethernet or SFP -module interfaces) Null
1. SVI = switch virtual interface 2. SFP = small form-factor pluggable
2
Note
Configuring SNMP
This section describes how to configure SNMP on your switch. It contains this configuration information:
Default SNMP Configuration, page 30-7 SNMP Configuration Guidelines, page 30-7 Disabling the SNMP Agent, page 30-8 Configuring Community Strings, page 30-8 Configuring SNMP Groups and Users, page 30-10 Configuring SNMP Notifications, page 30-12 Setting the Agent Contact and Location Information, page 30-15 Limiting TFTP Servers Used Through SNMP, page 30-16 SNMP Examples, page 30-16
30-6
78-16180-02
Chapter 30
Feature SNMP agent SNMP trap receiver SNMP traps SNMP version SNMPv3 authentication SNMP notification type
Default Setting Disabled1. None configured. None enabled except the trap for TCP connections (tty). If no version keyword is present, the default is Version 1. If no keyword is entered, the default is the noauth (noAuthNoPriv) security level. If no type is specified, all notifications are sent.
1. This is the default when the switch starts and the startup configuration does not have any snmp-server global configuration commands.
When configuring an SNMP group, do not specify a notify view. The snmp-server host global configuration command autogenerates a notify view for the user and then adds it to the group associated with that user. Modifying the group's notify view affects all users associated with that group. Refer to the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 for information about when you should configure notify views. To configure a remote user, specify the IP address or port number for the remote SNMP agent of the device where the user resides. Before you configure remote users for a particular agent, configure the SNMP engine ID, using the snmp-server engineID global configuration with the remote option. The remote agent's SNMP engine ID and user password are used to compute the authentication and privacy digests. If you do not configure the remote engine ID first, the configuration command fails. When configuring SNMP informs, you need to configure the SNMP engine ID for the remote agent in the SNMP database before you can send proxy requests or informs to it. If a local user is not associated with a remote host, the switch does not send informs for the auth (authNoPriv) and the priv (authPriv) authentication levels.
30-7
Configuring SNMP
Changing the value of the SNMP engine ID has important side effects. A user's password (entered on the command line) is converted to an MD5 or SHA security digest based on the password and the local engine ID. The command-line password is then destroyed, as required by RFC 2274. Because of this deletion, if the value of the engine ID changes, the security digests of SNMPv3 users become invalid, and you need to reconfigure SNMP users by using the snmp-server user username global configuration command. Similar restrictions require the reconfiguration of community strings when the engine ID changes.
Purpose Enter global configuration mode. Disable the SNMP agent operation. Return to privileged EXEC mode. Verify your entries. (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.
An access list of IP addresses of the SNMP managers that are permitted to use the community string to gain access to the agent A MIB view, which defines the subset of all MIB objects accessible to the given community Read and write or read-only permission for the MIB objects accessible to the community
30-8
78-16180-02
Chapter 30
Beginning in privileged EXEC mode, follow these steps to configure a community string on the switch: Command
Step 1 Step 2
configure terminal snmp-server community string [view 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.
Step 3
(Optional) If you specified an IP standard access list number in 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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (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.
30-9
Configuring SNMP
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
configure terminal
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 has 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.
30-10
78-16180-02
Chapter 30
Command
Step 3
Purpose
snmp-server group groupname {v1 | v2c | v3 Configure a new SNMP group on the remote device. {auth | noauth | priv}} [read readview] For groupname, specify the name of the group. [write writeview ] [notify notifyview ] [access Specify a security model: access-list]
v1 is the least secure of the possible security models. v2c is the second least secure model. It allows
authentication level: auth Enables the Message Digest 5 (MD5) and the Secure Hash Algorithm (SHA) packet authentication. noauthThe noAuthNoPriv security level. This is the default if no keyword is specified. priv Enables Data Encryption Standard (DES) packet encryption (also called privacy).
Note
The priv keyword is available only when the cryptographic software image is installed. (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.
30-11
Configuring SNMP
Command
Step 4
Purpose
Add a new user for an SNMP group. snmp-server user username groupname {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 | The groupname is the name of the group to which the user is sha } auth-password]} 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).
Step 5 Step 6 Step 7
(Optional) Enter access access-list with a string (not to exceed 64 characters) that is the name of the access list.
Return to privileged EXEC mode. Verify your entries. (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 30-5 describes the supported switch traps (notification types). You can enable any or all of these traps and configure a trap manager to receive them.
30-12
78-16180-02
Chapter 30
Notification Type Keyword bgp bridge cluster config config-copy entity envmon flash
Description Generates BGP state change traps. This option is only available when the enhanced multilayer image is installed. Generates STP bridge MIB traps. Generates a trap when the cluster configuration changes. Generates a trap for SNMP configuration changes. Generates a trap for SNMP copy configuration changes. Generates a trap for SNMP entity changes. Generates environmental monitor traps. You can enable any or all of these environmental traps: fan, shutdown, supply, temperature. Generates SNMP FLASH notifications. You can optionally enable notification for flash insertion or removal, which would cause a trap to be issued whenever a switch in the stack is removed or inserted (physical removal, power cycle, or reload). Generates entity FRU control traps. In the switch stack, this trap refers to the insertion or removal of a switch in the stack. Generates a trap for Hot Standby Router Protocol (HSRP) changes. Generates a trap for IP multicast routing changes. Generates a trap for MAC address notifications. Generates a trap for Multicast Source Discovery Protocol (MSDP) changes. Generates a trap for Protocol-Independent Multicast (PIM) changes. You can enable any or all of these traps: invalid PIM messages, neighbor changes, and rendezvous point (RP)-mapping changes. 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. Generates a trap for the SNMP Response Time Reporter (RTR). Generates a trap for SNMP-type notifications for authentication, cold start, warm start, link up or link down. Generates SNMP STP Extended MIB traps. Generates SNMP syslog traps. Generates a trap for TCP connections. This trap is enabled by default. Generates a trap for SNMP VLAN membership changes. Generates SNMP VLAN created traps. Generates SNMP VLAN deleted traps. Generates a trap for VLAN Trunking Protocol (VTP) changes.
port-security
You can use the snmp-server host global configuration command to a specific host to receive the notification types listed in Table 30-5.
30-13
Configuring SNMP
Beginning in privileged EXEC mode, follow these steps to configure the switch to send traps or informs to a host: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the engine ID for the remote host. Configure an SNMP user to be associated with the remote host created in Step 2.
Note
configure terminal snmp-server engineID remote ip-address engineid-string snmp-server user username groupname {remote host [udp-port port]} {v1 [access access-list] | v2c [access access-list] | v3 [encrypted ] [access access-list] [auth {md5 | sha} auth-password ]} snmp-server group groupname {v1 | v2c | v3 {auth | noauth | priv }} [read readview] [write writeview ] [notify notifyview ] [access access-list] snmp-server host host-addr [informs | traps] [version {1 | 2c | 3 {auth | noauth | priv }}] community-string [notification-type]
You cannot configure a remote user for an address without first configuring the engine ID for the remote host. Otherwise, you receive an error message, and the command is not executed.
Step 4
Step 5
For host-addr, specify the name or Internet address of the host (the targeted recipient). (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 does not support informs. (Optional) For Version 3, select authentication level auth, noauth, or priv. The priv keyword is available only when the cryptographic software image is installed. 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 30-5 on page 30-13. If no type is specified, all notifications are sent.
Step 6
Enable the switch to send traps or informs and specify the type of notifications to be sent. For a list of notification types, see Table 30-5 on page 30-13, or enter 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
(Optional) Specify the source interface, which provides the IP address for the trap message. This command also sets the source IP address for informs. (Optional) Establish the message queue length for each trap host. The range is 1 to 1000; the default is 10.
Step 8
30-14
78-16180-02
Chapter 30
Command
Step 9 Step 10 Step 11 Step 12
Purpose (Optional) Define how often to resend trap messages. The range is 1 to 1000; the default is 30 seconds. Return to privileged EXEC mode. Verify your entries. (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.
Purpose Enter global configuration mode. Set the system contact string. For example:
snmp-server contact Dial System Operator at beeper 21555.
Step 3
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
30-15
Configuring SNMP
Purpose Enter global configuration mode. Limit TFTP servers used for configuration file copies through 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
Create a standard access 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 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.
Step 4 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (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)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# snmp-server snmp-server snmp-server snmp-server snmp-server community public enable traps vtp host 192.180.1.27 version 2c public host 192.180.1.111 version 1 public host 192.180.1.33 public
30-16
78-16180-02
Chapter 30
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)# Switch(config)# Switch(config)# mypassword Switch(config)# Switch(config)# Switch(config)# Switch(config)# snmp-server engineID remote 192.180.1.27 00000063000100a1c0b4011b snmp-server group authgroup v3 auth snmp-server user authuser authgroup remote 192.180.1.27 v3 auth md5 snmp-server snmp-server snmp-server snmp-server user authuser authgroup v3 auth md5 mypassword host 192.180.1.27 informs version 3 auth authuser config enable traps inform retries 0
Feature show snmp show snmp engineID [local | remote] show snmp group show snmp pending show snmp sessions show snmp user
Default Setting Displays SNMP statistics. Displays information on the local SNMP engine and all remote engines that have been configured on the device. Displays information on each SNMP group on the network. Displays information on pending SNMP requests. Displays information on the current SNMP sessions. Displays information on each SNMP user name in the SNMP users table.
30-17
Configuring SNMP
Note
Though visible in the command-line help strings, the snmp-server enable informs global configuration command is not supported. To enable the sending of SNMP inform notifications, use the snmp-server enable traps global configuration command combined with the snmp-server host host-addr informs global configuration command.
30-18
78-16180-02
C H A P T E R
31
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2
Understanding ACLs, page 31-1 Configuring IP ACLs, page 31-6 Creating Named MAC Extended ACLs, page 31-27 Configuring VLAN Maps, page 31-30 Using VLAN Maps with Router ACLs, page 31-37 Displaying ACL Configuration, page 31-40
Understanding ACLs
Packet filtering can help limit network traffic and restrict network use by certain users or devices. ACLs filter traffic as it passes through a router or switch and permit or deny packets crossing specified interfaces or VLANs. An ACL is a sequential collection of permit and deny conditions that apply to packets. When a packet is received on an interface, the switch compares the fields in the packet against any applied ACLs to verify that the packet has the required permissions to be forwarded, based on the criteria specified in the access lists. One by one, it tests packets against the conditions in an access list. The first match decides whether the switch accepts or rejects the packets. Because the switch stops testing after the first match, the order of conditions in the list is critical. If no conditions match, the switch rejects the packet. If there are no restrictions, the switch forwards the packet; otherwise, the switch drops the packet. The switch can use ACLs on all packets it forwards, including packets bridged within a VLAN.
31-1
You configure access lists on a router or Layer 3 switch to provide basic security for your network. If you do not configure ACLs, all packets passing through the switch could be allowed onto all parts of the network. You can use ACLs to control which hosts can access different parts of a network or to decide which types of traffic are forwarded or blocked at router interfaces. For example, you can allow e-mail traffic to be forwarded but not Telnet traffic. ACLs can be configured to block inbound traffic, outbound traffic, or both. An ACL contains an ordered list of access control entries (ACEs). Each ACE specifies permit or deny and a set of conditions the packet must satisfy in order to match the ACE. The meaning of permit or deny depends on the context in which the ACL is used. The switch supports IP ACLs and Ethernet (MAC) ACLs:
IP ACLs filter IP traffic, including TCP, User Datagram Protocol (UDP), Internet Group Management Protocol (IGMP), and Internet Control Message Protocol (ICMP). Ethernet ACLs filter non-IP traffic.
This switch also supports quality of service (QoS) classification ACLs. For more information, see the Classification Based on QoS ACLs section on page 32-7. This section includes information on these topics:
Supported ACLs, page 31-2 Handling Fragmented and Unfragmented Traffic, page 31-5 ACLs and Switch Stacks, page 31-6
Supported ACLs
The switch supports three applications of ACLs to filter traffic:
Port ACLs access-control traffic entering a Layer 2 interface. The switch does not support port ACLs in the outbound direction. You can apply only one IP access list and one MAC access list to a Layer 2 interface. Router ACLs access-control routed traffic between VLANs and are applied to Layer 3 interfaces in a specific direction (inbound or outbound). VLAN ACLs or VLAN maps access-control all packets (bridged and routed). You can use VLAN maps to filter traffic between devices in the same VLAN. VLAN maps are configured to provide access-control based on Layer 3 addresses for IP. Unsupported protocols are access-controlled through MAC addresses using Ethernet ACEs. After a VLAN map is applied to a VLAN, all packets (routed or bridged) entering the VLAN are checked against the VLAN map. Packets can either enter the VLAN through a switch port or through a routed port after being routed.
You can use input port ACLs, router ACLs, and VLAN maps on the same switch. However, a port ACL takes precedence over a router ACL or VLAN map.
When both an input port ACL and a VLAN map are applied, incoming packets received on ports with a port ACL applied are filtered by the port ACL. Other packets are filtered by the VLAN map When an input router ACL and input port ACL exist in an switch virtual interface (SVI), incoming packets received on ports to which a port ACL is applied are filtered by the port ACL. Incoming routed IP packets received on other ports are filtered by the router ACL. Other packets are not filtered. When an output router ACL and input port ACL exist in an SVI, incoming packets received on the ports to which a port ACL is applied are filtered by the port ACL. Outgoing routed IP packets are filtered by the router ACL. Other packets are not filtered.
31-2
78-16180-02
Chapter 31
When a VLAN map, input router ACL, and input port ACL exist in an SVI, incoming packets received on the ports to which a port ACL is applied are only filtered by the port ACL. Incoming routed IP packets received on other ports are filtered by both the VLAN map and the router ACL. Other packets are filtered only by the VLAN map. When a VLAN map, output router ACL, and input port ACL exist in an SVI, incoming packets received on the ports to which a port ACL is applied are only filtered by the port ACL. Outgoing routed IP packets are filtered by both the VLAN map and the router ACL. Other packets are filtered only by the VLAN map.
Port ACLs
Port ACLs are ACLs that are applied to Layer 2 interfaces on a switch. Port ACLs are supported only on physical interfaces and not on EtherChannel interfaces and can be applied only on interfaces in the inbound direction. These access lists are supported on Layer 2 interfaces:
Standard IP access lists using source addresses Extended IP access lists using source and destination addresses and optional protocol type information MAC extended access lists using source and destination MAC addresses and optional protocol type information
The switch examines ACLs associated with all inbound features configured on a given interface and permits or denies packet forwarding based on how the packet matches the entries in the ACL. In this way, ACLs are used to control access to a network or to part of a network. Figure 31-1 is an example of using port ACLs to control access to a network when all workstations are in the same VLAN. ACLs applied at the Layer 2 input would allow Host A to access the Human Resources network, but prevent Host B from accessing the same network. Port ACLs can only be applied to Layer 2 interfaces in the inbound direction.
Figure 31-1 Using ACLs to Control Traffic to a Network
Host A
Host B
= ACL denying traffic from Host B and permitting traffic from Host A = Packet
31-3
When you apply a port ACL to a trunk port, the ACL filters traffic on all VLANs present on the trunk port. When you apply a port ACL to a port with voice VLAN, the ACL filters traffic on both data and voice VLANs. With port ACLs, you can filter IP traffic by using IP access lists and non-IP traffic by using MAC addresses. You can filter both IP and non-IP traffic on the same Layer 2 interface by applying both an IP access list and a MAC access list to the interface.
Note
You cannot apply more than one IP access list and one MAC access list to a Layer 2 interface. If an IP access list or MAC access list is already configured on a Layer 2 interface and you apply a new IP access list or MAC access list to the interface, the new ACL replaces the previously configured one.
Router ACLs
You can apply router ACLs on switch virtual interfaces (SVIs), which are Layer 3 interfaces to VLANs; on physical Layer 3 interfaces; and on Layer 3 EtherChannel interfaces. You apply router ACLs on interfaces for specific directions (inbound or outbound). You can apply one router ACL in each direction on an interface. One ACL can be used with multiple features for a given interface, and one feature can use multiple ACLs. When a single router ACL is used by multiple features, it is examined multiple times.
Standard IP access lists use source addresses for matching operations. Extended IP access lists use source and destination addresses and optional protocol type information for matching operations.
As with port ACLs, the switch examines ACLs associated with features configured on a given interface. However, router ACLs are supported in both directions. As packets enter the switch on an interface, ACLs associated with all inbound features configured on that interface are examined. After packets are routed and before they are forwarded to the next hop, all ACLs associated with outbound features configured on the egress interface are examined. ACLs permit or deny packet forwarding based on how the packet matches the entries in the ACL, and can be used to control access to a network or to part of a network. In Figure 31-1, ACLs applied at the router input allow Host A to access the Human Resources network, but prevent Host B from accessing the same network.
VLAN Maps
VLAN ACLs or VLAN maps can access-control all traffic. You can apply VLAN maps to all packets that are routed into or out of a VLAN or are bridged within a VLAN in the stack. VLAN maps are used for security packet filtering. VLAN maps are not defined by direction (input or output). You can configure VLAN maps to match Layer 3 addresses for IP traffic. All non-IP protocols are access-controlled through MAC addresses and Ethertype using MAC VLAN maps. (IP traffic is not access controlled by MAC VLAN maps.) You can enforce VLAN maps only on packets going through the switch; you cannot enforce VLAN maps on traffic between hosts on a hub or on another switch connected to this switch. With VLAN maps, forwarding of packets is permitted or denied, based on the action specified in the map. Figure 31-2 illustrates how a VLAN map is applied to deny a specific type of traffic from Host A in VLAN 10 from being forwarded. You can apply only one VLAN map to a VLAN.
31-4
78-16180-02
Chapter 31
Permit ACEs that check the Layer 3 information in the fragment (including protocol type, such as TCP, UDP, and so on) are considered to match the fragment regardless of what the missing Layer 4 information might have been. Deny ACEs that check Layer 4 information never match a fragment unless the fragment contains Layer 4 information.
Consider access list 102, configured with these commands, applied to three fragmented packets:
Switch(config)# Switch(config)# Switch(config)# Switch(config)# access-list access-list access-list access-list 102 102 102 102 permit tcp any host 10.1.1.1 eq smtp deny tcp any host 10.1.1.2 eq telnet permit tcp any host 10.1.1.2 deny tcp any any
Note
In the first and second ACEs in the examples, the eq keyword after the destination address means to test for the TCP-destination-port well-known numbers equaling Simple Mail Transfer Protocol (SMTP) and Telnet, respectively.
Packet A is a TCP packet from host 10.2.2.2., port 65000, going to host 10.1.1.1 on the SMTP port. If this packet is fragmented, the first fragment matches the first ACE (a permit) as if it were a complete packet because all Layer 4 information is present. The remaining fragments also match the first ACE, even though they do not contain the SMTP port information, because the first ACE only checks Layer 3 information when applied to fragments. The information in this example is that the packet is TCP and that the destination is 10.1.1.1. Packet B is from host 10.2.2.2, port 65001, going to host 10.1.1.2 on the Telnet port. If this packet is fragmented, the first fragment matches the second ACE (a deny) because all Layer 3 and Layer 4 information is present. The remaining fragments in the packet do not match the second ACE because they are missing Layer 4 information. Instead, they match the third ACE (a permit).
101353
31-5
Because the first fragment was denied, host 10.1.1.2 cannot reassemble a complete packet, so packet B is effectively denied. However, the later fragments that are permitted will consume bandwidth on the network and resources of host 10.1.1.2 as it tries to reassemble the packet.
Fragmented packet C is from host 10.2.2.2, port 65001, going to host 10.1.1.3, port ftp. If this packet is fragmented, the first fragment matches the fourth ACE (a deny). All other fragments also match the fourth ACE because that ACE does not check any Layer 4 information and because Layer 3 information in all fragments shows that they are being sent to host 10.1.1.3, and the earlier permit ACEs were checking different hosts.
It processes the ACL configuration and propagates the information to all stack members. It distributes the ACL information to any switch that joins the stack. If packets must be forwarded by software for any reason (for example, not enough hardware resources), the master switch forwards the packets only after applying ACLs on the packets. It programs its hardware with the ACL information it processes. They receive the ACL information from the master switch and program their hardware. They act as standby switches, ready to take over the role of the stack master if the existing master were to fail and they were to be elected as the new stack master.
When a stack master fails and a new stack master is elected, the newly elected master reparses the backed up running configuration. (See Chapter 5, Managing Switch Stacks.) The ACL configuration that is part of the running configuration is also reparsed during this step. The new stack master distributes the ACL information to all switches in the stack.
Configuring IP ACLs
Configuring IP ACLs on the switch is the same as configuring IP ACLs on other Cisco switches and routers. The process is briefly described here. For more detailed information on configuring ACLs, refer to the Configuring IP Services section in the IP Addressing and Services chapter of the Cisco IOS IP Configuration Guide, Release 12.2. For detailed information about the commands, refer to these documents:
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2
The switch does not support these Cisco IOS router ACL-related features:
Non-IP protocol ACLs (see Table 31-1 on page 31-8) or bridge-group ACLs IP accounting
31-6
78-16180-02
Chapter 31
Inbound and outbound rate limiting (except with QoS ACLs) Reflexive ACLs or dynamic ACLs (except for some specialized dynamic ACLs used by the switch clustering feature) ACL logging for port ACLs and VLAN maps
Create an ACL by specifying an access list number or name and the access conditions. Apply the ACL to interfaces or terminal lines. You can also apply standard and extended IP ACLs to VLAN maps.
Creating Standard and Extended IP ACLs, page 31-7 Applying an IP ACL to a Terminal Line, page 31-19 Applying an IP ACL to an Interface, page 31-20 Hardware and Software Treatment of IP ACLs, page 31-22 IP ACL Configuration Examples, page 31-22
Standard IP access lists use source addresses for matching operations. Extended IP access lists use source and destination addresses for matching operations and optional protocol-type information for finer granularity of control. Access List Numbers, page 31-7 Creating a Numbered Standard ACL, page 31-9 Creating a Numbered Extended ACL, page 31-11 Creating Named Standard and Extended ACLs, page 31-15 Using Time Ranges with ACLs, page 31-17 Including Comments in ACLs, page 31-19
31-7
Access List Number 199 100199 200299 300399 400499 500599 600699 700799 800899 900999 10001099 11001199 12001299 13001999 20002699
Type IP standard access list IP extended access list Protocol type-code access list DECnet access list XNS standard access list XNS extended access list AppleTalk access list 48-bit MAC address access list IPX standard access list IPX extended access list IPX SAP access list Extended 48-bit MAC address access list IPX summary address access list IP standard access list (expanded range) IP extended access list (expanded range)
Note
In addition to numbered standard and extended ACLs, you can also create standard and extended named IP ACLs using the supported numbers. That is, the name of a standard IP ACL can be 1 to 99; the name of an extended IP ACL can be 100 to 199. The advantage of using named ACLs instead of numbered lists is that you can delete individual entries from a named list.
31-8
78-16180-02
Chapter 31
configure terminal
access-list access-list-number {deny | permit} Define a standard IP access list by using a source address and source [source-wildcard] [log ] wildcard. The access-list-number is a decimal number from 1 to 99 or 1300 to 1999. Enter deny or permit to specify whether to deny or permit access if conditions are matched. The source is the source address of the network or host from which the packet is being sent specified as:
The 32-bit quantity in dotted-decimal format. The keyword any as an abbreviation for source and source-wildcard of 0.0.0.0 255.255.255.255. You do not need to enter a source-wildcard. The keyword host as an abbreviation for source and source-wildcard of source 0.0.0.0.
(Optional) The source-wildcard applies wildcard bits to the source. (Optional) Enter log to cause an informational logging message about the packet that matches the entry to be sent to the console.
Step 3 Step 4 Step 5
Return to privileged EXEC mode. Show the access list configuration. (Optional) Save your entries in the configuration file.
31-9
Use the no access-list access-list-number global configuration command to delete the entire ACL. You cannot delete individual ACEs from numbered access lists.
Note
When creating an ACL, remember that, by default, the end of the ACL contains an implicit deny statement for all packets that it did not find a match for before reaching the end. With standard access lists, if you omit the mask from an associated IP host address ACL specification, 0.0.0.0 is assumed to be the mask. This example shows how to create a standard ACL to deny access to IP host 171.69.198.102, permit access to any others, and display the results.
Switch (config)# access-list 2 deny host 171.69.198.102 Switch (config)# access-list 2 permit any Switch(config)# end Switch# show access-lists Standard IP access list 2 10 deny 171.69.198.102 20 permit any
The switch always rewrites the order of standard access lists so that entries with host matches and entries with matches having a dont care mask of 0.0.0.0 are moved to the top of the list, above any entries with non-zero dont care masks. Therefore, in show command output and in the configuration file, the ACEs do not necessarily appear in the order in which they were entered. The switch software can provide logging messages about packets permitted or denied by a standard IP access list. That is, any packet that matches the ACL causes an informational logging message about the packet to be sent to the console. The level of messages logged to the console is controlled by the logging console commands controlling the syslog messages.
Note
Because routing is done in hardware and logging is done in software, if a large number of packets match a permit or deny ACE containing a log keyword, the software might not be able to match the hardware processing rate, and not all packets will be logged. The first packet that triggers the ACL causes a logging message right away, and subsequent packets are collected over 5-minute intervals before they appear or logged. The logging message includes the access list number, whether the packet was permitted or denied, the source IP address of the packet, and the number of packets from that source permitted or denied in the prior 5-minute interval. After creating a numbered standard IP ACL, you can apply it to terminal lines (see the Applying an IP ACL to a Terminal Line section on page 31-19), to interfaces (see the Applying an IP ACL to an Interface section on page 31-20), or to VLANs (see the Configuring VLAN Maps section on page 31-30).
31-10
78-16180-02
Chapter 31
Note
ICMP echo-reply cannot be filtered. All other ICMP codes or types can be filtered.
For more details on the specific keywords for each protocol, refer to these software configuration guides and command references:
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2
Note
The switch does not support dynamic or reflexive access lists. It also does not support filtering based on the type of service (ToS) minimize-monetary-cost bit. Supported parameters can be grouped into these categories: TCP, UDP, ICMP, IGMP, or other IP.
31-11
Beginning in privileged EXEC mode, follow these steps to create an extended ACL: Command
Step 1 Step 2a
Purpose Enter global configuration mode. Define an extended IP access list and the access conditions. The access-list-number is a decimal number from 100 to 199 or 2000 to 2699. Enter deny or permit to specify whether to deny or permit the packet if conditions are matched. For protocol, enter the name or number of an IP protocol: ahp, eigrp, esp , gre, icmp, igmp, igrp, ip, ipinip, nos, ospf, pcp, pim , tcp, or udp, or an integer in the range 0 to 255 representing an IP protocol number. To match any Internet protocol (including ICMP, TCP, and UDP) use the keyword ip.
configure terminal access-list access-list-number {deny | permit} protocol source source-wildcard destination destination-wildcard [precedence precedence] [tos tos] [fragments ] [log] [log-input ] [time-range time-range-name] [dscp dscp]
Note
If you enter a dscp value, you cannot enter tos or Note This step includes options for most IP protocols. For additional specific precedence. You can enter parameters for TCP, UDP, ICMP, and IGMP, see steps 2b through 2e. both a tos and a precedence value with no The source is the number of the network or host from which the packet is sent. dscp. The source-wildcard applies wildcard bits to the source. The destination is the network or host number to which the packet is sent. The destination-wildcard applies wildcard bits to the destination. Source, source-wildcard, destination, and destination-wildcard can be specified as:
The 32-bit quantity in dotted-decimal format. The keyword any for 0.0.0.0 255.255.255.255 (any host). The keyword host for a single host 0.0.0.0.
precedenceEnter to match packets with a precedence level specified as a number from 0 to 7 or by name: routine (0), priority (1), immediate (2 ), flash (3 ), flash-override (4 ), critical (5), internet (6), network (7 ). fragments Enter to check non-initial fragments. tos Enter to match by type of service level, specified by a number from 0 to 15 or a name: normal (0 ), max-reliability (2), max-throughput (4), min-delay (8). logEnter to create an informational logging message to be sent to the console about the packet that matches the entry or log-input to include the input interface in the log entry. time-rangeFor an explanation of this keyword, see the Using Time Ranges with ACLs section on page 31-17. dscp Enter to match packets with the DSCP value specified by a number from 0 to 63, or use the question mark (?) to see a list of available values.
31-12
78-16180-02
Chapter 31
Command or access-list access-list-number {deny | permit} protocol any any [precedence precedence] [tos tos] [fragments ] [log] [log-input ] [time-range time-range-name] [dscp dscp] access-list access-list-number {deny | permit} protocol host source host destination [precedence precedence] [tos tos] [fragments ] [log] [log-input ] [time-range time-range-name] [dscp dscp] access-list access-list-number {deny | permit} tcp source source-wildcard [operator port] destination destination-wildcard [operator port] [established] [precedence precedence] [tos tos] [fragments ] [log] [log-input ] [time-range time-range-name] [dscp dscp] [flag]
Purpose In access-list configuration mode, define an extended IP access list using an abbreviation for a source and source wildcard of 0.0.0.0 255.255.255.255 and an abbreviation for a destination and destination wildcard of 0.0.0.0 255.255.255.255. You can use the any keyword in place of source and destination address and wildcard. Define an extended IP access list by using an abbreviation for a source and a source wildcard of source 0.0.0.0 and an abbreviation for a destination and destination wildcard of destination 0.0.0.0. You can use the host keyword in place of the source and destination wildcard or mask.
or
Step 2b
(Optional) Define an extended TCP access list and the access conditions. Enter tcp for Transmission Control Protocol. The parameters are the same as those described in Step 2a, with these exceptions: (Optional) Enter an operator and port to compare source (if positioned after source source-wildcard) or destination (if positioned after destination destination-wildcard) port. Possible operators include eq (equal), gt (greater than), lt (less than), neq (not equal), and range (inclusive range). Operators require a port number (range requires two port numbers separated by a space). Enter the port number as a decimal number (from 0 to 65535) or the name of a TCP port. To see TCP port names, use the ? or refer to the Configuring IP Services section in the IP Addressing and Services chapter of the Cisco IOS IP Configuration Guide, Release 12.2. Use only TCP port numbers or names when filtering TCP. The other optional keywords have these meanings:
established Enter to match an established connection. This has the same function as matching on the ack or rst flag. flagEnter one of these flags to match by the specified TCP header bits: ack (acknowledge), fin (finish), psh (push), rst (reset), syn (synchronize), or urg (urgent).
Step 2c
access-list access-list-number {deny | permit} udp source source-wildcard [operator port] destination destination-wildcard [operator port] [precedence precedence] [tos tos] [fragments] [log] [log-input] [time-range time-range-name] [dscp dscp ]
(Optional) Define an extended UDP access list and the access conditions. Enter udp for the User Datagram Protocol. The UDP parameters are the same as those described for TCP except that the [operator [port]] port number or name must be a UDP port number or name, and the flag and established parameters are not valid for UDP.
31-13
Command
Step 2d
Purpose (Optional) Define an extended ICMP access list and the access conditions. Enter icmp for Internet Control Message Protocol. The ICMP parameters are the same as those described for most IP protocols in Step 2a, with the addition of the ICMP message type and code parameters. These optional keywords have these meanings:
access-list access-list-number {deny | permit} icmp source source-wildcard destination destination-wildcard [icmp-type | [[icmp-type icmp-code] | [icmp-message]] [precedence precedence] [tos tos] [fragments] [log] [log-input] [time-range time-range-name] [dscp dscp ]
icmp-typeEnter to filter by ICMP message type, a number from 0 to 255. icmp-codeEnter to filter ICMP packets that are filtered by the ICMP message code type, a number from 0 to 255. icmp-messageEnter to filter ICMP packets by the ICMP message type name or the ICMP message type and code name. To see a list of ICMP message type names and code names, use the ?, or refer to the Configuring IP Services section of the Cisco IOS IP Configuration Guide, Release 12.2 .
Step 2e
access-list access-list-number {deny | permit} igmp source source-wildcard destination destination-wildcard [igmp-type] [precedence precedence] [tos tos] [fragments ] [log] [log-input ] [time-range time-range-name] [dscp dscp] copy running-config startup-config
(Optional) Define an extended IGMP access list and the access conditions. Enter igmp for Internet Group Management Protocol. The IGMP parameters are the same as those described for most IP protocols in Step 2a, with this optional parameter. igmp-typeTo match IGMP message type, enter a number from 0 to 15, or enter the message name (dvmrp , host-query, host-report, pim, or trace).
Step 3 Step 4
show access-lists [number | name] Verify the access list configuration. (Optional) Save your entries in the configuration file.
Use the no access-list access-list-number global configuration command to delete the entire access list. You cannot delete individual ACEs from numbered access lists. This example shows how to create and display an extended access list to deny Telnet access from any host in network 171.69.198.0 to any host in network 172.20.52.0 and to permit any others. (The eq keyword after the destination address means to test for the TCP destination port number equaling Telnet.)
Switch(config)# access-list 102 deny tcp 171.69.198.0 0.0.0.255 172.20.52.0 0.0.0.255 eq telnet Switch(config)# access-list 102 permit tcp any any Switch(config)# end Switch# show access-lists Extended IP access list 102 10 deny tcp 171.69.198.0 0.0.0.255 172.20.52.0 0.0.0.255 eq telnet 20 permit tcp any any
After an ACL is created, any additions (possibly entered from the terminal) are placed at the end of the list. You cannot selectively add or remove access list entries from a numbered access list.
Note
When you are creating an ACL, remember that, by default, the end of the access list contains an implicit deny statement for all packets if it did not find a match before reaching the end.
31-14
78-16180-02
Chapter 31
After creating a numbered extended ACL, you can apply it to terminal lines (see the Applying an IP ACL to a Terminal Line section on page 31-19), to interfaces (see the Applying an IP ACL to an Interface section on page 31-20), or to VLANs (see the Configuring VLAN Maps section on page 31-30).
Note
The name you give to a standard or extended ACL can also be a number in the supported range of access list numbers. That is, the name of a standard IP ACL can be 1 to 99; the name of an extended IP ACL can be 100 to 199. The advantage of using named ACLs instead of numbered lists is that you can delete individual entries from a named list. Consider these guidelines and limitations before configuring named ACLs:
Not all commands that accept a numbered ACL accept a named ACL. ACLs for packet filters and route filters on interfaces can use a name. VLAN maps also accept a name. A standard ACL and an extended ACL cannot have the same name. Numbered ACLs are also available, as described in the Creating Standard and Extended IP ACLs section on page 31-7. You can use standard and extended ACLs (named or numbered) in VLAN maps.
Beginning in privileged EXEC mode, follow these steps to create a standard ACL using names: Command
Step 1 Step 2
Purpose Enter global configuration mode. Define a standard IP access list using a name, and enter access-list configuration mode.
Note
31-15
Command
Step 3
Purpose In access-list configuration mode, specify one or more conditions denied or permitted to decide if the packet is forwarded or dropped.
deny {source [source-wildcard] | host source | any} [log] or permit {source [source-wildcard] | host source | any } [log ]
host sourceA source and source wildcard of source 0.0.0.0. any A source and source wildcard of 0.0.0.0 255.255.255.255.
Return to privileged EXEC mode. Show the access list configuration. (Optional) Save your entries in the configuration file.
To remove a named standard ACL, use the no ip access-list standard name global configuration command. Beginning in privileged EXEC mode, follow these steps to create an extended ACL using names: Command
Step 1 Step 2
Purpose Enter global configuration mode. Define an extended IP access list using a name and enter access-list configuration mode.
Note
Step 3
{deny | permit} protocol {source [source-wildcard] | host source | any} {destination [destination-wildcard] | host destination | any } [precedence precedence] [tos tos] [established] [log] [time-range time-range-name]
In access-list configuration mode, specify the conditions allowed or denied. Use the log keyword to get access list logging messages, including violations. See the Creating a Numbered Extended ACL section on page 31-11 for definitions of protocols and other keywords.
host sourceA source and source wildcard of source 0.0.0.0. host destinationA destination and destination wildcard of destination 0.0.0.0. any A source and source wildcard or destination and destination wildcard of 0.0.0.0 255.255.255.255.
Return to privileged EXEC mode. Show the access list configuration. (Optional) Save your entries in the configuration file.
To remove a named extended ACL, use the no ip access-list extended name global configuration command. When you are creating standard extended ACLs, remember that, by default, the end of the ACL contains an implicit deny statement for everything if it did not find a match before reaching the end. For standard ACLs, if you omit the mask from an associated IP host address access list specification, 0.0.0.0 is assumed to be the mask.
31-16
78-16180-02
Chapter 31
After you create an ACL, any additions are placed at the end of the list. You cannot selectively add ACL entries to a specific ACL. However, you can use no permit and no deny access-list configuration mode commands to remove entries from a named ACL. This example shows how you can delete individual ACEs from the named access list border-list:
Switch(config)# ip access-list extended border-list Switch(config-ext-nacl)# no permit ip host 10.1.1.3 any
Being able to selectively remove lines from a named ACL is one reason you might use named ACLs instead of numbered ACLs. After creating a named ACL, you can apply it to interfaces (see the Applying an IP ACL to an Interface section on page 31-20) or VLANs (see the Configuring VLAN Maps section on page 31-30).
You have more control over permitting or denying a user access to resources, such as an application (identified by an IP address/mask pair and a port number). You can control logging messages. ACL entries can be set to log traffic only at certain times of the day. Therefore, you can simply deny access without needing to analyze many logs generated during peak hours.
Time-based access lists trigger CPU activity because the new configuration of the access list must be merged with other features and the combined configuration loaded into the TCAM. For this reason, you should be careful not to have several access lists configured to take affect in close succession (within a small number of minutes of each other.)
Note
The time range relies on the switch system clock; therefore, you need a reliable clock source. We recommend that you use Network Time Protocol (NTP) to synchronize the switch clock. For more information, see the Managing the System Time and Date section on page 7-1. Beginning in privileged EXEC mode, follow these steps to configure an time-range parameter for an ACL:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Assign a meaningful name (for example, workhours) to the time range to be created, and enter time-range configuration mode. The name cannot contain a space or quotation mark and must begin with a letter.
31-17
Command
Step 3
absolute [start time date] [end time date] or periodic day-of-the-week hh:mm to [day-of-the-week] hh:mm or periodic {weekdays | weekend | daily} hh:mm to hh:mm
You can use only one absolute statement in the time range. If you configure more than one absolute statement, only the one configured last is executed. You can enter multiple periodic statements. For example, you could configure different hours for weekdays and weekends.
Refer to the example configurations. Return to privileged EXEC mode. Verify the time-range configuration. (Optional) Save your entries in the configuration file.
Repeat the steps if you have multiple items that you want in effect at different times. To remove a configured time-range limitation, use the no time-range time-range-name global configuration command. This example shows how to configure time ranges for workhours and for company holidays and to verify your configuration.
Switch(config)# time-range workhours Switch(config-time-range)# periodic weekdays 8:00 to 12:00 Switch(config-time-range)# periodic weekdays 13:00 to 17:00 Switch(config-time-range)# exit Switch(config)# time-range new_year_day_2003 Switch(config-time-range)# absolute start 00:00 1 Jan 2003 end 23:59 1 Jan 2003 Switch(config-time-range)# exit Switch(config)# time-range thanksgiving_2003 Switch(config-time-range)# absolute start 00:00 27 Nov 2003 end 23:59 28 Nov 2003 Switch(config-time-range)# exit Switch(config)# time-range christmas_2003 Switch(config-time-range)# absolute start 00:00 24 Dec 2003 end 23:50 25 Dec 2003 Switch(config-time-range)# end Switch# show time-range time-range entry: christmas_2003 (inactive) absolute start 00:00 24 December 2003 end 23:50 25 December 2003 time-range entry: new_year_day_2003 (inactive) absolute start 00:00 01 January 2003 end 23:59 01 January 2003 time-range entry: thanksgiving_2000 (inactive) absolute start 00:00 22 November 2003 end 23:59 23 November 2003 time-range entry: workhours (inactive) periodic weekdays 8:00 to 12:00 periodic weekdays 13:00 to 17:00
To apply a time-range, enter the time-range name in an extended ACL that can implement time ranges. This example shows how to create and verify extended access list 188 that denies TCP traffic from any source to any destination during the defined holiday times and permits all TCP traffic during work hours.
Switch(config)# access-list 188 deny tcp any any time-range new_year_day_2003 Switch(config)# access-list 188 deny tcp any any time-range thanskgiving_2003 Switch(config)# access-list 188 deny tcp any any time-range christmas_2003 Switch(config)# access-list 188 permit tcp any any time-range workhours Switch(config)# end Switch# show access-lists Extended IP access list 188 10 deny tcp any any time-range new_year_day_2003 (inactive) 20 deny tcp any any time-range thanskgiving_2003 (active)
31-18
78-16180-02
Chapter 31
30 deny tcp any any time-range christmas_2003 (inactive) 40 permit tcp any any time-range workhours (inactive)
This example uses named ACLs to permit and deny the same traffic.
Switch(config)# ip access-list extended deny_access Switch(config-ext-nacl)# deny tcp any any time-range new_year_day_2003 Switch(config-ext-nacl)# deny tcp any any time-range thanksgiving_2003 Switch(config-ext-nacl)# deny tcp any any time-range christmas_2003 Switch(config-ext-nacl)# exit Switch(config)# ip access-list extended may_access Switch(config-ext-nacl)# permit tcp any any time-range workhours Switch(config-ext-nacl)# end Switch# show ip access-lists Extended IP access list deny_access 10 deny tcp any any time-range new_year_day_2003 (inactive) 20 deny tcp any any time-range thanksgiving_2003 (inactive) 30 deny tcp any any time-range christmas_2003 (inactive) Extended IP access list may_access 10 permit tcp any any time-range workhours (inactive)
For an entry in a named IP ACL, use the remark access-list configuration command. To remove the remark, use the no form of this command. In this example, the Jones subnet is not allowed to use outbound Telnet:
Switch(config)# ip access-list extended telnetting Switch(config-ext-nacl)# remark Do not allow Jones subnet to telnet out Switch(config-ext-nacl)# deny tcp host 171.69.2.88 any eq telnet
31-19
For procedures for applying ACLs to interfaces, see the Applying an IP ACL to an Interface section on page 31-20. For applying ACLs to VLANs, see the Configuring VLAN Maps section on page 31-30. Beginning in privileged EXEC mode, follow these steps to restrict incoming and outgoing connections between a virtual terminal line and the addresses in an ACL: Command
Step 1 Step 2
Purpose Enter global configuration mode. Identify a specific line to configure, and enter in-line configuration mode.
consoleSpecify the console terminal line. The console port is DCE. vtySpecify a virtual terminal for remote console access.
The line-number is the first line number in a contiguous group that you want to configure when the line type is specified. The range is from 0 to 16.
Step 3 Step 4 Step 5 Step 6
Restrict incoming and outgoing connections between a particular virtual terminal line (into a device) and the addresses in an access list. Return to privileged EXEC mode. Display the access list configuration.
copy running-config startup-config (Optional) Save your entries in the configuration file. To remove an ACL from a terminal line, use the no access-class access-list-number {in | out} line configuration command.
When controlling access to an interface, you can use a named or numbered ACL. If you apply an ACL to a Layer 2 interface that is a member of a VLAN, the Layer 2 (port) ACL takes precedence over an input Layer 3 ACL applied to the VLAN interface or a VLAN map applied to the VLAN. Incoming packets received on the Layer 2 port are always filtered by the port ACL. If you apply an ACL to a Layer 3 interface and routing is not enabled on the switch, the ACL only filters packets that are intended for the CPU, such as SNMP, Telnet, or web traffic. You do not have to enable routing to apply ACLs to Layer 2 interfaces. When private VLANs are configured, you can apply router ACLs only on the primary-VLAN SVIs. The ACL is applied to both primary and secondary VLAN Layer 3 traffic.
Note
By default, the router sends Internet Control Message Protocol (ICMP) unreachable messages when a packet is denied by an access group. These access-group denied packets are not dropped in hardware but are bridged to the switch CPU so that it can generate the ICMP-unreachable message.
31-20
78-16180-02
Chapter 31
Beginning in privileged EXEC mode, follow these steps to control access to an interface: Command
Step 1 Step 2
Purpose Enter global configuration mode. Identify a specific interface for configuration, and enter interface configuration mode. The interface can be a Layer 2 interface (port ACL), or a Layer 3 interface (router ACL).
Step 3
ip access-group {access-list-number | Control access to the specified interface. name} {in | out} The out keyword is not supported for Layer 2 interfaces (port ACLs). end show running-config copy running-config startup-config Return to privileged EXEC mode. Display the access list configuration. (Optional) Save your entries in the configuration file.
To remove the specified access group, use the no ip access-group {access-list-number | name} {in | out} interface configuration command. This example shows how to apply access list 2 to a port to filter packets entering the port:
Switch(config)# interface gigabitethernet1/0/1 Router(config-if)# ip access-group 2 in
Note
When you apply the ip access-group interface configuration command to a Layer 3 interface (an SVI, a Layer 3 EtherChannel, or a routed port), the interface must have been configured with an IP address. Layer 3 access groups filter packets that are routed or are received by Layer 3 processes on the CPU. They do not affect packets bridged within a VLAN. For inbound ACLs, after receiving a packet, the switch checks the packet against the ACL. If the ACL permits the packet, the switch continues to process the packet. If the ACL rejects the packet, the switch discards the packet. For outbound ACLs, after receiving and routing a packet to a controlled interface, the switch checks the packet against the ACL. If the ACL permits the packet, the switch sends the packet. If the ACL rejects the packet, the switch discards the packet. By default, the input interface sends ICMP Unreachable messages whenever a packet is discarded, regardless of whether the packet was discarded because of an ACL on the input interface or because of an ACL on the output interface. ICMP Unreachables are normally limited to no more than one every one-half second per input interface, but this can be changed by using the ip icmp rate-limit unreachable global configuration command. When you apply an undefined ACL to an interface, the switch acts as if the ACL has not been applied to the interface and permits all packets. Remember this behavior if you use undefined ACLs for network security.
31-21
Note
If an ACL configuration cannot be implemented in hardware due to an out-of-resource condition on a stack member, then only the traffic in that VLAN arriving on that switch is affected (forwarded in software). Software forwarding of packets might adversely impact the performance of the switch stack, depending on the number of CPU cycles that this consumes. For router ACLs, other factors can cause packets to be sent to the CPU:
When traffic flows are both logged and forwarded, forwarding is done by hardware, but logging must be done by software. Because of the difference in packet handling capacity between hardware and software, if the sum of all flows being logged (both permitted flows and denied flows) is of great enough bandwidth, not all of the packets that are forwarded can be logged. If router ACL configuration cannot be applied in hardware, packets arriving in a VLAN that must be routed are routed in software, but are bridged in hardware. If ACLs cause large numbers of packets to be sent to the CPU, the switch performance can be negatively affected. When you enter the show ip access-lists privileged EXEC command, the match count displayed does not account for packets that are access controlled in hardware. Use the show access-lists hardware counters privileged EXEC command to obtain some basic hardware ACL statistics for switched and routed packets. Router ACLs function as follows:
The hardware controls permit and deny actions of standard and extended ACLs (input and output) for security access control. If log has not been specified, the flows that match a deny statement in a security ACL are dropped by the hardware if ip unreachables is disabled. The flows matching a permit statement are switched in hardware. Adding the log keyword to an ACE in a router ACL causes a copy of the packet to be sent to the CPU for logging only. If the ACE is a permit statement, the packet is still switched and routed in hardware.
31-22
78-16180-02
Chapter 31
Create a standard ACL, and filter traffic coming to the server from Port 1. Create an extended ACL, and filter traffic coming from the server into Port 1.
Server A Benefits
Server B Payroll
Port 2
Port 1
Accounting 172.20.128.64-95
101354
This example uses a standard ACL to filter traffic coming into Server B from a port, permitting traffic only from Accountings source addresses 172.20.128.64 to 172.20.128.95. The ACL is applied to traffic coming out of routed Port 1 from the specified source address.
Switch(config)# access-list 6 permit 172.20.128.64 0.0.0.31 Switch(config)# end Switch# show access-lists Standard IP access list 6 10 permit 172.20.128.64, wildcard bits 0.0.0.31 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip access-group 6 out
This example uses an extended ACL to filter traffic coming from Server B into a port, permitting traffic from any source address (in this case Server B) to only the Accounting destination addresses 172.20.128.64 to 172.20.128.95. The ACL is applied to traffic going into routed Port 1, permitting it to go only to the specified destination addresses. Note that with extended ACLs, you must enter the protocol (IP) before the source and destination information.
Switch(config)# access-list 106 permit ip any 172.20.128.64 0.0.0.31 Switch(config)# end Switch# show access-lists Extended IP access list 106 10 permit ip any 172.20.128.64 0.0.0.31 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip access-group 106 in
31-23
Numbered ACLs
In this example, network 36.0.0.0 is a Class A network whose second octet specifies a subnet; that is, its subnet mask is 255.255.0.0. The third and fourth octets of a network 36.0.0.0 address specify a particular host. Using access list 2, the switch accepts one address on subnet 48 and reject all others on that subnet. The last line of the list shows that the switch accepts addresses on all other network 36.0.0.0 subnets. The ACL is applied to packets entering a port.
Switch(config)# access-list 2 permit 36.48.0.3 Switch(config)# access-list 2 deny 36.48.0.0 0.0.255.255 Switch(config)# access-list 2 permit 36.0.0.0 0.255.255.255 Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# ip access-group 2 in
Extended ACLs
In this example, the first line permits any incoming TCP connections with destination ports greater than 1023. The second line permits incoming TCP connections to the Simple Mail Transfer Protocol (SMTP) port of host 128.88.1.2. The third line permits incoming ICMP messages for error feedback.
Switch(config)# access-list 102 permit tcp any 128.88.0.0 0.0.255.255 gt 1023 Switch(config)# access-list 102 permit tcp any host 128.88.1.2 eq 25 Switch(config)# access-list 102 permit icmp any any Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# ip access-group 102 in
For another example of using an extended ACL,suppose that you have a network connected to the Internet, and you want any host on the network to be able to form TCP connections to any host on the Internet. However, you do not want IP hosts to be able to form TCP connections to hosts on your network, except to the mail (SMTP) port of a dedicated mail host. SMTP uses TCP port 25 on one end of the connection and a random port number on the other end. The same port numbers are used throughout the life of the connection. Mail packets coming in from the Internet have a destination port of 25. Outbound packets have the port numbers reversed. Because the secure system of the network always accepts mail connections on port 25, the incoming and outgoing services are separately controlled. The ACL must be configured as an input ACL on the outbound interface and an output ACL on the inbound interface. In this example, the network is a Class B network with the address 128.88.0.0, and the mail host address is 128.88.1.2. The established keyword is used only for the TCP to show an established connection. A match occurs if the TCP datagram has the ACK or RST bits set, which show that the packet belongs to an existing connection. Gigabit Ethernet interface 1 on stack member 1 is the interface that connects the router to the Internet.
Switch(config)# access-list 102 permit tcp any 128.88.0.0 0.0.255.255 established Switch(config)# access-list 102 permit tcp any host 128.88.1.2 eq 25 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip access-group 102 in
Named ACLs
This example creates a standard ACL named internet_filter and an extended ACL named marketing_group. The internet_filter ACL allows all traffic from the source address 1.2.3.4.
Switch(config)# ip access-list standard Internet_filter Switch(config-ext-nacl)# permit 1.2.3.4 Switch(config-ext-nacl)# exit
31-24
78-16180-02
Chapter 31
The marketing_group ACL allows any TCP Telnet traffic to the destination address and wildcard 171.69.0.0 0.0.255.255 and denies any other TCP traffic. It permits ICMP traffic, denies UDP traffic from any source to the destination address range 171.69.0.0 through 179.69.255.255 with a destination port less than 1024, denies any other IP traffic, and provides a log of the result.
Switch(config)# ip access-list extended marketing_group Switch(config-ext-nacl)# permit tcp any 171.69.0.0 0.0.255.255 eq telnet Switch(config-ext-nacl)# deny tcp any any Switch(config-ext-nacl)# permit icmp any any Switch(config-ext-nacl)# deny udp any 171.69.0.0 0.0.255.255 lt 1024 Switch(config-ext-nacl)# deny ip any any log Switch(config-ext-nacl)# exit
TheInternet_filter ACL is applied to outgoing traffic and the marketing_group ACL is applied to incoming traffic on a Layer 3 port.
Switch(config)# interface gigabitethernet3/0/2 Switch(config-if)# no switchport Switch(config-if)# ip address 2.0.5.1 255.255.255.0 Switch(config-if)# ip access-group Internet_filter out Switch(config-if)# ip access-group marketing_group in
In this example of a numbered ACL, the Winter and Smith workstations are not allowed to browse the web:
Switch(config)# Switch(config)# Switch(config)# Switch(config)# access-list access-list access-list access-list 100 100 100 100 remark Do deny host remark Do deny host not allow Winter to browse the web 171.69.3.85 any eq www not allow Smith to browse the web 171.69.3.13 any eq www
31-25
In this example of a named ACL, the Jones subnet is not allowed access:
Switch(config)# ip access-list standard prevention Switch(config-std-nacl)# remark Do not allow Jones subnet through Switch(config-std-nacl)# deny 171.69.0.0 0.0.255.255
In this example of a named ACL, the Jones subnet is not allowed to use outbound Telnet:
Switch(config)# ip access-list extended telnetting Switch(config-ext-nacl)# remark Do not allow Jones subnet to telnet out Switch(config-ext-nacl)# deny tcp 171.69.0.0 0.0.255.255 any eq telnet
ACL Logging
Two variations of logging are supported on router ACLs. The log keyword sends an informational logging message to the console about the packet that matches the entry; the log-input keyword includes the input interface in the log entry. In this example, standard named access list stan1 denies traffic from 10.1.1.0 0.0.0.255, allows traffic from all other sources, and includes the log keyword.
Switch(config)# ip access-list standard stan1 Switch(config-std-nacl)# deny 10.1.1.0 0.0.0.255 log Switch(config-std-nacl)# permit any log Switch(config-std-nacl)# exit Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip access-group stan1 in Switch(config-if)# end Switch# show logging Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns) Console logging: level debugging, 37 messages logged Monitor logging: level debugging, 0 messages logged Buffer logging: level debugging, 37 messages logged File logging: disabled Trap logging: level debugging, 39 message lines logged Log Buffer (4096 bytes): 00:00:48: NTP: authentication delay calculation problems <output truncated> 00:09:34:%SEC-6-IPACCESSLOGS:list stan1 permitted 0.0.0.0 1 packet 00:09:59:%SEC-6-IPACCESSLOGS:list stan1 denied 10.1.1.15 1 packet 00:10:11:%SEC-6-IPACCESSLOGS:list stan1 permitted 0.0.0.0 1 packet
This example is a named extended access list ext1 that permits ICMP packets from any source to 10.1.1.0 0.0.0.255 and denies all UDP packets.
Switch(config)# ip access-list extended ext1 Switch(config-ext-nacl)# permit icmp any 10.1.1.0 0.0.0.255 log Switch(config-ext-nacl)# deny udp any any log Switch(config-std-nacl)# exit Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# ip access-group ext1 in
31-26
78-16180-02
Chapter 31
Configuring Network Security with ACLs Creating Named MAC Extended ACLs
01:26:12:%SEC-6-IPACCESSLOGP:list ext1 denied udp 0.0.0.0(0) -> 255.255.255.255(0), 1 packet 01:31:33:%SEC-6-IPACCESSLOGP:list ext1 denied udp 0.0.0.0(0) -> 255.255.255.255(0), 8 packets
Note that all logging entries for IP ACLs start with %SEC-6-IPACCESSLOG with minor variations in format depending on the kind of ACL and the access entry that has been matched. This is an example of an output message when the log-input keyword is entered:
00:04:21:%SEC-6-IPACCESSLOGDP:list inputlog permitted icmp 10.1.1.10 (Vlan1 0001.42ef.a400) -> 10.1.1.61 (0/0), 1 packet
A log message for the same sort of packet using the log keyword does not include the input interface information:
00:05:47:%SEC-6-IPACCESSLOGDP:list inputlog permitted icmp 10.1.1.10 -> 10.1.1.61 (0/0), 1 packet
Note
You cannot apply named MAC extended ACLs to Layer 3 interfaces. For more information about the supported non-IP protocols in the mac access-list extended command, refer to the command reference for this release.
Note
Though visible in the command-line help strings, appletalk is not supported as a matching condition for the deny and permit MAC access-list configuration mode commands. Beginning in privileged EXEC mode, follow these steps to create a named MAC extended ACL:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Define an extended MAC access list using a name.
31-27
Command
Step 3
Purpose In extended MAC access-list configuration mode, specify to permit or deny any source MAC address, a source MAC address with a mask, or a specific host source MAC address and any destination MAC address, destination MAC address with a mask, or a specific destination MAC address. (Optional) You can also enter these options:
{deny | permit} {any | host source MAC address | source MAC address mask} {any | host destination MAC address | destination MAC address mask} [type mask | lsap lsap mask | aarp | amber | dec-spanning | decnet-iv | diagnostic | dsm | etype-6000 | etype-8042 | lat | lavc-sca | mop-console | mop-dump | msdos | mumps | netbios | vines-echo |vines-ip | xns-idp | 0-65535] [cos cos]
type maskAn arbitrary EtherType number of a packet with Ethernet II or SNAP encapsulation in decimal, hex, or octal with optional mask of dont care bits applied to the EtherType before testing for a match. lsap lsap maskAn LSAP number of a packet with 802.2 encapsulation in decimal, hex, or octal with optional mask of dont care bits. aarp | amber | dec-spanning | decnet-iv | diagnostic | dsm | etype-6000 | etype-8042 | lat | lavc-sca | mop-console | mop-dump | msdos | mumps | netbios | vines-echo |vines-ip | xns-idp A non-IP protocol. cos cos An IEEE 802.1Q cost of service number from 0 to 7 used to set priority.
Return to privileged EXEC mode. Show the access list configuration. (Optional) Save your entries in the configuration file.
Use the no mac access-list extended name global configuration command to delete the entire ACL. You can also delete individual ACEs from named MAC extended ACLs. This example shows how to create and display an access list named mac1, denying only EtherType DECnet Phase IV traffic, but permitting all other types of traffic.
Switch(config)# mac access-list extended mac1 Switch(config-ext-macl)# deny any any decnet-iv Switch(config-ext-macl)# permit any any Switch(config-ext-macl)# end Switch # show access-lists Extended MAC access list mac1 10 deny any any decnet-iv 20 permit any any
31-28
78-16180-02
Chapter 31
Configuring Network Security with ACLs Creating Named MAC Extended ACLs
If you apply an ACL to a Layer 2 interface that is a member of a VLAN, the Layer 2 (port) ACL takes precedence over an input Layer 3 ACL applied to the VLAN interface or a VLAN map applied to the VLAN. Incoming packets received on the Layer 2 port are always filtered by the port ACL. You can apply no more than one IP access list and one MAC access list to the same Layer 2 interface. The IP access list filters only IP packets, and the MAC access list filters non-IP packets. A Layer 2 interface can have only one MAC access list. If you apply a MAC access list to a Layer 2 interface that has a MAC ACL configured, the new ACL replaces the previously configured one.
Beginning in privileged EXEC mode, follow these steps to apply a MAC access list to control access to a Layer 2 interface: Command
Step 1 Step 2
Purpose Enter global configuration mode. Identify a specific interface, and enter interface configuration mode. The interface must be a physical Layer 2 interface (port ACL). Control access to the specified interface by using the MAC access list.
Note
Step 3
Return to privileged EXEC mode. Display the MAC access list applied to the interface or all Layer 2 interfaces. (Optional) Save your entries in the configuration file.
To remove the specified access group, use the no mac access-group {name} interface configuration command. This example shows how to apply MAC access list mac1 to a port to filter packets entering the port:
Switch(config)# interface gigabitethernet1/0/2 Router(config-if)# mac access-group mac1 in
Note
The mac access-group interface configuration command is only valid when applied to a physical Layer 2 interface.You cannot use the command on EtherChannel port channels. After receiving a packet, the switch checks it against the inbound ACL. If the ACL permits it, the switch continues to process the packet. If the ACL rejects the packet, the switch discards it. When you apply an undefined ACL to an interface, the switch acts as if the ACL has not been applied and permits all packets. Remember this behavior if you use undefined ACLs for network security.
31-29
Note
For complete syntax and usage information for the commands used in this section, refer to the command reference for this release. To create a VLAN map and apply it to one or more VLANs, perform these steps:
Step 1
Create the standard or extended IP ACLs or named MAC extended ACLs that you want to apply to the VLAN. See the Creating Standard and Extended IP ACLs section on page 31-7 and the Creating a VLAN Map section on page 31-31. Enter the vlan access-map global configuration command to create a VLAN ACL map entry. In access map configuration mode, optionally enter an actionforward (the default) or dropand enter the match command to specify an IP packet or a non-IP packet (with only a known MAC address) and to match the packet against one or more ACLs (standard or extended).
Step 2 Step 3
Note
If the VLAN map has a match clause for the type of packet (IP or MAC) and the packet does not match the type, the default is to drop the packet. If there is no match clause in the VLAN map for that type of packet, and no action specified, the packet is forwarded.
Step 4
Use the vlan filter global configuration command to apply a VLAN map to one or more VLANs.
VLAN Map Configuration Guidelines, page 31-30 Creating a VLAN Map, page 31-31 Applying a VLAN Map to a VLAN, page 31-34 Using VLAN Maps in Your Network, page 31-34
If there is no ACL configured to deny traffic on an interface and no VLAN map is configured, all traffic is permitted. Each VLAN map consists of a series of entries. The order of entries in an VLAN map is important. A packet that comes into the switch is tested against the first entry in the VLAN map. If it matches, the action specified for that part of the VLAN map is taken. If there is no match, the packet is tested against the next entry in the map.
31-30
78-16180-02
Chapter 31
If the VLAN map has at least one match clause for the type of packet (IP or MAC) and the packet does not match any of these match clauses, the default is to drop the packet. If there is no match clause for that type of packet in the VLAN map, the default is to forward the packet. The system might take longer to boot if you have configured a very large number of ACLs. Logging is not supported for VLAN maps. If VLAN map configuration cannot be applied in hardware, all packets in that VLAN must be bridged and routed by software. When a switch has an IP access list or MAC access list applied to a Layer 2 interface, and you apply a VLAN map to a VLAN that the port belongs to, the port ACL takes precedence over the VLAN map. You can configure VLAN maps on primary and secondary VLANs. However, we recommend that you configure the same VLAN maps on private-VLAN primary and secondary VLANs. When a frame is Layer-2 forwarded within a private VLAN, the same VLAN map is applied at the ingress side and at the egress side. When a frame is routed from inside a private VLAN to an external port, the private-VLAN map is applied at the ingress side.
For frames going upstream from a host port to a promiscuous port, the VLAN map configured
configured on the primary VLAN is applied. To filter out specific IP traffic for a private VLAN, you should apply the VLAN map to both the primary and secondary VLANs. For more information about private VLANs, see Chapter 15, Configuring Private VLANs.
See the Using VLAN Maps in Your Network section on page 31-34 for configuration examples. For information about using both router ACLs and VLAN maps, see the Guidelines section on page 31-37.
Purpose Enter global configuration mode. Create a VLAN map, and give it a name and (optionally) a number. The number is the sequence number of the entry within the map. When you create VLAN maps with the same name, numbers are assigned sequentially in increments of 10. When modifying or deleting maps, you can enter the number of the map entry that you want to modify or delete. Entering this command changes to access-map configuration mode.
Step 3
(Optional) Set the action for the map entry. The default is to forward.
31-31
Command
Step 4
Purpose Match the packet (using either the IP or MAC address) against one or more standard or extended access lists. Note that packets are only matched against access lists of the correct protocol type. IP packets are matched against standard or extended IP access lists. Non-IP packets are only matched against named MAC extended access lists. Return to global configuration mode. Display the access list configuration. (Optional) Save your entries in the configuration file.
Use the no vlan access-map name global configuration command to delete a map. Use the no vlan access-map name number global configuration command to delete a single sequence entry from within the map. Use the no action access-map configuration command to enforce the default action, which is to forward. VLAN maps do not use the specific permit or deny keywords. To deny a packet by using VLAN maps, create an ACL that would match the packet, and set the action to drop. A permit in the ACL counts as a match. A deny in the ACL means no match.
Example 1
This example shows how to create an ACL and a VLAN map to deny a packet. In the first map, any packets that match the ip1 ACL (TCP packets) would be dropped. You first create the ip1 ACL to permit any TCP packet and no other packets. Because there is a match clause for IP packets in the VLAN map, the default action is to drop any IP packet that does not match any of the match clauses.
Switch(config)# ip access-list extended ip1 Switch(config-ext-nacl)# permit tcp any any Switch(config-ext-nacl)# exit Switch(config)# vlan access-map map_1 10 Switch(config-access-map)# match ip address ip1 Switch(config-access-map)# action drop
This example shows how to create a VLAN map to permit a packet. ACL ip2 permits UDP packets and any packets that match the ip2 ACL are forwarded. In this map, any IP packets that did not match any of the previous ACLs (that is, packets that are not TCP packets or UDP packets) would get dropped.
Switch(config)# ip access-list extended ip2 Switch(config-ext-nacl)# permit udp any any Switch(config-ext-nacl)# exit Switch(config)# vlan access-map map_1 20 Switch(config-access-map)# match ip address ip2 Switch(config-access-map)# action forward
Example 2
In this example, the VLAN map has a default action of drop for IP packets and a default action of forward for MAC packets. Used with standard ACL 101 and extended named access lists igmp-match and tcp-match, the map will have the following results:
31-32
78-16180-02
Chapter 31
Forward all UDP packets Drop all IGMP packets Forward all TCP packets Drop all other IP packets Forward all non-IP packets
Switch(config)# access-list 101 permit udp any any Switch(config)# ip access-list extended igmp-match Switch(config-ext-nacl)# permit igmp any any Switch(config)# ip access-list extended tcp-match Switch(config-ext-nacl)# permit tcp any any Switch(config-ext-nacl)# exit Switch(config)# vlan access-map drop-ip-default 10 Switch(config-access-map)# match ip address 101 Switch(config-access-map)# action forward Switch(config-access-map)# exit Switch(config)# vlan access-map drop-ip-default 20 Switch(config-access-map)# match ip address igmp-match Switch(config-access-map)# action drop Switch(config-access-map)# exit Switch(config)# vlan access-map drop-ip-default 30 Switch(config-access-map)# match ip address tcp-match Switch(config-access-map)# action forward
Example 3
In this example, the VLAN map has a default action of drop for MAC packets and a default action of forward for IP packets. Used with MAC extended access lists good-hosts and good-protocols, the map will have the following results:
Forward MAC packets from hosts 0000.0c00.0111 and 0000.0c00.0211 Forward MAC packets with decnet-iv or vines-ip protocols Drop all other non-IP packets Forward all IP packets
Switch(config)# mac access-list extended good-hosts Switch(config-ext-macl)# permit host 000.0c00.0111 any Switch(config-ext-macl)# permit host 000.0c00.0211 any Switch(config-ext-nacl)# exit Switch(config)# mac access-list extended good-protocols Switch(config-ext-macl)# permit any any decnet-ip Switch(config-ext-macl)# permit any any vines-ip Switch(config-ext-nacl)# exit Switch(config)# vlan access-map drop-mac-default 10 Switch(config-access-map)# match mac address good-hosts Switch(config-access-map)# action forward Switch(config-access-map)# exit Switch(config)# vlan access-map drop-mac-default 20 Switch(config-access-map)# match mac address good-protocols Switch(config-access-map)# action forward
31-33
Example 4
In this example, the VLAN map has a default action of drop for all packets (IP and non-IP). Used with access lists tcp-match and good-hosts from Examples 2 and 3, the map will have the following results:
Forward all TCP packets Forward MAC packets from hosts 0000.0c00.0111 and 0000.0c00.0211 Drop all other IP packets Drop all other MAC packets
Switch(config)# vlan access-map drop-all-default 10 Switch(config-access-map)# match ip address tcp-match Switch(config-access-map)# action forward Switch(config-access-map)# exit Switch(config)# vlan access-map drop-all-default 20 Switch(config-access-map)# match mac address good-hosts Switch(config-access-map)# action forward
Purpose Enter global configuration mode. Apply the VLAN map to one or more VLAN IDs. The list can be a single VLAN ID (22), a consecutive list (10-22), or a string of VLAN IDs (12, 22, 30). Spaces around the comma and hyphen are optional.
Step 3 Step 4
Display the access list configuration. (Optional) Save your entries in the configuration file.
To remove the VLAN map, use the no vlan filter mapname vlan-list list global configuration command. This example shows how to apply VLAN map 1 to VLANs 20 through 22:
Switch(config)# vlan filter map 1 vlan-list 20-22
Wiring Closet Configuration, page 31-35 Denying Access to a Server on Another VLAN, page 31-36
31-34
78-16180-02
Chapter 31
Switch B
Switch A VLAN map: Deny HTTP from X to Y. HTTP is dropped at entry point. Host X 10.1.1.32 Host Y 10.1.1.34
Switch C
If you do not want HTTP traffic switched from Host X to Host Y, you can configure a VLAN map on Switch A to drop all HTTP traffic from Host X (IP address 10.1.1.32) to Host Y (IP address 10.1.1.34) at Switch A and not bridge it to Switch B. First, define the IP access list http that permits (matches) any TCP traffic on the HTTP port.
Switch(config)# ip access-list extended http Switch(config-ext-nacl)# permit tcp host 10.1.1.32 host 10.1.1.34 eq www Switch(config-ext-nacl)# exit
Next, create VLAN access map map2 so that traffic that matches the http access list is dropped and all other IP traffic is forwarded.
Switch(config)# vlan access-map map2 10 Switch(config-access-map)# match ip address http Switch(config-access-map)# action drop Switch(config-access-map)# exit Switch(config)# ip access-list extended match_all Switch(config-ext-nacl)# permit ip any any Switch(config-ext-nacl)# exit Switch(config)# vlan access-map map2 20 Switch(config-access-map)# match ip address match_all Switch(config-access-map)# action forward
101355
31-35
Hosts in subnet 10.1.2.0/8 in VLAN 20 should not have access. Hosts 10.1.1.4 and 10.1.1.8 in VLAN 10 should not have access.
VLAN map
Subnet 10.1.2.0/8
Layer 3 switch
This example shows how to deny access to a server on another VLAN by creating the VLAN map SERVER 1 that denies access to hosts in subnet 10.1.2.0.8, host 10.1.1.4, and host 10.1.1.8 and permits other IP traffic. The final step is to apply the map SERVER1 to VLAN 10.
Step 1
Step 2
Define a VLAN map using this ACL that will drop IP packets that match SERVER1_ACL and forward IP packets that do not match the ACL.
Switch(config)# vlan access-map SERVER1_MAP Switch(config-access-map)# match ip address SERVER1_ACL Switch(config-access-map)# action drop Switch(config)# vlan access-map SERVER1_MAP 20 Switch(config-access-map)# action forward Switch(config-access-map)# exit
Step 3
31-36
78-16180-02
Chapter 31
Configuring Network Security with ACLs Using VLAN Maps with Router ACLs
Note
When you use router ACLs with VLAN maps, packets that require logging on the router ACLs are not logged if they are denied by a VLAN map. If the VLAN map has a match clause for the type of packet (IP or MAC) and the packet does not match the type, the default is to drop the packet. If there is no match clause in the VLAN map, and no action specified, the packet is forwarded if it does not match any VLAN map entry. This section includes this information about using VLAN maps with router ACLs:
Guidelines, page 31-37 Examples of Router ACLs and VLAN Maps Applied to VLANs, page 31-38
Guidelines
These guidelines are for configurations where you need to have an router ACL and a VLAN map on the same VLAN. These guidelines do not apply to configurations where you are mapping router ACLs and VLAN maps on different VLANs. The switch hardware provides one lookup for security ACLs for each direction (input and output); therefore, you must merge a router ACL and a VLAN map when they are configured on the same VLAN. Merging the router ACL with the VLAN map might significantly increase the number of ACEs. If you must configure a router ACL and a VLAN map on the same VLAN, use these guidelines for both router ACL and VLAN map configuration:
You can configure only one VLAN map and one router ACL in each direction (input/output) on a VLAN interface. Whenever possible, try to write the ACL with all entries having a single action except for the final, default action of the other type. That is, write the ACL using one of these two forms: permit... permit... permit... deny ip any any or deny... deny... deny... permit ip any any
To define multiple actions in an ACL (permit, deny), group each action type together to reduce the number of entries.
31-37
Avoid including Layer 4 information in an ACL; adding this information complicates the merging process. The best merge results are obtained if the ACLs are filtered based on IP addresses (source and destination) and not on the full flow (source IP address, destination IP address, protocol, and protocol ports). It is also helpful to use dont care bits in the IP address, whenever possible. If you need to specify the full-flow mode and the ACL contains both IP ACEs and TCP/UDP/ICMP ACEs with Layer 4 information, put the Layer 4 ACEs at the end of the list. This gives priority to the filtering of traffic based on IP addresses.
VLAN 10 map
VLAN 20 map
Frame
Packet
31-38
78-16180-02
Chapter 31
Configuring Network Security with ACLs Using VLAN Maps with Router ACLs
VLAN 10 map
VLAN 20 map
Frame
VLAN 10
Packet
VLAN 20
VLAN map for input VLAN Input router ACL Output router ACL VLAN map for output VLAN
VLAN 10 map
VLAN 20 map
Frame
VLAN 10
Packet
VLAN 20
101359
101358
31-39
VLAN 10 map
VLAN 20 map
Frame
Packet
Purpose Display the contents of one or all current IP and MAC address access lists or a specific access list (numbered or named). Display the contents of all current IP access lists or a specific IP access list (numbered or named).
31-40
78-16180-02
Chapter 31
Table 31-2 Commands for Displaying Access Lists and Access Groups (continued)
Purpose Display detailed configuration and status of an interface. If IP is enabled on the interface and ACLs have been applied by using the ip access-group interface configuration command, the access groups are included in the display. Displays the contents of the configuration file for the switch or the specified interface, including all configured MAC and IP access lists and which access groups are applied to an interface. Displays MAC access lists applied to all Layer 2 interfaces or the specified Layer 2 interface.
You can also display information about VLAN access maps or VLAN filters. Use the privileged EXEC commands in Table 31-3 to display VLAN map information.
Table 31-3 Commands for Displaying VLAN Map Information
Command show vlan access-map [mapname] show vlan filter [access-map name | vlan vlan-id ]
Purpose Show information about all VLAN access-maps or the specified access map. Show information about all VLAN filters or about a specified VLAN or VLAN access map.
31-41
31-42
78-16180-02
C H A P T E R
32
Configuring QoS
This chapter describes how to configure quality of service (QoS) by using automatic QoS (auto-QoS) commands or by using standard QoS commands on the Catalyst 3750 switch. With QoS, you can provide preferential treatment to certain 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. Unless otherwise noted, the term switch refers to a standalone switch and a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference this release. This chapter consists of these sections:
Understanding QoS, page 32-1 Configuring Auto-QoS, page 32-18 Displaying Auto-QoS Information, page 32-28 Configuring Standard QoS, page 32-28 Displaying Standard QoS Information, page 32-67
The switch supports some of the modular QoS CLI (MQC) commands. For more information about the MQC commands, refer to the Modular Quality of Service Command Line Interface Overview at this URL: http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fqos_c/fqcprt8/ qcfmdcli.htm#89799
Understanding QoS
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 select specific network traffic, prioritize it according to its relative importance, and use congestion-management and congestion-avoidance techniques to provide preferential treatment. Implementing QoS in your network makes network performance more predictable and bandwidth utilization more effective.
32-1
Configuring QoS
The QoS implementation is based on the Differentiated Services (Diff-Serv) architecture, an emerging standard from the Internet Engineering Task Force (IETF). This architecture specifies that each packet is classified upon entry into the network. The classification is carried in the IP packet header, using 6 bits from the deprecated IP type of service (ToS) field to carry the classification (class) information. Classification can also be carried in the Layer 2 frame. These special bits in the Layer 2 frame or a Layer 3 packet are described here and shown in Figure 32-1:
Prioritization bits in Layer 2 frames: Layer 2 Inter-Switch Link (ISL) frame headers have a 1-byte User field that carries an IEEE 802.1p class of service (CoS) value in the three least-significant bits. On ports configured as Layer 2 ISL trunks, all traffic is in ISL frames. Layer 2 802.1Q frame headers have a 2-byte Tag Control Information field that carries the CoS value in the three most-significant bits, which are called the User Priority bits. On ports 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. Prioritization bits in Layer 3 packets: Layer 3 IP packets can carry either an IP precedence value or a Differentiated Services Code Point (DSCP) value. QoS supports the use of either value because DSCP values are backward-compatible with IP precedence values. IP precedence values range from 0 to 7. DSCP values range from 0 to 63.
Layer 2 ISL Frame ISL header (26 bytes) Encapsulated frame 1... (24.5 KB) 3 bits used for CoS Layer 2 802.1Q/P Frame Preamble Start frame delimiter DA SA Tag PT Data FCS FCS (4 bytes)
Version length
ToS (1 byte)
Len
ID
Offset TTL
IP precedence or DSCP
32-2
78-16180-02
Chapter 32
Note
Layer 3 IPv6 packets are treated as non-IP packets and are bridged by the switch. All switches and routers that access the Internet rely on the class information to provide 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 with this task. 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 in the DiffServ architecture is called per-hop behavior. If all devices along a path provide 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.
Classification is the process of generating a distinct path for a packet by associating it with a QoS label. The switch maps the CoS or DSCP in the packet to a QoS label to distinguish one kind of traffic from another. The QoS label that is generated identifies all future QoS actions to be performed on this packet. For more information, see the Classification section on page 32-4. Policing decides whether a packet is in or out of profile by comparing the rate of the incoming traffic to the configured policer. The policer limits the bandwidth consumed by a flow of traffic. The result is passed to the marker. For more information, see the Policing and Marking section on page 32-8. Marking evaluates the policer and configuration information for the action to be taken when a packet is out of profile and decides what to do with the packet (pass through a packet without modification, mark down the QoS label in the packet, or drop the packet). For more information, see the Policing and Marking section on page 32-8. Queueing evaluates the QoS label and the corresponding DSCP or CoS value to select into which of the two ingress queues to place a packet. Queueing is enhanced with the weighted tail-drop (WTD) algorithm, a congestion-avoidance mechanism. If the threshold is exceeded, the packet is dropped. For more information, see the Queueing and Scheduling Overview section on page 32-11. Scheduling services the queues based on their configured shaped round robin (SRR) weights. One of the ingress queues is the priority queue, and SRR services it for its configured share before servicing the other queue. For more information, see the SRR Shaping and Sharing section on page 32-12.
32-3
Configuring QoS
Queueing evaluates the QoS label and the corresponding DSCP or CoS value to select into which of the four egress queues to place a packet. Because congestion can occur when multiple ingress ports simultaneously send data to an egress port, WTD is used to differentiate traffic classes and to subject the packets to different thresholds based on the QoS label. If the threshold is exceeded, the packet is dropped. For more information, see the Queueing and Scheduling Overview section on page 32-11. Scheduling services the four egress queues based on their configured SRR shared or shaped weights. One of the queues (queue 1) can be the expedite queue, which is serviced until empty before the other queues are serviced.
Actions at egress
Classification Inspect packet and determine the QoS label based on ACLs or the configuration.
Policing
Mark Based on whether the packet is in or out of profile and the configured parameters, determine whether to pass through, mark down, or drop the packet.
Queueing and scheduling Based on the QoS label, determine into which of the ingress queues to place the packet. Then service the queues according to the configured weights.
Queueing and scheduling Based on the QoS label, determine into which of the egress queues to place the packet. Then service the queues according to the configured weights.
Compare the incoming traffic rate with the configured policer and determine if the packet is in profile or out of profile.
Classification
Classification is the process of distinguishing one kind of traffic from another by examining the fields in the packet. Classification is enabled only if QoS is globally enabled on the switch. By default, QoS is globally disabled, so no classification occurs.
Note
Classification occurs only on a physical port basis. No support exists for classifying packets at the VLAN or the switch virtual interface level. During classification, the switch performs a lookup and assigns a QoS label to the packet. The QoS label identifies all QoS actions to be performed on the packet and from which queue the packet is sent. The QoS label is based on the DSCP or the CoS value in the packet and decides the queueing and scheduling actions to perform on the packet. The label is mapped according to the trust setting and the packet type as shown in Figure 32-3 on page 32-6.
32-4
78-16180-02
86682
Chapter 32
You specify which fields in the frame or packet that you want to use to classify incoming traffic. For non-IP traffic, you have these classification options as shown in Figure 32-3:
Trust the CoS value in the incoming frame (configure the port to trust CoS). Then use the configurable CoS-to-DSCP map to generate a DSCP value for the packet. Layer 2 ISL frame headers carry the CoS value in the three least-significant bits of the 1-byte User field. Layer 2 802.1Q frame headers carry the CoS value in the three most-significant bits of the Tag Control Information field. CoS values range from 0 for low priority to 7 for high priority. Trust the DSCP or trust IP precedence value in the incoming frame. These configurations are meaningless for non-IP traffic. If you configure a port with either of these options and non-IP traffic is received, the switch assigns a CoS value and generates a DSCP value from the CoS-to-DSCP map. Perform the classification based on a configured Layer 2 MAC access control list (ACL), which can examine the MAC source address, the MAC destination address, and other fields. If no ACL is configured, the packet is assigned 0 as the DSCP and CoS values, which means best-effort traffic. Otherwise, the policy-map action specifies a DSCP or CoS value to assign to the incoming frame. Trust the DSCP value in the incoming packet (configure the port to trust DSCP), and assign the same DSCP value to the packet. The IETF defines the six most-significant bits of the 1-byte ToS field as the DSCP. The priority represented by a particular DSCP value is configurable. DSCP values range from 0 to 63. For ports that are on the boundary between two QoS administrative domains, you can modify the DSCP to another value by using the configurable DSCP-to-DSCP-mutation map.
For IP traffic, you have these classification options as shown in Figure 32-3:
Trust the IP precedence value in the incoming packet (configure the port to trust IP precedence), and generate a DSCP value for the packet by using the configurable IP-precedence-to-DSCP map. The IP Version 4 specification defines the three most-significant bits of the 1-byte ToS field as the IP precedence. IP precedence values range from 0 for low priority to 7 for high priority. Trust the CoS value (if present) in the incoming packet, and generate a DSCP value for the packet by using the CoS-to-DSCP map. If the CoS value is not present, use the default port CoS value. Perform the classification based on a configured IP standard or an extended ACL, which examines various fields in the IP header. If no ACL is configured, the packet is assigned 0 as the DSCP and CoS values, which means best-effort traffic. Otherwise, the policy-map action specifies a DSCP or CoS value to assign to the incoming frame.
For information on the maps described in this section, see the Mapping Tables section on page 32-10. For configuration information on port trust states, see the Configuring Classification Using Port Trust States section on page 32-32. After classification, the packet is sent to the policing, marking, and the ingress queueing and scheduling stages.
32-5
Configuring QoS
Start Trust CoS (IP and non-IP traffic). Read ingress interface configuration for classification. Trust DSCP (IP traffic). IP and non-IP traffic Trust DSCP or IP precedence (non-IP traffic). Check if packet came with CoS label (tag). Yes Use CoS from frame. No Assign default port CoS. Trust IP precedence (IP traffic). Assign DSCP identical to DSCP in packet. (Optional) Modify the DSCP by using the DSCP-to-DSCP-mutation map. Use the DSCP value to generate the QoS label. Generate the DSCP based on IP precedence in packet. Use the IP-precedence-to-DSCP map. Use the DSCP value to generate the QoS label.
Generate DSCP from CoS-to-DSCP map. Use the DSCP value to generate the QoS label.
Done No Are there any (more) QoS ACLs configured for this interface? Yes Read next ACL. Is there a match with a "permit" action? Yes Assign the DSCP or CoS as specified by ACL action to generate the QoS label. Assign the default DSCP (0). No
Done Check if packet came with CoS label (tag). Yes Use the CoS value to generate the QoS label. No Assign the default port CoS and generate a DSCP from the CoS-to-DSCP map.
Done
Done
32-6
78-16180-02
Chapter 32
If a match with a permit action is encountered (first-match principle), the specified QoS-related action is taken. If a match with a deny action is encountered, the ACL being processed is skipped, and the next ACL is processed. If no match with a permit action is encountered and all the ACEs have been examined, no QoS processing occurs on the packet, and the switch offers best-effort service to the packet. If multiple ACLs are configured on a port, the lookup stops after the packet matches the first ACL with a permit action, and QoS processing begins.
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. After a traffic class has been defined with the ACL, you can attach a policy to it. A policy might contain multiple classes with actions specified for each one of them. A policy might include commands to classify the class as a particular aggregate (for example, assign a DSCP) or rate-limit the class. This policy is then attached to a particular port on which it becomes effective. You implement IP ACLs to classify IP traffic by using the access-list global configuration command; you implement Layer 2 MAC ACLs to classify non-IP traffic by using the mac access-list extended global configuration command. For configuration information, see the Configuring a QoS Policy section on page 32-38.
32-7
Configuring QoS
You create and name a policy map by using the policy-map global configuration command. When you enter this command, the switch enters the policy-map configuration mode. In this mode, you specify the actions to take on a specific traffic class by using the class, trust, or set policy-map configuration and policy-map class configuration commands. The policy map can contain the police and police aggregate policy-map class configuration commands, which define the policer, the bandwidth limitations of the traffic, and the action to take if the limits are exceeded. To make the policy map effective, you attach it to a port by using the service-policy interface configuration command. For more information, see the Policing and Marking section on page 32-8. For configuration information, see the Configuring a QoS Policy section on page 32-38.
Note
All traffic, regardless of whether it is bridged or routed, is subjected to a policer, if one is configured. As a result, bridged packets might be dropped or might have their DSCP or CoS fields modified when they are policed and marked. You can create these types of policers:
Individual QoS applies the bandwidth limits specified in the policer separately to each matched traffic class. You configure this type of policer within a policy map by using the police policy-map class configuration command.
Aggregate QoS applies the bandwidth limits specified in an aggregate policer cumulatively to all matched traffic flows. You configure this type of policer by specifying the aggregate policer name within a policy map by using the police aggregate policy-map class configuration command. You specify the bandwidth limits of the policer by using the mls qos aggregate-policer global configuration command. In this way, the aggregate policer is shared by multiple classes of traffic within a policy map.
Note
32-8
78-16180-02
Chapter 32
Policing uses a token-bucket algorithm. As each frame is received by the switch, a token is added to the bucket. The bucket has a hole in it and leaks at a rate that you specify as the average traffic rate in bits per second. Each time a token is added to the bucket, the switch verifies that there is enough room in the bucket. If there is not enough room, the packet is marked as nonconforming, and the specified policer action is taken (dropped or marked down). How quickly the bucket fills is a function of the bucket depth (burst-byte), the rate at which the tokens are removed (rate-bps), and the duration of the burst above the average rate. The size of the bucket imposes an upper limit on the burst length and limits the number of frames that can be transmitted back-to-back. If the burst is short, the bucket does not overflow, and no action is taken against the traffic flow. However, if a burst is long and at a higher rate, the bucket overflows, and the policing actions are taken against the frames in that burst. You configure the bucket depth (the maximum burst that is tolerated before the bucket overflows) by using the burst-byte option of the police policy-map class configuration command or the mls qos aggregate-policer global configuration command. You configure how fast (the average rate) that the tokens are removed from the bucket by using the rate-bps option of the police policy-map class configuration command or the mls qos aggregate-policer global configuration command. After you configure the policy map and policing actions, attach the policy to an ingress port by using the service-policy interface configuration command. For configuration information, see the Classifying, Policing, and Marking Traffic by Using Policy Maps section on page 32-44 and the Classifying, Policing, and Marking Traffic by Using Aggregate Policers section on page 32-47.
Figure 32-4 Policing and Marking Flowchart
Start
Is a policer configured for this packet? Yes Check if the packet is in profile by querying the policer. Yes Pass through
No
No
Check out-of-profile action configured for this policer. Mark Modify DSCP according to the policed-DSCP map. Generate a new QoS label.
Drop
Drop packet.
Done
86835
32-9
Configuring QoS
Mapping Tables
During QoS processing, the switch represents the priority of all traffic (including non-IP traffic) with an QoS label based on the DSCP or CoS value from the classification stage:
During classification, QoS uses configurable mapping tables to derive a corresponding DSCP or CoS value from a received CoS, DSCP, or IP precedence value. These maps include the CoS-to-DSCP map and the IP-precedence-to-DSCP map. You configure these maps by using the mls qos map cos-dscp and the mls qos map ip-prec-dscp global configuration commands. On an ingress port configured in the DSCP-trusted state, if the DSCP values are different between the QoS domains, you can apply the configurable DSCP-to-DSCP-mutation map to the port that is on the boundary between the two QoS domains. You configure this map by using the mls qos map dscp-mutation global configuration command.
During policing, QoS can assign another DSCP value to an IP or a non-IP packet (if the packet is out of profile and the policer specifies a marked-down value). This configurable map is called the policed-DSCP map. You configure this map by using the mls qos map policed-dscp global configuration command. Before the traffic reaches the scheduling stage, QoS stores the packet in an ingress and an egress queue according to the QoS label. The QoS label is based on the DSCP or the CoS value in the packet and selects the queue through the DSCP input and output queue threshold maps or through the CoS input and output queue threshold maps. You configure these maps by using the mls qos srr-queue {input | output} dscp-map and the mls qos srr-queue {input | output} cos-map global configuration commands.
The CoS-to-DSCP, DSCP-to-CoS, and the IP-precedence-to-DSCP maps have default values that might or might not be appropriate for your network. The default DSCP-to-DSCP-mutation map and the default policed-DSCP map are null maps; they map an incoming DSCP value to the same DSCP value. The DSCP-to-DSCP-mutation map is the only map you apply to a specific port. All other maps apply to the entire switch. For configuration information, see the Configuring DSCP Maps section on page 32-49. For information about the DSCP and CoS input queue threshold maps, see the Queueing and Scheduling on Ingress Queues section on page 32-13. For information about the DSCP and CoS output queue threshold maps, see the Queueing and Scheduling on Egress Queues section on page 32-15.
32-10
78-16180-02
Chapter 32
Policer Policer
Traffic
Classify
SRR
SRR
Policer Policer
Marker Marker
Because the total ingress bandwidth of all ports can exceed the bandwidth of the stack ring, ingress queues are located after the packet is classified, policed, and marked and before packets are forwarded into the switch fabric. Because multiple ingress ports can simultaneously send packets to an egress port and cause congestion, egress queues are located after the stack ring.
86691
32-11
Configuring QoS
For more information, see the Mapping DSCP or CoS Values to an Ingress Queue and Setting WTD Thresholds section on page 32-56, the Allocating Buffer Space to and Setting WTD Thresholds for an Egress Queue-Set section on page 32-60, and the Mapping DSCP or CoS Values to an Egress Queue and to a Threshold ID section on page 32-62.
32-12
78-16180-02
Chapter 32
Start
Are thresholds being exceeded? No Queue the packet. Service the queue according to the SRR weights.
Yes
Drop packet.
Note
SRR services the priority queue for its configured share before servicing the other queue. The switch supports two configurable ingress queues, which are serviced by SRR in shared mode only. Table 32-1 describes the queues.
Table 32-1 Ingress Queue Types
Function User traffic that is considered to be normal priority. You can configure three different thresholds to differentiate among the flows. You can use the mls qos srr-queue input threshold, the mls qos srr-queue input dscp-map, and the mls qos srr-queue input cos-map global configuration commands. High-priority user traffic such as differentiated services (DF) expedited forwarding or voice traffic. You can configure the bandwidth required for this traffic as a percentage of the total stack traffic by using the mls qos srr-queue input priority-queue global configuration command. The expedite queue has guaranteed bandwidth.
Expedite
1. The switch uses two nonconfigurable queues for traffic that is essential for proper network and stack operation.
86693
32-13
Configuring QoS
You assign each packet that flows through the switch to a queue and to a threshold. Specifically, you map DSCP or CoS values to an ingress queue and map DSCP or CoS values to a threshold ID. You use the mls qos srr-queue input dscp-map queue queue-id {dscp1...dscp8 | threshold threshold-id dscp1...dscp8 } or the mls qos srr-queue input cos-map queue queue-id {cos1...cos8 | threshold threshold-id cos1...cos8 } global configuration command. You can display the DSCP input queue threshold map and the CoS input queue threshold map by using the show mls qos maps privileged EXEC command.
WTD Thresholds
The queues use WTD to support distinct drop percentages for different traffic classes. Each queue has three drop thresholds: two configurable (explicit) WTD thresholds and one nonconfigurable (implicit) threshold preset to the queue-full state. You assign the two explicit WTD threshold percentages for threshold ID 1 and ID 2 to the ingress queues by using the mls qos srr-queue input threshold queue-id threshold-percentage1 threshold-percentage2 global configuration command. Each threshold value is a percentage of the total number of allocated buffers for the queue. The drop threshold for threshold ID 3 is preset to the queue-full state, and you cannot modify it. For more information about how WTD works, see the Weighted Tail Drop section on page 32-11.
Priority Queueing
You can configure one ingress queue as the priority queue by using the mls qos srr-queue input priority-queue queue-id bandwidth weight global configuration command. The priority queue should be used for traffic (such as voice) that requires guaranteed delivery because this queue is guaranteed part of the bandwidth regardless of the load on the stack ring. SRR services the priority queue for its configured weight as specified by the bandwidth keyword in the mls qos srr-queue input priority-queue queue-id bandwidth weight global configuration command. Then, SRR shares the remaining bandwidth with both ingress queues and services them as specified by the weights configured with the mls qos srr-queue input bandwidth weight1 weight2 global configuration command. You can combine the commands described in this section to prioritize traffic by placing packets with particular DSCPs or CoSs into certain queues, by allocating a large queue size or by servicing the queue more frequently, and by adjusting queue thresholds so that packets with lower priorities are dropped. For configuration information, see the Configuring Ingress Queue Characteristics section on page 32-55.
32-14
78-16180-02
Chapter 32
Start
Are thresholds being exceeded? No Queue the packet. Service the queue according to the SRR weights.
Yes
Drop packet.
Done
Note
If the expedite queue is enabled, SRR services it until it is empty before servicing the other three queues. Each port supports four egress queues, one of which (queue 1) can be the egress expedite queue. These queues are assigned to a queue-set. All traffic exiting the switch flows through one of these four queues and is subjected to a threshold based on the QoS label assigned to the packet.
86694
32-15
Configuring QoS
Figure 32-9 shows the egress queue buffer. The buffer space is divided between the common pool and the reserved pool. The switch uses a buffer allocation scheme to reserve a minimum amount of buffers for each egress queue, to prevent any queue or port from consuming all the buffers and depriving other queues, and to control whether to grant buffer space to a requesting queue. The switch detects whether the target queue has not consumed more buffers than its reserved amount (under-limit), whether it has consumed all of its maximum buffers (over limit), and whether the common pool is empty (no free buffers) or not empty (free buffers). If the queue is not over-limit, the switch can allocate buffer space from the reserved pool or from the common pool (if it is not empty). If there are no free buffers in the common pool or if the queue is over-limit, the switch drops the frame.
Figure 32-9 Egress Queue Buffer Allocation
Common pool
Port 1 queue 1
Port 1 queue 2
Port 1 queue 3
Port 1 queue 4
Port 2 queue 1
Port 2 queue 2
Reserved pool
86695
WTD Thresholds
You can assign each packet that flows through the switch to a queue and to a threshold. Specifically, you map DSCP or CoS values to an egress queue and map DSCP or CoS values to a threshold ID. You use the mls qos srr-queue output dscp-map queue queue-id {dscp1...dscp8 | threshold threshold-id dscp1...dscp8 } or the mls qos srr-queue output cos-map queue queue-id {cos1...cos8 | threshold
32-16
78-16180-02
Chapter 32
threshold-id cos1...cos8 } global configuration command. You can display the DSCP output queue threshold map and the CoS output queue threshold map by using the show mls qos maps privileged EXEC command. The queues use WTD to support distinct drop percentages for different traffic classes. Each queue has three drop thresholds: two configurable (explicit) WTD thresholds and one nonconfigurable (implicit) threshold preset to the queue-full state. You assign the two WTD threshold percentages for threshold ID 1 and ID 2. The drop threshold for threshold ID 3 is preset to the queue-full state, and you cannot modify it. For more information about how WTD works, see the Weighted Tail Drop section on page 32-11.
Note
You cannot assign shaped weights on 10-Gigabit interfaces. The buffer allocation together with the SRR weight ratios control how much data can be buffered and sent before packets are dropped. The weight ratio is the ratio of the frequency in which the SRR scheduler sends packets from each queue. All four queues participate in the SRR unless the expedite queue is enabled, in which case the first bandwidth weight is ignored and is not used in the ratio calculation. The expedite queue is a priority queue, and it is serviced until empty before the other queues are serviced. You enable the expedite queue by using the priority-queue out interface configuration command. You can combine the commands described in this section to prioritize traffic by placing packets with particular DSCPs or CoSs into certain queues, by allocating a large queue size or by servicing the queue more frequently, and by adjusting queue thresholds so that packets with lower priorities are dropped. For configuration information, see the Configuring Egress Queue Characteristics section on page 32-60.
Note
The egress queue default settings are suitable for most situations. You should change them only when you have a thorough understanding of the egress queues and if these settings do not meet your QoS solution.
Packet Modification
A packet is classified, policed, and queued to provide QoS. Packet modifications can occur during this process:
For IP and non-IP packets, classification involves assigning a QoS label to a packet based on the DSCP or CoS of the received packet. However, the packet is not modified at this stage; only an indication of the assigned DSCP or CoS value is carried along. The reason for this is that QoS classification and forwarding lookups occur in parallel, and it is possible that the packet is forwarded with its original DSCP to the CPU where it is again processed through software.
32-17
Configuring QoS
During policing, IP and non-IP packets can have another DSCP assigned to them (if they are out of profile and the policer specifies a markdown DSCP). Once again, the DSCP in the packet is not modified, but an indication of the marked-down value is carried along. For IP packets, the packet modification occurs at a later stage; for non-IP packets the DSCP is converted to CoS and used for queueing and scheduling decisions. Depending on the QoS label assigned to a frame and the mutation chosen, the DSCP and CoS values of the frame are rewritten. If you do not configure the mutation map and if you configure the port to trust the DSCP of the incoming frame, the DSCP value in the frame is not changed, but the CoS is rewritten according to the DSCP-to-CoS map. If you configure the port to trust the CoS of the incoming frame and it is an IP packet, the CoS value in the frame is not changed, but the DSCP might be changed according to the CoS-to-DSCP map. The input mutation causes the DSCP to be rewritten depending on the new value of DSCP chosen. The set action in a policy map also causes the DSCP to be rewritten.
Configuring Auto-QoS
You can use the auto-QoS feature to simplify the deployment of existing QoS features. Auto-QoS makes assumptions about the network design, and as a result, the switch can prioritize different traffic flows and appropriately use the ingress and egress queues instead of using the default QoS behavior. (The default is that QoS is disabled. The switch then offers best-effort service to each packet, regardless of the packet contents or size, and sends it from a single queue.) When you enable auto-QoS, it automatically classifies traffic based on the traffic type and ingress packet label. The switch uses the resulting classification to choose the appropriate egress queue. You use auto-QoS commands to identify ports connected to Cisco IP Phones and to devices running the Cisco SoftPhone application. You also use the commands to identify ports that receive trusted traffic through an uplink. Auto-QoS then performs these functions:
Detects the presence or absence of Cisco IP Phones Configures QoS classification Configures egress queues Generated Auto-QoS Configuration, page 32-18 Effects of Auto-QoS on the Configuration, page 32-23 Auto-QoS Configuration Guidelines, page 32-23 Upgrading from a Previous Software Release, page 32-24 Enabling Auto-QoS for VoIP, page 32-24 Auto-QoS Configuration Example, page 32-26
32-18
78-16180-02
Chapter 32
VoIP1 Data Traffic DSCP CoS CoS-to-Ingress Queue Map CoS-to-Egress Queue Map
1. VoIP = voice over IP
46 5
2 (queue 3)
0, 1 (queue 4)
Table 32-3 shows the generated auto-QoS configuration for the ingress queues.
Table 32-3 Auto-QoS Configuration for the Ingress Queues
Queue Number 1 2
CoS-to-Queue Map 0, 1 2, 3, 4, 5, 6, 7
Table 32-4 shows the generated auto-QoS configuration for the egress queues.
Table 32-4 Auto-QoS Configuration for the Egress Queues
Egress Queue Priority (shaped) SRR shared SRR shared SRR shared
Queue Number 1 2 3 4
CoS-to-Queue Map 5 3, 6, 7 2, 4 0, 1
Queue (Buffer) Size Queue (Buffer) for Gigabit-Capable Size for 10/100 Ports Ethernet Ports 16 percent 6 percent 17 percent 61 percent 10 percent 10 percent 26 percent 54 percent
When you enable the auto-QoS feature on the first port, these automatic actions occur:
QoS is globally enabled (mls qos global configuration command), and other global configuration commands are added. When you enter the auto qos voip cisco-phone interface configuration command on a port at the edge of the network that is connected to a Cisco IP Phone, the switch enables the trusted boundary feature. The switch uses the Cisco Discovery Protocol (CDP) to detect the presence or absence of a Cisco IP Phone. When a Cisco IP Phone is detected, the ingress classification on the port is set to trust the QoS label received in the packet. When a Cisco IP Phone is absent, the ingress classification is set to not trust the QoS label in the packet. The switch configures ingress and egress queues on the port according to the settings in Table 32-3 and Table 32-4. When you enter the auto qos voip cisco-softphone interface configuration command on a port at the edge of the network that is connected to a device running the Cisco SoftPhone, the switch uses policing to decide whether a packet is in or out of profile and to specify the action on the packet. If
32-19
Configuring QoS
the packet does not have a DSCP value of 24, 26, or 46 or is out of profile, the switch changes the DSCP value to 0. The switch configures ingress and egress queues on the port according to the settings in Table 32-3 and Table 32-4.
When you enter the auto qos voip trust interface configuration command on a port connected to the interior of the network, the switch trusts the CoS value for nonrouted ports or the DSCP value for routed ports in ingress packets (the assumption is that traffic has already been classified by other edge devices). The switch configures the ingress and egress queues on the port according to the settings in Table 32-3 and Table 32-4. For information about the trusted boundary feature, see the Configuring a Trusted Boundary to Ensure Port Security section on page 32-35.
When you enable auto-QoS by using the auto qos voip cisco-phone, the auto qos voip cisco-softphone, or the auto qos voip trust interface configuration command, the switch automatically generates a QoS configuration based on the traffic type and ingress packet label and applies the commands listed in Table 32-5 to the port.
Table 32-5 Generated Auto-QoS Configuration
Description The switch automatically enables standard QoS and configures the CoS-to-DSCP map (maps CoS values in incoming packets to a DSCP value). The switch automatically maps CoS values to an ingress queue and to a threshold ID.
The switch automatically maps CoS values to an egress queue and to a threshold ID.
32-20
78-16180-02
Chapter 32
Description The switch automatically maps DSCP values to an ingress queue and to a threshold ID.
The switch automatically maps DSCP values to an egress queue and to a threshold ID.
The switch automatically sets up the ingress queues, with queue 2 as the priority queue and queue 1 in shared mode. The switch also configures the bandwidth and buffer size for the ingress queues.
32-21
Configuring QoS
Description The switch automatically configures the egress queue buffer sizes. It configures the bandwidth and the SRR mode (shaped or shared) on the egress queues mapped to the port.
If you entered the auto qos voip trust command, the switch automatically sets the ingress classification to trust the CoS value received in the packet on a nonrouted port or to trust the DSCP value received in the packet on a routed port. If you entered the auto qos voip cisco-phone command, the switch automatically enables the trusted boundary feature, which uses the CDP to detect the presence or absence of a Cisco IP Phone. If you entered the auto qos voip cisco-softphone command, the switch automatically creates class maps and policy maps.
Switch(config)# mls qos map policed-dscp 24 26 46 to 0 Switch(config)# class-map match-all AutoQoS-VoIP-RTP-Trust Switch(config-cmap)# match ip dscp ef Switch(config)# class-map match-all AutoQoS-VoIP-Control-Trust Switch(config-cmap)# match ip dscp cs3 af31 Switch(config)# policy-map AutoQoS-Police-SoftPhone Switch(config-pmap)# class AutoQoS-VoIP-RTP-Trust Switch(config-pmap-c)# set ip dscp ef Switch(config-pmap-c)# police 320000 8000 exceed-action policed-dscp-transmit Switch(config-pmap)# class AutoQoS-VoIP-Control-Trust Switch(config-pmap-c)# set ip dscp cs3 Switch(config-pmap-c)# police 32000 8000 exceed-action policed-dscp-transmit Switch(config-if)# service-policy input AutoQoS-Police-SoftPhone
After creating the class maps and policy maps, the switch automatically applies the policy map called AutoQoS-Police-SoftPhone to an ingress interface on which auto-QoS with the Cisco SoftPhone feature is enabled.
32-22
78-16180-02
Chapter 32
In releases earlier than Cisco IOS Release 12.2(20)SE, auto-QoS configures the switch only for VoIP with Cisco IP Phones on switch ports. In Cisco IOS Release 12.2(20)SE or later, auto-QoS configures the switch for VoIP with Cisco IP Phones on nonrouted and routed ports. Auto-QoS also configures the switch for VoIP with devices running the Cisco SoftPhone application.
Note
When a device running Cisco SoftPhone is connected to a nonrouted or routed port, the switch supports only one Cisco SoftPhone application per port.
The 10-Gigabit interfaces do not support auto-QoS for VoIP with Cisco IP Phones or with devices running the Cisco SoftPhone feature. To take advantage of the auto-QoS defaults, you should enable auto-QoS before you configure other QoS commands. If necessary, you can fine-tune the QoS configuration, but we recommend that you do so only after the auto-QoS configuration is completed. For more information, see the Effects of Auto-QoS on the Configuration section on page 32-23. After auto-QoS is enabled, do not modify a policy map or aggregate policer that includes AutoQoS in its name. If you need to modify the policy map or aggregate policer, make a copy of it, and change the copied policy map or policer. To use the new policy map instead of the generated one, remove the generated policy map from the interface, and apply the new policy map to it. You can enable auto-QoS on static, dynamic-access, voice VLAN access, and trunk ports. By default, the CDP is enabled on all ports. For auto-QoS to function properly, do not disable the CDP. When enabling auto-QoS with a Cisco IP Phone on a routed port, you must assign a static IP address to the IP phone. This release supports only Cisco IP SoftPhone Version 1.3(3) or later. Connected devices must use Cisco Call Manager Version 4 or later.
32-23
Configuring QoS
Upgrade your switch to Cisco IOS Release 12.2(20)SE or later. Disable auto-QoS on all ports on which auto-QoS was enabled. Return all the global auto-QoS settings to their default values by using the no commands. Re-enable auto-QoS on the ports on which auto-QoS was disabled in Step 2. Configure the ports with the same auto-QoS settings as the previous ones.
Purpose Enter global configuration mode. Specify the port that is connected to a Cisco IP Phone, the port that is connected to a device running the Cisco SoftPhone feature, or the uplink port that is connected to another trusted switch or router in the interior of the network, and enter interface configuration mode. Enable auto-QoS. The keywords have these meanings:
Step 3
cisco-phoneIf the port is connected to a Cisco IP Phone, the QoS labels of incoming packets are trusted only when the telephone is detected. This keyword is not supported on 10-Gigabit interfaces. cisco-softphoneThe port is connected to device running the Cisco SoftPhone feature. This keyword is not supported on 10-Gigabit interfaces. The cisco-softphone keyword is supported only in Cisco IOS Release 12.2(20)SE or later. trustThe uplink port is connected to a trusted switch or router, and the VoIP traffic classification in the ingress packet is trusted.
Note
32-24
78-16180-02
Chapter 32
Command
Step 4 Step 5
Purpose Return to privileged EXEC mode. Verify your entries. This command displays the auto-QoS command on the interface on which auto-QoS was enabled. You can use the show running-config privileged EXEC command to display the auto-QoS configuration and the user modifications. To display the QoS commands that are automatically generated when auto-QoS is enabled or disabled, enter the debug auto qos privileged EXEC command before enabling auto-QoS. For more information, refer to the debug autoqos command in the command reference for this release. To disable auto-QoS on a port, use the no auto qos voip interface configuration command. Only the auto-QoS-generated interface configuration commands for this port are removed. If this is the last port on which auto-QoS is enabled and you enter the no auto qos voip command, auto-QoS is considered disabled even though the auto-QoS-generated global configuration commands remain (to avoid disrupting traffic on other ports affected by the global configuration). You can use the no mls qos global configuration command to disable the auto-QoS-generated global configuration commands. With QoS disabled, there is no concept of trusted or untrusted ports because the packets are not modified (the CoS, DSCP, and IP precedence values in the packet are not changed). Traffic is switched in pass-through mode (packets are switched without any rewrites and classified as best effort without any policing). This example shows how to enable auto-QoS and to trust the QoS labels received in incoming packets when the switch or router connected to a port is a trusted device:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# auto qos voip trust
32-25
Configuring QoS
Trunk link
Trunk link
End stations Identify this interface as connected to a trusted switch or router Identify this interface as connected to a trusted switch or router
IP Identify these interfaces as connected to IP phones Identify these interfaces as connected to IP phones
IP
IP Cisco IP phones
IP Cisco IP phones
101234
Figure 32-10 shows a network in which the VoIP traffic is prioritized over all other traffic. Auto-QoS is enabled on the switches in the wiring closets at the edge of the QoS domain.
32-26
78-16180-02
Chapter 32
Note
You should not configure any standard QoS commands before entering the auto-QoS commands. You can fine-tune the QoS configuration, but we recommend that you do so only after the auto-QoS configuration is completed. Beginning in privileged EXEC mode, follow these steps to configure the switch at the edge of the QoS domain to prioritize the VoIP traffic over all other traffic: Command Purpose Enable debugging for auto-QoS. When debugging is enabled, the switch displays the QoS configuration that is automatically generated when auto-QoS is enabled. Enter global configuration mode. Enable CDP globally. By default, it is enabled. Specify the switch port connected to the Cisco IP Phone, and enter interface configuration mode. Enable auto-QoS on the port, and specify that the port is connected to a Cisco IP Phone. The QoS labels of incoming packets are trusted only when the Cisco IP Phone is detected.
Step 1
configure terminal cdp enable interface interface-id auto qos voip cisco-phone
exit
Return to global configuration mode. Repeat Steps 4 to 6 for as many ports as are connected to the Cisco IP Phone.
interface interface-id
Specify the switch port identified as connected to a trusted switch or router, and enter interface configuration mode. See Figure 32-10. Enable auto-QoS on the port, and specify that the port is connected to a trusted router or switch. Return to privileged EXEC mode. Verify your entries. This command displays the auto-QoS command on the interface on which auto-QoS was enabled. You can use the show running-config privileged EXEC command to display the auto-QoS configuration and the user modifications. For information about the QoS configuration that might be affected by auto-QoS, see the Displaying Auto-QoS Information section on page 26-12.
Step 12
Save the auto qos voip interface configuration commands and the generated auto-QoS configuration in the configuration file.
32-27
Configuring QoS
show mls qos show mls qos maps cos-dscp show mls qos interface [interface-id] [buffers | queueing] show mls qos maps [cos-dscp | cos-input-q | cos-output-q | dscp-cos | dscp-input-q | dscp-output-q] show mls qos input-queue show running-config
For more information about these commands, refer to the command reference for this release.
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. Default Standard QoS Configuration, page 32-29 Standard QoS Configuration Guidelines, page 32-31 Enabling QoS Globally, page 32-32 (required) Configuring Classification Using Port Trust States, page 32-32 (required Configuring a QoS Policy, page 32-38 (required) Configuring DSCP Maps, page 32-49 (optional, unless you need to use the DSCP-to-DSCP-mutation map or the policed-DSCP map) Configuring Ingress Queue Characteristics, page 32-55 (optional) Configuring Egress Queue Characteristics, page 32-60 (optional)
32-28
78-16180-02
Chapter 32
1. The bandwidth is equally shared between the queues. SRR sends packets in shared mode only. 2. Queue 2 is the priority queue. SRR services the priority queue for its configured share before servicing the other queue.
Table 32-7 shows the default CoS input queue threshold map when QoS is enabled.
Table 32-7 Default CoS Input Queue Threshold Map
04 1-1
5 2-1
6, 7 1-1
Table 32-8 shows the default DSCP input queue threshold map when QoS is enabled.
Table 32-8 Default DSCP Input Queue Threshold Map
039 1-1
4047 2-1
4863 1-1
32-29
Configuring QoS
Feature Buffer Allocation WTD Drop Threshold 1 WTD Drop Threshold 2 Reserved Threshold Maximum Threshold SRR Shaped Weights (absolute) 1 SRR Shared Weights 2
1. A shaped weight of zero means that this queue is operating in shared mode. 2. One quarter of the bandwidth is allocated to each queue.
Table 32-10 shows the default CoS output queue threshold map when QoS is enabled.
Table 32-10 Default CoS Output Queue Threshold Map
0, 1 2-1
2, 3 3-1
4 4-1
5 1 -1
6, 7 4-1
Table 32-11 shows the default DSCP output queue threshold map when QoS is enabled.
Table 32-11 Default DSCP Output Queue Threshold Map
015 2-1
1631 3-1
3239 4-1
4047 1-1
4863 4-1
32-30
78-16180-02
Chapter 32
You configure QoS only on physical ports; there is no support for it on the VLAN or switch virtual interface level. It is not possible to match IP fragments against configured IP extended ACLs to enforce QoS. IP fragments are sent as best-effort. IP fragments are denoted by fields in the IP header. Only one ACL per class map and only one match class-map configuration command per class map are supported. The ACL can have multiple ACEs, which match fields against the contents of the packet. Incoming traffic is classified, policed, and marked down (if configured) regardless of whether the traffic is bridged, routed, or sent to the CPU. It is possible for bridged frames to be dropped or to have their DSCP and CoS values modified. Only one policer is applied to a packet on an ingress port. Only the average rate and committed burst parameters are configurable. The port ASIC device, which controls more than one physical port, supports 256 policers (255 policers plus 1 no policer). The maximum number of policers supported per port is 64. For example, you could configure 32 policers on a Gigabit Ethernet port and 8 policers on a Fast Ethernet port, or you could configure 64 policers on a Gigabit Ethernet port and 5 policers on a Fast Ethernet port. Policers are allocated on demand by the software and are constrained by the hardware and ASIC boundaries. You cannot reserve policers per port; there is no guarantee that a port will be assigned to any policer. You cannot configure policing on the 10-Gigabit interfaces. On a port configured for QoS, all traffic received through the port is classified, policed, and marked according to the policy map attached to the port. On a trunk port configured for QoS, traffic in all VLANs received through the port is classified, policed, and marked according to the policy map attached to the port. You can create an aggregate policer that is shared by multiple traffic classes within the same policy map. However, you cannot use the aggregate policer across different policy maps. If you have EtherChannel ports configured on your switch, you must configure QoS classification, policing, mapping, and queueing on the individual physical ports that comprise the EtherChannel. You must decide whether the QoS configuration should match on all ports in the EtherChannel. Control traffic (such as spanning-tree bridge protocol data units [BPDUs] and routing update packets) received by the switch are subject to all ingress QoS processing. You are likely to lose data when you change queue settings; therefore, try to make changes when traffic is at a minimum.
32-31
Configuring QoS
Purpose Enter global configuration mode. Enable QoS globally. QoS runs from the default settings described in the Default Standard QoS Configuration section on page 32-29, the Queueing and Scheduling on Ingress Queues section on page 32-13, and the Queueing and Scheduling on Egress Queues section on page 32-15.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Configuring the Trust State on Ports within the QoS Domain, page 32-32 Configuring the CoS Value for an Interface, page 32-34 Configuring a Trusted Boundary to Ensure Port Security, page 32-35 Configuring the DSCP Trust State on a Port Bordering Another QoS Domain, page 32-36
32-32
78-16180-02
Chapter 32
IP
Trusted boundary
101236
P3
P1
32-33
Configuring QoS
Beginning in privileged EXEC mode, follow these steps to configure the port to trust the classification of the traffic that it receives: Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the port to be trusted, and enter interface configuration mode. Valid interfaces include physical ports. Configure the port trust state. By default, the port is not trusted. If no keyword is specified, the default is dscp. The keywords have these meanings:
Step 3
cosClassifies an ingress packet by using the packet CoS value. For an untagged packet, the port default CoS value is used. The default port CoS value is 0. dscpClassifies an ingress packet by using the packet DSCP value. For a non-IP packet, the packet CoS value is used if the packet is tagged; for an untagged packet, the default port CoS is used. Internally, the switch maps the CoS value to a DSCP value by using the CoS-to-DSCP map. ip-precedenceClassifies an ingress packet by using the packet IP-precedence value. For a non-IP packet, the packet CoS value is used if the packet is tagged; for an untagged packet, the default port CoS is used. Internally, the switch maps the CoS value to a DSCP value by using the CoS-to-DSCP map.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return a port to its untrusted state, use the no mls qos trust interface configuration command. For information on how to change the default CoS value, see the Configuring the CoS Value for an Interface section on page 32-34. For information on how to configure the CoS-to-DSCP map, see the Configuring the CoS-to-DSCP Map section on page 32-50.
32-34
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to define the default CoS value of a port or to assign the default CoS to all incoming packets on the port: Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. Valid interfaces include physical ports. Configure the default CoS value for the port.
Step 3
For default-cos, specify a default CoS value to be assigned to a port. If the packet is untagged, the default CoS value becomes the packet CoS value. 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 packet and to apply the default port CoS value to the port on all incoming packets. By default, CoS override is disabled. Use the override keyword when all incoming packets on specified ports deserve higher or lower priority than packets entering from other ports. Even if a port was previously set to trust DSCP, CoS, or IP precedence, this command overrides the previously configured trust state, and all the incoming CoS values are assigned the default CoS value configured with this command. If an incoming packet is tagged, the CoS value of the packet is modified with the default CoS of the port at the ingress port.
Return to privileged EXEC mode. Verify your entries. (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.
32-35
Configuring QoS
CoS setting). By contrast, trusted boundary uses CDP to detect the presence of a Cisco IP Phone (such as the Cisco IP Phone 7910, 7935, 7940, and 7960) on a switch port. If the telephone is not detected, the trusted boundary feature disables the trusted setting on the switch port and prevents misuse of a high-priority queue. Note that the trusted boundary feature is not effective if the PC and Cisco IP Phone are connected to a hub that is connected to the switch. In some situations, you can prevent a PC connected to the Cisco IP Phone from taking advantage of a high-priority data queue. You can use the switchport priority extend cos interface configuration command to configure the telephone through the switch CLI to override the priority of the traffic received from the PC. Beginning in privileged EXEC mode, follow these steps to enable trusted boundary on a port: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable CDP globally. By default, CDP is enabled. Specify the port connected to the Cisco IP Phone, and enter interface configuration mode. Valid interfaces include physical ports. Enable CDP on the port. By default, CDP is enabled. Configure the switch port to trust the CoS value in traffic received from the Cisco IP Phone. or Configure the routed port to trust the DSCP value in traffic received from the Cisco IP Phone. By default, the port is not trusted. Specify that the Cisco IP Phone is a trusted device. You cannot enable both trusted boundary and auto-QoS (auto qos voip interface configuration command) at the same time; they are mutually exclusive.
Step 4 Step 5
Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable the trusted boundary feature, use the no mls qos trust device interface configuration command.
Configuring the DSCP Trust State on a Port Bordering Another QoS Domain
If you are administering two separate QoS domains between which you want to implement QoS features for IP traffic, you can configure the switch ports bordering the domains to a DSCP-trusted state as shown in Figure 32-12. Then the receiving port accepts the DSCP-trusted value and avoids the classification stage of QoS. If the two domains use different DSCP values, you can configure the DSCP-to-DSCP-mutation map to translate a set of DSCP values to match the definition in the other domain.
32-36
78-16180-02
Chapter 32
QoS Domain 1
QoS Domain 2
IP traffic
Beginning in privileged EXEC mode, follow these steps to configure the DSCP-trusted state on a port and modify the DSCP-to-DSCP-mutation map. To ensure a consistent mapping strategy across both QoS domains, you must perform this procedure on the ports in both domains: Command
Step 1 Step 2
Purpose Enter global configuration mode. Modify the DSCP-to-DSCP-mutation map. The default DSCP-to-DSCP-mutation map is a null map, which maps an incoming DSCP value to the same DSCP value.
For dscp-mutation-name, enter the mutation map name. You can create more than one map by specifying a new name. For in-dscp, enter up to eight DSCP values separated by spaces. Then enter the to keyword. For out-dscp, enter a single DSCP value.
interface interface-id mls qos trust dscp mls qos dscp-mutation dscp-mutation-name
Specify the port to be trusted, and enter interface configuration mode. Valid interfaces include physical ports. Configure the ingress port as a DSCP-trusted port. By default, the port is not trusted. Apply the map to the specified ingress DSCP-trusted port. For dscp-mutation-name, specify the mutation map name created in Step 2. You can configure multiple DSCP-to-DSCP-mutation maps on an ingress port.
Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
101235
32-37
Configuring QoS
To return a port to its non-trusted state, use the no mls qos trust interface configuration command. To return to the default DSCP-to-DSCP-mutation map values, use the no mls qos map dscp-mutation dscp-mutation-name global configuration command. This example shows how to configure a port to the DSCP-trusted state and to modify the DSCP-to-DSCP-mutation map (named gi1/0/2-mutation) so that incoming DSCP values 10 to 13 are mapped to DSCP 30:
Switch(config)# mls qos map dscp-mutation gi1/0/2-mutation 10 11 12 13 to 30 Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# mls qos trust dscp Switch(config-if)# mls qos dscp-mutation gi1/0/2-mutation Switch(config-if)# end
Classifying Traffic by Using ACLs, page 32-38 Classifying Traffic by Using Class Maps, page 32-42 Classifying, Policing, and Marking Traffic by Using Policy Maps, page 32-44 Classifying, Policing, and Marking Traffic by Using Aggregate Policers, page 32-47
32-38
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to create an IP standard ACL for IP traffic: Command
Step 1 Step 2
Purpose Enter global configuration mode. Create an IP standard ACL, repeating the command as many times as necessary.
For access-list-number, enter the access list number. The range is 1 to 99 and 1300 to 1999. Use the permit keyword to permit a certain type of traffic if the conditions are matched. Use the deny keyword to deny a certain type of traffic if conditions are matched. For source, enter the network or host from which the packet is being sent. You can use the any keyword as an abbreviation for 0.0.0.0 255.255.255.255. (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. 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.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To delete an access list, use the no access-list access-list-number global configuration command. This example shows how to allow access for only those hosts on the three specified networks. The wildcard bits apply to the host portions of the network addresses. Any host with a source address that does not match the access list statements is rejected.
Switch(config)# access-list 1 permit Switch(config)# access-list 1 permit Switch(config)# access-list 1 permit ! (Note: all other access implicitly 192.5.255.0 0.0.0.255 128.88.0.0 0.0.255.255 36.0.0.0 0.0.0.255 denied)
32-39
Configuring QoS
Beginning in privileged EXEC mode, follow these steps to create an IP extended ACL for IP traffic: Command
Step 1 Step 2
Purpose Enter global configuration mode. Create an IP extended ACL, repeating the command as many times as necessary.
configure terminal access-list access-list-number {deny | permit} protocol source source-wildcard destination destination-wildcard
For access-list-number, enter the access list number. The range is 100 to 199 and 2000 to 2699. Use the permit keyword to permit a certain type of traffic if the conditions are matched. Use the deny keyword to deny a certain type of traffic if conditions are matched. For protocol, enter the name or number of an IP protocol. Use the question mark (?) to see a list of available protocol keywords. For source, enter the network or host from which the packet is being sent. You specify this by using dotted decimal notation, by using the any keyword as an abbreviation for source 0.0.0.0 source-wildcard 255.255.255.255, or by using the host keyword for source 0.0.0.0. For source-wildcard, enter the wildcard bits by placing ones in the bit positions that you want to ignore. You specify the wildcard by using dotted decimal notation, by using the any keyword as an abbreviation for source 0.0.0.0 source-wildcard 255.255.255.255, or by using the host keyword for source 0.0.0.0. For destination, enter the network or host to which the packet is being sent. You have the same options for specifying the destination and destination-wildcard as those described by source and source-wildcard. 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.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To delete an access list, use the no access-list access-list-number global configuration command. This example shows how to create an ACL that permits IP traffic from any source to any destination that has the DSCP value set to 32:
Switch(config)# access-list 100 permit ip any any dscp 32
This example shows how to create an ACL that permits IP traffic from a source host at 10.1.1.1 to a destination host at 10.1.1.2 with a precedence value of 5:
Switch(config)# access-list 100 permit ip host 10.1.1.1 host 10.1.1.2 precedence 5
This example shows how to create an ACL that permits PIM traffic from any source to a destination group address of 224.0.0.2 with a DSCP set to 32:
Switch(config)# access-list 102 permit pim any 224.0.0.2 dscp 32
32-40
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to create a Layer 2 MAC ACL for non-IP traffic: Command
Step 1 Step 2
Purpose Enter global configuration mode. Create a Layer 2 MAC ACL by specifying the name of the list. After entering this command, the mode changes to extended MAC ACL configuration.
Step 3
{permit | deny } {host src-MAC-addr mask | Specify the type of traffic to permit or deny if the conditions are any | host dst-MAC-addr | dst-MAC-addr matched, entering the command as many times as necessary. mask} [type mask] For src-MAC-addr, enter the MAC address of the host from which the packet is being sent. You specify this by using the hexadecimal format (H.H.H), by using the any keyword as an abbreviation for source 0.0.0, source-wildcard 255.255.255, or by using the host keyword for source 0.0.0.
For mask, enter the wildcard bits by placing ones in the bit positions that you want to ignore. For dst-MAC-addr, enter the MAC address of the host to which the packet is being sent. You specify this by using the hexadecimal format (H.H.H), by using the any keyword as an abbreviation for source 0.0.0, source-wildcard 255.255.255, or by using the host keyword for source 0.0.0. (Optional) For type mask, specify the Ethertype number of a packet with Ethernet II or SNAP encapsulation to identify the protocol of the packet. For type, the range is from 0 to 65535, typically specified in hexadecimal. For mask, enter the dont care bits applied to the Ethertype before testing for a match. 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.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To delete an access list, use the no mac access-list extended access-list-name global configuration command. This example shows how to create a Layer 2 MAC ACL with two permit statements. The first statement allows traffic from the host with MAC address 0001.0000.0001 to the host with MAC address 0002.0000.0001. The second statement allows only Ethertype XNS-IDP traffic from the host with MAC address 0001.0000.0002 to the host with MAC address 0002.0000.0002.
Switch(config)# mac access-list extended maclist1 Switch(config-ext-macl)# permit 0001.0000.0001 0.0.0 0002.0000.0001 0.0.0 Switch(config-ext-macl)# permit 0001.0000.0002 0.0.0 0002.0000.0002 0.0.0 xns-idp ! (Note: all other access implicitly denied)
32-41
Configuring QoS
Note
You can also create class-maps during policy map creation by using the class policy-map configuration command. For more information, see the Classifying, Policing, and Marking Traffic by Using Policy Maps section on page 32-44. Beginning in privileged EXEC mode, follow these steps to create a class map and to define the match criterion to classify traffic:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Create an IP standard or extended ACL for IP traffic or a Layer 2 MAC ACL for non-IP traffic, repeating the command as many times as necessary.
For more information, see the Classifying Traffic by Using ACLs access-list access-list-number {deny | permit} protocol source [source-wildcard] section on page 32-38. destination [destination-wildcard] Note When creating an access list, remember that, by default, the end of the access list contains an implicit deny statement for or everything if it did not find a match before reaching the end. mac access-list extended name {permit | deny} {host src-MAC-addr mask | any | host dst-MAC-addr | dst-MAC-addr mask} [type mask]
Step 3
Create a class map, and enter class-map configuration mode. By default, no class maps are defined.
(Optional) Use the match-all keyword to perform a logical-AND of all matching statements under this class map. All match criteria in the class map must be matched. (Optional) Use the match-any keyword to perform a logical-OR of all matching statements under this class map. One or more match criteria must be matched. For class-map-name, specify the name of the class map.
Because only one match command per class map is supported, the match-all and match-any keywords function the same.
32-42
78-16180-02
Chapter 32
Command
Step 4
Purpose
match {access-group acl-index-or-name | Define the match criterion to classify traffic. ip dscp dscp-list | ip precedence By default, no match criterion is defined. ip-precedence-list} Only one match criterion per class map is supported, and only one ACL per class map is supported.
For access-group acl-index-or-name, specify the number or name of the ACL created in Step 2. For ip dscp dscp-list, enter a list of up to eight IP DSCP values to match against incoming packets. Separate each value with a space. The range is 0 to 63. For ip precedence ip-precedence-list, enter a list of up to eight IP-precedence values to match against incoming packets. Separate each value with a space. The range is 0 to 7.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To delete an existing class map, use the no class-map [match-all | match-any] class-map-name global configuration command. To remove a match criterion, use the no match {access-group acl-index-or-name | ip dscp | ip precedence} class-map configuration command. This example shows how to configure the class map called class1. The class1 has one match criterion, which is access list 103. It permits traffic from any host to any destination that matches a DSCP value of 10.
Switch(config)# access-list 103 permit any any dscp 10 Switch(config)# class-map class1 Switch(config-cmap)# match access-group 103 Switch(config-cmap)# end Switch#
This example shows how to create a class map called class2, which matches incoming traffic with DSCP values of 10, 11, and 12.
Switch(config)# class-map class2 Switch(config-cmap)# match ip dscp 10 11 12 Switch(config-cmap)# end Switch#
This example shows how to create a class map called class3, which matches incoming traffic with IP-precedence values of 5, 6, and 7:
Switch(config)# class-map class3 Switch(config-cmap)# match ip precedence 5 6 7 Switch(config-cmap)# end Switch#
32-43
Configuring QoS
A policy map can contain multiple class statements, each with different match criteria and policers. A separate policy-map class can exist for each type of traffic received through a port. A policy-map trust state and a port trust state are mutually exclusive, and whichever is configured last takes affect.
You can attach only one policy map per ingress port.
Note
The 10-Gigabit interfaces do not support policing by using a policy map. Beginning in privileged EXEC mode, follow these steps to create a policy map:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Create a class map, and enter class-map configuration mode. By default, no class maps are defined.
(Optional) Use the match-all keyword to perform a logical-AND of all matching statements under this class map. All match criteria in the class map must be matched. (Optional) Use the match-any keyword to perform a logical-OR of all matching statements under this class map. One or more match criteria must be matched. For class-map-name, specify the name of the class map.
Because only one match command per class map is supported, the match-all and match-any keywords function the same.
policy-map policy-map-name
Create a policy map by entering the policy map name, and enter policy-map configuration mode. By default, no policy maps are defined. The default behavior of a policy map is to set the DSCP to 0 if the packet is an IP packet and to set the CoS to 0 if the packet is tagged. No policing is performed.
32-44
78-16180-02
Chapter 32
Command
Step 4
Purpose Define a traffic classification, and enter policy-map class configuration mode. By default, no policy map class-maps are defined. If a traffic class has already been defined by using the class-map global configuration command, specify its name for class-map-name in this command.
class class-map-name
Step 5
Configure the trust state, which QoS uses to generate a CoS-based or DSCP-based QoS label.
Note
This command is mutually exclusive with the set command within the same policy map. If you enter the trust command, then skip Step 6.
By default, the port is not trusted. If no keyword is specified when the command is entered, the default is dscp. The keywords have these meanings:
cosQoS derives the DSCP value by using the received or default port CoS value and the CoS-to-DSCP map. dscpQoS derives the DSCP value by using the DSCP value from the ingress packet. For non-IP packets that are tagged, QoS derives the DSCP value by using the received CoS value; for non-IP packets that are untagged, QoS derives the DSCP value by using the default port CoS value. In either case, the DSCP value is derived from the CoS-to-DSCP map. ip-precedenceQoS derives the DSCP value by using the IP precedence value from the ingress packet and the IP-precedence-to-DSCP map. For non-IP packets that are tagged, QoS derives the DSCP value by using the received CoS value; for non-IP packets that are untagged, QoS derives the DSCP value by using the default port CoS value. In either case, the DSCP value is derived from the CoS-to-DSCP map.
For more information, see the Configuring the CoS-to-DSCP Map section on page 32-50.
Step 6
For ip dscp new-dscp, enter a new DSCP value to be assigned to the classified traffic. The range is 0 to 63. For ip precedence new-precedence, enter a new IP-precedence value to be assigned to the classified traffic. The range is 0 to 7.
32-45
Configuring QoS
Command
Step 7
Purpose Define a policer for the classified traffic. By default, no policer is defined. For information on the number of policers supported, see the Standard QoS Configuration Guidelines section on page 32-31.
For rate-bps, specify average traffic rate in bits per second (bps). The range is 8000 to 1000000000. For burst-byte, specify the normal burst size in bytes. The range is 8000 to 1000000. (Optional) Specify the action to take when the rates are exceeded. Use the exceed-action drop keywords to drop the packet. Use the exceed-action policed-dscp-transmit keywords to mark down the DSCP value (by using the policed-DSCP map) and send the packet. For more information, see the Configuring the Policed-DSCP Map section on page 32-51.
Return to policy map configuration mode. Return to global configuration mode. Specify the port to attach to the policy map, and enter interface configuration mode. Valid interfaces include physical ports. Specify the policy-map name, and apply it to an ingress port. Only one policy map per ingress port is supported. Return to privileged EXEC mode.
Step 11
show policy-map [policy-map-name [class Verify your entries. class-map-name]] copy running-config startup-config (Optional) Save your entries in the configuration file.
To delete an existing policy map, use the no policy-map policy-map-name global configuration command. To delete an existing class map, use the no class class-map-name policy-map configuration command. To return to the untrusted state, use the no trust policy-map configuration command. To remove an assigned DSCP or IP precedence value, use the no set {ip dscp new-dscp | ip precedence new-precedence} policy-map configuration command. To remove an existing policer, use the no police rate-bps burst-byte [exceed-action {drop | policed-dscp-transmit}] policy-map configuration command. To remove the policy map and port association, use the no service-policy input policy-map-name interface configuration command. This example shows how to create a policy map and attach it to an ingress port. In the configuration, the IP standard ACL permits traffic from network 10.1.0.0. For traffic matching this classification, the DSCP value in the incoming packet is trusted. If the matched traffic exceeds an average traffic rate of 48000 bps and a normal burst size of 8000 bytes, its DSCP is marked down (based on the policed-DSCP map) and sent:
Switch(config)# access-list 1 permit 10.1.0.0 0.0.255.255 Switch(config)# class-map ipclass1 Switch(config-cmap)# match access-group 1 Switch(config-cmap)# exit Switch(config)# policy-map flow1t Switch(config-pmap)# class ipclass1 Switch(config-pmap-c)# trust dscp
32-46
78-16180-02
Chapter 32
Switch(config-pmap-c)# police 48000 8000 exceed-action policed-dscp-transmit Switch(config-pmap-c)# exit Switch(config-pmap)# exit Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# service-policy input flow1t
This example shows how to create a Layer 2 MAC ACL with two permit statements and attach it to an ingress port. The first permit statement allows traffic from the host with MAC address 0001.0000.0001 destined for the host with MAC address 0002.0000.0001. The second permit statement allows only Ethertype XNS-IDP traffic from the host with MAC address 0001.0000.0002 destined for the host with MAC address 0002.0000.0002.
Switch(config)# mac access-list extended maclist1 Switch(config-ext-mac)# permit 0001.0000.0001 0.0.0 Switch(config-ext-mac)# permit 0001.0000.0002 0.0.0 Switch(config-ext-mac)# exit Switch(config)# mac access-list extended maclist2 Switch(config-ext-mac)# permit 0001.0000.0003 0.0.0 Switch(config-ext-mac)# permit 0001.0000.0004 0.0.0 Switch(config-ext-mac)# exit Switch(config)# class-map macclass1 Switch(config-cmap)# match access-group maclist1 Switch(config-cmap)# exit Switch(config)# policy-map macpolicy1 Switch(config-pmap)# class macclass1 Switch(config-pmap-c)# set ip dscp 63 Switch(config-pmap-c)# exit Switch(config-pmap)# class macclass2 maclist2 Switch(config-pmap-c)# set ip dscp 45 Switch(config-pmap-c)# exit Switch(config-pmap)# exit Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# mls qos trust cos Switch(config-if)# service-policy input macpolicy1 0002.0000.0001 0.0.0 0002.0000.0002 0.0.0 xns-idp
Note
32-47
Configuring QoS
Beginning in privileged EXEC mode, follow these steps to create an aggregate policer: Command
Step 1 Step 2
Purpose Enter global configuration mode. Define the policer parameters that can be applied to multiple traffic classes within the same policy map. By default, no aggregate policer is defined. For information on the number of policers supported, see the Standard QoS Configuration Guidelines section on page 32-31.
configure terminal mls qos aggregate-policer aggregate-policer-name rate-bps burst-byte exceed-action {drop | policed-dscp-transmit}
For aggregate-policer-name, specify the name of the aggregate policer. For rate-bps , specify average traffic rate in bits per second (bps). The range is 8000 to 1000000000. For burst-byte, specify the normal burst size in bytes. The range is 8000 to 1000000. Specify the action to take when the rates are exceeded. Use the exceed-action drop keywords to drop the packet. Use the exceed-action policed-dscp-transmit keywords to mark down the DSCP value (by using the policed-DSCP map) and send the packet. For more information, see the Configuring the Policed-DSCP Map section on page 32-51.
Step 3
Create a class map to classify traffic as necessary. For more information, see the Classifying Traffic by Using Class Maps section on page 32-42. Create a policy map by entering the policy map name, and enter policy-map configuration mode. For more information, see the Classifying, Policing, and Marking Traffic by Using Policy Maps section on page 32-44.
Step 4
Step 5
class class-map-name
Define a traffic classification, and enter policy-map class configuration mode. For more information, see the Classifying, Policing, and Marking Traffic by Using Policy Maps section on page 32-44.
Step 6
Apply an aggregate policer to multiple classes in the same policy map. For aggregate-policer-name, enter the name specified in Step 2. Return to global configuration mode. Specify the port to attach to the policy map, and enter interface configuration mode. Valid interfaces include physical ports. Specify the policy-map name, and apply it to an ingress port. Only one policy map per ingress port is supported. Return to privileged EXEC mode.
Step 7 Step 8
Step 9
Step 10
32-48
78-16180-02
Chapter 32
Command
Step 11 Step 12
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To remove the specified aggregate policer from a policy map, use the no police aggregate aggregate-policer-name policy map configuration mode. To delete an aggregate policer and its parameters, use the no mls qos aggregate-policer aggregate-policer-name global configuration command. This example shows how to create an aggregate policer and attach it to multiple classes within a policy map. In the configuration, the IP ACLs permit traffic from network 10.1.0.0 and from host 11.3.1.1. For traffic coming from network 10.1.0.0, the DSCP in the incoming packets is trusted. For traffic coming from host 11.3.1.1, the DSCP in the packet is changed to 56. The traffic rate from the 10.1.0.0 network and from host 11.3.1.1 is policed. If the traffic exceeds an average rate of 48000 bps and a normal burst size of 8000 bytes, its DSCP is marked down (based on the policed-DSCP map) and sent. The policy map is attached to an ingress port.
Switch(config)# access-list 1 permit 10.1.0.0 0.0.255.255 Switch(config)# access-list 2 permit 11.3.1.1 Switch(config)# mls qos aggregate-police transmit1 48000 8000 exceed-action policed-dscp-transmit Switch(config)# class-map ipclass1 Switch(config-cmap)# match access-group 1 Switch(config-cmap)# exit Switch(config)# class-map ipclass2 Switch(config-cmap)# match access-group 2 Switch(config-cmap)# exit Switch(config)# policy-map aggflow1 Switch(config-pmap)# class ipclass1 Switch(config-pmap-c)# trust dscp Switch(config-pmap-c)# police aggregate transmit1 Switch(config-pmap-c)# exit Switch(config-pmap)# class ipclass2 Switch(config-pmap-c)# set ip dscp 56 Switch(config-pmap-c)# police aggregate transmit1 Switch(config-pmap-c)# exit Switch(config-pmap)# exit Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# service-policy input aggflow1 Switch(config-if)# exit
Configuring the CoS-to-DSCP Map, page 32-50 (optional) Configuring the IP-Precedence-to-DSCP Map, page 32-50 (optional) Configuring the Policed-DSCP Map, page 32-51 (optional, unless the null settings in the map are not appropriate) Configuring the DSCP-to-CoS Map, page 32-52 (optional) Configuring the DSCP-to-DSCP-Mutation Map, page 32-53 (optional, unless the null settings in the map are not appropriate)
All the maps, except the DSCP-to-DSCP-mutation map, are globally defined and are applied to all ports.
32-49
Configuring QoS
0 0
1 8
2 16
3 24
4 32
5 40
6 48
7 56
If these values are not appropriate for your network, you need to modify them. Beginning in privileged EXEC mode, follow these steps to modify the CoS-to-DSCP map. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Modify the CoS-to-DSCP map. For dscp1...dscp8, enter eight DSCP values that correspond to CoS values 0 to 7. Separate each DSCP value with a space. The DSCP range is 0 to 63.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default map, use the no mls qos cos-dscp global configuration command. This example shows how to modify and display the CoS-to-DSCP map:
Switch(config)# mls qos map cos-dscp 10 15 20 25 30 35 40 45 Switch(config)# end Switch# show mls qos maps cos-dscp Cos-dscp map: cos: 0 1 2 3 4 5 6 7 -------------------------------dscp: 10 15 20 25 30 35 40 45
0 0
1 8
2 16
3 24
4 32
5 40
6 48
7 56
32-50
78-16180-02
Chapter 32
If these values are not appropriate for your network, you need to modify them. Beginning in privileged EXEC mode, follow these steps to modify the IP-precedence-to-DSCP map. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Modify the IP-precedence-to-DSCP map. For dscp1...dscp8, enter eight DSCP values that correspond to the IP precedence values 0 to 7. Separate each DSCP value with a space. The DSCP range is 0 to 63. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default map, use the no mls qos ip-prec-dscp global configuration command. This example shows how to modify and display the IP-precedence-to-DSCP map:
Switch(config)# mls qos map ip-prec-dscp 10 15 20 25 30 35 40 45 Switch(config)# end Switch# show mls qos maps ip-prec-dscp IpPrecedence-dscp map: ipprec: 0 1 2 3 4 5 6 7 -------------------------------dscp: 10 15 20 25 30 35 40 45
For dscp-list, enter up to eight DSCP values separated by spaces. Then enter the to keyword. For mark-down-dscp, enter the corresponding policed (marked down) DSCP value.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
32-51
Configuring QoS
To return to the default map, use the no mls qos policed-dscp global configuration command. This example shows how to map DSCP 50 to 57 to a marked-down DSCP value of 0:
Switch(config)# mls qos map policed-dscp 50 51 52 53 54 55 56 57 to 0 Switch(config)# end Switch# show mls qos maps policed-dscp Policed-dscp map: d1 : d2 0 1 2 3 4 5 6 7 8 9 --------------------------------------0 : 00 01 02 03 04 05 06 07 08 09 1 : 10 11 12 13 14 15 16 17 18 19 2 : 20 21 22 23 24 25 26 27 28 29 3 : 30 31 32 33 34 35 36 37 38 39 4 : 40 41 42 43 44 45 46 47 48 49 5 : 00 00 00 00 00 00 00 00 58 59 6 : 60 61 62 63
Note
In this policed-DSCP map, the marked-down DSCP values are shown in the body of the matrix. The d1 column specifies the most-significant digit of the original DSCP; the d2 row specifies the least-significant digit of the original DSCP. The intersection of the d1 and d2 values provides the marked-down value. For example, an original DSCP value of 53 corresponds to a marked-down DSCP value of 0.
07 0
815 1
1623 2
2431 3
3239 4
4047 5
4855 6
5663 7
If these values are not appropriate for your network, you need to modify them. Beginning in privileged EXEC mode, follow these steps to modify the DSCP-to-CoS map. This procedure is optional. Command
Step 1 Step 2
For dscp-list, enter up to eight DSCP values separated by spaces. Then enter the to keyword. For cos, enter the CoS value to which the DSCP values correspond.
end
32-52
78-16180-02
Chapter 32
Command
Step 4 Step 5
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default map, use the no mls qos dscp-cos global configuration command. This example shows how to map DSCP values 0, 8, 16, 24, 32, 40, 48, and 50 to CoS value 0 and to display the map:
Switch(config)# mls qos map dscp-cos 0 8 16 24 32 40 48 50 to 0 Switch(config)# end Switch# show mls qos maps dscp-cos Dscp-cos map: d1 : d2 0 1 2 3 4 5 6 7 8 9 --------------------------------------0 : 00 00 00 00 00 00 00 00 00 01 1 : 01 01 01 01 01 01 00 02 02 02 2 : 02 02 02 02 00 03 03 03 03 03 3 : 03 03 00 04 04 04 04 04 04 04 4 : 00 05 05 05 05 05 05 05 00 06 5 : 00 06 06 06 06 06 07 07 07 07 6 : 07 07 07 07
Note
In the above DSCP-to-CoS map, the CoS values are shown in the body of the matrix. The d1 column specifies the most-significant digit of the DSCP; the d2 row specifies the least-significant digit of the DSCP. The intersection of the d1 and d2 values provides the CoS value. For example, in the DSCP-to-CoS map, a DSCP value of 08 corresponds to a CoS value of 0.
32-53
Configuring QoS
Beginning in privileged EXEC mode, follow these steps to modify the DSCP-to-DSCP-mutation map. This procedure is optional. Command
Step 1 Step 2
For dscp-mutation-name, enter the mutation map name. You can create more than one map by specifying a new name. For in-dscp , enter up to eight DSCP values separated by spaces. Then enter the to keyword. For out-dscp, enter a single DSCP value.
interface interface-id
Specify the port to which to attach the map, and enter interface configuration mode. Valid interfaces include physical ports. Configure the ingress port as a DSCP-trusted port. By default, the port is not trusted. Apply the map to the specified ingress DSCP-trusted port. For dscp-mutation-name, enter the mutation map name specified in Step 2. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Step 4 Step 5
mls qos trust dscp mls qos dscp-mutation dscp-mutation-name end show mls qos maps dscp-mutation copy running-config startup-config
To return to the default map, use the no mls qos dscp-mutation dscp-mutation-name global configuration command.
32-54
78-16180-02
Chapter 32
This example shows how to define the DSCP-to-DSCP-mutation map. All the entries that are not explicitly configured are not modified (remains as specified in the null map):
Switch(config)# mls qos map dscp-mutation mutation1 Switch(config)# mls qos map dscp-mutation mutation1 Switch(config)# mls qos map dscp-mutation mutation1 Switch(config)# mls qos map dscp-mutation mutation1 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# mls qos trust dscp Switch(config-if)# mls qos dscp-mutation mutation1 Switch(config-if)# end Switch# show mls qos maps dscp-mutation mutation1 Dscp-dscp mutation map: mutation1: d1 : d2 0 1 2 3 4 5 6 7 8 9 --------------------------------------0 : 00 00 00 00 00 00 00 00 10 10 1 : 10 10 10 10 14 15 16 17 18 19 2 : 20 20 20 23 24 25 26 27 28 29 3 : 30 30 30 30 30 35 36 37 38 39 4 : 40 41 42 43 44 45 46 47 48 49 5 : 50 51 52 53 54 55 56 57 58 59 6 : 60 61 62 63 1 2 3 4 5 6 7 to 0 8 9 10 11 12 13 to 10 20 21 22 to 20 30 31 32 33 34 to 30
Note
In the above DSCP-to-DSCP-mutation map, the mutated values are shown in the body of the matrix. The d1 column specifies the most-significant digit of the original DSCP; the d2 row specifies the least-significant digit of the original DSCP. The intersection of the d1 and d2 values provides the mutated value. For example, a DSCP value of 12 corresponds to a mutated value of 10.
Which packets are assigned (by DSCP or CoS value) to each queue? What drop percentage thresholds apply to each queue, and which CoS or DSCP values map to each threshold? How much of the available buffer space is allocated between the queues? How much of the available bandwidth is allocated between the queues? Is there traffic (such as voice) that should be given high priority? Mapping DSCP or CoS Values to an Ingress Queue and Setting WTD Thresholds, page 32-56 (optional) Allocating Buffer Space Between the Ingress Queues, page 32-57 (optional) Allocating Bandwidth Between the Ingress Queues, page 32-58 (optional) Configuring the Ingress Priority Queue, page 32-59 (optional)
32-55
Configuring QoS
Mapping DSCP or CoS Values to an Ingress Queue and Setting WTD Thresholds
You can prioritize traffic by placing packets with particular DSCPs or CoSs into certain queues and adjusting the queue thresholds so that packets with lower priorities are dropped. Beginning in privileged EXEC mode, follow these steps to map DSCP or CoS values to an ingress queue and to set WTD thresholds. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Map DSCP or CoS values to an ingress queue and to a threshold ID. By default, DSCP values 039 and 4863 are mapped to queue 1 and threshold 1. DSCP values 4047 are mapped to queue 2 and threshold 1. By default, CoS values 04, 6, and 7 are mapped to queue 1 and threshold 1. CoS value 5 is mapped to queue 2 and threshold 1.
configure terminal mls qos srr-queue input dscp-map queue queue-id threshold threshold-id dscp1...dscp8 or mls qos srr-queue input cos-map queue queue-id threshold threshold-id cos1...cos8
For queue-id, the range is 1 to 2. For threshold-id, the range is 1 to 3. The drop-threshold percentage for threshold 3 is predefined. It is set to the queue-full state. For dscp1...dscp8, enter up to eight values, and separate each value with a space. The range is 0 to 63. For cos1...cos8 , enter up to eight values, and separate each value with a space. The range is 0 to 7.
Step 3
Assign the two WTD threshold percentages for (threshold 1 and 2) to an ingress queue. The default, both thresholds are set to 100 percent.
For queue-id, the range is 1 to 2. For threshold-percentage1 threshold-percentage2, the range is 1 to 100. Separate each value with a space.
Each threshold value is a percentage of the total number of queue descriptors allocated for the queue.
Step 4 Step 5
Return to privileged EXEC mode. Verify your entries. The DSCP input queue threshold map appears as a matrix. The d1 column specifies the most-significant digit of the DSCP number; the d2 row specifies the least-significant digit in the DSCP number. The intersection of the d1 and the d2 values provides the queue ID and threshold ID; for example, queue 2 and threshold 1 (02-01). The CoS input queue threshold map shows the CoS value in the top row and the corresponding queue ID and threshold ID in the second row; for example, queue 2 and threshold 2 (2-2).
Step 6
To return to the default CoS input queue threshold map or the default DSCP input queue threshold map, use the no mls qos srr-queue input cos-map or the no mls qos srr-queue input dscp-map global configuration command. To return to the default WTD threshold percentages, use the no mls qos srr-queue input threshold queue-id global configuration command.
32-56
78-16180-02
Chapter 32
This example shows how to map DSCP values 0 to 6 to ingress queue 1 and to threshold 1 with a drop threshold of 50 percent. It maps DSCP values 20 to 26 to ingress queue 1 and to threshold 2 with a drop threshold of 70 percent:
Switch(config)# mls qos srr-queue input dscp-map queue 1 threshold 1 0 1 2 3 4 5 6 Switch(config)# mls qos srr-queue input dscp-map queue 1 threshold 2 20 21 22 23 24 25 26 Switch(config)# mls qos srr-queue input threshold 1 50 70
In this example, the DSCP values (0 to 6) are assigned the WTD threshold of 50 percent and will be dropped sooner than the DSCP values (20 to 26) assigned to the WTD threshold of 70 percent.
Purpose Enter global configuration mode. Allocate the buffers between the ingress queues By default 90 percent of the buffers are allocated to queue 1, and 10 percent of the buffers are allocated to queue 2. For percentage1 percentage2, the range is 0 to 100. Separate each value with a space. You should allocate the buffers so that the queues can handle any incoming bursty traffic.
Step 3 Step 4
end show mls qos interface buffer or show mls qos input-queue
Step 5
To return to the default setting, use the no mls qos srr-queue input buffers global configuration command. This example shows how to allocate 60 percent of the buffer space to ingress queue 1 and 40 percent of the buffer space to ingress queue 2:
Switch(config)# mls qos srr-queue input buffers 60 40
32-57
Configuring QoS
Purpose Enter global configuration mode. Assign shared round robin weights to the ingress queues. The default setting for weight1 and weight2 is 4 (1/2 of the bandwidth is equally shared between the two queues). For weight1 and weight2, the range is 1 to 100. Separate each value with a space. SRR services the priority queue for its configured weight as specified by the bandwidth keyword in the mls qos srr-queue input priority-queue queue-id bandwidth weight global configuration command. Then, SRR shares the remaining bandwidth with both ingress queues and services them as specified by the weights configured with the mls qos srr-queue input bandwidth weight1 weight2 global configuration command. For more information, see the Configuring the Ingress Priority Queue section on page 32-59.
Step 3 Step 4
end show mls qos interface queueing or show mls qos input-queue
Step 5
To return to the default setting, use the no mls qos srr-queue input bandwidth global configuration command. This example shows how to assign the ingress bandwidth to the queues. Priority queueing is disabled, and the shared bandwidth ratio allocated to queue 1 is 25/(25+75) and to queue 2 is 75/(25+75):
Switch(config)# mls qos srr-queue input priority-queue 2 bandwidth 0 Switch(config)# mls qos srr-queue input bandwidth 25 75
32-58
78-16180-02
Chapter 32
Purpose Enter global configuration mode. Assign a queue as the priority queue and guarantee bandwidth on the stack ring if the ring is congested. By default, the priority queue is queue 2, and 10 percent of the bandwidth is allocated to it.
configure terminal mls qos srr-queue input priority-queue queue-id bandwidth weight
For queue-id, the range is 1 to 2. For bandwidth weight, assign the bandwidth percentage of the stack ring. The range is 0 to 40. The amount of bandwidth that can be guaranteed is restricted because a large value affects the entire ring and can degrade the stack performance.
Step 3 Step 4
end show mls qos interface queueing or show mls qos input-queue
Step 5
To return to the default setting, use the no mls qos srr-queue input priority-queue queue-id global configuration command. To disable priority queueing, set the bandwidth weight to 0, for example, mls qos srr-queue input priority-queue queue-id bandwidth 0 . This example shows how to assign the ingress bandwidths to the queues. Queue 1 is the priority queue with 10 percent of the bandwidth allocated to it. The bandwidth ratios allocated to queues 1 and 2 is 4/(4+4). SRR services queue 1 (the priority queue) first for its configured 10 percent bandwidth. Then SRR equally shares the remaining 90 percent of the bandwidth between queues 1 and 2 by allocating 45 percent to each queue:
Switch(config)# mls qos srr-queue input priority-queue 1 bandwidth 10 Switch(config)# mls qos srr-queue input bandwidth 4 4
32-59
Configuring QoS
Which packets are mapped by DSCP or CoS value to each queue and threshold ID? What drop percentage thresholds apply to the queue-set (four egress queues per port), and how much reserved and maximum memory is needed for the traffic type? How much of the fixed buffer space is allocated to the queue-set? Does the bandwidth of the port need to be rate limited? How often should the egress queues be serviced and which technique (shaped, shared, or both) should be used?
Configuration Guidelines, page 32-60 Allocating Buffer Space to and Setting WTD Thresholds for an Egress Queue-Set, page 32-60 (optional) Mapping DSCP or CoS Values to an Egress Queue and to a Threshold ID, page 32-62 (optional) Configuring SRR Shaped Weights on Egress Queues, page 32-64 (optional) Configuring SRR Shared Weights on Egress Queues, page 32-65 (optional) Configuring the Egress Expedite Queue, page 32-66 (optional) Limiting the Bandwidth on an Egress Interface, page 32-66 (optional)
Configuration Guidelines
Follow these guidelines when the expedite queue is enabled or the egress queues are serviced based on their SRR weights:
If the egress expedite queue is enabled, it overrides the SRR shaped and shared weights for queue 1. If the egress expedite queue is disabled and the SRR shaped and shared weights are configured, the shaped mode overrides the shared mode for queue 1, and SRR services this queue in shaped mode. If the egress expedite queue is disabled and the SRR shaped weights are not configured, SRR services this queue in shared mode.
Allocating Buffer Space to and Setting WTD Thresholds for an Egress Queue-Set
You can guarantee the availability of buffers, set WTD thresholds, and configure the maximum memory allocation for a queue-set by using the mls qos queue-set output qset-id threshold queue-id drop-threshold1 drop-threshold2 reserved-threshold maximum-threshold global configuration command. Each threshold value is a percentage of the queues allocated memory, which you specify by using the mls qos queue-set output qset-id buffers allocation1 ... allocation4 global configuration command. The queues use WTD to support distinct drop percentages for different traffic classes.
Note
The egress queue default settings are suitable for most situations. You should change them only when you have a thorough understanding of the egress queues and if these settings do not meet your QoS solution.
32-60
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to configure the memory allocation and to drop thresholds for a queue-set. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Allocate buffers to a queue-set. By default, all allocation values are equally mapped among the four queues (25, 25, 25, 25). Each queue has 1/4 of the buffer space.
configure terminal mls qos queue-set output qset-id buffers allocation1 ... allocation4
For qset-id, enter the ID of the queue-set. The range is 1 to 2. Each port belongs to a queue-set, which defines all the characteristics of the four egress queues per port. For allocation1 ... allocation4, specify four percentages, one for each queue in the queue-set. For allocation1, allocation3, and allocation4, the range is 0 to 99. For allocation2, the range is 1 to 100 (including the CPU buffer).
Allocate buffers according to the importance of the traffic; for example, give a large percentage of the buffer to the queue with the highest-priority traffic.
Step 3
mls qos queue-set output qset-id threshold queue-id drop-threshold1 drop-threshold2 reserved-threshold maximum-threshold
Configure the WTD thresholds, guarantee the availability of buffers, and configure the maximum memory allocation for the queue-set (four egress queues per port). By default, the WTD thresholds for queues 1, 3, and 4 are set to 100 percent. The thresholds for queue 2 are set to 50 percent. The reserved thresholds for queues 1, 3, and 4 are set to 50 percent. The reserved threshold for queue 2 is set to 100 percent. The maximum thresholds for all queues are set to 400 percent.
For qset-id, enter the ID of the queue-set specified in Step 2. The range is 1 to 2. For queue-id, enter the specific queue in the queue-set on which the command is performed. The range is 1 to 4. For drop-threshold1 drop-threshold2, specify the two WTD thresholds expressed as a percentage of the queues allocated memory. The range is 1 to 400 percent. For reserved-threshold, enter the amount of memory to be guaranteed (reserved) for the queue expressed as a percentage of the allocated memory. The range is 1 to 100 percent. For maximum-threshold , enable a queue in the full condition to obtain more buffers than are reserved for it. This is the maximum memory the queue can have before the packets are dropped if the common pool is not empty. The range is 1 to 400 percent.
Step 4 Step 5
Specify the port of the outbound traffic, and enter interface configuration mode. Map the port to a queue-set. For qset-id, enter the ID of the queue-set specified in Step 2. The range is 1 to 2. The default is 1.
32-61
Configuring QoS
Command
Step 6 Step 7 Step 8
Purpose Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
end show mls qos interface [interface-id ] buffers copy running-config startup-config
To return to the default setting, use the no mls qos queue-set output qset-id buffers global configuration command. To return to the default WTD threshold percentages, use the no mls qos queue-set output qset-id threshold [queue-id] global configuration command. This example shows how to map a port to queue-set 2. It allocates 40 percent of the buffer space to egress queue 1 and 20 percent to egress queues 2, 3, and 4. It configures the drop thresholds for queue 2 to 40 and 60 percent of the allocated memory, guarantees (reserves) 100 percent of the allocated memory, and configures 200 percent as the maximum memory that this queue can have before packets are dropped:
Switch(config)# mls qos queue-set output 2 buffers 40 20 20 20 Switch(config)# mls qos queue-set output 2 threshold 2 40 60 100 200 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# queue-set 2
Note
The egress queue default settings are suitable for most situations. You should change them only when you have a thorough understanding of the egress queues and if these settings do not meet your QoS solution.
32-62
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to map DSCP or CoS values to an egress queue and to a threshold ID. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Map DSCP or CoS values to an egress queue and to a threshold ID. By default, DSCP values 015 are mapped to queue 2 and threshold 1. DSCP values 1631 are mapped to queue 3 and threshold 1. DSCP values 3239 and 4863 are mapped to queue 4 and threshold 1. DSCP values 4047 are mapped to queue 1 and threshold 1. By default, CoS values 0 and 1 are mapped to queue 2 and threshold 1. CoS values 2 and 3 are mapped to queue 3 and threshold 1. CoS values 4, 6, and 7 are mapped to queue 4 and threshold 1. CoS value 5 is mapped to queue 1 and threshold 1.
configure terminal mls qos srr-queue output dscp-map queue queue-id threshold threshold-id dscp1...dscp8 or mls qos srr-queue output cos-map queue queue-id threshold threshold-id cos1...cos8
For queue-id, the range is 1 to 4. For threshold-id, the range is 1 to 3. The drop-threshold percentage for threshold 3 is predefined. It is set to the queue-full state. For dscp1...dscp8, enter up to eight values, and separate each value with a space. The range is 0 to 63. For cos1...cos8 , enter up to eight values, and separate each value with a space. The range is 0 to 7.
Step 3 Step 4
Return to privileged EXEC mode. Verify your entries. The DSCP output queue threshold map appears as a matrix. The d1 column specifies the most-significant digit of the DSCP number; the d2 row specifies the least-significant digit in the DSCP number. The intersection of the d1 and the d2 values provides the queue ID and threshold ID; for example, queue 2 and threshold 1 (02-01). The CoS output queue threshold map shows the CoS value in the top row and the corresponding queue ID and threshold ID in the second row; for example, queue 2 and threshold 2 (2-2).
Step 5
To return to the default DSCP output queue threshold map or the default CoS output queue threshold map, use the no mls qos srr-queue output dscp-map or the no mls qos srr-queue output cos-map global configuration command. This example shows how to map DSCP values 10 and 11 to egress queue 1 and to threshold 2:
Switch(config)# mls qos srr-queue output dscp-map queue 1 threshold 2 10 11
32-63
Configuring QoS
You cannot configure SSR shaped weights on the 10-Gigabit interfaces. You can specify how much of the available bandwidth is allocated to each queue. The ratio of the weights is the ratio of frequency in which the SRR scheduler sends packets from each queue. You can configure the egress queues for shaped or shared weights, or both. Use shaping to smooth bursty traffic or to provide a smoother output over time. For information about, see the SRR Shaping and Sharing section on page 32-12. For information about shared weights, see the Configuring SRR Shared Weights on Egress Queues section on page 32-65.
Note
You cannot limit the bandwidth on egress 10-Gigabit interfaces. Beginning in privileged EXEC mode, follow these steps to assign the shaped weights and to enable bandwidth shaping on the four egress queues mapped to a port. This procedure is optional.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port of the outbound traffic, and enter interface configuration mode. Assign SRR weights to the egress queues. By default, weight1 is set to 25; weight2, weight3, and weight4 are set to 0, and these queues are in shared mode. For weight1 weight2 weight3 weight4, enter the weights to control the percentage of the port that is shaped. The inverse ratio (1/weight) controls the shaping bandwidth for this queue. Separate each value with a space. The range is 0 to 65535. If you configure a weight of 0, the corresponding queue operates in shared mode. The weight specified with the srr-queue bandwidth shape command is ignored, and the weights specified with the srr-queue bandwidth share interface configuration command for a queue come into effect. When configuring queues in the same queue-set for both shaping and sharing, make sure that you configure the lowest number queue for shaping. The shaped mode overrides the shared mode.
configure terminal interface interface-id srr-queue bandwidth shape weight1 weight2 weight3 weight4
end show mls qos interface interface-id queueing copy running-config startup-config
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no srr-queue bandwidth shape interface configuration command.
32-64
78-16180-02
Chapter 32
This example shows how to configure bandwidth shaping on queue 1. Because the weight ratios for queues 2, 3, and 4 are set to 0, these queues operate in shared mode. The bandwidth weight for queue 1 is 1/8, which is 12.5 percent:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# srr-queue bandwidth shape 8 0 0 0
Note
The egress queue default settings are suitable for most situations. You should change them only when you have a thorough understanding of the egress queues and if these settings do not meet your QoS solution. Beginning in privileged EXEC mode, follow these steps to assign the shared weights and to enable bandwidth sharing on the four egress queues mapped to a port. This procedure is optional.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port of the outbound traffic, and enter interface configuration mode. Assign SRR weights to the egress queues. By default, all four weights are 25 (1/4 of the bandwidth is allocated to each queue). For weight1 weight2 weight3 weight4, enter the weights to control the ratio of the frequency in which the SRR scheduler sends packets. Separate each value with a space. The range is 1 to 255.
configure terminal interface interface-id srr-queue bandwidth share weight1 weight2 weight3 weight4
end show mls qos interface interface-id queueing copy running-config startup-config
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no srr-queue bandwidth share interface configuration command. This example shows how to configure the weight ratio of the SRR scheduler running on an egress port. Four queues are used, and the bandwidth ratio allocated for each queue in shared mode is 1/(1+2+3+4), 2/(1+2+3+4), 3/(1+2+3+4), and 4/(1+2+3+4), which is 10 percent, 20 percent, 30 percent, and 40 percent for queues 1, 2, 3, and 4. This means that queue 4 has four times the bandwidth of queue 1, twice the bandwidth of queue 2, and one-and-a-third times the bandwidth of queue 3.
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# srr-queue bandwidth share 1 2 3 4
32-65
Configuring QoS
Purpose Enter global configuration mode. Enable QoS on a switch. Specify the egress port, and enter interface configuration mode. Enable the egress expedite queue, which is disabled by default. When you configure this command, the SRR weight and queue size ratios are affected because there is one fewer queue participating in SRR. This means that weight1 in the srr-queue bandwidth shape or the srr-queue bandwidth share command is ignored (not used in the ratio calculation).
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable the egress expedite queue, use the no priority-queue out interface configuration command. This example shows how to enable the egress expedite queue when the SRR weights are configured. The egress expedite queue overrides the configured SRR weights.
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# srr-queue bandwidth shape 25 0 0 0 Switch(config-if)# srr-queue bandwidth share 30 20 25 25 Switch(config-if)# priority-queue out Switch(config-if)# end
You cannot configure SSR shaped weights on the 10-Gigabit interfaces. You can limit the bandwidth on an egress port. For example, if a customer pays only for a small percentage of a high-speed link, you can limit the bandwidth to that amount.
Note
The egress queue default settings are suitable for most situations. You should change them only when you have a thorough understanding of the egress queues and if these settings do not meet your QoS solution.
32-66
78-16180-02
Chapter 32
Beginning in privileged EXEC mode, follow these steps to limit the bandwidth on an egress port. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port to be rate limited, and enter interface configuration mode. Specify the percentage of the port speed to which the port should be limited. The range is 10 to 90. By default, the port is not rate limited and is set to 100 percent. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
end show mls qos interface [interface-id ] queueing copy running-config startup-config
To return to the default setting, use the no srr-queue bandwidth limit interface configuration command. This example shows how to limit the bandwidth on a port to 80 percent:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# srr-queue bandwidth limit 80
When you configure this command to 80 percent, the port is idle 20 percent of the time. The line rate drops to 80 percent of the connected speed, which is 800 Mbps. These values are not exact because the hardware adjusts the line rate in increments of six.
Command show class-map [class-map-name] show mls qos show mls qos aggregate-policer [aggregate-policer-name] show mls qos input-queue
Purpose Display QoS class maps, which define the match criteria to classify traffic. Display global QoS configuration information. Display the aggregate policer configuration. Display QoS settings for the ingress queues.
show mls qos interface [interface-id] [buffers | policers | Display QoS information at the port level, including the buffer queueing | statistics] allocation, which ports have configured policers, the queueing strategy, and the ingress and egress statistics. show mls qos maps [cos-dscp | cos-input-q | cos-output-q | dscp-cos | dscp-input-q | dscp-mutation dscp-mutation-name | dscp-output-q | ip-prec-dscp | policed-dscp] Display QoS mapping information.
32-67
Configuring QoS
Command show mls qos queue-set [qset-id ] show policy-map [policy-map-name [class class-map-name]]
Purpose Display QoS settings for the egress queues. Display QoS policy maps, which define classification criteria for incoming traffic.
Note
Do not use the show policy-map interface privileged EXEC command to display classification information for incoming traffic. The interface keyword is not supported, and the statistics shown in the display should be ignored.
32-68
78-16180-02
C H A P T E R
33
Configuring EtherChannels
This chapter describes how to configure EtherChannels on Layer 2 and Layer 3 ports on the Catalyst 3750 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. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release. This chapter consists of these sections:
Understanding EtherChannels, page 33-1 Configuring EtherChannels, page 33-10 Displaying EtherChannel, PAgP, and LACP Status, page 33-23
Understanding EtherChannels
These sections describe how EtherChannels work:
EtherChannel Overview, page 33-2 Port-Channel Interfaces, page 33-4 Port Aggregation Protocol, page 33-5 Link Aggregation Control Protocol, page 33-6 Load Balancing and Forwarding Methods, page 33-7 EtherChannel and Switch Stacks, page 33-9
33-1
Configuring EtherChannels
EtherChannel Overview
An EtherChannel consists of individual Fast Ethernet or Gigabit Ethernet links bundled into a single logical link as shown in Figure 33-1.
Figure 33-1 Typical EtherChannel Configuration
Gigabit EtherChannel
1000BASE-X
1000BASE-X
Workstations
Workstations
The EtherChannel provides full-duplex bandwidth up to 800 Mbps (Fast EtherChannel) or 8 Gbps (Gigabit EtherChannel) between your switch and another switch or host. Each EtherChannel can consist of up to eight compatibly configured Ethernet ports. All ports in each EtherChannel must be configured as either Layer 2 or Layer 3 ports. For Catalyst 3750 switches, the number of EtherChannels is limited to 12. For more information, see the EtherChannel Configuration Guidelines section on page 33-11. The EtherChannel Layer 3 ports are made up of routed ports. Routed ports are physical ports configured to be in Layer 3 mode by using the no switchport interface configuration command. For more information, see the Chapter 11, Configuring Interface Characteristics. You can create an EtherChannel on a standalone switch, on a single switch in the stack, or on multiple switches in the stack (known as cross-stack EtherChannel). See Figure 33-2 and Figure 33-3. 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.
33-2
78-16180-02
Chapter 33
Switch A
Switch 3
Switch 1
Switch A
Channel group 1
86493
Switch 3
86492
33-3
Configuring EtherChannels
Port-Channel Interfaces
When you create an EtherChannel, a port-channel logical interface is involved:
With Layer 2 ports, use the channel-group interface configuration command to dynamically create the port-channel logical interface. You also can use the interface port-channel port-channel-number global configuration command to manually create the port-channel logical interface, but then you must use the channel-group channel-group-number command to bind the logical interface to a physical port. The channel-group-number can be the same as the port-channel-number, or you can use a new number. If you use a new number, the channel-group command dynamically creates a new port channel.
With Layer 3 ports, you should manually create the logical interface by using the interface port-channel global configuration command followed by the no switchport interface configuration command. Then you manually assign an interface to the EtherChannel by using the channel-group interface configuration command.
For both Layer 2 and Layer 3 ports, the channel-group command binds the physical port and the logical interface together as shown in Figure 33-4. Each EtherChannel has a port-channel logical interface numbered from 1 to 12. This port-channel interface number corresponds to the one specified with the channel-group interface configuration command.
Figure 33-4 Relationship of Physical Ports, Logical Port Channels, and Channel Groups
Logical port-channel
Channel-group binding
Physical ports
After you configure an EtherChannel, configuration changes applied to the port-channel interface apply to all the physical ports assigned to the port-channel interface. Configuration changes applied to the physical port affect only the port where you apply the configuration. To change the parameters of all ports in an EtherChannel, apply configuration commands to the port-channel interface, for example, spanning-tree commands or commands to configure a Layer 2 EtherChannel as a trunk.
33-4
101238
78-16180-02
Chapter 33
PAgP Modes
Table 33-1 shows the user-configurable EtherChannel PAgP modes for the channel-group interface configuration command.
Table 33-1 EtherChannel PAgP Modes
Mode auto
Description Places a port into a passive negotiating state, in which the port responds to PAgP packets it receives but does not start PAgP packet negotiation. This setting minimizes the transmission of PAgP packets.
desirable Places a port into an active negotiating state, in which the port starts negotiations with other ports by sending PAgP packets. on Forces a port to channel without PAgP (or the Link Aggregation Control Protocol [LACP]). In the on mode, a usable EtherChannel exists only when a port group in the on mode is connected to another port group in the on mode. This is the only setting that is supported when the EtherChannel members are from different switches in the switch stack (cross-stack EtherChannel).
Switch ports exchange PAgP packets only with partner ports configured in the auto or desirable modes. Ports configured in the on mode do not exchange PAgP packets. Both the auto and desirable modes enable ports to negotiate with partner ports to form an EtherChannel based on criteria such as port speed and, for Layer 2 EtherChannels, trunking state and VLAN numbers. Ports can form an EtherChannel when they are in different PAgP modes as long as the modes are compatible. For example:
A port in the desirable mode can form an EtherChannel with another port that is in the desirable or auto mode. A port in the auto mode can form an EtherChannel with another port in the desirable mode.
A port in the auto mode cannot form an EtherChannel with another port that is also in the auto mode because neither port starts PAgP negotiation. A port in the on mode that is added to a port channel is forced to have the same characteristics as the already existing on mode ports in the channel.
33-5
Configuring EtherChannels
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. If your switch is connected to a partner that is PAgP-capable, you can configure the switch port 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. Use the silent mode 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 port to a channel group, and to use the port for transmission.
33-6
78-16180-02
Chapter 33
LACP Modes
Table 33-2 shows the user-configurable EtherChannel LACP modes for the channel-group interface configuration command.
Table 33-2 EtherChannel LACP Modes
Description Places a port into an active negotiating state in which the port starts negotiations with other ports by sending LACP packets. Places a port into a passive negotiating state in which the port responds to LACP packets that it receives, but does not start LACP packet negotiation. This setting minimizes the transmission of LACP packets. Forces a port to channel without PAgP or LACP. With the on mode, a usable EtherChannel exists only when a port group in the on mode is connected to another port group in the on mode. This is the only setting that is supported when the EtherChannel members are from different switches in the switch stack (cross-stack EtherChannel).
on
Both the active and passive LACP modes enable ports to negotiate with partner ports to an EtherChannel based on criteria such as port speed and, for Layer 2 EtherChannels, trunking state and VLAN numbers. Ports can form an EtherChannel when they are in different LACP modes as long as the modes are compatible. For example:
A port in the active mode can form an EtherChannel with another port that is in the active or passive mode. A port in the passive mode cannot form an EtherChannel with another port that is also in the passive mode because neither port starts LACP negotiation.
33-7
Configuring EtherChannels
With source-MAC address forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the channel based on the source-MAC address of the incoming packet. Therefore, to provide load balancing, packets from different hosts use different ports in the channel, but packets from the same host use the same port in the channel. With destination-MAC address forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the channel based on the destination hosts MAC address of the incoming packet. Therefore, packets to the same destination are forwarded over the same port, and packets to a different destination are sent on a different port in the channel. With source-and-destination MAC address forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the channel based on both the source and destination MAC addresses. This forwarding method, a combination source-MAC and destination-MAC address forwarding methods of load distribution, can be used if it is not clear whether source-MAC or destination-MAC address forwarding is better suited on a particular switch. With source-and-destination MAC-address forwarding, packets sent from host A to host B, host A to host C, and host C to host B could all use different ports in the channel. With source-IP address-based forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the EtherChannel based on the source-IP address of the incoming packet. Therefore, to provide load-balancing, packets from different IP addresses use different ports in the channel, but packets from the same IP address use the same port in the channel. With destination-IP address-based forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the EtherChannel based on the destination-IP address of the incoming packet. Therefore, to provide load-balancing, packets from the same IP source address sent to different IP destination addresses could be sent on different ports in the channel. But packets sent from different source IP addresses to the same destination IP address are always sent on the same port in the channel. With source-and-destination IP address-based forwarding, when packets are forwarded to an EtherChannel, they are distributed across the ports in the EtherChannel based on both the source and destination IP addresses of the incoming packet. This forwarding method, a combination of source-IP and destination-IP address-based forwarding, can be used if it is not clear whether source-IP or destination-IP address-based forwarding is better suited on a particular switch. In this method, packets sent from the IP address A to IP address B, from IP address A to IP address C, and from IP address C to IP address B could all use different ports in the channel. Different load-balancing methods have different advantages, and the choice of a particular load-balancing method should be based on the position of the switch in the network and the kind of traffic that needs to be load-distributed. In Figure 33-5, an EtherChannel of four workstations communicates with a router. Because the router is a single-MAC-address device, source-based forwarding on the switch EtherChannel ensures that the switch uses all available bandwidth to the router. The router is configured for destination-based forwarding because the large number of workstations ensures that the traffic is evenly distributed from the router EtherChannel. Use the option that provides the greatest variety in your configuration. For example, if the traffic on a channel is going only to a single MAC address, using the destination-MAC address always chooses the same link in the channel. Using source addresses or IP addresses might result in better load balancing.
33-8
78-16180-02
Chapter 33
EtherChannel
101239
33-9
Configuring EtherChannels
Configuring EtherChannels
These sections describe how to configure EtherChannel on Layer 2 and Layer 3 ports:
Default EtherChannel Configuration, page 33-10 EtherChannel Configuration Guidelines, page 33-11 Configuring Layer 2 EtherChannels, page 33-12 (required) Configuring Layer 3 EtherChannels, page 33-15 (required) Configuring EtherChannel Load Balancing, page 33-18 (optional) Configuring the PAgP Learn Method and Priority, page 33-19 (optional) Configuring LACP Hot-Standby Ports, page 33-20 (optional)
Note
Make sure that the ports are correctly configured. For more information, see the EtherChannel Configuration Guidelines section on page 33-11.
Note
After you configure an EtherChannel, configuration changes applied to the port-channel interface apply to all the physical ports assigned to the port-channel interface, and configuration changes applied to the physical port affect only the port where you apply the configuration.
Feature Channel groups Port-channel logical interface PAgP mode PAgP learn method PAgP priority LACP mode LACP learn method LACP port priority LACP system priority LACP system ID Load balancing
Default Setting None assigned. None defined. No default. Aggregate-port learning on all ports. 128 on all ports. No default. Aggregate-port learning on all ports. 32768 on all ports. 32768. LACP system priority and the switch MAC address. Load distribution on the switch is based on the source-MAC address of the incoming packet.
33-10
78-16180-02
Chapter 33
More than 12 EtherChannels cannot be configured on a Catalyst 3750 switch stack. Configure a PAgP EtherChannel with up to eight Ethernet ports of the same type. Configure a LACP EtherChannel with up to 16 Ethernet ports of the same type. Up to eight ports can be active, and up to eight ports can be in standby mode. If your switch is part of a switch stack, the 16 ports in the LACP EtherChannel must be on the same switch. Configure a cross-stack EtherChannel with up to two 10-Gigabit Ethernet module ports. Configure all ports in an EtherChannel to operate at the same speeds and duplex modes. Enable all ports in an EtherChannel. A port in an EtherChannel that is disabled by using the shutdown interface configuration command is treated as a link failure, and its traffic is transferred to one of the remaining ports in the EtherChannel. When a group is first created, all ports follow the parameters set for the first port to be added to the group. If you change the configuration of one of these parameters, you must also make the changes to all ports in the group:
Allowed-VLAN list Spanning-tree path cost for each VLAN Spanning-tree port priority for each VLAN Spanning-tree Port Fast setting
Do not configure a port to be a member of more than one EtherChannel group. Do not configure an EtherChannel in both the PAgP and LACP modes. EtherChannel groups running PAgP and LACP can coexist on the same switch or on different switches in the stack (but not in a cross-stack configuration). Individual EtherChannel groups can run either PAgP or LACP, but they cannot interoperate. Do not configure a Switched Port Analyzer (SPAN) destination port as part of an EtherChannel. Do not configure a secure port as part of an EtherChannel or the reverse. Do not configure a private-VLAN port as part of an EtherChannel. Do not configure a port that is an active or a not-yet-active member of an EtherChannel as an 802.1x port. If you try to enable 802.1x on an EtherChannel port, an error message appears, and 802.1x is not enabled.
Note
In software releases earlier than Cisco IOS Release 12.1(18)SE, if 802.1x is enabled on a not-yet-active port of an EtherChannel, the port does not join the EtherChannel.
If EtherChannels are configured on switch interfaces, remove the EtherChannel configuration from the interfaces before globally enabling 802.1x on a switch by using the dot1x system-auth-control global configuration command.
33-11
Configuring EtherChannels
802.1Q) is the same on all the trunks. Inconsistent trunk modes on EtherChannel ports can have unexpected results.
An EtherChannel supports the same allowed range of VLANs on all the ports in a trunking
Layer 2 EtherChannel. If the allowed range of VLANs is not the same, the ports do not form an EtherChannel even when PAgP is set to the auto or desirable mode.
Ports 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 ports incompatible for the formation of an EtherChannel.
For Layer 3 EtherChannels, assign the Layer 3 address to the port-channel logical interface, not to the physical ports in the channel. For cross-stack EtherChannel configurations, disable PAgP and LACP on all ports targeted for the EtherChannel by using the channel-group channel-group-number mode on interface configuration command. Before adding a stack member port to an existing EtherChannel, manually disable PAgP and LACP on all the ports that are members of the channel group, and then manually configure the cross-stack EtherChannel. PAgP and LACP are not supported on cross-stack EtherChannels. If cross-stack EtherChannel is configured and the switch stack partitions, loops and forwarding misbehaviors can occur.
33-12
78-16180-02
Chapter 33
Beginning in privileged EXEC mode, follow these steps to assign a Layer 2 Ethernet port to a Layer 2 EtherChannel. This procedure is required. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify a physical port, and enter interface configuration mode. Valid interfaces include physical ports. For a PAgP EtherChannel, you can configure up to eight ports of the same type and speed for the same group. For a LACP EtherChannel, you can configure up to 16 Ethernet ports of the same type. Up to eight ports can be active, and up to eight ports can be in standby mode. If your switch is part of a switch stack, the 16 ports in the LACP EtherChannel must be on the same switch.
Step 3
Assign all ports as static-access ports in the same VLAN, or configure them as trunks. If you configure the port as a static-access port, assign it to only one VLAN. The range is 1 to 4094.
33-13
Configuring EtherChannels
Command
Step 4
Purpose Assign the port to a channel group, and specify the PAgP or the LACP mode. For channel-group-number, the range is 1 to 12. For mode, select one of these keywords:
channel-group channel-group-number mode {auto [non-silent] | desirable [non-silent] | on} | {active | passive}
auto Enables PAgP only if a PAgP device is detected. It places the port into a passive negotiating state, in which the port responds to PAgP packets it receives but does not start PAgP packet negotiation. desirableUnconditionally enables PAgP. It places the port into an active negotiating state, in which the port starts negotiations with other ports by sending PAgP packets. onForces the port to channel without PAgP or LACP. With the on mode, a usable EtherChannel exists only when a port group in the on mode is connected to another port group in the on mode. You must use this keyword when EtherChannel members are from different switches in the switch stack (cross-stack EtherChannel). non-silent(Optional) If your switch is connected to a partner that is PAgP-capable, configure the switch port for nonsilent operation when the port is in the auto or desirable mode. If you do not specify non-silent, silent is assumed. The silent setting is for connections to file servers or packet analyzers. This setting allows PAgP to operate, to attach the port to a channel group, and to use the port for transmission. activeEnables LACP only if a LACP device is detected. It places the port into an active negotiating state in which the port starts negotiations with other ports by sending LACP packets. passiveEnables LACP on the port and places it into a passive negotiating state in which the port responds to LACP packets that it receives, but does not start LACP packet negotiation.
For information on compatible modes for the switch and its partner, see the PAgP Modes section on page 33-5 and the LACP Modes section on page 33-7.
Step 5 Step 6 Step 7
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove a port from the EtherChannel group, use the no channel-group interface configuration command.
33-14
78-16180-02
Chapter 33
This example shows how to configure an EtherChannel on a single switch in the stack. It assigns two ports as static-access ports in VLAN 10 to channel 5 with the PAgP mode desirable:
Switch# configure terminal Switch(config)# interface range gigabitethernet2/0/1 -2 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 10 Switch(config-if-range)# channel-group 5 mode desirable non-silent Switch(config-if-range)# end
This example shows how to configure an EtherChannel on a single switch in the stack. It assigns two ports as static-access ports in VLAN 10 to channel 5 with the LACP mode active:
Switch# configure terminal Switch(config)# interface range gigabitethernet2/0/1 -2 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 10 Switch(config-if-range)# channel-group 5 mode active Switch(config-if-range)# end
This example shows how to configure cross-stack EtherChannel. It assigns two ports on stack member 2 and one port on stack member 3 as static-access ports in VLAN 10 to channel 5 with the PAgP and LACP modes disabled (on):
Switch# configure terminal Switch(config)# interface range gigabitethernet2/0/3 -4 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 10 Switch(config-if-range)# channel-group 5 mode on Switch(config-if-range)# exit Switch(config)# interface gigabitethernet3/0/3 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 10 Switch(config-if)# channel-group 5 mode on Switch(config-if)# exit
Note
To move an IP address from a physical port to an EtherChannel, you must delete the IP address from the physical port before configuring it on the port-channel interface.
33-15
Configuring EtherChannels
Beginning in privileged EXEC mode, follow these steps to create a port-channel interface for a Layer 3 EtherChannel. This procedure is required. Command
Step 1 Step 2
Purpose Enter global configuration mode. Specify the port-channel logical interface, and enter interface configuration mode. For port-channel-number, the range is 1 to 12. Put the interface into Layer 3 mode. Assign an IP address and subnet mask to the EtherChannel. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file. Assign an Ethernet port to the Layer 3 EtherChannel. For more information, see the Configuring the Physical Interfaces section on page 33-16. To remove the port-channel, use the no interface port-channel port-channel-number global configuration command. This example shows how to create the logical port channel 5 and assign 172.10.20.10 as its IP address:
Switch# configure terminal Switch(config)# interface port-channel 5 Switch(config-if)# no switchport Switch(config-if)# ip address 172.10.20.10 255.255.255.0 Switch(config-if)# end
no switchport ip address ip-address mask end show etherchannel channel-group-number detail copy running-config startup-config
Purpose Enter global configuration mode. Specify a physical port, and enter interface configuration mode. Valid interfaces include physical ports. For a PAgP EtherChannel, you can configure up to eight ports of the same type and speed for the same group. For a LACP EtherChannel, you can configure up to 16 Ethernet ports of the same type. Up to eight ports can be active, and up to eight ports can be in standby mode. If your switch is part of a switch stack, the 16 ports in the LACP EtherChannel must be on the same switch.
Step 3 Step 4
no ip address no switchport
Ensure that there is no IP address assigned to the physical port. Put the port into Layer 3 mode.
33-16
78-16180-02
Chapter 33
Command
Step 5
Purpose Assign the port to a channel group, and specify the PAgP or the LACP mode. For channel-group-number, the range is 1 to 12. This number must be the same as the port-channel-number (logical port) configured in the Creating Port-Channel Logical Interfaces section on page 33-15. For mode, select one of these keywords:
channel-group channel-group-number mode {auto [non-silent] | desirable [non-silent] | on} | {active | passive}
auto Enables PAgP only if a PAgP device is detected. It places the port into a passive negotiating state, in which the port responds to PAgP packets it receives but does not start PAgP packet negotiation. desirableUnconditionally enables PAgP. It places the port into an active negotiating state, in which the port starts negotiations with other ports by sending PAgP packets. onForces the port to channel without PAgP or LACP. With the on mode, a usable EtherChannel exists only when a port group in the on mode is connected to another port group in the on mode. You must use this keyword when EtherChannel members are from different switches in the switch stack (cross-stack EtherChannel). non-silent(Optional) If your switch is connected to a partner that is PAgP capable, configure the switch port for nonsilent operation when the port is in the auto or desirable mode. If you do not specify non-silent, silent is assumed. The silent setting is for connections to file servers or packet analyzers. This setting allows PAgP to operate, to attach the port to a channel group, and to use the port for transmission. activeEnables LACP only if a LACP device is detected. It places the port into an active negotiating state in which the port starts negotiations with other ports by sending LACP packets. passiveEnables LACP on the port and places it into a passive negotiating state in which the port responds to LACP packets that it receives, but does not start LACP packet negotiation.
For information on compatible modes for the switch and its partner, see the PAgP Modes section on page 33-5 and the LACP Modes section on page 33-7.
Step 6 Step 7 Step 8
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
33-17
Configuring EtherChannels
This example shows how to configure an EtherChannel. It assigns two ports to channel 5 with the LACP mode active:
Switch# configure terminal Switch(config)# interface range gigabitethernet2/0/1 -2 Switch(config-if-range)# no ip address Switch(config-if-range)# no switchport Switch(config-if-range)# channel-group 5 mode active Switch(config-if-range)# end
This example shows how to configure cross-stack EtherChannel. It assigns two ports on stack member 2 and one port on stack member 3 to channel 5 with the PAgP mode and LACP modes disabled ( on):
Switch# configure terminal Switch(config)# interface range gigabitethernet2/0/3 -4 Switch(config-if-range)# no ip address Switch(config-if-range)# no switchport Switch(config-if-range)# channel-group 5 mode on Switch(config-if-range)# exit Switch(config)# interface gigabitethernet3/0/3 Switch(config-if)# no ip address Switch(config-if-range)# no switchport Switch(config-if)# channel-group 5 mode on Switch(config-if)# exit
Purpose Enter global configuration mode. Configure an EtherChannel load-balancing method. The default is src-mac. Select one of these load-distribution methods:
configure terminal port-channel load-balance {dst-ip | dst-mac | src-dst-ip | src-dst-mac | src-ip | src-mac}
dst-ipLoad distribution is based on the destination-host IP address. dst-macLoad distribution is based on the destination-host MAC address of the incoming packet. src-dst-ip Load distribution is based on the source-and-destination host-IP address. src-dst-macLoad distribution is based on the source-and-destination host-MAC address. src-ipLoad distribution is based on the source-host IP address. src-macLoad distribution is based on the source-MAC address of the incoming packet.
33-18
78-16180-02
Chapter 33
Command
Step 3 Step 4 Step 5
Purpose Return to privileged EXEC mode. Verify your entries. (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
The Catalyst 3750 switch supports address learning only on aggregate ports even though the physical-port keyword is provided in the CLI. The pagp learn-method command and the pagp port-priority command have no effect on the switch hardware, but they are required for PAgP interoperability with devices that only support address learning by physical ports, such as the Catalyst 1900 switch. When the link partner to the Catalyst 3750 switch is a physical learner (such as a Catalyst 1900 series switch), we recommend that you configure the Catalyst 3750 switch as a physical-port learner by using the pagp learn-method physical-port interface configuration command. Set the load-distribution method based on the source MAC address by using the port-channel load-balance src-mac global configuration command. The switch then sends packets to the Catalyst 1900 switch using the same port in the EtherChannel from which it learned the source address. Use the pagp learn-method command only in this situation.
33-19
Configuring EtherChannels
Beginning in privileged EXEC mode, follow these steps to configure your switch as a PAgP physical-port learner and to adjust the priority so that the same port in the bundle is selected for sending packets. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port for transmission, and enter interface configuration mode. Select the PAgP learning method. By default, aggregation-port learning is selected, which means the switch sends packets to the source by using any of the ports in the EtherChannel. With aggregate-port learning, it is not important on which physical port the packet arrives. Select physical-port to connect with another switch that is a physical learner. Make sure to configure the port-channel load-balance global configuration command to src-mac as described in the Configuring EtherChannel Load Balancing section on page 33-18. The learning method must be configured the same at both ends of the link.
Step 4
Assign a priority so that the selected port is chosen for packet transmission. For priority, the range is 0 to 255. The default is 128. The higher the priority, the more likely that the port will be used for PAgP transmission.
Step 5 Step 6
Step 7
To return the priority to its default setting, use the no pagp port-priority interface configuration command. To return the learning method to its default setting, use the no pagp learn-method interface configuration command.
33-20
78-16180-02
Chapter 33
If you configure more than eight links for an EtherChannel group, the software automatically decides which of the hot-standby ports to make active based on the LACP priority. The software assigns to every link between systems that operate LACP a unique priority made up of these elements (in priority order):
LACP system priority System ID (a combination of the LACP system priority and the switch MAC address) LACP port priority Port number
In priority comparisons, numerically lower values have higher priority. The priority decides which ports should be put in standby mode when there is a hardware limitation that prevents all compatible ports from aggregating. Ports are considered for active use in aggregation in link-priority order starting with the port attached to the highest priority link. Each port is selected for active use if the preceding higher priority selections can also be maintained. Otherwise, the port is selected for standby mode. You can change the default values of the LACP system priority and the LACP port priority to affect how the software selects active and standby links. For more information, see the Configuring the LACP System Priority section on page 33-21 and the Configuring the LACP Port Priority section on page 33-22.
Purpose Enter global configuration mode. Configure the LACP system priority. For priority, the range is 1 to 65535. The default is 32768. The lower the value, the higher the system priority.
Step 3 Step 4
Step 5
To return the LACP system priority to the default value, use the no lacp system-priority global configuration command.
33-21
Configuring EtherChannels
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 the hot-standby state and are used only if one of the channeled ports fails. Beginning in privileged EXEC mode, follow these steps to configure the LACP port priority. This procedure is optional.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the port to be configured, and enter interface configuration mode. Configure the LACP port priority. For priority, the range is 1 to 65535. The is 32768. The lower the value, the more likely that the port will be used for LACP transmission.
Step 4 Step 5
Step 6
To return the LACP port priority to the default value, use the no lacp port-priority interface configuration command.
33-22
78-16180-02
Chapter 33
Command show etherchannel [channel-group-number {detail | port | port-channel | protocol | summary}] {detail | load-balance | port | port-channel | protocol | summary} show pagp [channel-group-number] {counters | internal | neighbor} show lacp [channel-group-number] {counters | internal | neighbor}
Description Displays EtherChannel information in a brief, detailed, and one-line summary form. Also displays the load-balance or frame-distribution scheme, port, port-channel, and protocol information. Displays PAgP information such as traffic information, the internal PAgP configuration, and neighbor information. Displays LACP information such as traffic information, the internal LACP configuration, and neighbor information.
You can clear PAgP channel-group information and traffic counters by using the clear pagp {channel-group-number counters | counters } privileged EXEC command. You can clear LACP channel-group information and traffic counters by using the clear lacp {channel-group-number counters | counters } privileged EXEC command. For detailed information about the fields in the displays, refer to the command reference for this release.
33-23
Configuring EtherChannels
33-24
78-16180-02
C H A P T E R
34
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2
Understanding IP Routing, page 34-2 Steps for Configuring Routing, page 34-4 Configuring IP Addressing, page 34-5 Enabling IP Unicast Routing, page 34-19 Configuring RIP, page 34-20 Configuring OSPF, page 34-25 Configuring EIGRP, page 34-34 Configuring BGP, page 34-40 Configuring Protocol-Independent Features, page 34-60 Monitoring and Maintaining the IP Network, page 34-74
Note
When configuring routing parameters on the switch and to allocate system resources to maximize the number of unicast routes allowed, you can use the sdm prefer routing global configuration command to set the Switch Database Management (sdm) feature to the routing template. For more information on the SDM templates, see Chapter 8, Configuring SDM Templates or refer to the sdm prefer command in the command reference for this release.
34-1
Understanding IP Routing
In some network environments, VLANs are associated with individual networks or subnetworks. In an IP network, each subnetwork is mapped to an individual VLAN. Configuring VLANs helps control the size of the broadcast domain and keeps local traffic local. However, network devices in different VLANs cannot communicate with one another without a Layer 3 device (router) to route traffic between the VLAN, referred to as inter-VLAN routing. You configure one or more routers to route traffic to the appropriate destination VLAN. Figure 34-1 shows a basic routing topology. Switch A is in VLAN 10, and Switch B is in VLAN 20. The router has an interface in each VLAN.
Figure 34-1 Routing Topology Example
VLAN 10 Switch A
A Host B Host
When Host A in VLAN 10 needs to communicate with Host B in VLAN 10, it sends a packet addressed to that host. Switch A forwards the packet directly to Host B, without sending it to the router. When Host A sends a packet to Host C in VLAN 20, Switch A forwards the packet to the router, which receives the traffic on the VLAN 10 interface. The router checks the routing table, finds the correct outgoing interface, and forwards the packet on the VLAN 20 interface to Switch B. Switch B receives the packet and forwards it to Host C. This section contains information on these routing topics:
Types of Routing, page 34-2 IP Routing and Switch Stacks, page 34-3
Types of Routing
Routers and Layer 3 switches can route packets in three different ways:
By using default routing By using preprogrammed static routes for the traffic By dynamically calculating routes by using a routing protocol
Default routing refers to sending traffic with a destination unknown to the router to a default outlet or destination. Static unicast routing forwards packets from predetermined ports through a single path into and out of a network. Static routing is secure and uses little bandwidth, but does not automatically respond to changes in the network, such as link failures, and therefore, might result in unreachable destinations. As networks grow, static routing becomes a labor-intensive liability.
34-2
78-16180-02
Chapter 34
Dynamic routing protocols are used by routers to dynamically calculate the best route for forwarding traffic. There are two types of dynamic routing protocols:
Routers using distance-vector protocols maintain routing tables with distance values of networked resources, and periodically pass these tables to their neighbors. Distance-vector protocols use one or a series of metrics for calculating the best routes. These protocols are easy to configure and use. Routers using link-state protocols maintain a complex database of network topology, based on the exchange of link-state advertisements (LSAs) between routers. LSAs are triggered by an event in the network, which speeds up the convergence time or time required to respond to these changes. Link-state protocols respond quickly to topology changes, but require greater bandwidth and more resources than distance-vector protocols.
Distance-vector protocols supported by the Catalyst 3750 switch are Routing Information Protocol (RIP), which uses a single distance metric (cost) to determine the best path and Border Gateway Protocol (BGP), which adds a path vector mechanism. The switch also supports the Open Shortest Path First (OSPF) link-state protocol and Enhanced IGRP (EIGRP), which adds some link-state routing features to traditional Interior Gateway Routing Protocol (IGRP) to improve efficiency.
Note
On a switch stack, the supported protocols are determined by the software running on the stack master. If the stack master is running the SMI, only default routing, static routing and RIP are supported. All other routing protocols require the EMI.
It initializes and configures the routing protocols. It sends routing protocol messages and updates to other routers. It processes routing protocol messages and updates received from peer routers. It generates, maintains, and distributes the distributed Cisco Express Forwarding (dCEF) database to all stack members. The routes are programmed on all switches in the stack bases on this database. The MAC address of the stack master is used as the router MAC address for the whole stack, and all outside devices use this address to send IP packets to the stack. All IP packets that require software forwarding or processing go through the CPU of the stack master.
They act as routing standby switches, ready to take over in case they are elected as the new stack master if the stack master fails. They program the routes into hardware. The routes programmed by the stack members are the same that are downloaded by the stack master as part of the dCEF database.
If a stack master fails, the stack detects that the stack master is down and elects one of the stack members to be the new stack master. During this period, except for a momentary interruption, the hardware continues to forward packets with no protocols active.
34-3
It starts generating, receiving, and processing routing updates. It builds routing tables, generates the CEF database, and distributes it to stack members. It begins using its MAC address as the router MAC address. To update its network peers of the new MAC address, it periodically (every few seconds for 5 minutes) sends a gratuitous ARP reply with the new router MAC address. It attempts to determine the reachability of every proxy ARP entry by sending an ARP request to the proxy ARP IP address and receiving an ARP reply. For each reachable proxy ARP IP address, it generates a gratuitous ARP reply with the new router MAC address. This process is repeated for 5 minutes after a new stack master election.
Note
When a stack master is running the EMI, the stack is able to run all supported protocols, including Open Shortest Path First (OSPF), Enhanced IGRP (EIGRP), and Border Gateway Protocol (BGP). If the stack master fails and the new elected stack master is running the SMI, these protocols will no longer run in the stack.
Caution
Partitioning of the switch stack into two or more stacks might lead to undesirable behavior in the network.
A routed port: a physical port configured as a Layer 3 port by using the no switchport interface configuration command. A switch virtual interface (SVI): a VLAN interface created by using the interface vlan vlan_id global configuration command and by default a Layer 3 interface. An EtherChannel port channel in Layer 3 mode: a port-channel logical interface created by using the interface port-channel port-channel-number global configuration command and binding the Ethernet interface into the channel group. For more information, see the Configuring Layer 3 EtherChannels section on page 33-15.
Note
The switch does not support tunnel interfaces for unicast routed traffic. All Layer 3 interfaces on which routing will occur must have IP addresses assigned to them. See the Assigning IP Addresses to Network Interfaces section on page 34-6.
34-4
78-16180-02
Chapter 34
Note
A Layer 3 switch can have an IP address assigned to each routed port and SVI. The number of routed ports and SVIs that you can configure is not limited by software. However, the interrelationship between this number and the number and volume of features being implemented might have an impact on CPU utilization because of hardware limitations. To optimize system memory for routing, use the sdm prefer routing global configuration command. Configuring routing consists of several main procedures:
To support VLAN interfaces, create and configure VLANs on the switch stack, and assign VLAN membership to Layer 2 interfaces. For more information, see Chapter 13, Configuring VLANs. Configure Layer 3 interfaces. Enable IP routing on the switch. Assign IP addresses to the Layer 3 interfaces. Enable selected routing protocols on the switch. Configure routing protocol parameters (optional).
Configuring IP Addressing
A required task for configuring IP routing is to assign IP addresses to Layer 3 network interfaces to enable the interfaces and allow communication with the hosts on those interfaces that use IP. These sections describe how to configure various IP addressing features. Assigning IP addresses to the interface is required; the other procedures are optional.
Default Addressing Configuration, page 34-5 Assigning IP Addresses to Network Interfaces, page 34-6 Configuring Address Resolution Methods, page 34-9 Routing Assistance When IP Routing is Disabled, page 34-12 Configuring Broadcast Packet Handling, page 34-14 Monitoring and Maintaining IP Addressing, page 34-18
Default Setting None defined. No permanent entries in the Address Resolution Protocol (ARP) cache. Encapsulation: Standard Ethernet-style ARP. Timeout: 14400 seconds (4 hours).
34-5
Default Setting Disabled. Disabled (all IP directed broadcasts are dropped). Domain list: No domain names defined. Domain lookup: Enabled. Domain name: Enabled.
IP forward-protocol
If a helper address is defined or User Datagram Protocol (UDP) flooding is configured, UDP forwarding is enabled on default ports. Any-local-broadcast: Disabled. Spanning Tree Protocol (STP): Disabled. Turbo-flood: Disabled.
Broadcast IRDP advertisements. Maximum interval between advertisements: 600 seconds. Minimum interval between advertisements: 0.75 times max interval Preference: 0.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure.
34-6
78-16180-02
Chapter 34
Command
Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Remove the interface from Layer 2 configuration mode (if it is a physical interface). Configure the IP address and IP subnet mask. Enable the interface. Return to privileged EXEC mode. Verify your entries.
no switchport ip address ip-address subnet-mask no shutdown end show interfaces [interface-id] show ip interface [interface-id ] show running-config interface [interface-id] copy running-config startup-config
Step 8
Purpose Enter global configuration mode. Enable the use of subnet zero for interface addresses and routing updates. Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
Use the no ip subnet-zero global configuration command to restore the default and disable the use of subnet zero.
Classless Routing
By default, classless routing behavior is enabled on the switch when it is configured to route. With classless routing, if a router receives packets for a subnet of a network with no default route, the router forwards the packet to the best supernet route. A supernet consists of contiguous blocks of Class C address spaces used to simulate a single, larger address space and is designed to relieve the pressure on the rapidly depleting Class B address space. In Figure 34-2, classless routing is enabled. When the host sends a packet to 120.20.4.1, instead of discarding the packet, the router forwards it to the best supernet route. If you disable classless routing and a router receives packets destined for a subnet of a network with no network default route, the router discards the packet.
34-7
128.0.0.0/8
128.20.4.1
128.20.0.0
IP classless
128.20.1.0 128.20.2.0
In Figure 34-3, the router in network 128.20.0.0 is connected to subnets 128.20.1.0, 128.20.2.0, and 128.20.3.0. If the host sends a packet to 120.20.4.1, because there is no network default route, the router discards the packet.
Figure 34-3 No IP Classless Routing
128.0.0.0/8
128.20.4.1
To prevent the switch from forwarding packets destined for unrecognized subnets to the best supernet route possible, you can disable classless routing behavior. Beginning in privileged EXEC mode, follow these steps to disable classless routing: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Disable classless routing behavior. Return to privileged EXEC mode.
34-8
78-16180-02
Chapter 34
Command
Step 4 Step 5
Purpose Verify your entry. (Optional) Save your entry in the configuration file.
To restore the default and have the switch forward packets destined for a subnet of a network with no network default route to the best supernet route possible, use the ip classless global configuration command.
Note
In a Catalyst 3750 switch stack, network communication uses a single MAC address and the IP address of the stack. The local address or MAC address is known as a data link address because it is contained in the data link layer (Layer 2) section of the packet header and is read by data link (Layer 2) devices. To communicate with a device on Ethernet, the software must learn the MAC address of the device. The process of learning the MAC address from an IP address is called address resolution. The process of learning the IP address from the MAC address is called reverse address resolution. The switch can use these forms of address resolution:
Address Resolution Protocol (ARP) is used to associate IP address with MAC addresses. Taking an IP address as input, ARP learns the associated MAC address and then stores the IP address/MAC address association in an ARP cache for rapid retrieval. Then the IP datagram is encapsulated in a link-layer frame and sent over the network. Encapsulation of IP datagrams and ARP requests or replies on IEEE 802 networks other than Ethernet is specified by the Subnetwork Access Protocol (SNAP). Proxy ARP helps hosts with no routing tables learn the MAC addresses of hosts on other networks or subnets. If the switch (router) receives an ARP request for a host that is not on the same interface as the ARP request sender, and if the router has all of its routes to the host through other interfaces, it generates a proxy ARP packet giving its own local data link address. The host that sent the ARP request then sends its packets to the router, which forwards them to the intended host.
Catalyst 3750 switches also use the Reverse Address Resolution Protocol (RARP), which functions the same as ARP does, except that the RARP packets request an IP address instead of a local MAC address. Using RARP requires a RARP server on the same network segment as the router interface. Use the ip rarp-server address interface configuration command to identify the server. For more information on RARP, refer to the Cisco IOS Configuration Fundamentals Configuration Guide, Release 12.2. You can perform these tasks to configure address resolution:
Define a Static ARP Cache, page 34-10 Set ARP Encapsulation, page 34-11 Enable Proxy ARP, page 34-11
34-9
Purpose Enter global configuration mode. Globally associate an IP address with a MAC (hardware) address in the ARP cache, and specify encapsulation type as one of these:
arpa ARP encapsulation for Ethernet interfaces snapSubnetwork Address Protocol encapsulation for Token Ring and FDDI interfaces sapHPs ARP type
arp ip-address hardware-address type [alias] interface interface-id arp timeout seconds
(Optional) Specify that the switch respond to ARP requests as if it were the owner of the specified IP address. Enter interface configuration mode, and specify the interface to configure. (Optional) Set the length of time an ARP cache entry will stay in the cache. The default is 14400 seconds (4 hours). The range is 0 to 2147483 seconds. Return to privileged EXEC mode. Verify the type of ARP and the timeout value used on all interfaces or a specific interface. View the contents of the ARP cache.
Step 9
To remove an entry from the ARP cache, use the no arp ip-address hardware-address type global configuration command. To remove all nonstatic entries from the ARP cache, use the clear arp-cache privileged EXEC command.
34-10
78-16180-02
Chapter 34
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Specify the ARP encapsulation method:
Return to privileged EXEC mode. Verify ARP encapsulation configuration on all interfaces or the specified interface. (Optional) Save your entries in the configuration file.
To disable an encapsulation type, use the no arp arpa or no arp snap interface configuration command.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Enable proxy ARP on the interface. Return to privileged EXEC mode. Verify the configuration on the interface or all interfaces. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip proxy-arp end show ip interface [interface-id ] copy running-config startup-config
To disable proxy ARP on the interface, use the no ip proxy-arp interface configuration command.
34-11
Proxy ARP, page 34-12 Default Gateway, page 34-12 ICMP Router Discovery Protocol (IRDP), page 34-13
Proxy ARP
Proxy ARP, the most common method for learning about other routes, enables an Ethernet host with no routing information to communicate with hosts on other networks or subnets. The host assumes that all hosts are on the same local Ethernet and that they can use ARP to learn their MAC addresses. If a switch receives an ARP request for a host that is not on the same network as the sender, the switch evaluates whether it has the best route to that host. If it does, it sends an ARP reply packet with its own Ethernet MAC address, and the host that sent the request sends the packet to the switch, which forwards it to the intended host. Proxy ARP treats all networks as if they are local and performs ARP requests for every IP address. Proxy ARP is enabled by default. To enable it after it has been disabled, see the Enable Proxy ARP section on page 34-11. Proxy ARP works as long as other routers support it.
Default Gateway
Another method for locating routes is to define a default router or default gateway. All nonlocal packets are sent to this router, which either routes them appropriately or sends an IP Control Message Protocol (ICMP) redirect message back, defining which local router the host should use. The switch caches the redirect messages and forwards each packet as efficiently as possible. A limitation of this method is that there is no means of detecting when the default router has gone down or is unavailable. Beginning in privileged EXEC mode, follow these steps to define a default gateway (router) when IP routing is disabled: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Set up a default gateway (router). Return to privileged EXEC mode. Display the address of the default gateway router to verify the setting. (Optional) Save your entries in the configuration file.
configure terminal ip default-gateway ip-address end show ip redirects copy running-config startup-config
34-12
78-16180-02
Chapter 34
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Enable IRDP processing on the interface. (Optional) Send IRDP advertisements to the multicast address (224.0.0.1) instead of IP broadcasts.
Note
This command allows for compatibility with Sun Microsystems Solaris, which requires IRDP packets to be sent out as multicasts. Many implementations cannot receive these multicasts; ensure end-host ability before using this command.
Step 5
(Optional) Set the IRDP period for which advertisements are valid. The default is three times the maxadvertinterval value. It must be greater than maxadvertinterval and cannot be greater than 9000 seconds. If you change the maxadvertinterval value, this value also changes. (Optional) Set the IRDP maximum interval between advertisements. The default is 600 seconds. (Optional) Set the IRDP minimum interval between advertisements. The default is 0.75 times the maxadvertinterval. If you change the maxadvertinterval, this value changes to the new default (0.75 of maxadvertinterval). (Optional) Set a device IRDP preference level. The allowed range is 2 31 to 231. The default is 0. A higher value increases the router preference level. (Optional) Specify an IRDP address and preference to proxy-advertise. Return to privileged EXEC mode. Verify settings by displaying IRDP values. (Optional) Save your entries in the configuration file.
Step 6 Step 7
Step 8
ip irdp address address [number] end show ip irdp copy running-config startup-config
34-13
If you change the maxadvertinterval value, the holdtime and minadvertinterval values also change, so it is important to first change the maxadvertinterval value, before manually changing either the holdtime or minadvertinterval values. Use the no ip irdp interface configuration command to disable IRDP routing.
A directed broadcast packet is sent to a specific network or series of networks. A directed broadcast address includes the network or subnet fields. A flooded broadcast packet is sent to every network.
Note
You can also limit broadcast, unicast, and multicast traffic on Layer 2 interfaces by using the storm-control interface configuration command to set traffic suppression levels. For more information, see Chapter 24, Configuring Port-Based Traffic Control. Routers provide some protection from broadcast storms by limiting their extent to the local cable. Bridges (including intelligent bridges), because they are Layer 2 devices, forward broadcasts to all network segments, thus propagating broadcast storms. The best solution to the broadcast storm problem is to use a single broadcast address scheme on a network. In most modern IP implementations, you can set the address to be used as the broadcast address. Many implementations, including the one in the Catalyst 3750 switch, support several addressing schemes for forwarding broadcast messages. Perform the tasks in these sections to enable these schemes:
Enabling Directed Broadcast-to-Physical Broadcast Translation, page 34-14 Forwarding UDP Broadcast Packets and Protocols, page 34-15 Establishing an IP Broadcast Address, page 34-16 Flooding IP Broadcasts, page 34-17
34-14
78-16180-02
Chapter 34
Beginning in privileged EXEC mode, follow these steps to enable forwarding of IP-directed broadcasts on an interface: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to configure. Enable directed broadcast-to-physical broadcast translation on the interface. You can include an access list to control which broadcasts are forwarded. When an access list is specified, only IP packets permitted by the access list are eligible to be translated. Return to global configuration mode.
Step 4 Step 5
exit
ip forward-protocol {udp [port] | nd | sdns} Specify which protocols and ports the router forwards when forwarding broadcast packets.
udpForward UPD datagrams. port: (Optional) Destination port that controls which UDP services are forwarded.
Step 6 Step 7
Return to privileged EXEC mode. Verify the configuration on the interface or all interfaces.
Step 8
Use the no ip directed-broadcast interface configuration command to disable translation of directed broadcast to physical broadcasts. Use the no ip forward-protocol global configuration command to remove a protocol or port.
34-15
If you do not specify any UDP ports when you configure the forwarding of UDP broadcasts, you are configuring the router to act as a BOOTP forwarding agent. BOOTP packets carry DHCP information. Beginning in privileged EXEC mode, follow these steps to enable forwarding UDP broadcast packets on an interface and specify the destination address: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Enable forwarding and specify the destination address for forwarding UDP broadcast packets, including BOOTP. Return to global configuration mode.
ip forward-protocol {udp [port] | nd | sdns } Specify which protocols the router forwards when forwarding broadcast packets. end show ip interface [interface-id ] or show running-config Return to privileged EXEC mode. Verify the configuration on the interface or all interfaces.
Step 8
Use the no ip helper-address interface configuration command to disable the forwarding of broadcast packets to specific addresses. Use the no ip forward-protocol global configuration command to remove a protocol or port.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to configure. Enter a broadcast address different from the default, for example 128.1.255.255. Return to privileged EXEC mode. Verify the broadcast address on the interface or all interfaces. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip broadcast-address ip-address end show ip interface [interface-id ] copy running-config startup-config
To restore the default IP broadcast address, use the no ip broadcast-address interface configuration command.
34-16
78-16180-02
Chapter 34
Flooding IP Broadcasts
You can allow IP broadcasts to be flooded throughout your internetwork in a controlled fashion by using the database created by the bridging STP. Using this feature also prevents loops. To support this capability, bridging must be configured on each interface that is to participate in the flooding. If bridging is not configured on an interface, it still can receive broadcasts. However, the interface never forwards broadcasts it receives, and the router never uses that interface to send broadcasts received on a different interface. Packets that are forwarded to a single network address using the IP helper-address mechanism can be flooded. Only one copy of the packet is sent on each network segment. To be considered for flooding, packets must meet these criteria. (Note that these are the same conditions used to consider packet forwarding using IP helper addresses.)
The packet must be a MAC-level broadcast. The packet must be an IP-level broadcast. The packet must be a TFTP, DNS, Time, NetBIOS, ND, or BOOTP packet, or a UDP specified by the ip forward-protocol udp global configuration command. The time-to-live (TTL) value of the packet must be at least two.
A flooded UDP datagram is given the destination address specified with the ip broadcast-address interface configuration command on the output interface. The destination address can be set to any address. Thus, the destination address might change as the datagram propagates through the network. The source address is never changed. The TTL value is decremented. When a flooded UDP datagram is sent out an interface (and the destination address possibly changed), the datagram is handed to the normal IP output routines and is, therefore, subject to access lists, if they are present on the output interface. Beginning in privileged EXEC mode, follow these steps to use the bridging spanning-tree database to flood UDP datagrams: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Use the bridging spanning-tree database to flood UDP datagrams. Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
configure terminal ip forward-protocol spanning-tree end show running-config copy running-config startup-config
Use the no ip forward-protocol spanning-tree global configuration command to disable the flooding of IP broadcasts. In the Catalyst 3750 switch, the majority of packets are forwarded in hardware; most packets do not go through the switch CPU. For those packets that do go to the CPU, you can speed up spanning tree-based UDP flooding by a factor of about four to five times by using turbo-flooding. This feature is supported over Ethernet interfaces configured for ARP encapsulation.
34-17
Beginning in privileged EXEC mode, follow these steps to increase spanning-tree-based flooding: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode Use the spanning-tree database to speed up flooding of UDP datagrams. Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
configure terminal ip forward-protocol turbo-flood end show running-config copy running-config startup-config
To disable this feature, use the no ip forward-protocol turbo-flood global configuration command.
Command clear arp-cache clear host {name | *} clear ip route {network [mask] |*}
Purpose Clear the IP ARP cache and the fast-switching cache. Remove one or all entries from the host name and the address cache. Remove one or more routes from the IP routing table.
You can display specific statistics, such as the contents of IP routing tables, caches, and databases; the reachability of nodes; and the routing path that packets are taking through the network. Table 34-3 lists the privileged EXEC commands for displaying IP statistics.
Table 34-3 Commands to Display Caches, Tables, and Databases
Command show arp show hosts show ip aliases show ip arp show ip interface [interface-id ] show ip irdp show ip masks address show ip redirects show ip route [address [mask]] | [protocol] show ip route summary
Purpose Display the entries in the ARP table. Display the default domain name, style of lookup service, name server hosts, and the cached list of host names and addresses. Display IP addresses mapped to TCP ports (aliases). Display the IP ARP cache. Display the IP status of interfaces. Display IRDP values. Display the masks used for network addresses and the number of subnets using each mask. Display the address of a default gateway. Display the current state of the routing table. Display the current state of the routing table in summary form.
34-18
78-16180-02
Chapter 34
Purpose Enter global configuration mode. Enable IP routing. Specify an IP routing protocol. This step might include other commands, such as specifying the networks to route with the network (RIP) router configuration command. For information on specific protocols, refer to sections later in this chapter and to the Cisco IOS IP Configuration Guide, Release 12.2.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Use the no ip routing global configuration command to disable routing. This example shows how to enable IP routing using RIP as the routing protocol:
Switch# configure terminal Enter configuration commands, one per line. Switch(config)# ip routing Switch(config)# router rip Switch(config-router)# network 10.0.0.0 Switch(config-router)# end End with CNTL/Z.
You can now set up parameters for the selected routing protocols as described in these sections:
Configuring RIP, page 34-20 Configuring OSPF, page 34-25 Configuring EIGRP, page 34-34 Configuring BGP, page 34-40 Configuring Protocol-Independent Features, page 34-60 (optional)
34-19
Configuring RIP
The Routing Information Protocol (RIP) is an interior gateway protocol (IGP) created for use in small, homogeneous networks. It is a distance-vector routing protocol that uses broadcast User Datagram Protocol (UDP) data packets to exchange routing information. The protocol is documented in RFC 1058. You can find detailed information about RIP in IP Routing Fundamentals, published by Cisco Press.
Note
RIP is the only routing protocol supported by the SMI; other routing protocols require the stack master to be running the EMI. Using RIP, the switch sends routing information updates (advertisements) every 30 seconds. If a router does not receive an update from another router for 180 seconds or more, it marks the routes served by that router as unusable. If there is still no update after 240 seconds, the router removes all routing table entries for the non-updating router. RIP uses hop counts to rate the value of different routes. The hop count is the number of routers that can be traversed in a route. A directly connected network has a hop count of zero; a network with a hop count of 16 is unreachable. This small range (0 to 15) makes RIP unsuitable for large networks. If the router has a default network path, RIP advertises a route that links the router to the pseudonetwork 0.0.0.0. The 0.0.0.0 network does not exist; it is treated by RIP as a network to implement the default routing feature. The switch advertises the default network if a default was learned by RIP or if the router has a gateway of last resort and RIP is configured with a default metric. RIP sends updates to the interfaces in specified networks. If an interfaces network is not specified, it is not advertised in any RIP update. This section briefly describes how to configure RIP. It includes this information:
Default RIP Configuration, page 34-20 Configuring Basic RIP Parameters, page 34-21 Configuring RIP Authentication, page 34-23 Configuring Summary Addresses and Split Horizon, page 34-23
Default Setting Enabled. Disabled. Built-in; automatic metric translations. Authentication mode: clear text.
IP RIP authentication key-chain No authentication. IP RIP receive version IP RIP send version IP RIP triggered According to the version router configuration command. According to the version router configuration command. According to the version router configuration command.
34-20
78-16180-02
Chapter 34
Feature IP split horizon Neighbor Network Offset list Output delay Timers basic
Default Setting Varies with media. None defined. None specified. Disabled. 0 milliseconds.
Update: 30 seconds. Invalid: 180 seconds. Hold-down: 180 seconds. Flush: 240 seconds.
Validate-update-source Version
Purpose Enter global configuration mode. Enable IP routing. (Required only if IP routing is disabled.) Enable a RIP routing process, and enter router configuration mode. Associate a network with a RIP routing process. You can specify multiple network commands. RIP routing updates are sent and received through interfaces only on these networks. (Optional) Define a neighboring router with which to exchange routing information. This step allows routing updates from RIP (normally a broadcast protocol) to reach nonbroadcast networks. (Optional) Apply an offset list to routing metrics to increase incoming and outgoing metrics to routes learned through RIP. You can limit the offset list with an access list or an interface.
Step 5
neighbor ip-address
Step 6
offset list [access-list number | name] {in | out} offset [type number]
34-21
Command
Step 7
Purpose (Optional) Adjust routing protocol timers. Valid ranges for all timers are 0 to 4294967295 seconds.
updateThe time between sending routing updates. The default is 30 seconds. invalid The timer after which a route is declared invalid. The default is 180 seconds. holddownThe time before a route is removed from the routing table. The default is 180 seconds. flushThe amount of time for which routing updates are postponed. The default is 240 seconds.
Step 8
version {1 | 2 }
(Optional) Configure the switch to receive and send only RIP Version 1 or RIP version 2 packets. By default, the switch receives Version 1 and 2 but sends only Version 1. You can also use the interface commands ip rip {send | receive} version 1 | 2 | 1 2 } to control what versions are used for sending and receiving on interfaces. (Optional) Disable automatic summarization. By default, the switch summarizes subprefixes when crossing classful network boundaries. Disable summarization (RIP version 2 only) to advertise subnet and host routing information to classful network boundaries. (Optional) Disable validation of the source IP address of incoming RIP routing updates. By default, the switch validates the source IP address of incoming RIP routing updates and discards the update if the source address is not valid. Under normal circumstances, disabling this feature is not recommended. However, if you have a router that is off-network and you want to receive its updates, you can use this command. (Optional) Add interpacket delay for RIP updates sent. By default, packets in a multiple-packet RIP update have no delay added between packets. If you are sending packets to a lower-speed device, you can add an interpacket delay in the range of 8 to 50 milliseconds. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Step 9
no auto summary
Step 10
no validate-update-source
Step 11
output-delay delay
To turn off the RIP routing process, use the no router rip global configuration command. To display the parameters and current state of the active routing protocol process, use the show ip protocols privileged EXEC command. Use the show ip rip database privileged EXEC command to display summary address entries in the RIP database.
34-22
78-16180-02
Chapter 34
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to configure. Enable RIP authentication. Configure the interface to use plain text authentication (the default) or MD5 digest authentication. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip rip authentication key-chain name-of-chain ip rip authentication mode [text | md5 } end show running-config interface [interface-id] copy running-config startup-config
To restore clear text authentication, use the no ip rip authentication mode interface configuration command. To prevent authentication, use the no ip rip authentication key-chain interface configuration command.
Note
In general, disabling split horizon is not recommended unless you are certain that your application requires it to properly advertise routes. If you want to configure an interface running RIP to advertise a summarized local IP address pool on a network access server for dial-up clients, use the ip summary-address rip interface configuration command.
Note
If split horizon is enabled, neither autosummary nor interface IP summary addresses are advertised.
34-23
Beginning in privileged EXEC mode, follow these steps to set an interface to advertise a summarized local IP address and to disable split horizon on the interface: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7 Step 8
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Configure the IP address and IP subnet.
ip summary-address rip ip address ip-network mask Configure the IP address to be summarized and the IP network mask. no ip split horizon end show ip interface interface-id copy running-config startup-config Disable split horizon on the interface. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable IP summarization, use the no ip summary-address rip router configuration command. In this example, the major net is 10.0.0.0. The summary address 10.2.0.0 overrides the autosummary address of 10.0.0.0 so that 10.2.0.0 is advertised out interface Gigabit Ethernet port 2, and 10.0.0.0 is not advertised. In the example, if the interface is still in Layer 2 mode (the default), you must enter a no switchport interface configuration command before entering the ip address interface configuration command.
Note
If split horizon is enabled, neither autosummary nor interface summary addresses (those configured with the ip summary-address rip router configuration command) are advertised.
Switch(config)# router rip Switch(config-router)# interface gi1/0/2 Switch(config-if)# ip address 10.1.5.1 255.255.255.0 Switch(config-if)# ip summary-address rip 10.2.0.0 255.255.0.0 Switch(config-if)# no ip split-horizon Switch(config-if)# exit Switch(config)# router rip Switch(config-router)# network 10.0.0.0 Switch(config-router)# neighbor 2.2.2.2 peer-group mygroup Switch(config-router)# end
Note
In general, we do not recommend disabling split horizon unless you are certain that your application requires it to properly advertise routes.
34-24
78-16180-02
Chapter 34
Beginning in privileged EXEC mode, follow these steps to disable split horizon on the interface: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the interface to configure. Configure the IP address and IP subnet. Disable split horizon on the interface. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip address ip-address subnet-mask no ip split-horizon end show ip interface interface-id copy running-config startup-config
To enable the split horizon mechanism, use the ip split-horizon interface configuration command.
Configuring OSPF
This section briefly describes how to configure Open Shortest Path First (OSPF). For a complete description of the OSPF commands, refer to the OSPF Commands chapter of the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 .
Note
OSPF classifies different media into broadcast, nonbroadcast, and point-to-point networks. The Catalyst 3750 switch supports broadcast (Ethernet, Token Ring, and FDDI) and point-to-point networks (Ethernet interfaces configured as point-to-point links). OSPF is an Interior Gateway Protocol (IGP) designed expressly for IP networks, supporting IP subnetting and tagging of externally derived routing information. OSPF also allows packet authentication and uses IP multicast when sending and receiving packets. The Cisco implementation supports RFC 1253, OSPF management information base (MIB). The Cisco implementation conforms to the OSPF Version 2 specifications with these key features:
Definition of stub areas is supported. Routes learned through any IP routing protocol can be redistributed into another IP routing protocol. At the intradomain level, this means that OSPF can import routes learned through IGRP and RIP. OSPF routes can also be exported into IGRP and RIP. Plain text and MD5 authentication among neighboring routers within an area is supported. Configurable routing interface parameters include interface output cost, retransmission interval, interface transmit delay, router priority, router dead and hello intervals, and authentication key. Virtual links are supported. Not-so-stubby-areas (NSSAs) per RFC 1587are supported.
OSPF typically requires coordination among many internal routers, area border routers (ABRs) connected to multiple areas, and autonomous system boundary routers (ASBRs). The minimum configuration would use all default parameter values, no authentication, and interfaces assigned to areas. If you customize your environment, you must ensure coordinated configuration of all routers.
34-25
This section briefly describes how to configure OSPF. It includes this information:
Default OSPF Configuration, page 34-26 Configuring Basic OSPF Parameters, page 34-27 Configuring OSPF Interfaces, page 34-28 Configuring OSPF Area Parameters, page 34-29 Configuring Other OSPF Parameters, page 34-30 Changing LSA Group Pacing, page 34-32 Configuring a Loopback Interface, page 34-32 Monitoring OSPF, page 34-33
Note
Default Setting Cost: No default cost predefined. Retransmit interval: 5 seconds. Transmit delay: 1 second. Priority: 1. Hello interval: 10 seconds. Dead interval: 4 times the hello interval. No authentication. No password specified. MD5 authentication disabled.
Area
Authentication type: 0 (no authentication). Default cost: 1. Range: Disabled. Stub: No stub area defined. NSSA: No NSSA area defined.
100 Mbps. Disabled. When enabled, the default metric setting is 10, and the external route type default is Type 2. Built-in, automatic metric translation, as appropriate for each routing protocol.
34-26
78-16180-02
Chapter 34
Default Setting dist1 (all routes within an area): 110. dist2 (all routes from one area to another): 110. and dist3 (routes from other routing domains): 110. Disabled. All outgoing link-state advertisements (LSAs) are flooded to the interface. Disabled. Enabled. None specified. Disabled. All outgoing LSAs are flooded to the neighbor. Disabled. No OSPF routing process defined. Disabled. 240 seconds. spf delay: 5 seconds. spf-holdtime: 10 seconds. No area ID or router ID defined. Hello interval: 10 seconds. Retransmit interval: 5 seconds. Transmit delay: 1 second. Dead interval: 40 seconds. Authentication key: no key predefined. Message-digest key (MD5): no key predefined.
OSPF database filter IP OSPF name lookup Log adjacency changes Neighbor Neighbor database filter Network area Router ID Summary address Timers LSA group pacing Timers shortest path first (spf) Virtual link
Purpose Enter global configuration mode. Enable OSPF routing, and enter router configuration mode. The process ID is an internally used identification parameter that is locally assigned and can be any positive integer. Each OSPF routing process has a unique value.
34-27
Command
Step 3
Purpose Define an interface on which OSPF runs and the area ID for that interface. You can use the wildcard-mask to use a single command to define one or more multiple interfaces to be associated with a specific OSPF area. The area ID can be a decimal value or an IP address. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To terminate an OSPF routing process, use the no router ospf process-id global configuration command. This example shows how to configure an OSPF routing process and assign it a process number of 109:
Switch(config)# router ospf 109 Switch(config-router)# network 131.108.0.0 255.255.255.0 area 24
Note
The ip ospf interface configuration commands are all optional. Beginning in privileged EXEC mode, follow these steps to modify OSPF interface parameters:
Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. (Optional) Explicitly specify the cost of sending a packet on the interface. (Optional) Specify the number of seconds between link state advertisement transmissions. The range is 1 to 65535 seconds. The default is 5 seconds. (Optional) Set the estimated number of seconds to wait before sending a link state update packet. The range is 1 to 65535 seconds. The default is 1 second. (Optional) Set priority to help find the OSPF designated router for a network. The range is from 0 to 255. The default is 1. (Optional) Set the number of seconds between hello packets sent on an OSPF interface. The value must be the same for all nodes on a network. The range is 1 to 65535 seconds. The default is 10 seconds.
Step 5
Step 6 Step 7
34-28
78-16180-02
Chapter 34
Command
Step 8
Purpose (Optional) Set the number of seconds after the last device hello packet was seen before its neighbors declare the OSPF router to be down. The value must be the same for all nodes on a network. The range is 1 to 65535 seconds. The default is 4 times the hello interval. (Optional) Assign a password to be used by neighboring OSPF routers. The password can be any string of keyboard-entered characters up to 8 bytes in length. All neighboring routers on the same network must have the same password to exchange OSPF information. (Optional) Enable MDS authentication.
Step 9
Step 10
Step 11
(Optional) Block flooding of OSPF LSA packets to the interface. By default, OSPF floods new LSAs over all interfaces in the same area, except the interface on which the LSA arrives. Return to privileged EXEC mode. Display OSPF-related interface information. (Optional) Save your entries in the configuration file.
Use the no form of these commands to remove the configured parameter value or return to the default value.
Note
The OSPF area router configuration commands are all optional. Beginning in privileged EXEC mode, follow these steps to configure area parameters:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable OSPF routing, and enter router configuration mode.
34-29
Command
Step 3
Purpose (Optional) Allow password-based protection against unauthorized access to the identified area. The identifier can be either a decimal value or an IP address. (Optional) Define an area as a stub area. The no-summary keyword prevents an ABR from sending summary link advertisements into the stub area. (Optional) Defines an area as a not-so-stubby-area. Every router within the same area must agree that the area is NSSA. Select one of these keywords:
Step 4 Step 5
area area-id authentication message-digest (Optional) Enable MD5 authentication on the area. area area-id stub [no-summary]
Step 6
no-redistributionSelect when the router is an NSSA ABR and you want the redistribute command to import routes into normal areas, but not into the NSSA. default-information-originateSelect on an ABR to allow importing type 7 LSAs into the NSSA. no-redistributionSelect to not send summary LSAs into the NSSA.
(Optional) Specify an address range for which a single route is advertised. Use this command only with area border routers. Return to privileged EXEC mode. Display information about the OSPF routing process in general or for a specific process ID to verify configuration.
show ip ospf [process-id [area-id]] database Display lists of information related to the OSPF database for a specific router.
Step 10
Use the no form of these commands to remove the configured parameter value or to return to the default value.
Route summarization: When redistributing routes from other protocols as described in the Using Route Maps to Redistribute Routing Information section on page 34-64, each route is advertised individually in an external LSA. To help decrease the size of the OSPF link state database, you can use the summary-address router configuration command to advertise a single router for all the redistributed routes included in a specified network address and mask. Virtual links: In OSPF, all areas must be connected to a backbone area. You can establish a virtual link in case of a backbone-continuity break by configuring two Area Border Routers as endpoints of a virtual link. Configuration information includes the identity of the other virtual endpoint (the other ABR) and the nonbackbone link that the two routers have in common (the transit area). Virtual links cannot be configured through a stub area.
34-30
78-16180-02
Chapter 34
Default route: When you specifically configure redistribution of routes into an OSPF routing domain, the route automatically becomes an autonomous system boundary router (ASBR). You can force the ASBR to generate a default route into the OSPF routing domain. Domain Name Server (DNS) names for use in all OSPF show privileged EXEC command displays makes it easier to identify a router than displaying it by router ID or neighbor ID. Default Metrics: OSPF calculates the OSPF metric for an interface according to the bandwidth of the interface. The metric is calculated as ref-bw divided by bandwidth, where ref is 10 by default, and bandwidth (bw) is specified by the bandwidth interface configuration command. For multiple links with high bandwidth, you can specify a larger number to differentiate the cost on those links. Administrative distance is a rating of the trustworthiness of a routing information source, an integer between 0 and 255, with a higher value meaning a lower trust rating. An administrative distance of 255 means the routing information source cannot be trusted at all and should be ignored. OSPF uses three different administrative distances: routes within an area (interarea), routes to another area (interarea), and routes from another routing domain learned through redistribution (external). You can change any of the distance values. Passive interfaces: Because interfaces between two devices on an Ethernet represent only one network segment, to prevent OSPF from sending hello packets for the sending interface, you must configure the sending device to be a passive interface. Both devices can identify each other through the hello packet for the receiving interface. Route calculation timers: You can configure the delay time between when OSPF receives a topology change and when it starts the shortest path first (SPF) calculation and the hold time between two SPF calculations. Log neighbor changes: You can configure the router to send a syslog message when an OSPF neighbor state changes, providing a high-level view of changes in the router.
Beginning in privileged EXEC mode, follow these steps to configure these OSPF parameters: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enable OSPF routing, and enter router configuration mode. (Optional) Specify an address and IP subnet mask for redistributed routes so that only one summary route is advertised. (Optional) Establish a virtual link and set its parameters. See the Configuring OSPF Interfaces section on page 34-28 for parameter definitions and Table 34-5 on page 34-26 for virtual link defaults.
configure terminal router ospf process-id summary-address address mask area area-id virtual-link router-id [hello-interval seconds] [retransmit-interval seconds] [trans ] [[authentication-key key] | message-digest-key keyid md5 key]] default-information originate [always] [metric metric-value] [metric-type type-value] [route-map map-name] ip ospf name-lookup ip auto-cost reference-bandwidth ref-bw
Step 5
(Optional) Force the ASBR to generate a default route into the OSPF routing domain. Parameters are all optional. (Optional) Configure DNS name lookup. The default is disabled. (Optional) Specify an address range for which a single route will be advertised. Use this command only with area border routers.
distance ospf {[inter-area dist1] [inter-area (Optional) Change the OSPF distance values. The default distance dist2] [external dist3]} for each type of route is 110. The range is 1 to 255. passive-interface type number (Optional) Suppress the sending of hello packets through the specified interface.
34-31
Command
Step 10
spf-delayEnter an integer from 0 to 65535. The default is 5 seconds; 0 means no delay. spf-holdtimeEnter an integer from 0 to 65535. The default is 10 seconds; 0 means no delay.
(Optional) Send syslog message when a neighbor state changes. Return to privileged EXEC mode.
show ip ospf [process-id [area-id]] database Display lists of information related to the OSPF database for a specific router. For some of the keyword options, see the Monitoring OSPF section on page 34-33. copy running-config startup-config (Optional) Save your entries in the configuration file.
Step 14
Purpose Enter global configuration mode. Enable OSPF routing, and enter router configuration mode. Change the group pacing of LSAs. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal router ospf process-id timers lsa-group-pacing seconds end show running-config copy running-config startup-config
To return to the default value, use the no timers lsa-group-pacing router configuration command.
34-32
78-16180-02
Chapter 34
Beginning in privileged EXEC mode, follow these steps to configure a loopback interface: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Purpose Enter global configuration mode. Create a loopback interface, and enter interface configuration mode. Assign an IP address to this interface. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface loopback 0 ip address address mask end show ip interface copy running-config startup-config
Use the no interface loopback 0 global configuration command to disable the loopback interface.
Monitoring OSPF
You can display specific statistics such as the contents of IP routing tables, caches, and databases. Table 34-6 lists some of the privileged EXEC commands for displaying statistics. For more show ip ospf database privileged EXEC command options and for explanations of fields in the resulting display, refer to the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2.
Table 34-6 Show IP OSPF Statistics Commands
Command show ip ospf [process-id] show ip ospf [process-id] database [router] [link-state-id] show ip ospf [process-id] database [router] [self-originate] show ip ospf [process-id ] database [router] [adv-router [ip-address]] show ip ospf [process-id] database [network] [link-state-id] show ip ospf [process-id] database [summary] [link-state-id ] show ip ospf [process-id] database [asbr-summary] [link-state-id] show ip ospf [process-id] database [external] [link-state-id] show ip ospf [process-id area-id] database [database-summary] show ip ospf border-routes show ip ospf interface [interface-name] show ip ospf neighbor [interface-name] [neighbor-id] detail show ip ospf virtual-links
Purpose Display general information about OSPF routing processes. Display lists of information related to the OSPF database.
Display the internal OSPF routing ABR and ASBR table entries. Display OSPF-related interface information. Display OSPF interface neighbor information. Display OSPF-related virtual links information.
34-33
Configuring EIGRP
Enhanced IGRP (EIGRP) is a Cisco proprietary enhanced version of the IGRP. EIGRP uses the same distance vector algorithm and distance information as IGRP; however, the convergence properties and the operating efficiency of EIGRP are significantly improved. The convergence technology employs an algorithm referred to as the Diffusing Update Algorithm (DUAL), which guarantees loop-free operation at every instant throughout a route computation and allows all devices involved in a topology change to synchronize at the same time. Routers that are not affected by topology changes are not involved in recomputations. IP EIGRP provides increased network width. With RIP, the largest possible width of your network is 15 hops. When IGRP is enabled, the largest possible width is 224 hops. Because the EIGRP metric is large enough to support thousands of hops, the only barrier to expanding the network is the transport-layer hop counter. EIGRP increments the transport control field only when an IP packet has traversed 15 routers and the next hop to the destination was learned through EIGRP. When a RIP route is used as the next hop to the destination, the transport control field is incremented as usual. EIGRP offers these features:
Fast convergence. Incremental updates when the state of a destination changes, instead of sending the entire contents of the routing table, minimizing the bandwidth required for EIGRP packets. Less CPU usage than IGRP because full update packets need not be processed each time they are received. Protocol-independent neighbor discovery mechanism to learn about neighboring routers. Variable-length subnet masks (VLSMs). Arbitrary route summarization. EIGRP scales to large networks. Neighbor discovery and recovery is the process that routers use to dynamically learn of other routers on their directly attached networks. Routers must also discover when their neighbors become unreachable or inoperative. Neighbor discovery and recovery is achieved with low overhead by periodically sending small hello packets. As long as hello packets are received, the Cisco IOS software can learn that a neighbor is alive and functioning. When this status is determined, the neighboring routers can exchange routing information. The reliable transport protocol is responsible for guaranteed, ordered delivery of EIGRP packets to all neighbors. It supports intermixed transmission of multicast and unicast packets. Some EIGRP packets must be sent reliably, and others need not be. For efficiency, reliability is provided only when necessary. For example, on a multiaccess network that has multicast capabilities (such as Ethernet), it is not necessary to send hellos reliably to all neighbors individually. Therefore, EIGRP sends a single multicast hello with an indication in the packet informing the receivers that the packet need not be acknowledged. Other types of packets (such as updates) require acknowledgment, which is shown in the packet. The reliable transport has a provision to send multicast packets quickly when there are unacknowledged packets pending. Doing so helps ensure that convergence time remains low in the presence of varying speed links. The DUAL finite state machine embodies the decision process for all route computations. It tracks all routes advertised by all neighbors. DUAL uses the distance information (known as a metric) to select efficient, loop-free paths. DUAL selects routes to be inserted into a routing table based on feasible successors. A successor is a neighboring router used for packet forwarding that has a least-cost path to a destination that is guaranteed not to be part of a routing loop. When there are no
34-34
78-16180-02
Chapter 34
feasible successors, but there are neighbors advertising the destination, a recomputation must occur. This is the process whereby a new successor is determined. The amount of time it takes to recompute the route affects the convergence time. Recomputation is processor-intensive; it is advantageous to avoid recomputation if it is not necessary. When a topology change occurs, DUAL tests for feasible successors. If there are feasible successors, it uses any it finds to avoid unnecessary recomputation.
The protocol-dependent modules are responsible for network layer protocol-specific tasks. An example is the IP EIGRP module, which is responsible for sending and receiving EIGRP packets that are encapsulated in IP. It is also responsible for parsing EIGRP packets and informing DUAL of the new information received. EIGRP asks DUAL to make routing decisions, but the results are stored in the IP routing table. EIGRP is also responsible for redistributing routes learned by other IP routing protocols.
This section briefly describes how to configure EIGRP. It includes this information:
Default EIGRP Configuration, page 34-35 Configuring Basic EIGRP Parameters, page 34-36 Configuring EIGRP Interfaces, page 34-37 Configuring EIGRP Route Authentication, page 34-38 Monitoring and Maintaining EIGRP, page 34-39
Note
Default Setting Enabled. Subprefixes are summarized to the classful network boundary when crossing classful network boundaries. Exterior routes are accepted and default information is passed between IGRP or EIGRP processes when doing redistribution. Only connected routes and interface static routes can be redistributed without a default metric. The metric includes:
Bandwidth: 0 or greater kbps. Delay (tens of microseconds): 0 or any positive number that is a multiple of 39.1 nanoseconds. Reliability: any number between 0 and 255 (255 means 100 percent reliability). Loading: effective bandwidth as a number between 0 and 255 (255 is 100 percent loading). MTU: maximum transmission unit size of the route in bytes. 0 or any positive integer.
34-35
Feature Distance EIGRP log-neighbor changes IP authentication key-chain IP authentication mode IP bandwidth-percent IP hello interval IP hold-time IP split-horizon IP summary address Metric weights Network Offset-list Router EIGRP Set metric Traffic-share Variance
Default Setting Internal distance: 90. External distance: 170. Disabled. No adjacency changes logged. No authentication provided. No authentication provided. 50 percent. For low-speed nonbroadcast multiaccess (NBMA) networks: 60 seconds; all other networks: 5 seconds. For low-speed NBMA networks: 180 seconds; all other networks: 15 seconds. Enabled. No summary aggregate addresses are predefined. tos: 0; k1 and k3: 1; k2, k4, and k5: 0 None specified. Disabled. Disabled. No metric set in the route map. Distributed proportionately to the ratios of the metrics. 1 (equal-cost load balancing).
To create an EIGRP routing process, you must enable EIGRP and associate networks. EIGRP sends updates to the interfaces in the specified networks. If you do not specify an interface network, it is not advertised in any EIGRP update.
Note
If you have routers on your network that are configured for IGRP, and you want to change to EIGRP, you must designate transition routers that have both IGRP and EIGRP configured. In these cases, perform Steps 1 through 3 in the next section and also see the Configuring Split Horizon section on page 34-24. You must use the same AS number for routes to be automatically redistributed.
Purpose Enter global configuration mode. Enable an EIGRP routing process, and enter router configuration mode. The AS number identifies the routes to other EIGRP routers and is used to tag routing information.
34-36
78-16180-02
Chapter 34
Command
Step 3
Purpose Associate networks with an EIGRP routing process. EIGRP sends updates to the interfaces in the specified networks. If an interfaces network is not specified, it is not advertised in any IGRP or EIGRP update. (Optional) Enable logging of EIGRP neighbor changes to monitor routing system stability. (Optional) Adjust the EIGRP metric. Although the defaults have been carefully set to provide excellent operation in most networks, you can adjust them.
network network-number
Step 4 Step 5
Caution
Setting metrics is complex and is not recommended without guidance from an experienced network designer.
Step 6
offset list [access-list number | name] {in | out} (Optional) Apply an offset list to routing metrics to increase offset [type number] incoming and outgoing metrics to routes learned through EIGRP. You can limit the offset list with an access list or an interface. no auto-summary ip summary-address eigrp autonomous-system-number address mask end show ip protocols copy running-config startup-config (Optional) Disable automatic summarization of subnet routes into network-level routes. (Optional) Configure a summary aggregate. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Use the no forms of these commands to disable the feature or return the setting to the default value.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. (Optional) Configure the percentage of bandwidth that can be used by EIGRP on an interface. The default is 50 percent. (Optional) Configure a summary aggregate address for a specified interface (not usually necessary if auto-summary is enabled).
configure terminal interface interface-id ip bandwidth-percent eigrp percent ip summary-address eigrp autonomous-system-number address mask
34-37
Command
Step 5
Purpose (Optional) Change the hello time interval for an EIGRP routing process. The range is 1 to 65535 seconds. The default is 60 seconds for low-speed NBMA networks and 5 seconds for all other networks. (Optional) Change the hold time interval for an EIGRP routing process. The range is 1 to 65535 seconds. The default is 180 seconds for low-speed NBMA networks and 15 seconds for all other networks.
Step 6
Caution
Do not adjust the hold time without consulting Cisco technical support.
Step 7
no ip split-horizon eigrp autonomous-system-number (Optional) Disable split horizon to allow route information to be advertised by a router out any interface from which that information originated. end show ip eigrp interface copy running-config startup-config Return to privileged EXEC mode. Display which interfaces EIGRP is active on and information about EIGRP relating to those interfaces. (Optional) Save your entries in the configuration file.
Use the no forms of these commands to disable the feature or return the setting to the default value.
Purpose Enter global configuration mode. Enter interface configuration mode, and specify the Layer 3 interface to configure. Enable MD5 authentication in IP EIGRP packets. Enable authentication of IP EIGRP packets. Return to global configuration mode. Identify a key chain and enter key-chain configuration mode. Match the name configured in Step 4. In key-chain configuration mode, identify the key number. In key-chain key configuration mode, identify the key string.
configure terminal interface interface-id ip authentication mode eigrp autonomous-system md5 ip authentication key-chain eigrp autonomous-system key-chain exit key chain name-of-chain key number key-string text
34-38
78-16180-02
Chapter 34
Command
Step 9
Purpose
accept-lifetime start-time {infinite | end-time | duration (Optional) Specify the time period during which the key seconds} can be received. The start-time and end-time syntax can be either hh:mm:ss Month date year or hh:mm:ss date Month year. The default is forever with the default start-time and the earliest acceptable date as January 1, 1993. The default end-time and duration is infinite.
Step 10
(Optional) Specify the time period during which the key can be sent. The start-time and end-time syntax can be either hh:mm:ss Month date year or hh:mm:ss date Month year. The default is forever with the default start-time and the earliest acceptable date as January 1, 1993. The default end-time and duration is infinite.
Return to privileged EXEC mode. Display authentication key information. (Optional) Save your entries in the configuration file.
Use the no forms of these commands to disable the feature or to return the setting to the default value.
Command clear ip eigrp neighbors [if-address | interface] show ip eigrp interface [interface] [as number] show ip eigrp neighbors [type-number ] show ip eigrp topology [autonomous-system-number] | [[ip-address ] mask]] show ip eigrp traffic [autonomous-system-number]
Purpose Delete neighbors from the neighbor table. Display information about interfaces configured for EIGRP. Display EIGRP discovered neighbors. Display the EIGRP topology table for a given process. Display the number of packets sent and received for all or a specified EIGRP process.
34-39
Configuring BGP
The Border Gateway Protocol (BGP) is an exterior gateway protocol used to set up an interdomain routing system that guarantees the loop-free exchange of routing information between autonomous systems. Autonomous systems are made up of routers that operate under the same administration and that run Interior Gateway Protocols (IGPs), such as RIP or OSPF, within their boundaries and that interconnect by using an Exterior Gateway Protocol (EGP). BGP version 4 is the standard EGP for interdomain routing in the Internet. The protocol is defined in RFCs 1163, 1267, and 1771. You can find detailed information about BGP in Internet Routing Architectures, published by Cisco Press, and in the Configuring BGP chapter in the Cisco IOS IP and IP Routing Configuration Guide. For details about BGP commands and keywords, refer to the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 . For a list of BGP commands that are visible but not supported by the switch, see Appendix C, Unsupported Commands in Cisco IOS Release 12.2(20)SE. Routers that belong to the same autonomous system (AS) and that exchange BGP updates run internal BGP (IBGP), and routers that belong to different autonomous systems and that exchange BGP updates run external BGP (EBGP). Most configuration commands are the same for configuring EBGP and IBGP. The difference is that the routing updates are exchanged either between autonomous systems (EBGP) or within an AS (IBGP). Figure 34-4 shows a network that is running both EBGP and IBGP.
Figure 34-4 EBGP , IBGP , and Multiple Autonomous Systems
AS 100
Router A
Router D
AS 300
129.213.1.2
EBGP
Router B
175.220.212.1
Router C
175.220.1.2 AS 200
74775
Before exchanging information with an external AS, BGP ensures that networks within the AS can be reached by defining internal BGP peering among routers within the AS and by redistributing BGP routing information to IGPs that run within the AS, such as IGRP and OSPF. Routers that run a BGP routing process are often referred to as BGP speakers. BGP uses the Transmission Control Protocol (TCP) as its transport protocol (specifically port 179). Two BGP speakers that have a TCP connection to each other for exchanging routing information are known as peers or neighbors. In Figure 34-4, Routers A and B are BGP peers, as are Routers B and C and Routers C and D. The routing information is a series of AS numbers that describe the full path to the destination network. BGP uses this information to construct a loop-free map of autonomous systems. The network has these characteristics:
Routers A and B are running EBGP, and Routers B and C are running IBGP. Note that the EBGP peers are directly connected and that the IBGP peers are not. As long as there is an IGP running that allows the two neighbors to reach one another, IBGP peers do not have to be directly connected.
34-40
78-16180-02
Chapter 34
All BGP speakers within an AS must establish a peer relationship with each other. That is, the BGP speakers within an AS must be fully meshed logically. BGP4 provides two techniques that reduce the requirement for a logical full mesh: confederations and route reflectors. AS 200 is a transit AS for AS 100 and AS 300that is, AS 200 is used to transfer packets between AS 100 and AS 300.
BGP peers initially exchange their full BGP routing tables and then send only incremental updates. BGP peers also exchange keepalive messages (to ensure that the connection is up) and notification messages (in response to errors or special conditions). In BGP, each route consists of a network number, a list of autonomous systems that information has passed through (the autonomous system path), and a list of other path attributes. The primary function of a BGP system is to exchange network reachability information, including information about the list of AS paths, with other BGP systems. This information can be used to determine AS connectivity, to prune routing loops, and to enforce AS-level policy decisions. A router or switch running Cisco IOS does not select or use an IBGP route unless it has a route available to the next-hop router and it has received synchronization from an IGP (unless IGP synchronization is disabled). When multiple routes are available, BGP bases its path selection on attribute values. See the Configuring BGP Decision Attributes section on page 34-47 for information about BGP attributes. BGP Version 4 supports classless interdomain routing (CIDR) so you can reduce the size of your routing tables by creating aggregate routes, resulting in supernets . CIDR eliminates the concept of network classes within BGP and supports the advertising of IP prefixes. These sections briefly describe how to configure BGP and supported BGP features:
Default BGP Configuration, page 34-42 Enabling BGP Routing, page 34-44 Managing Routing Policy Changes, page 34-46 Configuring BGP Decision Attributes, page 34-47 Configuring BGP Filtering with Route Maps, page 34-49 Configuring BGP Filtering by Neighbor, page 34-50 Configuring Prefix Lists for BGP Filtering, page 34-51 Configuring BGP Community Filtering, page 34-52 Configuring BGP Neighbors and Peer Groups, page 34-54 Configuring Aggregate Addresses, page 34-56 Configuring Routing Domain Confederations, page 34-56 Configuring BGP Route Reflectors, page 34-57 Configuring Route Dampening, page 34-58 Monitoring and Maintaining BGP, page 34-59
For detailed descriptions of BGP configuration, refer to the Configuring BGP chapter in the Cisco IOS IP Configuration Guide, Release 12.2. For details about specific commands, refer to the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2 . For a list of BGP commands that are visible but not supported by the switch, see Appendix C, Unsupported Commands in Cisco IOS Release 12.2(20)SE.
34-41
Feature Aggregate address AS path access list Auto summary Best path
The router considers as-path in choosing a route and does not compare similar routes from external BGP peers. Compare router ID: Disabled. Number: None defined. When you permit a value for the community number, the list defaults to an implicit deny for everything else that has not been permitted. Format: Cisco default format (32-bit number). Identifier: None configured. Peers: None identified.
BGP confederation identifier/peers BGP Fast external fallover BGP local preference BGP network BGP route dampening
Enabled. 100. The range is 0 to 4294967295 with the higher value preferred. None specified; no backdoor route advertised. Disabled by default. When enabled:
Half-life is 15 minutes. Re-use is 750 (10-second increments). Suppress is 2000 (10-second increments). Max-suppress-time is 4 times half-life; 60 minutes.
BGP router ID
The IP address of a loopback interface if one is configured or the highest IP address configured for a physical interface on the router.
Default information originate Disabled. (protocol or network redistribution) Default metric Distance Built-in, automatic metric translations.
External route administrative distance: 20 (acceptable values are from 1 to 255). Internal route administrative distance: 200 (acceptable values are from 1 to 255). Local route administrative distance: 200 (acceptable values are from 1 to 255). In (filter networks received in updates): Disabled. Out (suppress networks from being advertised in updates): Disabled.
34-42
78-16180-02
Chapter 34
Default Setting
Always compare: Disabled. Does not compare MEDs for paths from neighbors in different autonomous systems. Best path compare: Disabled. MED missing as worst path: Disabled. Deterministic MED comparison is disabled. Advertisement interval: 30 seconds for external peers; 5 seconds for internal peers. Change logging: Enabled. Conditional advertisement: Disabled. Default originate: No default route is sent to the neighbor. Description: None. Distribute list: None defined. External BGP multihop: Only directly connected neighbors are allowed. Filter list: None used. Maximum number of prefixes received: No limit. Next hop (router as next hop for BGP neighbor): Disabled. Password: Disabled. Peer group: None defined; no members assigned. Prefix list: None specified. Remote AS (add entry to neighbor BGP table): No peers defined. Private AS number removal: Disabled. Route maps: None applied to a peer. Send community attributes: None sent to neighbors. Shutdown or soft reconfiguration: Not enabled. Timers: keepalive: 60 seconds; holdtime: 180 seconds. Update source: Best local address. Version: BGP version 4. Weight: Routes learned through BGP peer: 0; routes sourced by the local router: 32768.
Neighbor
Route reflector Synchronization (BGP and IGP) Table map update Timers
34-43
Note
To enable BGP, the stack master must be running the EMI. Beginning in privileged EXEC mode, follow these steps to enable BGP routing, establish a BGP routing process, and specify a neighbor:
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable IP routing (required only if IP routing is disabled). Enable a BGP routing process, assign it an AS number, and enter router configuration mode. The AS number can be from 1 to 65535, with 64512 to 65535 designated as private autonomous numbers. Configure a network as local to this AS, and enter it in the BGP table. Add an entry to the BGP neighbor table specifying that the neighbor identified by the IP address belongs to the specified AS. For EBGP, neighbors are usually directly connected, and the IP address is the address of the interface at the other end of the connection. For IBGP, the IP address can be the address of any of the router interfaces.
Step 4 Step 5
network network-number [mask network-mask] [route-map route-map-name] neighbor {ip-address | peer-group-name} remote-as number
Step 6 Step 7
(Optional) Remove private AS numbers from the AS-path in outbound routing updates. (Optional) Disable synchronization between BGP and an IGP.
34-44
78-16180-02
Chapter 34
Command
Step 8
Purpose (Optional) Disable automatic network summarization. By default, when a subnet is redistributed from an IGP into BGP, only the network route is inserted into the BGP table. (Optional) Automatically reset a BGP session when a link between external neighbors goes down. By default, the session is not immediately reset. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
no auto-summary
Step 9
bgp fast-external-fallover
end show ip bgp network network-number show ip bgp neighbor copy running-config startup-config
Use the no router bgp autonomous-system global configuration command to remove a BGP AS. Use the no network network-number router configuration command to remove the network from the BGP table. Use the no neighbor {ip-address | peer-group-name} remote-as number router configuration command to remove a neighbor. Use the no neighbor {ip-address | peer-group-name} remove-private-as router configuration command to include private AS numbers in updates to a neighbor. Use the synchronization router configuration command to re-enable synchronization. These examples show how to configure BGP on the routers in Figure 34-4. Router A:
Switch(config)# router bgp 100 Switch(config-router)# neighbor 129.213.1.1 remote-as 200
Router B:
Switch(config)# router bgp 200 Switch(config-router)# neighbor 129.213.1.2 remote-as 100 Switch(config-router)# neighbor 175.220.1.2 remote-as 200
Router C:
Switch(config)# router bgp 200 Switch(config-router)# neighbor 175.220.212.1 remote-as 200 Switch(config-router)# neighbor 192.208.10.1 remote-as 300
Router D:
Switch(config)# router bgp 300 Switch(config-router)# neighbor 192.208.10.2 remote-as 200
To verify that BGP peers are running, use the show ip bgp neighbors privileged EXEC command. This is the output of this command on Router A:
Switch# show ip bgp neighbors BGP neighbor is 129.213.1.1, remote AS 200, external link BGP version 4, remote router ID 175.220.212.1 BGP state = established, table version = 3, up for 0:10:59 Last read 0:00:29, hold time is 180, keepalive interval is 60 seconds Minimum time between advertisement runs is 30 seconds Received 2828 messages, 0 notifications, 0 in queue Sent 2826 messages, 0 notifications, 0 in queue Connections established 11; dropped 10
34-45
Anything other than state = established means that the peers are not running. The remote router ID is the highest IP address on that router (or the highest loopback interface). Each time the table is updated with new information, the table version number increments. A table version number that continually increments means that a route is flapping, causing continual routing updates. For exterior protocols, a reference to an IP network from the network router configuration command controls only which networks are advertised. This is in contrast to Interior Gateway Protocols (IGPs), such as IGRP, which also use the network command to specify where to send updates. For detailed descriptions of BGP configuration, refer to the IP Routing Protocols chapter in the Cisco IOS IP Configuration Guide, Release 12.2. For details about specific commands, refer to the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2. See Appendix C, Unsupported Commands in Cisco IOS Release 12.2(20)SE, for a list of BGP commands that are visible but not supported by the switch.
When soft reset generates inbound updates from a neighbor, it is called dynamic inbound soft reset. When soft reset sends a set of updates to a neighbor, it is called outbound soft reset.
A soft inbound reset causes the new inbound policy to take effect. A soft outbound reset causes the new local outbound policy to take effect without resetting the BGP session. As a new set of updates is sent during outbound policy reset, a new inbound policy can also take effect. Table 34-10 lists the advantages and disadvantages hard reset and soft reset.
Table 34-10 Advantages and Disadvantages of Hard and Soft Resets
Disadvantages The prefixes in the BGP, IP, and FIB tables provided by the neighbor are lost. Not recommended. Does not reset inbound routing table updates.
Dynamic inbound soft reset Does not clear the BGP session and cache
Both BGP routers must support the route refresh capability (in Cisco IOS Release 12.1 Does not require storing of routing table updates and later). and has no memory overhead
34-46
78-16180-02
Chapter 34
Beginning in privileged EXEC mode, follow these steps to learn if a BGP peer supports the route refresh capability and to reset the BGP session: Command
Step 1
Purpose Display whether a neighbor supports the route refresh capability. When supported, this message appears for the router: Received route refresh capability from peer. Reset the routing table on the specified connection.
Step 2
Enter an asterisk (*) to specify that all connections be reset. Enter an IP address to specify the connection to be reset. Enter a peer group name to reset the peer group.
Step 3
(Optional) Perform an outbound soft reset to reset the inbound routing table on the specified connection. Use this command if route refresh is supported.
Enter an asterisk (*) to specify that all connections be reset. Enter an IP address to specify the connection to be reset. Enter a peer group name to reset the peer group.
Step 4
Verify the reset by checking information about the routing table and about BGP neighbors.
If the path specifies a next hop that is inaccessible, drop the update. The BGP next-hop attribute, automatically determined by the software, is the IP address of the next hop that is going to be used to reach a destination. For EBGP, this is usually the IP address of the neighbor specified by the neighbor remote-as router configuration command. You can disable next-hop processing by using route maps or the neighbor next-hop-self router configuration command. Prefer the path with the largest weight (a Cisco proprietary parameter). The weight attribute is local to the router and not propagated in routing updates. By default, the weight attribute is 32768 for paths that the router originates and zero for other paths. Routes with the largest weight are preferred. You can use access lists, route maps, or the neighbor weight router configuration command to set weights.
2.
34-47
3.
Prefer the route with the highest local preference. Local preference is part of the routing update and exchanged among routers in the same AS. The default value of the local preference attribute is 100. You can set local preference by using the bgp default local-preference router configuration command or by using a route map. Prefer the route that was originated by BGP running on the local router. Prefer the route with the shortest AS path. Prefer the route with the lowest origin type. An interior route or IGP is lower than a route learned by EGP, and an EGP-learned route is lower than one of unknown origin or learned in another way. Prefer the route with the lowest multi -exit discriminator (MED) metric attribute if the neighboring AS is the same for all routes considered. You can configure the MED by using route maps or by using the default-metric router configuration command. When an update is sent to an IBGP peer, the MED is included. Prefer the external (EBGP) path over the internal (IBGP) path. Prefer the route that can be reached through the closest IGP neighbor (the lowest IGP metric). This means that the router will prefer the shortest internal path within the AS to reach the destination (the shortest path to the BGP next-hop). Both the best route and this route are external. Both the best route and this route are from the same neighboring autonomous system. maximum-paths is enabled.
4. 5. 6. 7.
8. 9.
10. If the following conditions are all true, insert the route for this path into the IP routing table:
11. If multipath is not enabled, prefer the route with the lowest IP address value for the BGP router ID.
The router ID is usually the highest IP address on the router or the loopback (virtual) address, but might be implementation-specific. Beginning in privileged EXEC mode, follow these steps to configure some decision attributes: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Enable a BGP routing process, assign it an AS number, and enter router configuration mode. (Optional) Configure the router to ignore AS path length in selecting a route.
neighbor {ip-address | peer-group-name} next-hop-self (Optional) Disable next-hop processing on BGP updates to a neighbor by entering a specific IP address to be used instead of the next-hop address. neighbor {ip-address | peer-group-name} weight weight (Optional) Assign a weight to a neighbor connection. Acceptable values are from 0 to 65535; the largest weight is the preferred route. Routes learned through another BGP peer have a default weight of 0; routes sourced by the local router have a default weight of 32768. (Optional) Set a MED metric to set preferred paths to external neighbors. All routes without a MED will also be set to this value. The range is 1 to 4294967295. The lowest value is the most desirable.
Step 5
Step 6
default-metric number
34-48
78-16180-02
Chapter 34
Command
Step 7
Purpose (Optional) Configure the switch to consider a missing MED as having a value of infinity, making the path without a MED value the least desirable path. (Optional) Configure the switch to compare MEDs for paths from neighbors in different autonomous systems. By default, MED comparison is only done among paths in the same AS. (Optional) Configure the switch to consider the MED in choosing a path from among those advertised by different subautonomous systems within a confederation. (Optional) Configure the switch to consider the MED variable when choosing among routes advertised by different peers in the same AS. (Optional) Change the default local preference value. The range is 0 to 4294967295; the default value is 100. The highest local preference value is preferred. (Optional) Configure the number of paths to be added to the IP routing table. The default is to only enter the best path in the routing table. The range is from 1 to 8. Having multiple paths allows load balancing among the paths. Return to privileged EXEC mode. Verify the reset by checking information about the routing table and about BGP neighbors. (Optional) Save your entries in the configuration file.
Step 8
Step 9
Step 10
Step 11
Step 12
maximum-paths number
Purpose Enter global configuration mode. Create a route map, and enter route-map configuration mode.
34-49
Command
Step 3
In an inbound route map, set the next hop of matching routes to be the neighbor peering address, overriding third-party next hops. In an outbound route map of a BGP peer, set the next hop to the peering address of the local router, disabling the next-hop calculation.
Return to privileged EXEC mode. Display all route maps configured or only the one specified to verify configuration. (Optional) Save your entries in the configuration file.
Use the no route-map map-tag command to delete the route map. Use the no set ip next-hop ip-address command to re-enable next-hop processing.
Purpose Enter global configuration mode. Enable a BGP routing process, assign it an AS number, and enter router configuration mode. (Optional) Filter BGP routing updates to or from neighbors as specified in an access list.
Note
configure terminal router bgp autonomous-system neighbor {ip-address | peer-group name} distribute-list {access-list-number | name} {in | out}
You can also use the neighbor prefix-list router configuration command to filter updates, but you cannot use both commands to configure the same BGP peer.
Step 4 Step 5
(Optional) Apply a route map to filter an incoming or outgoing route. Return to privileged EXEC mode.
34-50
78-16180-02
Chapter 34
Command
Step 6 Step 7
Purpose Verify the configuration. (Optional) Save your entries in the configuration file.
Use the no neighbor distribute-list command to remove the access list from the neighbor. Use the no neighbor route-map map-tag router configuration command to remove the route map from the neighbor. Another method of filtering is to specify an access list filter on both incoming and outbound updates, based on the BGP autonomous system paths. Each filter is an access list based on regular expressions. (Refer to the Regular Expressions appendix in the Cisco IOS Dial Services Command Reference for more information on forming regular expressions.) To use this method, define an autonomous system path access list, and apply it to updates to and from particular neighbors. Beginning in privileged EXEC mode, follow these steps to configure BGP path filtering: Command
Step 1 Step 2 Step 3 Step 4
Purpose Enter global configuration mode. Define a BGP-related access list. Enter BGP router configuration mode. Establish a BGP filter based on an access list.
configure terminal ip as-path access-list access-list-number {permit | deny } as-regular-expressions router bgp autonomous-system neighbor {ip-address | peer-group name} filter-list {access-list-number | name} {in | out | weight weight} end show ip bgp neighbors [paths regular-expression] copy running-config startup-config
Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
An empty prefix list permits all prefixes. An implicit deny is assumed if a given prefix does not match any entries in a prefix list. When multiple entries of a prefix list match a given prefix, the sequence number of a prefix list entry identifies the entry with the lowest sequence number.
By default, sequence numbers are generated automatically and incremented in units of five. If you disable the automatic generation of sequence numbers, you must specify the sequence number for each entry. You can specify sequence values in any increment. If you specify increments of one, you cannot insert additional entries into the list; if you choose very large increments, you might run out of values.
34-51
You do not need to specify a sequence number when removing a configuration entry. Show commands include the sequence numbers in their output. Before using a prefix list in a command, you must set up the prefix list. Beginning in privileged EXEC mode, follow these steps to create a prefix list or to add an entry to a prefix list: Command
Step 1 Step 2
configure terminal
ip prefix-list list-name [seq seq-value] deny | Create a prefix list with an optional sequence number to deny or permit network/len [ge ge-value] [le le-value] permit access for matching conditions. You must enter at least one permit or deny clause.
network/len is the network number and length (in bits) of the network mask. (Optional) ge and le values specify the range of the prefix length to be matched.The specified ge-value and le-value must satisfy this condition: len < ge-value < le-value < 32
ip prefix-list list-name seq seq-value deny | (Optional) Add an entry to a prefix list, and assign a sequence permit network/len [ge ge-value] [le le-value] number to the entry. end show ip prefix list [detail | summary] name [network/len ] [seq seq-num] [longer] [first-match] copy running-config startup-config Return to privileged EXEC mode. Verify the configuration by displaying information about a prefix list or prefix list entries. (Optional) Save your entries in the configuration file.
Step 6
To delete a prefix list and all of its entries, use the no ip prefix-list list-name global configuration command. To delete an entry from a prefix list, use the no ip prefix-list seq seq-value global configuration command. To disable automatic generation of sequence numbers, use the no ip prefix-list sequence number command; to reenable automatic generation, use the ip prefix-list sequence number command. To clear the hit-count table of prefix list entries, use the clear ip prefix-list privileged EXEC command.
internetAdvertise this route to the Internet community. All routers belong to it. no-exportDo not advertise this route to EBGP peers. no-advertiseDo not advertise this route to any peer (internal or external). local-as Do not advertise this route to peers outside the local autonomous system.
34-52
78-16180-02
Chapter 34
Based on the community, you can control which routing information to accept, prefer, or distribute to other neighbors. A BGP speaker can set, append, or modify the community of a route when learning, advertising, or redistributing routes. When routes are aggregated, the resulting aggregate has a COMMUNITIES attribute that contains all communities from all the initial routes. You can use community lists to create groups of communities to use in a match clause of a route map. As with an access list, a series of community lists can be created. Statements are checked until a match is found. As soon as one statement is satisfied, the test is concluded. To set the COMMUNITIES attribute and match clauses based on communities, see the match community-list and set community route-map configuration commands in the Using Route Maps to Redistribute Routing Information section on page 34-64. By default, no COMMUNITIES attribute is sent to a neighbor. You can specify that the COMMUNITIES attribute be sent to the neighbor at an IP address by using the neighbor send-community router configuration command. Beginning in privileged EXEC mode, follow these steps to create and to apply a community list: Command
Step 1 Step 2
configure terminal
ip community-list community-list-number Create a community list, and assign it a number. {permit | deny } community-number The community-list-number is an integer from 1 to 99 that identifies one or more permit or deny groups of communities.
The community-number is the number configured by a set community route-map configuration command.
router bgp autonomous-system neighbor {ip-address | peer-group name} send-community set comm-list list-num delete
Enter BGP router configuration mode. Specify that the COMMUNITIES attribute be sent to the neighbor at this IP address. (Optional) Remove communities from the community attribute of an inbound or outbound update that match a standard or extended community list specified by a route map. Return to global configuration mode. (Optional) Display and parse BGP communities in the format AA:NN. A BGP community is displayed in a two-part format 2 bytes long. The Cisco default community format is in the format NNAA. In the most recent RFC for BGP, a community takes the form AA:NN, where the first part is the AS number and the second part is a 2-byte number.
Step 6 Step 7
Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
34-53
Purpose Enter global configuration mode. Enter BGP router configuration mode. Create a BGP peer group. Make a BGP neighbor a member of the peer group. Specify a BGP neighbor. If a peer group is not configured with a remote-as number, use this command to create peer groups containing EBGP neighbors. The range is 1 to 65535. (Optional) Associate a description with a neighbor. (Optional) Allow a BGP speaker (the local router) to send the default route 0.0.0.0 to a neighbor for use as a default route. (Optional) Specify that the COMMUNITIES attribute be sent to the neighbor at this IP address. (Optional) Allow internal BGP sessions to use any operational interface for TCP connections. (Optional) Allow BGP sessions, even when the neighbor is not on a directly connected segment. The multihop session is not established if the only route to the multihop peers address is the default route (0.0.0.0). (Optional) Specify an AS number to use as the local AS. The range is 1 to 65535. (Optional) Set the minimum interval between sending BGP routing updates.
configure terminal router bgp autonomous-system neighbor peer-group-name peer-group neighbor ip-address peer-group peer-group-name neighbor {ip-address | peer-group-name} remote-as number neighbor {ip-address | peer-group-name} description text neighbor {ip-address | peer-group-name} default-originate [route-map map-name] neighbor {ip-address | peer-group-name} send-community neighbor {ip-address | peer-group-name} update-source interface neighbor {ip-address | peer-group-name} ebgp-multihop
Step 11 Step 12
neighbor {ip-address | peer-group-name} local-as number neighbor {ip-address | peer-group-name} advertisement-interval seconds
34-54
78-16180-02
Chapter 34
Command
Step 13
Purpose (Optional) Control how many prefixes can be received from a neighbor. The range is 1 to 4294967295. The threshold (optional) is the percentage of maximum at which a warning message is generated. The default is 75 percent. (Optional) Disable next-hop processing on the BGP updates to a neighbor. (Optional) Set MD5 authentication on a TCP connection to a BGP peer. The same password must be configured on both BGP peers, or the connection between them is not made. (Optional) Apply a route map to incoming or outgoing routes. (Optional) Specify that the COMMUNITIES attribute be sent to the neighbor at this IP address.
Step 14 Step 15
neighbor {ip-address | peer-group-name} next-hop-self neighbor {ip-address | peer-group-name} password string neighbor {ip-address | peer-group-name} route-map map-name {in | out} neighbor {ip-address | peer-group-name} send-community
neighbor {ip-address | peer-group-name} timers (Optional) Set timers for the neighbor or peer group. keepalive holdtime The keepalive interval is the time within which keepalive messages are sent to peers. The range is 1 to 4294967295 seconds; the default is 60.
The holdtime is the interval after which a peer is declared inactive after not receiving a keepalive message from it. The range is 1 to 4294967295 seconds; the default is 180.
Step 19 Step 20
neighbor {ip-address | peer-group-name} weight (Optional) Specify a weight for all routes from a neighbor. weight neighbor {ip-address | peer-group-name} distribute-list {access-list-number | name} {in | out} neighbor {ip-address | peer-group-name} filter-list access-list-number {in | out | weight weight} neighbor {ip-address | peer-group-name} version value neighbor {ip-address | peer-group-name} soft-reconfiguration inbound end show ip bgp neighbors copy running-config startup-config (Optional) Filter BGP routing updates to or from neighbors, as specified in an access list. (Optional) Establish a BGP filter.
Step 21
(Optional) Specify the BGP version to use when communicating with a neighbor. (Optional) Configure the software to start storing received updates. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
To disable an existing BGP neighbor or neighbor peer group, use the neighbor shutdown router configuration command. To enable a previously existing neighbor or neighbor peer group that had been disabled, use the no neighbor shutdown router configuration command.
34-55
Purpose Enter global configuration mode. Enter BGP router configuration mode. Create an aggregate entry in the BGP routing table. The aggregate route is advertised as coming from the AS, and the atomic aggregate attribute is set to indicate that information might be missing. (Optional) Generate AS set path information. This command creates an aggregate entry following the same rules as the previous command, but the advertised path will be an AS_SET consisting of all elements contained in all paths. Do not use this keyword when aggregating many paths because this route must be continually withdrawn and updated. (Optional) Advertise summary addresses only. (Optional) Suppress selected, more specific routes. (Optional) Generate an aggregate based on conditions specified by the route map. (Optional) Generate an aggregate with attributes specified in the route map. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
Step 4
aggregate-address address-mask summary-only aggregate-address address mask suppress-map map-name aggregate-address address mask advertise-map map-name aggregate-address address mask attribute-map map-name end show ip bgp neighbors [advertised-routes] copy running-config startup-config
To delete an aggregate entry, use the no aggregate-address address mask router configuration command. To return options to the default values, use the command with keywords.
34-56
78-16180-02
Chapter 34
To configure a BGP confederation, you must specify a confederation identifier that acts as the autonomous system number for the group of autonomous systems. Beginning in privileged EXEC mode, use these commands to configure a BGP confederation: Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Purpose Enter global configuration mode. Enter BGP router configuration mode. Specify the autonomous systems that belong to the confederation and that will be treated as special EBGP peers. Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
configure terminal router bgp autonomous-system bgp confederation peers autonomous-system [autonomous-system ...] end show ip bgp neighbor show ip bgp network copy running-config startup-config
Step 7
A route from an external BGP speaker is advertised to all clients and nonclient peers. A route from a nonclient peer is advertised to all clients. A route from a client is advertised to all clients and nonclient peers. Hence, the clients need not be fully meshed.
Usually a cluster of clients have a single route reflector, and the cluster is identified by the route reflector router ID. To increase redundancy and to avoid a single point of failure, a cluster might have more than one route reflector. In this case, all route reflectors in the cluster must be configured with the same 4-byte cluster ID so that a route reflector can recognize updates from route reflectors in the same cluster. All the route reflectors serving a cluster should be fully meshed and should have identical sets of client and nonclient peers.
34-57
Beginning in privileged EXEC mode, use these commands to configure a route reflector and clients: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Enter BGP router configuration mode. Configure the local router as a BGP route reflector and the specified neighbor as a client. (Optional) Configure the cluster ID if the cluster has more than one route reflector. (Optional) Disable client-to-client route reflection. By default, the routes from a route reflector client are reflected to other clients. However, if the clients are fully meshed, the route reflector does not need to reflect routes to clients. Return to privileged EXEC mode. Verify the configuration. Display the originator ID and the cluster-list attributes. (Optional) Save your entries in the configuration file.
configure terminal router bgp autonomous-system neighbor ip-address | peer-group-name route-reflector-client bgp cluster-id cluster-id no bgp client-to-client reflection
Purpose Enter global configuration mode. Enter BGP router configuration mode. Enable BGP route dampening. (Optional) Change the default values of route dampening factors. Return to privileged EXEC mode.
configure terminal router bgp autonomous-system bgp dampening bgp dampening half-life reuse suppress max-suppress [route-map map] end
show ip bgp flap-statistics [{regexp regexp} | (Optional) Monitor the flaps of all paths that are flapping. The {filter-list list} | {address mask [longer-prefix]}] statistics are deleted when the route is not suppressed and is stable. show ip bgp dampened-paths (Optional) Display the dampened routes, including the time remaining before they are suppressed.
Step 7
34-58
78-16180-02
Chapter 34
Command
Step 8 Step 9 Step 10
Purpose
clear ip bgp flap-statistics [{regexp regexp } | (Optional) Clear BGP flap statistics to make it less likely that a {filter-list list} | {address mask [longer-prefix]} route will be dampened. clear ip bgp dampening copy running-config startup-config (Optional) Clear route dampening information, and unsuppress the suppressed routes. (Optional) Save your entries in the configuration file.
To disable flap dampening, use the no bgp dampening router configuration command without keywords. To set dampening factors back to the default values, use the no bgp dampening router configuration command with values.
Command clear ip bgp address clear ip bgp * clear ip bgp peer-group tag show ip bgp prefix
Purpose Reset a particular BGP connection. Reset all BGP connections. Remove all members of a BGP peer group. Display peer groups and peers not in peer groups to which the prefix has been advertised. Also display prefix attributes such as the next hop and the local prefix. Display all BGP routes that contain subnet and supernet network masks. Display routes that belong to the specified communities. Display routes that are permitted by the community list. Display routes that are matched by the specified AS path access list. Display the routes with inconsistent originating autonomous systems. Display the routes that have an AS path that matches the specified regular expression entered on the command line. Display the contents of the BGP routing table.
show ip bgp cidr-only show ip bgp community [community-number] [exact] show ip bgp community-list community-list-number [exact-match] show ip bgp filter-list access-list-number show ip bgp inconsistent-as show ip bgp regexp regular-expression show ip bgp
34-59
Command show ip bgp neighbors [address] show ip bgp neighbors [address] [advertised-routes | dampened-routes | flap-statistics | paths regular-expression | received-routes | routes] show ip bgp paths show ip bgp peer-group [tag ] [summary] show ip bgp summary
Purpose Display detailed information on the BGP and TCP connections to individual neighbors. Display routes learned from a particular BGP neighbor.
Display all BGP paths in the database. Display information about BGP peer groups. Display the status of all BGP connections.
You can also enable the logging of messages generated when a BGP neighbor resets, comes up, or goes down by using the bgp log-neighbor changes router configuration command.
Configuring Distributed Cisco Express Forwarding, page 34-60 Configuring the Number of Equal-Cost Routing Paths, page 34-62 Configuring Static Unicast Routes, page 34-62 Specifying Default Routes and Networks, page 34-63 Using Route Maps to Redistribute Routing Information, page 34-64 Configuring Policy-Based Routing, page 34-68 Filtering Routing Information, page 34-71 Managing Authentication Keys, page 34-73
34-60
78-16180-02
Chapter 34
The two main components in dCEF are the distributed FIB and the distributed adjacency tables.
The FIB is similar to a routing table or information base and maintains a mirror image of the forwarding information in the IP routing table. When routing or topology changes occur in the network, the IP routing table is updated, and those changes are reflected in the FIB. The FIB maintains next-hop address information based on the information in the IP routing table. Because the FIB contains all known routes that exist in the routing table, CEF eliminates route cache maintenance, is more efficient for switching traffic, and is not affected by traffic patterns. Nodes in the network are said to be adjacent if they can reach each other with a single hop across a link layer. CEF uses adjacency tables to prepend Layer 2 addressing information. The adjacency table maintains Layer 2 next-hop addresses for all FIB entries.
Because the Catalyst 3750 switch stack uses Application Specific Integrated Circuits (ASICs) to achieve Gigabit-speed line rate IP traffic, dCEF forwarding applies only to the software-forwarding path, that is, traffic that is forwarded by the CPU. Distributed CEF is enabled globally by default. If for some reason it is disabled, you can re-enable it by using the ip cef distributed global configuration command. The default configuration is dCEF enabled on all Layer 3 interfaces. Entering the no ip route-cache cef interface configuration command disables CEF for traffic that is being forwarded by software. This command does not affect the hardware forwarding path. Disabling CEF and using the debug ip packet detail privileged EXEC command can be useful to debug software-forwarded traffic. To enable CEF on an interface for the software-forwarding path, use the ip route-cache cef interface configuration command.
Caution
Although the no ip route-cache cef interface configuration command to disable CEF on an interface is visible in the CLI, we strongly recommend that you do not disable dCEF on interfaces except for debugging purposes. Beginning in privileged EXEC mode, follow these steps to enable dCEF globally and on an interface for software-forwarded traffic if it has been disabled:
Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6 Step 7
Purpose Enter global configuration mode. Enable dCEF operation. Enter interface configuration mode, and specify the Layer 3 interface to configure. Enable CEF on the interface for software-forwarded traffic. Return to privileged EXEC mode. Display the CEF status on all interfaces. Display CEF-related interface information by stack member for all switches in the stack or for the specified switch. (Optional) For slot-number, enter the stack member switch number.
configure terminal ip cef distributed interface interface-id ip route-cache cef end show ip cef show cef linecard [slot-number] [detail]
Display detailed CEF information for all interfaces or the specified interface. Display CEF adjacency table information. (Optional) Save your entries in the configuration file.
34-61
Purpose Enter global configuration mode. Enter router configuration mode. Set the maximum number of parallel paths for the protocol routing table. The range is from 1 to 8; the default is 4 for most IP routing protocols, but only 1 for BGP. Return to privileged EXEC mode. Verify the setting in the Maximum path field. (Optional) Save your entries in the configuration file.
configure terminal router {bgp | rip | ospf | igrp | eigrp} maximum-paths maximum
Use the no maximum-paths router configuration command to restore the default value.
Purpose Enter global configuration mode. Establish a static route. Return to privileged EXEC mode. Display the current state of the routing table to verify the configuration. (Optional) Save your entries in the configuration file.
configure terminal ip route prefix mask {address | interface} [distance] end show ip route copy running-config startup-config
34-62
78-16180-02
Chapter 34
Use the no ip route prefix mask {address | interface} global configuration command to remove a static route. The switch retains static routes until you remove them. However, you can override static routes with dynamic routing information by assigning administrative distance values. Each dynamic routing protocol has a default administrative distance, as listed in Table 34-12. If you want a static route to be overridden by information from a dynamic routing protocol, set the administrative distance of the static route higher than that of the dynamic protocol.
Table 34-12 Dynamic Routing Protocol Default Administrative Distances
Route Source Connected interface Static route Enhanced IRGP summary route External BGP Internal Enhanced IGRP IGRP OSPF RIP Internal BGP Unknown
Static routes that point to an interface are advertised through RIP, IGRP, and other dynamic routing protocols, whether or not static redistribute router configuration commands were specified for those routing protocols. These static routes are advertised because static routes that point to an interface are considered in the routing table to be connected and hence lose their static nature. However, if you define a static route to an interface that is not one of the networks defined in a network command, no dynamic routing protocols advertise the route unless a redistribute static command is specified for these protocols. When an interface goes down, all static routes through that interface are removed from the IP routing table. When the software can no longer find a valid next hop for the address specified as the forwarding router's address in a static route, the static route is also removed from the IP routing table.
34-63
If a router has a directly connected interface to the specified default network, the dynamic routing protocols running on that device generate a default route. In RIP, it advertises the pseudonetwork 0.0.0.0. In IGRP, the network itself is advertised and flagged as an exterior route. A router that is generating the default for a network also might need a default of its own. One way a router can generate its own default is to specify a static route to the network 0.0.0.0 through the appropriate device. Beginning in privileged EXEC mode, follow these steps to define a static route to a network as the static default route: Command
Step 1 Step 2 Step 3 Step 4 Step 5
Purpose Enter global configuration mode. Specify a default network. Return to privileged EXEC mode. Display the selected default route in the gateway of last resort display. (Optional) Save your entries in the configuration file.
configure terminal ip default-network network number end show ip route copy running-config startup-config
Use the no ip default-network network number global configuration command to remove the route. When default information is passed through a dynamic routing protocol, no further configuration is required. The system periodically scans its routing table to choose the optimal default network as its default route. In IGRP networks, there might be several candidate networks for the system default. Cisco routers use administrative distance and metric information to set the default route or the gateway of last resort. If dynamic default information is not being passed to the system, candidates for the default route are specified with the ip default-network global configuration command. If this network appears in the routing table from any source, it is flagged as a possible choice for the default route. If the router has no interface on the default network, but does have a path to it, the network is considered as a possible candidate, and the gateway to the best default path becomes the gateway of last resort.
34-64
78-16180-02
Chapter 34
You can also identify route-map statements as permit or deny. If the statement is marked as a deny, the packets meeting the match criteria are sent back through the normal forwarding channels (destination-based routing). If the statement is marked as permit, set clauses are applied to packets meeting the match criteria. Packets that do not meet the match criteria are forwarded through the normal routing channel.
Note
Although each of Steps 3 through 14 in the following section is optional, you must enter at least one match route-map configuration command and one set route-map configuration command. Beginning in privileged EXEC mode, follow these steps to configure a route map for redistribution:
Command
Step 1 Step 2
configure terminal
route-map map-tag [permit | deny] [sequence number] Define any route maps used to control redistribution and enter route-map configuration mode. map-tagA meaningful name for the route map. The redistribute router configuration command uses this name to reference this route map. Multiple route maps might share the same map tag name. (Optional) If permit is specified and the match criteria are met for this route map, the route is redistributed as controlled by the set actions. If deny is specified, the route is not redistributed. sequence number (Optional) Number that indicates the position a new route map is to have in the list of route maps already configured with the same name.
match as-path path-list-number match community-list community-list-number [exact] match ip address {access-list-number | access-list-name} [...access-list-number | ...access-list-name] match metric metric-value
Match a BGP AS path access list. Match a BGP community list. Match a standard access list by specifying the name or number. It can be an integer from 1 to 199. Match the specified route metric. The metric-value can be an IGRP five-part metric with a specified value from 0 to 4294967295. Match a next-hop router address passed by one of the access lists specified (numbered from 1 to 199). Match the specified tag value in a list of one or more route tag values. Each can be an integer from 0 to 4294967295. Match the specified next hop route out one of the specified interfaces. Match the address specified by the specified advertised access lists.
Step 6
Step 7
match ip next-hop {access-list-number | access-list-name} [...access-list-number | ...access-list-name] match tag tag value [...tag-value] match interface type number [...type number ] match ip route-source {access-list-number | access-list-name} [...access-list-number | ...access-list-name]
34-65
Command
Step 11
localLocally generated BGP routes. internalOSPF intra-area and interarea routes or EIGRP internal routes. externalOSPF external routes (Type 1 or Type 2) or EIGRP external routes.
set dampening halflife reuse suppress max-suppress-time set local-preference value set origin {igp | egp as | incomplete} set as-path {tag | prepend as-path-string} set level {level-1 | level-2 | level-1-2 | stub-area | backbone} set metric metric value
Set BGP route dampening factors. Assign a value to a local BGP path. Set the BGP origin code. Modify the BGP autonomous system path. Set the level for routes that are advertised into the specified area of the routing domain. The stub-area and backbone are OSPF NSSA and backbone areas. Set the metric value to give the redistributed routes (for any protocol except IGRP or EIGRP). The metric value is an integer from -294967295 to 294967295. Set the metric value to give the redistributed routes (for IGRP or EIGRP only):
Step 17
Step 18
bandwidthMetric value or IGRP bandwidth of the route in kilobits per second in the range 0 to 4294967295 delayRoute delay in tens of microseconds in the range 0 to 4294967295. reliabilityLikelihood of successful packet transmission expressed as a number between 0 and 255, where 255 means 100 percent reliability and 0 means no reliability. loading Effective bandwidth of the route expressed as a number from 0 to 255 (255 is 100 percent loading). mtu Minimum maximum transmission unit (MTU) size of the route in bytes in the range 0 to 4294967295.
Step 19 Step 20
Set the OSPF external metric type for redistributed routes. Set the multi-exit discriminator (MED) value on prefixes advertised to external BGP neighbor to match the IGP metric of the next hop. Set the BGP weight for the routing table. The value can be from 1 to 65535. Return to privileged EXEC mode.
Step 21 Step 22
34-66
78-16180-02
Chapter 34
Command
Step 23 Step 24
Purpose Display all route maps configured or only the one specified to verify configuration. (Optional) Save your entries in the configuration file.
To delete an entry, use the no route-map map tag global configuration command or the no match or no set route-map configuration commands. You can distribute routes from one routing domain into another and control route distribution. Beginning in privileged EXEC mode, follow these steps to control route redistribution. Note that the keywords are the same as defined in the previous procedure. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter router configuration mode. Redistribute routes from one routing protocol to another routing protocol. If no route-maps are specified, all routes are redistributed. If the keyword route-map is specified with no map-tag, no routes are distributed. Cause the current routing protocol to use the same metric value for all redistributed routes (BGP, RIP and OSPF). Cause the IGRP or EIGRP routing protocol to use the same metric value for all non-IGRP redistributed routes. Disable the redistribution of default information between IGRP processes, which is enabled by default. Return to privileged EXEC mode. Display all route maps configured or only the one specified to verify configuration. (Optional) Save your entries in the configuration file.
configure terminal router {bgp | rip | ospf | igrp | eigrp} redistribute protocol [process-id ] {level-1 | level-1-2 | level-2} [metric metric-value] [metric-type type-value] [match internal | external type-value] [tag tag-value] [route-map map-tag] [weight weight] [subnets] default-metric number
Step 4
Step 5
To disable redistribution, use the no form of the commands. The metrics of one routing protocol do not necessarily translate into the metrics of another. For example, the RIP metric is a hop count, and the IGRP metric is a combination of five qualities. In these situations, an artificial metric is assigned to the redistributed route. Uncontrolled exchanging of routing information between different routing protocols can create routing loops and seriously degrade network operation.
34-67
If you have not defined a default redistribution metric that replaces metric conversion, some automatic metric translations occur between routing protocols:
RIP can automatically redistribute static routes. It assigns static routes a metric of 1 (directly connected). IGRP can automatically redistribute static routes and information from other IGRP-routed autonomous systems. IGRP assigns static routes a metric that identifies them as directly connected. It does not change the metrics of routes derived from IGRP updates from other autonomous systems. Any protocol can redistribute other routing protocols if a default mode is in effect.
You can use PBR to provide equal-access and source-sensitive routing, routing based on interactive versus batch traffic, or routing based on dedicated links. For example, you could transfer stock records to a corporate office on a high-bandwidth, high-cost link for a short time while transmitting routine application data such as e-mail over a low-bandwidth, low-cost link. With PBR, you classify traffic using access control lists (ACLs) and then make traffic go through a different path. PBR is applied to incoming packets. All packets received on an interface with PBR enabled are passed through route maps. Based on the criteria defined in the route maps, packets are forwarded (routed) to the appropriate next hop.
If packets do not match any route map statements, all set clauses are applied. If a statement is marked as deny, packets meeting the match criteria are sent through normal forwarding channels, and destination-based routing is performed. If a statement is marked as permit and the packets do not match any route-map statements, the packets are sent through the normal forwarding channels, and destination-based routing is performed.
For more information about configuring route maps, see the Using Route Maps to Redistribute Routing Information section on page 34-64. You can use standard IP ACLs to specify match criteria for a source address or extended IP ACLs to specify match criteria based on an application, a protocol type, or an end station. The process proceeds through the route map until a match is found. If no match is found, or if the route map is a deny, normal destination-based routing occurs. There is an implicit deny at the end of the list of match statements. If match clauses are satisfied, you can use a set clause to specify the IP addresses identifying the next hop router in the path. For details about PBR commands and keywords, refer to the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2. For a list of PBR commands that are visible but not supported by the switch, see Appendix C, Unsupported Commands in Cisco IOS Release 12.2(20)SE. PBR configuration is applied to the whole stack, and all switches use the stack master configuration.
34-68
78-16180-02
Chapter 34
To use PBR, you must have the EMI installed on the stack master. Multicast traffic is not policy-routed. PBR applies to only to unicast traffic. You can enable PBR on a routed port or an SVI. You can apply a policy route map to an EtherChannel port channel in Layer 3 mode, but you cannot apply a policy route map to a physical interface that is a member of the EtherChannel. If you try to do so, the command is rejected. When a policy route map is applied to a physical interface, that interface cannot become a member of an EtherChannel. You can define a maximum of 246 IP policy route maps on the switch stack. You can define a maximum of 512 access control entries (ACEs) for PBR on the switch stack. To use PBR, you must first enable the routing template by using the sdm prefer routing global configuration command. PBR is not supported with the VLAN or default template. For more information on the SDM templates, see Chapter 8, Configuring SDM Templates. The number of TCAM entries used by PBR depends on the route map itself, the ACLs used, and the order of the ACLs and route-map entries. Policy-based routing based on packet length, IP precedence and TOS, set interface, set default next hop, or set default interface are not supported. Policy maps with no valid set actions or with set action set to Dont Fragment are not supported.
Enabling PBR
By default, PBR is disabled on the switch. To enable PBR, you must create a route map that specifies the match criteria and the resulting action if all of the match clauses are met. Then, you must enable PBR for that route map on an interface. All packets arriving on the specified interface matching the match clauses are subject to PBR. PBR can be fast-switched or implemented at speeds that do not slow down the switch. Fast-switched PBR supports most match and set commands. PBR must be enabled before you enable fast-switched PBR. Fast-switched PBR is disabled by default. Packets that are generated by the switch, or local packets, are not normally policy-routed. When you globally enable local PBR on the switch, all packets that originate on the switch are subject to local PBR. Local PBR is disabled by default.
Note
34-69
Beginning in privileged EXEC mode, follow these steps to configure PBR: Command
Step 1 Step 2
Purpose Enter global configuration mode. Define any route maps used to control where packets are output, and enter route-map configuration mode. map-tagA meaningful name for the route map. The ip policy route-map interface configuration command uses this name to reference the route map. Multiple route maps might share the same map tag name. (Optional) If permit is specified and the match criteria are met for this route map, the route is policy-routed as controlled by the set actions. If deny is specified, the route is not policy-routed. sequence number (Optional) Number that shows the position of a new route map in the list of route maps already configured with the same name.
Step 3
match ip address {access-list-number | access-list-name} [...access-list-number | ...access-list-name] set ip next-hop ip-address [...ip-address]
Match the source and destination IP address that is permitted by one or more standard or extended access lists. If you do not specify a match command, the route map applies to all packets. Specify the action to take on the packets that match the criteria. Set next hop to which to route the packet (the next hop must be adjacent). Return to global configuration mode. Enter interface configuration mode, and specify the interface to configure. Enable PBR on a Layer 3 interface, and identify the route map to use. You can configure only one route map on an interface. However, you can have multiple route map entries with different sequence numbers. These entries are evaluated in sequence number order until the first match. If there is no match, packets are routed as usual. (Optional) Enable fast-switching PBR. You must first enable PBR before enabling fast-switching PBR. Return to global configuration mode. (Optional) Enable local PBR to perform policy-based routing on packets originating at the switch. This applies to packets generated by the switch and not to incoming packets. Return to privileged EXEC mode. (Optional) Display all route maps configured or only the one specified to verify configuration. (Optional) Display policy route maps attached to interfaces.
Step 4
34-70
78-16180-02
Chapter 34
Command
Step 14 Step 15
Purpose (Optional) Display whether or not local policy routing is enabled and, if so, the route map being used. (Optional) Save your entries in the configuration file.
Use the no route-map map-tag global configuration command or the no match or no set route-map configuration commands to delete an entry. Use the no ip policy route-map map-tag interface configuration command to disable PBR on an interface. Use the no ip route-cache policy interface configuration command to disable fast-switching PBR. Use the no ip local policy route-map map-tag global configuration command to disable policy-based routing on packets originating on the switch.
Note
When routes are redistributed between OSPF processes, no OSPF metrics are preserved.
Purpose Enter global configuration mode. Enter router configuration mode. Suppress sending routing updates through the specified Layer 3 interface. (Optional) Set all interfaces as passive by default. (Optional) Activate only those interfaces that need to have adjacencies sent. (Optional) Specify the list of networks for the routing process. The network-address is an IP address. Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
configure terminal router {bgp | rip | ospf | igrp | eigrp} passive-interface interface-id passive-interface default no passive-interface interface type network network-address end copy running-config startup-config
34-71
Use a network monitoring privileged EXEC command such as show ip ospf interface to verify the interfaces that you enabled as passive, or use the show ip interface privileged EXEC command to verify the interfaces that you enabled as active. To re-enable the sending of routing updates, use the no passive-interface interface-id router configuration command. The default keyword sets all interfaces as passive by default. You can then configure individual interfaces where you want adjacencies by using the no passive-interface router configuration command. The default keyword is useful in Internet service provider and large enterprise networks where many of the distribution routers have more than 200 interfaces.
Purpose Enter global configuration mode. Enter router configuration mode. Permit or deny routes from being advertised in routing updates, depending upon the action listed in the access list. Suppress processing in routes listed in updates. Return to privileged EXEC mode. (Optional) Save your entries in the configuration file.
configure terminal router {bgp | rip | igrp | eigrp} distribute-list {access-list-number | access-list-name} out [interface-name | routing process | autonomous-system-number] distribute-list {access-list-number | access-list-name} in [type-number] end copy running-config startup-config
Use the no distribute-list in router configuration command to change or cancel a filter. To cancel suppression of network advertisements in updates, use the no distribute-list out router configuration command.
34-72
78-16180-02
Chapter 34
Beginning in privileged EXEC mode, follow these steps to filter sources of routing information: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter router configuration mode. Define an administrative distance. weightThe administrative distance as an integer from 10 to 255. Used alone, weight specifies a default administrative distance that is used when no other specification exists for a routing information source. Routes with a distance of 255 are not installed in the routing table. (Optional) ip access listAn IP standard or extended access list to be applied to incoming routing updates.
configure terminal router {bgp | rip | ospf | igrp | eigrp} distance weight {ip-address {ip-address mask}} [ip access list]
Return to privileged EXEC mode. Display the default administrative distance for a specified routing process. (Optional) Save your entries in the configuration file.
Purpose Enter global configuration mode. Identify a key chain, and enter key chain configuration mode. Identify the key number. The range is 0 to 2147483647.
34-73
Command
Step 4
Purpose Identify the key string. The string can contain from 1 to 80 uppercase and lowercase alphanumeric characters, but the first character cannot be a number. (Optional) Specify the time period during which the key can be received. The start-time and end-time syntax can be either hh:mm:ss Month date year or hh:mm:ss date Month year. The default is forever with the default start-time and the earliest acceptable date as January 1, 1993. The default end-time and duration is infinite.
key-string text
Step 5
Step 6
(Optional) Specify the time period during which the key can be sent. The start-time and end-time syntax can be either hh:mm:ss Month date year or hh:mm:ss date Month year. The default is forever with the default start-time and the earliest acceptable date as January 1, 1993. The default end-time and duration is infinite.
Return to privileged EXEC mode. Display authentication key information. (Optional) Save your entries in the configuration file.
To remove the key chain, use the no key chain name-of-chain global configuration command.
Command clear ip route {network [mask | *]} show ip protocols show ip route [address [mask] [longer-prefixes]] | [protocol [process-id]] show ip route summary show ip route supernets-only show ip cache show route-map [map-name]
Purpose Clear one or more routes from the IP routing table. Display the parameters and state of the active routing protocol process. Display the current state of the routing table. Display the current state of the routing table in summary form. Display supernets. Display the routing table used to switch IP traffic. Display all route maps configured or only the one specified.
34-74
78-16180-02
C H A P T E R
35
Configuring HSRP
This chapter describes how to use Hot Standby Router Protocol (HSRP) on the Catalyst 3750 switch to provide routing redundancy for routing IP traffic without being dependent on the availability of any single router. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
You can also use a version of HSRP in Layer 2 mode to configure a redundant command switch to take over cluster management if the cluster command switch fails. For more information about clustering, see Chapter 6, Clustering Switches.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the switch command reference for this release and the Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2 . This chapter consists of these sections:
Understanding HSRP, page 35-1 Configuring HSRP, page 35-3 Displaying HSRP Configurations, page 35-11
Understanding HSRP
HSRP is Ciscos standard method of providing high network availability by providing first-hop redundancy for IP hosts on an IEEE 802 LAN configured with a default gateway IP address. HSRP routes IP traffic without relying on the availability of any single router. It enables a set of router interfaces to work together to present the appearance of a single virtual router or default gateway to the hosts on a LAN. When HSRP is configured on a network or segment, it provides a virtual Media Access Control (MAC) address and an IP address that is shared among a group of configured routers. HSRP allows two or more HSRP-configured routers to use the MAC address and IP network address of a virtual router. The virtual router does not exist; it represents the common target for routers that are configured to provide backup to each other. One of the routers is selected to be the active router and another to be the standby router, which assumes control of the group MAC address and IP address should the designated active router fail.
Note
Routers in an HSRP group can be any router interface that supports HSRP, including Catalyst 3750 routed ports and switch virtual interfaces (SVIs).
35-1
Configuring HSRP
HSRP provides high network availability by providing redundancy for IP traffic from hosts on networks. In a group of router interfaces, the active router is the router of choice for routing packets; the standby router is the router that takes over the routing duties when an active router fails or when preset conditions are met. HSRP is useful for hosts that do not support a router discovery protocol and cannot switch to a new router when their selected router reloads or loses power. When HSRP is configured on a network segment, it provides a virtual MAC address and an IP address that is shared among router interfaces in a group of router interfaces running HSRP. The router selected by the protocol to be the active router receives and routes packets destined for the groups MAC address. For n routers running HSRP, there are n +1 IP and MAC addresses assigned. HSRP detects when the designated active router fails, and a selected standby router assumes control of the Hot Standby groups MAC and IP addresses. A new standby router is also selected at that time. Devices running HSRP send and receive multicast UDP-based hello packets to detect router failure and to designate active and standby routers. When HSRP is configured on an interface, Internet Control Message Protocol (ICMP) redirect messages are disabled by default for the interface. You can configure multiple Hot Standby groups among Catalyst 3750 switches and switch stacks that are operating in Layer 3 to make more use of the redundant routers. To do so, specify a group number for each Hot Standby command group you configure for an interface. For example, you might configure an interface on switch 1 as an active router and one on switch 2 as a standby router and also configure another interface on switch 2 as an active router with another interface on switch 1 as its standby router.
Note
Cisco IOS Release 12.2(18)SE and above supports Multiple HSRP (MHSRP), an extension of HSRP that allows load sharing between two or more Hot Standby groups. Figure 35-1 shows a segment of a network configured for HSRP. Each router is configured with the MAC address and IP network address of the virtual router. Instead of configuring hosts on the network with the IP address of Router A, you configure them with the IP address of the virtual router as their default router. When Host C sends packets to Host B, it sends them to the MAC address of the virtual router. If for any reason, Router A stops transferring packets, Router B responds to the virtual IP address and virtual MAC address and becomes the active router, assuming the active router duties. Host C continues to use the IP address of the virtual router to address packets destined for Host B, which Router B now receives and sends to Host B. Until Router A resumes operation, HSRP allows Router B to provide uninterrupted service to users on Host Cs segment that need to communicate with users on Host Bs segment and also continues to perform its normal function of handling packets between the Host A segment and Host B.
35-2
78-16180-02
Chapter 35
Host B 172.20.130.5
Router A
Router B
172.20.128.55
101361
Configuring HSRP
These sections include HSRP configuration information:
Default HSRP Configuration, page 35-4 HSRP Configuration Guidelines, page 35-4 Enabling HSRP, page 35-4 Configuring HSRP Group Attributes, page 35-5 Configuring HSRP Groups and Clustering, page 35-11 Configuring Multiple HSRP, page 35-6
35-3
Configuring HSRP
Feature HSRP groups Standby group number Standby MAC address Standby priority Standby delay Standby track interface priority Standby hello time Standby holdtime
Default Setting None configured 0 System assigned as: 0000.0c07.acXX, where XX is the HSRP group number 100 0 (no delay) 10 3 seconds 10 seconds
HSRP can be configured on a maximum of 32 VLAN or routing interfaces. In the following procedures, the specified interface must be one of these Layer 3 interfaces:
Routed port: a physical port configured as a Layer 3 port by entering the no switchport
the interface port-channel port-channel-number global configuration command and binding the Ethernet interface into the channel group. For more information, see the Configuring Layer 3 EtherChannels section on page 33-15.
All Layer 3 interfaces must have IP addresses assigned to them. See the Configuring Layer 3 Interfaces section on page 11-21.
Enabling HSRP
The standby ip interface configuration command activates HSRP on the configured interface. If an IP address is specified, that address is used as the designated address for the Hot Standby group. If no IP address is specified, the address is learned through the standby function. You must configure at least one routing port on the cable with the designated address. Configuring an IP address always overrides another designated address currently in use. When the standby ip command is enabled on an interface and proxy ARP is enabled, if the interfaces Hot Standby state is active, proxy ARP requests are answered using the Hot Standby group MAC address. If the interface is in a different state, proxy ARP responses are suppressed.
35-4
78-16180-02
Chapter 35
Beginning in privileged EXEC mode, follow these steps to create or enable HSRP on a Layer 3 interface: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the Layer 3 interface on which you want to enable HSRP. Create (or enable) the HSRP group using its number and virtual IP address.
(Optional) group-numberThe group number on the interface for which HSRP is being enabled. The range is 0 to 255; the default is 0. If there is only one HSRP group, you do not need to enter a group number. (Optional on all but one interface) ip-addressThe virtual IP address of the hot standby router interface. You must enter the virtual IP address for at least one of the interfaces; it can be learned on the other interfaces. (Optional) secondary The IP address is a secondary hot standby router interface. If neither router is designated as a secondary or standby router and no priorities are set, the primary IP addresses are compared and the higher IP address is the active router, with the next highest as the standby router.
Return to privileged EXEC mode. Verify the configuration. (Optional) Save your entries in the configuration file.
Use the no standby [group-number] ip [ip-address] interface configuration command to disable HSRP. This example shows how to activate HSRP for group 1 on a port. The IP address used by the hot standby group is learned by using HSRP.
Note
35-5
Configuring HSRP
Assigning priority helps select the active and standby routers. If preemption is enabled, the router with the highest priority becomes the designated active router. If priorities are equal, the primary IP addresses are compared, and the higher IP address has priority. The highest number (1 to 255) represents the highest priority (most likely to become the active router). When setting the priority, preempt, or both, you must specify at least one keyword (priority, preempt, or both). The priority of the device can change dynamically if an interface is configured with the standby track command and another interface on the router goes down. The standby track interface configuration command ties the router hot standby priority to the availability of its interfaces and is useful for tracking interfaces that are not configured for HSRP. When a tracked interface fails, the hot standby priority on the device on which tracking has been configured decreases by 10. If an interface is not tracked, its state changes do not affect the hot standby priority of the configured device. For each interface configured for hot standby, you can configure a separate list of interfaces to be tracked. The standby track interface-priority interface configuration command specifies how much to decrement the hot standby priority when a tracked interface goes down. When the interface comes back up, the priority is incremented by the same amount. When multiple tracked interfaces are down and interface-priority values have been configured, the configured priority decrements are cumulative. If tracked interfaces that were not configured with priority values fail, the default decrement is 10, and it is noncumulative. When routing is first enabled for the interface, it does not have a complete routing table. If it is configured to preempt, it becomes the active router, even though it is unable to provide adequate routing services. To solve this problem, configure a delay time to allow the router to update its routing table.
35-6
78-16180-02
Chapter 35
Active router for group 1 Standby router for group 2 Router A E0 10.0.0.1
Active router for group 2 Standby router for group 1 Router B E0 10.0.0.2
Client 1
Client 2
Client 3
Client 4
This example shows Router A configured as the active router for group 1 with a priority of 110 and Router B configured as the active router for group 2 with a priority of 110. The default priority level is 100. Group 1 uses a virtual IP address of 10.0.0.3 and Group 2 uses a virtual IP address of 10.0.0.4:
Router A Configuration hostname RouterA ! interface ethernet 0 ip address 10.0.0.1 255.255.255.0 standby 1 ip 10.0.0.3 standby 1 priority 110 standby 1 preempt standby 2 ip 10.0.0.4 standby 2 preempt Router B Configuration hostname RouterB ! interface ethernet 0 ip address 10.0.0.2 255.255.255.0 standby 1 ip 10.0.0.3 standby 1 preempt standby 2 ip 10.0.0.4 standby 2 priority 110 standby 2 preempt
Note
You need to enter the standby preempt interface configuration command so that if a router fails and then comes back up, preemption occurs and restores load sharing
72343
35-7
Configuring HSRP
Beginning in privileged EXEC mode, use one or more of these steps to configure HSRP priority characteristics on an interface: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the HSRP interface on which you want to set priority. Set a priority value used in choosing the active router. The range is 1 to 255; the default priority is 100. The highest number represents the highest priority.
configure terminal interface interface-id standby [group-number] priority priority [preempt [delay delay]]
(Optional) group-numberThe group number to which the command applies. (Optional) preempt Select so that when the local router has a higher priority than the active router, it assumes control as the active router. (Optional) delaySet to cause the local router to postpone taking over the active role for the shown number of seconds. The range is 0 to 36000 (1 hour); the default is 0 (no delay before taking over).
standby [group-number] [priority Configure the router to preempt, which means that when the local router has priority] preempt [delay delay] a higher priority than the active router, it assumes control as the active router.
(Optional) group-numberThe group number to which the command applies. (Optional) priorityEnter to set or change the group priority. The range is 1 to 255; the default is 100. (Optional) delaySet to cause the local router to postpone taking over the active role for the number of seconds shown. The range is 0 to 36000 (1 hour); the default is 0 (no delay before taking over).
Configure an interface to track other interfaces so that if one of the other interfaces goes down, the devices Hot Standby priority is lowered.
(Optional) group-numberThe group number to which the command applies. typeEnter the interface type (combined with interface number) that is tracked. numberEnter the interface number (combined with interface type) that is tracked. (Optional) interface-priorityEnter the amount by which the hot standby priority for the router is decremented or incremented when the interface goes down or comes back up. The default value is 10.
Step 6
To configure Multiple HSRP (MHSRP) and enable load balancing on another router, enter the IP address of another router, and then repeat Step 3, Step 4, and Step 5. Return to privileged EXEC mode.
Step 7
end
35-8
78-16180-02
Chapter 35
Command
Step 8 Step 9
Purpose Verify the configuration of the standby groups. (Optional) Save your entries in the configuration file.
Use the no standby [group-number] priority priority [preempt [delay delay]] and no standby [group-number] [priority priority] preempt [delay delay] interface configuration commands to restore default priority, preempt, and delay values. Use the no standby [group-number] track type number [interface-priority] interface configuration command to remove the tracking. This example activates a port, sets an IP address and a priority of 120 (higher than the default value), and waits for 300 seconds (5 minutes) before attempting to become the active router:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# no switchport Switch(config-if)# standby ip 172.19.108.254 Switch(config-if)# standby priority 120 preempt delay 300 Switch(config-if)# end Switch#
The authentication string is sent unencrypted in all HSRP messages. You must configure the same authentication string on all routers and access servers on a cable to ensure interoperation. Authentication mismatch prevents a device from learning the designated Hot Standby IP address and timer values from other routers configured with HSRP. Routers or access servers on which standby timer values are not configured can learn timer values from the active or standby router. The timers configured on an active router always override any other timer settings. All routers in a Hot Standby group should use the same timer values. Normally, the holdtime is greater than or equal to 3 times the hellotime.
Beginning in privileged EXEC mode, use one or more of these steps to configure HSRP authentication and timers on an interface: Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enter interface configuration mode, and enter the HSRP interface on which you want to set authentication. (Optional) authentication stringEnter a string to be carried in all HSRP messages. The authentication string can be up to eight characters in length; the default string is cisco. (Optional) group-numberThe group number to which the command applies.
35-9
Configuring HSRP
Command
Step 4
Purpose (Optional) Configure the time between hello packets and the time before other routers declare the active router to be down.
group-numberThe group number to which the command applies. hellotimeThe hello interval in seconds. The range is from 1 to 255; the default is 3 seconds. holdtimeThe time in seconds before the active or standby router is declared to be down. The range is from 1 to 255; the default is 10 seconds.
Return to privileged EXEC mode. Verify the configuration of the standby groups. (Optional) Save your entries in the configuration file.
Use the no standby [group-number] authentication string interface configuration command to delete an authentication string. Use the no standby [group-number] timers hellotime holdtime interface configuration command to restore timers to their default values. This example shows how to configure word as the authentication string required to allow Hot Standby routers in group 1 to interoperate:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# no switchport Switch(config-if)# standby 1 authentication word Switch(config-if)# end Switch#
This example shows how to set the timers on standby group 1 with the time between hello packets at 5 seconds and the time after which a router is considered down to be 15 seconds:
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# no switchport Switch(config-if)# standby 1 ip Switch(config-if)# standby 1 timers 5 15 Switch(config-if)# end Switch#
35-10
78-16180-02
Chapter 35
In Cisco IOS Release 12.2(18)SE and later, ICMP redirect messages are automatically enabled on interfaces configured with HSRP. This feature filters outgoing ICMP redirect messages through HSRP, in which the next hop IP address might be changed to an HSRP virtual IP address. For more information, refer to the Cisco IOS IP Configuration Guide, Release 12.2.
35-11
Configuring HSRP
35-12
78-16180-02
C H A P T E R
36
Note
For complete syntax and usage information for the commands used in this chapter, refer to the Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2 . This chapter consists of these sections:
Understanding Ciscos Implementation of IP Multicast Routing, page 36-2 Multicast Routing and Switch Stacks, page 36-8 Configuring IP Multicast Routing, page 36-8 Configuring Advanced PIM Features, page 36-23 Configuring Optional IGMP Features, page 36-27 Configuring Optional Multicast Routing Features, page 36-32 Configuring Basic DVMRP Interoperability Features, page 36-37 Configuring Advanced DVMRP Interoperability Features, page 36-42 Monitoring and Maintaining IP Multicast Routing, page 36-50
For information on configuring the Multicast Source Discovery Protocol (MSDP), see Chapter 37, Configuring MSDP.
36-1
Internet Group Management Protocol (IGMP) is used among hosts on a LAN and the routers (and multilayer switches) on that LAN to track the multicast groups of which hosts are members. Protocol-Independent Multicast (PIM) protocol is used among routers and multilayer switches to track which multicast packets to forward to each other and to their directly connected LANs. Distance Vector Multicast Routing Protocol (DVMRP) is used on the multicast backbone of the Internet (MBONE). The software supports PIM-to-DVMRP interaction. Cisco Group Management Protocol (CGMP) is used on Cisco routers and multilayer switches connected to Layer 2 Catalyst switches to perform tasks similar to those performed by IGMP.
Figure 36-1 shows where these protocols operate within the IP multicast environment.
Figure 36-1 IP Multicast Routing Protocols
Host
CGMP
PIM
Host
44966
IGMP
Understanding IGMP
To participate in IP multicasting, multicast hosts, routers, and multilayer switches must have the IGMP operating. This protocol defines the querier and host roles:
A querier is a network device that sends query messages to discover which network devices are members of a given multicast group. A host is a receiver that sends report messages (in response to query messages) to inform a querier of a host membership.
A set of queriers and hosts that receive multicast data streams from the same source is called a multicast group. Queriers and hosts use IGMP messages to join and leave multicast groups. Any host, regardless of whether it is a member of a group, can send to a group. However, only the members of a group receive the message. Membership in a multicast group is dynamic; hosts can join and leave at any time. There is no restriction on the location or number of members in a multicast group. A host can be a member of more than one multicast group at a time. How active a multicast group is and
36-2
78-16180-02
Chapter 36
what members it has can vary from group to group and from time to time. A multicast group can be active for a long time, or it can be very short-lived. Membership in a group can constantly change. A group that has members can have no activity. IP multicast traffic uses group addresses, which are class D addresses. The high-order bits of a Class D address are 1110. Therefore, host group addresses can be in the range 224.0.0.0 through 239.255.255.255. Multicast addresses in the range 224.0.0.0 to 24.0.0.255 are reserved for use by routing protocols and other network control traffic. The address 224.0.0.0 is guaranteed not to be assigned to any group. IGMP packets are sent using these IP multicast group addresses:
IGMP general queries are destined to the address 224.0.0.1 (all systems on a subnet). IGMP group-specific queries are destined to the group IP address for which the switch is querying. IGMP group membership reports are destined to the group IP address for which the switch is reporting. IGMP Version 2 (IGMPv2) leave messages are destined to the address 224.0.0.2 (all-multicast-routers on a subnet). In some old host IP stacks, leave messages might be destined to the group IP address rather than to the all-routers address.
IGMP Version 1
IGMP Version 1 (IGMPv1) primarily uses a query-response model that enables the multicast router and multilayer switch to find which multicast groups are active (have one or more hosts interested in a multicast group) on the local subnet. IGMPv1 has other processes that enable a host to join and leave a multicast group. For more information, refer to RFC 1112.
IGMP Version 2
IGMPv2 extends IGMP functionality by providing such features as the IGMP leave process to reduce leave latency, group-specific queries, and an explicit maximum query response time. IGMPv2 also adds the capability for routers to elect the IGMP querier without depending on the multicast protocol to perform this task. For more information, refer to RFC 2236.
Understanding PIM
PIM is called protocol-independent: regardless of the unicast routing protocols used to populate the unicast routing table, PIM uses this information to perform multicast forwarding instead of maintaining a separate multicast routing table. PIM is defined in RFC 2362, Protocol-Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification . PIM is defined in these Internet Engineering Task Force (IETF) Internet drafts:
Protocol Independent Multicast (PIM): Motivation and Architecture Protocol Independent Multicast (PIM), Dense Mode Protocol Specification Protocol Independent Multicast (PIM), Sparse Mode Protocol Specification draft-ietf-idmr-igmp-v2-06.txt, Internet Group Management Protocol, Version 2 draft-ietf-pim-v2-dm-03.txt, PIM Version 2 Dense Mode
36-3
PIM Versions
PIMv2 includes these improvements over PIMv1:
A single, active rendezvous point (RP) exists per multicast group, with multiple backup RPs. This single RP compares to multiple active RPs for the same group in PIMv1. A bootstrap router (BSR) provides a fault-tolerant, automated RP discovery and distribution mechanism that enables routers and multilayer switches to dynamically learn the group-to-RP mappings. Sparse mode and dense mode are properties of a group, as opposed to an interface. We strongly recommend sparse-dense mode, as opposed to either sparse mode or dense mode only. PIM join and prune messages have more flexible encoding for multiple address families. A more flexible hello packet format replaces the query packet to encode current and future capability options. Register messages to an RP specify whether they are sent by a border router or a designated router. PIM packets are no longer inside IGMP packets; they are standalone packets.
PIM Modes
PIM can operate in dense mode (DM), sparse mode (SM), or in sparse-dense mode (PIM DM-SM), which handles both sparse groups and dense groups at the same time.
PIM DM
PIM DM builds source-based multicast distribution trees. In dense mode, a PIM DM router or multilayer switch assumes that all other routers or multilayer switches forward multicast packets for a group. If a PIM DM device receives a multicast packet and has no directly connected members or PIM neighbors present, a prune message is sent back to the source to stop unwanted multicast traffic. Subsequent multicast packets are not flooded to this router or switch on this pruned branch because branches without receivers are pruned from the distribution tree, leaving only branches that contain receivers. When a new receiver on a previously pruned branch of the tree joins a multicast group, the PIM DM device detects the new receiver and immediately sends a graft message up the distribution tree toward the source. When the upstream PIM DM device receives the graft message, it immediately puts the interface on which the graft was received into the forwarding state so that the multicast traffic begins flowing to the receiver.
PIM SM
PIM SM uses shared trees and shortest-path-trees (SPTs) to distribute multicast traffic to multicast receivers in the network. In PIM SM, a router or multilayer switch assumes that other routers or switches do not forward multicast packets for a group, unless there is an explicit request for the traffic (join message). When a host joins a multicast group using IGMP, its directly connected PIM SM device sends PIM join messages toward the root, also known as the RP. This join message travels router-by-router toward the root, constructing a branch of the shared tree as it goes. The RP keeps track of multicast receivers. It also registers sources through register messages received from the sources first-hop router (designated router [DR]) to complete the shared tree path from the source to the receiver. When using a shared tree, sources must send their traffic to the RP so that the traffic reaches all receivers.
36-4
78-16180-02
Chapter 36
Prune messages are sent up the distribution tree to prune multicast group traffic. This action permits branches of the shared tree or SPT that were created with explicit join messages to be torn down when they are no longer needed.
Auto-RP
This proprietary feature eliminates the need to manually configure the RP information in every router and multilayer switch in the network. For Auto-RP to work, you configure a Cisco router or multilayer switch as the mapping agent. It uses IP multicast to learn which routers or switches in the network are possible candidate RPs to receive candidate RP announcements. Candidate RPs periodically send multicast RP-announce messages to a particular group or group range to announce their availability. Mapping agents listen to these candidate RP announcements and use the information to create entries in their Group-to-RP mapping caches. Only one mapping cache entry is created for any Group-to-RP range received, even if multiple candidate RPs are sending RP announcements for the same range. As the RP-announce messages arrive, the mapping agent selects the router or switch with the highest IP address as the active RP and stores this RP address in the Group-to-RP mapping cache. Mapping agents periodically multicast the contents of their Group-to-RP mapping cache. Thus, all routers and switches automatically discover which RP to use for the groups they support. If a router or switch fails to receive RP-discovery messages and the Group-to-RP mapping information expires, it switches to a statically configured RP that was defined with the ip pim rp-address global configuration command. If no statically configured RP exists, the router or switch changes the group to dense-mode operation. Multiple RPs serve different group ranges or serve as hot backups of each other.
Bootstrap Router
PIMv2 BSR is another method to distribute group-to-RP mapping information to all PIM routers and multilayer switches in the network. It eliminates the need to manually configure RP information in every router and switch in the network. However, instead of using IP multicast to distribute group-to-RP mapping information, BSR uses hop-by-hop flooding of special BSR messages to distribute the mapping information. The BSR is elected from a set of candidate routers and switches in the domain that have been configured to function as BSRs. The election mechanism is similar to the root-bridge election mechanism used in bridged LANs. The BSR election is based on the BSR priority of the device contained in the BSR messages that are sent hop-by-hop through the network. Each BSR device examines the message and forwards out all interfaces only the message that has either a higher BSR priority than its BSR priority or the same BSR priority, but with a higher BSR IP address. Using this method, the BSR is elected. The elected BSR sends BSR messages with a TTL of 1. Neighboring PIMv2 routers or multilayer switches receive the BSR message and multicast it out all other interfaces (except the one on which it was received) with a TTL of 1. In this way, BSR messages travel hop-by-hop throughout the PIM domain. Because BSR messages contain the IP address of the current BSR, the flooding mechanism enables candidate RPs to automatically learn which device is the elected BSR. Candidate RPs send candidate RP advertisements showing the group range for which they are responsible to the BSR, which stores this information in its local candidate-RP cache. The BSR periodically advertises the contents of this cache in BSR messages to all other PIM devices in the domain. These messages travel hop-by-hop through the network to all routers and switches, which store the RP information in the BSR message in their local RP cache. The routers and switches select the same RP for a given group because they all use a common RP hashing algorithm.
36-5
The router or multilayer switch examines the source address of the arriving multicast packet to decide whether the packet arrived on an interface that is on the reverse path back to the source. If the packet arrives on the interface leading back to the source, the RPF check is successful and the packet is forwarded to all interfaces in the outgoing interface list (which might not be all interfaces on the router). If the RPF check fails, the packet is discarded.
3.
Some multicast routing protocols, such as DVMRP, maintain a separate multicast routing table and use it for the RPF check. However, PIM uses the unicast routing table to perform the RPF check. Figure 36-2 shows port 2 receiving a multicast packet from source 151.10.3.21. Table 36-1 shows that the port on the reverse path to the source is port 1, not port 2. Because the RPF check fails, the multilayer switch discards the packet. Another multicast packet from source 151.10.3.21 is received on port 1, and the routing table shows this port is on the reverse path to the source. Because the RPF check passes, the switch forwards the packet to all port in the outgoing port list.
Figure 36-2 RPF Check
Multicast packet from source 151.10.3.21 is forwarded. Gigabit Ethernet 0/1 Layer 3 switch
Multicast packet from source 151.10.3.21 packet is discarded. Gigabit Ethernet 0/2
Port Gigabit Ethernet 1/0/1 Gigabit Ethernet 1/0/3 Gigabit Ethernet 1/0/4
36-6
101242
78-16180-02
Chapter 36
PIM uses both source trees and RP-rooted shared trees to forward datagrams (described in the PIM DM section on page 36-4 and the PIM SM section on page 36-4). The RPF check is performed differently for each:
If a PIM router or multilayer switch has a source-tree state (that is, an (S,G) entry is present in the multicast routing table), it performs the RPF check against the IP address of the source of the multicast packet. If a PIM router or multilayer switch has a shared-tree state (and no explicit source-tree state), it performs the RPF check on the RP address (which is known when members join the group). (S,G) joins (which are source-tree states) are sent toward the source. (*,G) joins (which are shared-tree states) are sent toward the RP.
Sparse-mode PIM uses the RPF lookup function to decide where it needs to send joins and prunes:
DVMRP and dense-mode PIM use only source trees and use RPF as previously described.
Understanding DVMRP
DVMRP is implemented in the equipment of many vendors and is based on the public-domain mrouted program. This protocol has been deployed in the MBONE and in other intradomain multicast networks. Cisco routers and multilayer switches run PIM and can forward multicast packets to and receive from a DVMRP neighbor. It is also possible to propagate DVMRP routes into and through a PIM cloud. The software propagates DVMRP routes and builds a separate database for these routes on each router and multilayer switch, but PIM uses this routing information to make the packet-forwarding decision. The software does not implement the complete DVMRP. However, it supports dynamic discovery of DVMRP routers and can interoperate with them over traditional media (such as Ethernet and FDDI) or over DVMRP-specific tunnels. DVMRP neighbors build a route table by periodically exchanging source network routing information in route-report messages. The routing information stored in the DVMRP routing table is separate from the unicast routing table and is used to build a source distribution tree and to perform multicast forward using RPF. DVMRP is a dense-mode protocol and builds a parent-child database using a constrained multicast model to build a forwarding tree rooted at the source of the multicast packets. Multicast packets are initially flooded down this source tree. If redundant paths are on the source tree, packets are not forwarded along those paths. Forwarding occurs until prune messages are received on those parent-child links, which further constrain the broadcast of multicast packets.
Understanding CGMP
This software release provides CGMP-server support on your switch; no client-side functionality is provided. The switch serves as a CGMP server for devices that do not support IGMP snooping but have CGMP-client functionality. CGMP is a protocol used on Cisco routers and multilayer switches connected to Layer 2 Catalyst switches to perform tasks similar to those performed by IGMP. CGMP permits Layer 2 group membership information to be communicated from the CGMP server to the switch. The switch can then can learn on which interfaces multicast members reside instead of flooding multicast traffic to all switch interfaces. (IGMP snooping is another method to constrain the flooding of multicast packets. For more information, see Chapter 23, Configuring IGMP Snooping and MVR.) CGMP is necessary because the Layer 2 switch cannot distinguish between IP multicast data packets and IGMP report messages, which are both at the MAC-level and are addressed to the same group address.
36-7
It is responsible for completing the IP multicast routing functions of the stack. It fully initializes and runs the IP multicast routing protocols. It builds and maintains the multicast routing table for the entire stack. It is responsible for distributing the multicast routing table to all stack members.
They act as multicast routing standby devices and are ready to take over if there is a stack master failure. If the stack master fails, all stack members delete their multicast routing tables. The newly elected stack master starts building the routing tables and distributes them to the stack members.
Note
If a stack master running the EMI fails and if the newly elected stack master is running the SMI, the switch stack will lose its multicast routing capability.
For information about the stack master election process, see Chapter 5, Managing Switch Stacks.
They do not build multicast routing tables. Instead, they use the multicast routing table that is distributed by the stack master.
Default Multicast Routing Configuration, page 36-8 Multicast Routing Configuration Guidelines, page 36-9 Configuring Basic Multicast Routing, page 36-10 (required) Configuring a Rendezvous Point, page 36-12 (required if the interface is in sparse-dense mode, and you want to treat the group as a sparse group) Using Auto-RP and a BSR, page 36-22 (required for non-Cisco PIMv2 devices to interoperate with Cisco PIM v1 devices)) Monitoring the RP Mapping Information, page 36-23 (optional) Troubleshooting PIMv1 and PIMv2 Interoperability Problems, page 36-23 (optional)
36-8
78-16180-02
Chapter 36
Feature Multicast routing PIM version PIM mode PIM RP address PIM domain border PIM multicast boundary Candidate BSRs Candidate RPs Shortest-path tree threshold rate PIM router query message interval
Default Setting Disabled on all interfaces. Version 2. No mode is defined. None configured. Disabled. None. Disabled. Disabled. 0 kbps. 30 seconds.
PIMv1 and PIMv2 Interoperability, page 36-9 Auto-RP and BSR Configuration Guidelines, page 36-10
36-9
Sparse-mode groups in a mixed PIMv1 and PIMv2 region are possible because the Auto-RP feature in PIMv1 interoperates with the PIMv2 RP feature. Although all PIMv2 devices can also use PIMv1, we recommend that the RPs be upgraded to PIMv2. To ease the transition to PIMv2, we have these recommendations:
Use Auto-RP throughout the region. Configure sparse-dense mode throughout the region.
If Auto-RP is not already configured in the PIMv1 regions, configure Auto-RP. For more information, see the Configuring Auto-RP section on page 36-14.
If your network is all Cisco routers and multilayer switches, you can use either Auto-RP or BSR. If you have non-Cisco routers in your network, you must use BSR. If you have Cisco PIMv1 and PIMv2 routers and multilayer switches and non-Cisco routers, you must use both Auto-RP and BSR. If your network includes routers from other vendors, configure the Auto-RP mapping agent and the BSR on a Cisco PIMv2 device. Ensure that no PIMv1 device is located in the path a between the BSR and a non-Cisco PIMv2 device. Because bootstrap messages are sent hop-by-hop, a PIMv1 device prevents these messages from reaching all routers and multilayer switches in your network. Therefore, if your network has a PIMv1 device in it and only Cisco routers and multilayer switches, it is best to use Auto-RP. If you have a network that includes non-Cisco routers, configure the Auto-RP mapping agent and the BSR on a Cisco PIMv2 router or multilayer switch. Ensure that no PIMv1 device is on the path between the BSR and a non-Cisco PIMv2 router. If you have non-Cisco PIMv2 routers that need to interoperate with Cisco PIMv1 routers and multilayer switches, both Auto-RP and a BSR are required. We recommend that a Cisco PIMv2 device be both the Auto-RP mapping agent and the BSR. For more information, see the Using Auto-RP and a BSR section on page 36-22.
36-10
78-16180-02
Chapter 36
By default, multicast routing is disabled, and there is no default mode setting. This procedure is required. Beginning in privileged EXEC mode, follow these steps to enable IP multicasting, to configure a PIM version, and to configure a PIM mode. This procedure is required. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Enable IP multicast distributed switching. Specify the Layer 3 interface on which you want to enable multicast routing, and enter interface configuration mode. The specified interface must be one of the following:
A routed port: a physical port that has been configured as a Layer 3 port by entering the no switchport interface configuration command. An SVI: a VLAN interface created by using the interface vlan vlan-id global configuration command.
These interfaces must have IP addresses assigned to them. For more information, see the Configuring Layer 3 Interfaces section on page 11-21.
Step 4
ip pim version [1 | 2]
Configure the PIM version on the interface. By default, Version 2 is enabled and is the recommended setting. An interface in PIMv2 mode automatically downgrades to PIMv1 mode if that interface has a PIMv1 neighbor. The interface returns to Version 2 mode after all Version 1 neighbors are shut down or upgraded. For more information, see the PIMv1 and PIMv2 Interoperability section on page 36-9.
Step 5
Enable a PIM mode on the interface. By default, no mode is configured. The keywords have these meanings:
dense-modeEnables dense mode of operation. sparse-modeEnables sparse mode of operation. If you configure sparse-mode, you must also configure an RP. For more information, see the Configuring a Rendezvous Point section on page 36-12. sparse-dense-modeCauses the interface to be treated in the mode in which the group belongs. Sparse-dense-mode is the recommended setting. After you enable a PIM mode on the interface, the ip mroute-cache distributed interface configuration command is automatically entered for the interface and appears in the running configuration.
Note
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
36-11
To disable multicasting, use the no ip multicast-routing distributed global configuration command. To return to the default PIM version, use the no ip pim version interface configuration command. To disable PIM on an interface, use the no ip pim interface configuration command.
Manually Assigning an RP to Multicast Groups, page 36-12 Configuring Auto-RP, page 36-14 (a standalone, Cisco-proprietary protocol separate from PIMv1) Configuring PIMv2 BSR, page 36-18 (a standards track protocol in the Internet Engineering Task Force (IETF)
You can use Auto-RP, BSR, or a combination of both, depending on the PIM version you are running and the types of routers in your network. For more information, see the PIMv1 and PIMv2 Interoperability section on page 36-9 and the Auto-RP and BSR Configuration Guidelines section on page 36-10.
36-12
78-16180-02
Chapter 36
Beginning in privileged EXEC mode, follow these steps to manually configure the address of the RP. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure the address of a PIM RP. By default, no PIM RP address is configured. You must configure the IP address of RPs on all routers and multilayer switches (including the RP). If there is no RP configured for a group, the switch treats the group as dense, using the dense-mode PIM techniques. A PIM device can be an RP for more than one group. Only one RP address can be used at a time within a PIM domain. The access-list conditions specify for which groups the device is an RP.
For ip-address, enter the unicast address of the RP in dotted-decimal notation. (Optional) For access-list-number, enter an IP standard access list number from 1 to 99. If no access list is configured, the RP is used for all groups. (Optional) The override keyword means that if there is a conflict between the RP configured with this command and one learned by Auto-RP or BSR, the RP configured with this command prevails.
Step 3
Create a standard access 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 multicast group address for which the RP should be used. (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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove an RP address, use the no ip pim rp-address ip-address [access-list-number] [override] global configuration command. This example shows how to configure the address of the RP to 147.106.6.22 for multicast group 225.2.2.2 only:
Switch(config)# access-list 1 permit 225.2.2.2 0.0.0.0 Switch(config)# ip pim rp-address 147.106.6.22 1
36-13
Configuring Auto-RP
Auto-RP uses IP multicast to automate the distribution of group-to-RP mappings to all Cisco routers and multilayer switches in a PIM network. It has these benefits:
It is easy to use multiple RPs within a network to serve different group ranges. It provides load splitting among different RPs and arrangement of RPs according to the location of group participants. It avoids inconsistent, manual RP configurations on every router and multilayer switch in a PIM network, which can cause connectivity problems.
Note
If you configure PIM in sparse mode or sparse-dense mode and do not configure Auto-RP, you must manually configure an RP as described in the Manually Assigning an RP to Multicast Groups section on page 36-12.
Note
If routed interfaces are configured in sparse mode, Auto-RP can still be used if all devices are configured with a manual RP address for the Auto-RP groups. These sections describe how to configure Auto-RP:
Setting up Auto-RP in a New Internetwork, page 36-14 (optional) Adding Auto-RP to an Existing Sparse-Mode Cloud, page 36-14 (optional) Preventing Join Messages to False RPs, page 36-16 (optional) Filtering Incoming RP Announcement Messages, page 36-17 (optional)
36-14
78-16180-02
Chapter 36
Beginning in privileged EXEC mode, follow these steps to deploy Auto-RP in an existing sparse-mode cloud. This procedure is optional. Command
Step 1
Purpose Verify that a default RP is already configured on all PIM devices and the RP in the sparse-mode network. It was previously configured with the ip pim rp-address global configuration command. This step is not required for spare-dense-mode environments. The selected RP should have good connectivity and be available across the network. Use this RP for the global groups (for example 224.x.x.x and other global groups). Do not reconfigure the group address range that this RP serves. RPs dynamically discovered through Auto-RP take precedence over statically configured RPs. Assume that it is desirable to use a second RP for the local groups.
show running-config
Step 2 Step 3
configure terminal ip pim send-rp-announce interface-id scope ttl group-list access-list-number interval seconds
Enter global configuration mode. Configure another PIM device to be the candidate RP for local groups.
For interface-id, enter the interface type and number that identifies the RP address. Valid interfaces include physical ports, port channels, and VLANs. For scope ttl, specify the time-to-live value in hops. Enter a hop count that is high enough so that the RP-announce messages reach all mapping agents in the network. There is no default setting. The range is 1 to 255. For group-list access-list-number, enter an IP standard access list number from 1 to 99. If no access list is configured, the RP is used for all groups. For interval seconds, specify how often the announcement messages must be sent. The default is 60 seconds. The range is 1 to 16383.
Step 4
Create a standard access list, repeating the command as many times as necessary.
For access-list-number, enter the access list number specified in Step 3. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, enter the multicast group address range for which the RP should be used. (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.
36-15
Command
Step 5
Purpose Find a switch whose connectivity is not likely to be interrupted, and assign it the role of RP-mapping agent. For scope ttl, specify the time-to-live value in hops to limit the RP discovery packets. All devices within the hop count from the source device receive the Auto-RP discovery messages. These messages tell other devices which group-to-RP mapping to use to avoid conflicts (such as overlapping group-to-RP ranges). There is no default setting. The range is 1 to 255.
Step 6 Step 7
Return to privileged EXEC mode. Verify your entries. Display active RPs that are cached with associated multicast routing entries. Display the information cached in the routing table. (Optional) Save your entries in the configuration file.
Step 8
To remove the PIM device configured as the candidate RP, use the no ip pim send-rp-announce interface-id global configuration command. To remove the switch as the RP-mapping agent, use the no ip pim send-rp-discovery global configuration command. This example shows how to send RP announcements out all PIM-enabled interfaces for a maximum of 31 hops. The IP address of port 1 is the RP. Access list 5 describes the group for which this switch serves as RP:
Switch(config)# ip pim send-rp-announce gigabitethernet1/0/1 scope 31 group-list 5 Switch(config)# access-list 5 permit 224.0.0.0 15.255.255.255
36-16
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Filter incoming RP announcement messages. Enter this command on each mapping agent in the network. Without this command, all incoming RP-announce messages are accepted by default. For rp-list access-list-number, configure an access list of candidate RP addresses that, if permitted, is accepted for the group ranges supplied in the group-list access-list-number variable. If this variable is omitted, the filter applies to all multicast groups. If more than one mapping agent is used, the filters must be consistent across all mapping agents to ensure that no conflicts occur in the Group-to-RP mapping information.
Step 3
Create a standard access 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. Create an access list that specifies from which routers and multilayer switches the mapping agent accepts candidate RP announcements (rp-list ACL). Create an access list that specifies the range of multicast groups from which to accept or deny (group-list ACL). For source, enter the multicast group address range for which the RP should be used. (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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove a filter on incoming RP announcement messages, use the no ip pim rp-announce-filter rp-list access-list-number [group-list access-list-number] global configuration command.
36-17
This example shows a sample configuration on an Auto-RP mapping agent that is used to prevent candidate RP announcements from being accepted from unauthorized candidate RPs:
Switch(config)# Switch(config)# Switch(config)# Switch(config)# Switch(config)# ip pim rp-announce-filter rp-list 10 group-list 20 access-list 10 permit host 172.16.5.1 access-list 10 permit host 172.16.2.1 access-list 20 deny 239.0.0.0 0.0.255.255 access-list 20 permit 224.0.0.0 15.255.255.255
In this example, the mapping agent accepts candidate RP announcements from only two devices, 172.16.5.1 and 172.16.2.1. The mapping agent accepts candidate RP announcements from these two devices only for multicast groups that fall in the group range of 224.0.0.0 to 239.255.255.255. The mapping agent does not accept candidate RP announcements from any other devices in the network. Furthermore, the mapping agent does not accept candidate RP announcements from 172.16.5.1 or 172.16.2.1 if the announcements are for any groups in the 239.0.0.0 through 239.255.255.255 range. This range is the administratively scoped address range.
Defining the PIM Domain Border, page 36-18 (optional) Defining the IP Multicast Boundary, page 36-19 (optional) Configuring Candidate BSRs, page 36-20 (optional) Configuring Candidate RPs, page 36-21 (optional)
For overview information, see the Bootstrap Router section on page 36-5.
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Define a PIM bootstrap message boundary for the PIM domain. Enter this command on each interface that connects to other bordering PIM domains. This command instructs the switch to neither send or receive PIMv2 BSR messages on this interface as shown in Figure 36-3.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
36-18
78-16180-02
Chapter 36
To remove the PIM border, use the no ip pim bsr-border interface configuration command.
Figure 36-3 Constraining PIMv2 BSR Messages
Configure the ip pim bsr-border command on this interface. Neighboring PIMv2 domain Layer 3 switch
PIMv2 sparse-mode network BSR messages BSR BSR messages Layer 3 switch
Configure the ip pim bsr-border command on this interface. Neighboring PIMv2 domain
Purpose Enter global configuration mode. Create a standard access list, repeating the command as many times as necessary.
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. For source, enter multicast addresses 224.0.1.39 and 224.0.1.40, which carry Auto-RP information. (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 3 Step 4 Step 5 Step 6 Step 7
interface interface-id ip multicast boundary access-list-number end show running-config copy running-config startup-config
Specify the interface to be configured, and enter interface configuration mode. Configure the boundary, specifying the access list you created in Step 2. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
36-19
101243
To remove the boundary, use the no ip multicast boundary interface configuration command. This example shows a portion of an IP multicast boundary configuration that denies Auto-RP information:
Switch(config)# access-list 1 deny 224.0.1.39 Switch(config)# access-list 1 deny 224.0.1.40 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip multicast boundary 1
Purpose Enter global configuration mode. Configure your switch to be a candidate BSR.
For interface-id, enter the interface on this switch from which the BSR address is derived to make it a candidate. This interface must be enabled with PIM. Valid interfaces include physical ports, port channels, and VLANs. For hash-mask-length, specify the mask length (32 bits maximum) that is to be ANDed with the group address before the hash function is called. All groups with the same seed hash correspond to the same RP. For example, if this value is 24, only the first 24 bits of the group addresses matter. (Optional) For priority, enter a number from 0 to 255. The BSR with the larger priority is preferred. If the priority values are the same, the device with the highest IP address is selected as the BSR. The default is 0.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove this device as a candidate BSR, use the no ip pim bsr-candidate global configuration command. This example shows how to configure a candidate BSR, which uses the IP address 172.21.24.18 on a port as the advertised BSR address, uses 30 bits as the hash-mask-length, and has a priority of 10.
Switch(config)# interface gigabitethernet1/0/2 Switch(config-if)# ip address 172.21.24.18 255.255.255.0 Switch(config-if)# ip pim sparse-dense-mode Switch(config-if)# ip pim bsr-candidate gigabitethernet1/0/2 30 10
36-20
78-16180-02
Chapter 36
In a network of Cisco routers and multilayer switches where only Auto-RP is used, any device can be configured as an RP. In a network that includes only Cisco PIMv2 routers and multilayer switches and with routers from other vendors, any device can be used as an RP. In a network of Cisco PIMv1 routers, Cisco PIMv2 routers, and routers from other vendors, configure only Cisco PIMv2 routers and multilayer switches as RPs.
Beginning in privileged EXEC mode, follow these steps to configure your switch to advertise itself as a PIMv2 candidate RP to the BSR. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure your switch to be a candidate RP.
For interface-id, specify the interface whose associated IP address is advertised as a candidate RP address. Valid interfaces include physical ports, port channels, and VLANs. (Optional) For group-list access-list-number, enter an IP standard access list number from 1 to 99. If no group-list is specified, the switch is a candidate RP for all groups.
Step 3
Create a standard access 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 number of the network or host from which the packet is being sent. (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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove this device as a candidate RP, use the no ip pim rp-candidate interface-id global configuration command.
36-21
This example shows how to configure the switch to advertise itself as a candidate RP to the BSR in its PIM domain. Standard access list number 4 specifies the group prefix associated with the RP that has the address identified by a port. That RP is responsible for the groups with the prefix 239.
Switch(config)# ip pim rp-candidate gigabitethernet1/0/2 group-list 4 Switch(config)# access-list 4 permit 239.0.0.0 0.255.255.255
Configure the candidate BSRs as the RP-mapping agents for Auto-RP. For more information, see the Configuring Auto-RP section on page 36-14 and the Configuring Candidate BSRs section on page 36-20. For group prefixes advertised through Auto-RP, the PIMv2 BSR mechanism should not advertise a subrange of these group prefixes served by a different set of RPs. In a mixed PIMv1 and PIMv2 domain, have backup RPs serve the same group prefixes. This prevents the PIMv2 DRs from selecting a different RP from those PIMv1 DRs, due to the longest match lookup in the RP-mapping database.
Beginning in privileged EXEC mode, follow these steps to verify the consistency of group-to-RP mappings. This procedure is optional. Command
Step 1
(Optional) For group-name, specify the name of the group about which to display RPs. (Optional) For group-address, specify the address of the group about which to display RPs. (Optional) Use the mapping keyword to display all group-to-RP mappings of which the Cisco device is aware (either configured or learned from Auto-RP).
Step 2
On a PIMv2 router or multilayer switch, confirm that the same RP is the one that a PIMv1 system chooses. For group, enter the group address for which to display RP information.
36-22
78-16180-02
Chapter 36
show ip pim bsr displays information about the elected BSR. show ip pim rp-hash group displays the RP that was selected for the specified group. show ip pim rp [group-name | group-address | mapping] displays how the switch learns of the RP (through the BSR or the Auto-RP mechanism).
Verify RP mapping with the show ip pim rp-hash privileged EXEC command, making sure that all systems agree on the same RP for the same group. Verify interoperability between different versions of DRs and RPs. Make sure the RPs are interacting with the DRs properly (by responding with register-stops and forwarding decapsulated data packets from registers).
Understanding PIM Shared Tree and Source Tree, page 36-23 Delaying the Use of PIM Shortest-Path Tree, page 36-25 (optional) Modifying the PIM Router-Query Message Interval, page 36-26 (optional)
36-23
Source
Router A
Router C
RP
44967
Receiver
If the data rate warrants, leaf routers (routers without any downstream connections) on the shared tree can use the data distribution tree rooted at the source. This type of distribution tree is called a shortest-path tree or source tree. By default, the software switches to a source tree upon receiving the first data packet from a source. This process describes the move from a shared tree to a source tree:
1. 2. 3. 4. 5. 6. 7. 8.
A receiver joins a group; leaf Router C sends a join message toward the RP. The RP puts a link to Router C in its outgoing interface list. A source sends data; Router A encapsulates the data in a register message and sends it to the RP. The RP forwards the data down the shared tree to Router C and sends a join message toward the source. At this point, data might arrive twice at Router C, once encapsulated and once natively. When data arrives natively (unencapsulated) at the RP, it sends a register-stop message to Router A. By default, reception of the first data packet prompts Router C to send a join message toward the source. When Router C receives data on (S,G), it sends a prune message for the source up the shared tree. The RP deletes the link to Router C from the outgoing interface of (S,G). The RP triggers a prune message toward the source.
Join and prune messages are sent for sources and RPs. They are sent hop-by-hop and are processed by each PIM device along the path to the source or RP. Register and register-stop messages are not sent hop-by-hop. They are sent by the designated router that is directly connected to a source and are received by the RP for the group. Multiple sources sending to groups use the shared tree. You can configure the PIM device to stay on the shared tree. For more information, see the Delaying the Use of PIM Shortest-Path Tree section on page 36-25.
36-24
78-16180-02
Chapter 36
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, specify the multicast group to which the threshold will apply. (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 3
Specify the threshold that must be reached before moving to shortest-path tree (spt).
Note
For kbps, specify the traffic rate in kilobits per second. The default is 0 kbps. Because of Catalyst 3750 hardware limitations, 0 kbps is the only valid entry even though the range is 0 to 4294967. Specify infinity if you want all sources for the specified group to use the shared tree, never switching to the source tree. (Optional) For group-list access-list-number, specify the access list created in Step 2. If the value is 0 or if the group-list is not used, the threshold applies to all groups.
36-25
Command
Step 4 Step 5 Step 6
Purpose Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip pim spt-threshold {kbps | infinity} global configuration command.
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Configure the frequency at which the switch sends PIM router-query messages. The default is 30 seconds. The range is 1 to 65535. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip pim query-interval [seconds] interface configuration command.
36-26
78-16180-02
Chapter 36
Default IGMP Configuration, page 36-27 Configuring the Switch as a Member of a Group, page 36-27 (optional) Controlling Access to IP Multicast Groups, page 36-28 (optional) Changing the IGMP Version, page 36-29 (optional) Modifying the IGMP Host-Query Message Interval, page 36-30 (optional) Changing the IGMP Query Timeout for IGMPv2, page 36-31 (optional) Changing the Maximum Query Response Time for IGMPv2, page 36-31 (optional) Configuring the Switch as a Statically Connected Member, page 36-32 (optional)
Feature Multilayer switch as a member of a multicast group Access to multicast groups IGMP version IGMP host-query message interval IGMP query timeout IGMP maximum query response time Multilayer switch as a statically connected member
Default Setting No group memberships are defined. All groups are allowed on an interface. Version 2 on all interfaces. 60 seconds on all interfaces. 60 seconds on all interfaces. 10 seconds on all interfaces. Disabled.
Caution
Performing this procedure might impact the CPU performance because the CPU will receive all data traffic for the group address.
36-27
Beginning in privileged EXEC mode, follow these steps to configure the switch to be a member of a group. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Configure the switch to join a multicast group. By default, no group memberships are defined. For group-address, specify the multicast IP address in dotted decimal notation.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To cancel membership in a group, use the no ip igmp join-group group-address interface configuration command. This example shows how to enable the switch to join multicast group 255.2.2.2:
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip igmp join-group 255.2.2.2
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Specify the multicast groups that hosts on the subnet serviced by an interface can join. By default, all groups are allowed on an interface. For access-list-number, specify an IP standard access list number. The range is 1 to 99.
Step 4
exit
36-28
78-16180-02
Chapter 36
Command
Step 5
For access-list-number, specify the access list created in Step 3. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, specify the multicast group that hosts on the subnet can join. (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 6 Step 7 Step 8
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable groups on an interface, use the no ip igmp access-group interface configuration command. This example shows how to configure hosts attached to a port as able to join only group 255.2.2.2:
Switch(config)# access-list 1 255.2.2.2 0.0.0.0 Switch(config-if)# interface gigabitethernet1/0/1 Switch(config-if)# ip igmp access-group 1
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Specify the IGMP version that the switch uses.
Note
If you change to Version 1, you cannot configure the ip igmp query-interval or the ip igmp query-max-response-time interface configuration commands.
Step 4
end
36-29
Command
Step 5 Step 6
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip igmp version interface configuration command.
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Configure the frequency at which the designated router sends IGMP host-query messages. By default, the designated router sends IGMP host-query messages every 60 seconds to keep the IGMP overhead very low on hosts and networks. The range is 1 to 65535.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip igmp query-interval interface configuration command.
36-30
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Specify the IGMP query timeout. The default is 60 seconds (twice the query interval). The range is 60 to 300.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip igmp querier-timeout interface configuration command.
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Change the maximum query response time advertised in IGMP queries. The default is 10 seconds. The range is 1 to 25. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip igmp query-max-response-time seconds end show ip igmp interface [interface-id] copy running-config startup-config
36-31
To return to the default setting, use the no ip igmp query-max-response-time interface configuration command.
Use the ip igmp join-group interface configuration command. With this method, the switch accepts the multicast packets in addition to forwarding them. Accepting the multicast packets prevents the switch from fast switching. Use the ip igmp static-group interface configuration command. With this method, the switch does not accept the packets itself, but only forwards them. This method enables fast switching. The outgoing interface appears in the IGMP cache, but the switch itself is not a member, as evidenced by lack of an L (local) flag in the multicast route entry.
Beginning in privileged EXEC mode, follow these steps to configure the switch itself to be a statically connected member of a group (and enable fast switching). This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Configure the switch as a statically connected member of a group. By default, this feature is disabled. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip igmp static-group group-address end show ip igmp interface [interface-id] copy running-config startup-config
To remove the switch as a member of the group, use the no ip igmp static-group group-address interface configuration command.
Features for Layer 2 connectivity and MBONE multimedia conference session and set up:
Enabling CGMP Server Support, page 36-33 (optional) Configuring sdr Listener Support, page 36-34 (optional)
36-32
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Specify the interface that is connected to the Layer 2 Catalyst switch, and enter interface configuration mode. Enable CGMP on the interface. By default, CGMP is disabled on all interfaces. Enabling CGMP triggers a CGMP join message. Enable CGMP only on Layer 3 interfaces connected to Layer 2 Catalyst switches. (Optional) When you enter the proxy keyword, the CGMP proxy function is enabled. The proxy router advertises the existence of non-CGMP-capable routers by sending a CGMP join message with the non-CGMP-capable router MAC address and a group address of 0000.0000.0000.
Note
To perform CGMP proxy, the switch must be the IGMP querier. If you configure the ip cgmp proxy command, you must manipulate the IP addresses so that the switch is the IGMP querier, which might be the highest or lowest IP address, depending on which version of IGMP is running on the network. An IGMP Version 2 querier is selected based on the lowest IP address on the interface. An IGMP Version 1 querier is selected based on the multicast routing protocol used on the interface.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file. Verify the Layer 2 Catalyst switch CGMP-client configuration. For more information, refer to the documentation that shipped with the product. To disable CGMP on the interface, use the no ip cgmp interface configuration command. When multiple Cisco CGMP-capable devices are connected to a switched network and the ip cgmp proxy command is needed, we recommend that all devices be configured with the same CGMP option and have precedence for becoming the IGMP querier over non-Cisco routers.
36-33
Purpose Enter global configuration mode. Specify the interface to be enabled for sdr, and enter interface configuration mode. Enable sdr listener support. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip sdr listen end show running-config copy running-config startup-config
To disable sdr support, use the no ip sdr listen interface configuration command.
36-34
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Limit how long an sdr cache entry stays active in the cache. By default, entries are never deleted from the cache. For minutes, the range is 1 to 4294967295.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip sdr cache-timeout global configuration command. To delete the entire cache, use the clear ip sdr privileged EXEC command. To display the session directory cache, use the show ip sdr privileged EXEC command.
Note
Multicast boundaries and TTL thresholds control the scoping of multicast domains; however, TTL thresholds are not supported by the switch. You should use multicast boundaries instead of TTL thresholds to limit the forwarding of multicast traffic outside of a domain or a subdomain. Figure 36-5 shows that Company XYZ has an administratively-scoped boundary set for the multicast address range 239.0.0.0/8 on all routed interfaces at the perimeter of its network. This boundary prevents any multicast traffic in the range 239.0.0.0 through 239.255.255.255 from entering or leaving the network. Similarly, the engineering and marketing departments have an administratively-scoped boundary of 239.128.0.0/16 around the perimeter of their networks. This boundary prevents multicast traffic in the range of 239.128.0.0 through 239.128.255.255 from entering or leaving their respective networks.
36-35
Figure 36-5
Administratively-Scoped Boundaries
239.128.0.0/16
239.0.0.0/8
You can define an administratively-scoped boundary on a routed interface for multicast group addresses. A standard access list defines the range of addresses affected. When a boundary is defined, no multicast data packets are allowed to flow across the boundary from either direction. The boundary allows the same multicast group address to be reused in different administrative domains. The IANA has designated the multicast address range 239.0.0.0 to 239.255.255.255 as the administratively-scoped addresses. This range of addresses can then be reused in domains administered by different organizations. The addresses would be considered local, not globally unique. Beginning in privileged EXEC mode, follow these steps to set up an administratively-scoped boundary. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Create a standard access list, repeating the command as many times as necessary.
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, enter the number of the network or host from which the packet is being sent. (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 3 Step 4 Step 5 Step 6 Step 7
interface interface-id ip multicast boundary access-list-number end show running-config copy running-config startup-config
Specify the interface to be configured, and enter interface configuration mode. Configure the boundary, specifying the access list you created in Step 2. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
36-36
45154
78-16180-02
Chapter 36
To remove the boundary, use the no ip multicast boundary interface configuration command. This example shows how to set up a boundary for all administratively-scoped addresses:
Switch(config)# access-list 1 deny 239.0.0.0 0.255.255.255 Switch(config)# access-list 1 permit 224.0.0.0 15.255.255.255 Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# ip multicast boundary 1
Configuring DVMRP Interoperability, page 36-37 (optional) Configuring a DVMRP Tunnel, page 36-39 (optional) Advertising Network 0.0.0.0 to DVMRP Neighbors, page 36-41 (optional) Responding to mrinfo Requests, page 36-42 (optional)
For more advanced DVMRP features, see the Configuring Advanced DVMRP Interoperability Features section on page 36-42.
Note
The mrouted protocol is a public-domain implementation of DVMRP. You must use mrouted Version 3.8 (which implements a nonpruning version of DVMRP) when Cisco routers and multilayer switches are directly connected to DVMRP routers or interoperate with DVMRP routers over an MBONE tunnel. DVMRP advertisements produced by the Cisco IOS software can cause older versions of the mrouted protocol to corrupt their routing tables and those of their neighbors. You can configure what sources are advertised and what metrics are used by configuring the ip dvmrp metric interface configuration command. You can also direct all sources learned through a particular unicast routing process to be advertised into DVMRP.
36-37
Beginning in privileged EXEC mode, follow these steps to configure the sources that are advertised and the metrics that are used when DVMRP route-report messages are sent. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Create a standard access list, repeating the command as many times as necessary.
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, enter the number of the network or host from which the packet is being sent. (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 3 Step 4
interface interface-id
Specify the interface connected to the MBONE and enabled for multicast routing, and enter interface configuration mode.
ip dvmrp metric metric [list Configure the metric associated with a set of destinations for DVMRP access-list-number] [[protocol process-id ] reports. | [dvmrp]] For metric, the range is 0 to 32. A value of 0 means that the route is not advertised. A value of 32 is equivalent to infinity (unreachable).
(Optional) For list access-list-number, enter the access list number created in Step 2. If specified, only the multicast destinations that match the access list are reported with the configured metric. (Optional) For protocol process-id, enter the name of the unicast routing protocol, such as eigrp, igrp, ospf, rip, static, or dvmrp, and the process ID number of the routing protocol. If specified, only routes learned by the specified routing protocol are advertised in DVMRP report messages. (Optional) If specified, the dvmrp keyword allows routes from the DVMRP routing table to be advertised with the configured metric or filtered.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To disable the metric or route map, use the no ip dvmrp metric metric [list access-list-number] [[protocol process-id] | [dvmrp]] or the no ip dvmrp metric metric route-map map-name interface configuration command. A more sophisticated way to achieve the same results as the preceding command is to use a route map (ip dvmrp metric metric route-map map-name interface configuration command) instead of an access list. You subject unicast routes to route-map conditions before they are injected into DVMRP.
36-38
78-16180-02
Chapter 36
This example shows how to configure DVMRP interoperability when the PIM device and the DVMRP router are on the same network segment. In this example, access list 1 advertises the networks (198.92.35.0, 198.92.36.0, 198.92.37.0, 131.108.0.0, and 150.136.0.0) to the DVMRP router, and access list 2 prevents all other networks from being advertised (ip dvmrp metric 0 interface configuration command).
Switch(config-if)# interface gigabitethernet1/0/1 Switch(config-if)# ip address 131.119.244.244 255.255.255.0 Switch(config-if)# ip pim dense-mode Switch(config-if)# ip dvmrp metric 1 list 1 Switch(config-if)# ip dvmrp metric 0 list 2 Switch(config-if)# exit Switch(config)# access-list 1 permit 198.92.35.0 0.0.0.255 Switch(config)# access-list 1 permit 198.92.36.0 0.0.0.255 Switch(config)# access-list 1 permit 198.92.37.0 0.0.0.255 Switch(config)# access-list 1 permit 131.108.0.0 0.0.255.255 Switch(config)# access-list 1 permit 150.136.0.0 0.0.255.255 Switch(config)# access-list 1 deny 0.0.0.0 255.255.255.255 Switch(config)# access-list 2 permit 0.0.0.0 255.255.255.255
To send IP packets through the tunnel To configure the software to perform DVMRP summarization
The software does not advertise subnets through the tunnel if the tunnel has a different network number from the subnet. In this case, the software advertises only the network number through the tunnel.
36-39
Beginning in privileged EXEC mode, follow these steps to configure a DVMRP tunnel. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Create a standard access list, repeating the command as many times as necessary.
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, enter the number of the network or host from which the packet is being sent. (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 3 Step 4 Step 5 Step 6 Step 7
interface tunnel number tunnel source ip-address tunnel destination ip-address tunnel mode dvmrp ip address address mask or ip unnumbered type number
Specify a tunnel interface, and enter interface configuration mode. Specify the source address of the tunnel interface. Enter the IP address of the interface on the switch. Specify the destination address of the tunnel interface. Enter the IP address of the mrouted router. Configure the encapsulation mode for the tunnel to DVMRP. Assign an IP address to the interface. or Configure the interface as unnumbered. Configure the PIM mode on the interface. Configure an acceptance filter for incoming DVMRP reports. By default, all destination reports are accepted with a distance of 0. Reports from all neighbors are accepted.
Step 8 Step 9
For access-list-number, specify the access list number created in Step 2. Any sources that match the access list are stored in the DVMRP routing table with distance. (Optional) For distance, enter the administrative distance to the destination. By default, the administrative distance for DVMRP routes is 0 and take precedence over unicast routing table routes. If you have two paths to a source, one through unicast routing (using PIM as the multicast routing protocol) and another using DVMRP, and if you want to use the PIM path, increase the administrative distance for DVMRP routes. The range is 1 to 255. For neighbor-list access-list-number, enter the number of the neighbor list created in Step 2. DVMRP reports are accepted only by those neighbors on the list.
Step 10
end
36-40
78-16180-02
Chapter 36
Command
Step 11 Step 12
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
To disable the filter, use the no ip dvmrp accept-filter access-list-number [distance] neighbor-list access-list-number interface configuration command. This example shows how to configure a DVMRP tunnel. In this configuration, the IP address of the tunnel on the Cisco switch is assigned unnumbered, which causes the tunnel to appear to have the same IP address as port 1. The tunnel endpoint source address is 172.16.2.1, and the tunnel endpoint address of the remote DVMRP router to which the tunnel is connected is 192.168.1.10. Any packets sent through the tunnel are encapsulated in an outer IP header. The Cisco switch is configured to accept incoming DVMRP reports with a distance of 100 from 198.92.37.0 through 198.92.37.255.
Switch(config)# ip multicast-routing Switch(config)# interface tunnel 0 Switch(config-if)# ip unnumbered gigabitethernet1/0/1 Switch(config-if)# ip pim dense-mode Switch(config-if)# tunnel source gigabitethernet1/0/1 Switch(config-if)# tunnel destination 192.168.1.10 Switch(config-if)# tunnel mode dvmrp Switch(config-if)# ip dvmrp accept-filter 1 100 Switch(config-if)# interface gigabitethernet1/0/1 Switch(config-if)# ip address 172.16.2.1 255.255.255.0 Switch(config-if)# ip pim dense-mode Switch(config)# exit Switch(config)# access-list 1 permit 198.92.37.0 0.0.0.255
Purpose Enter global configuration mode. Specify the interface that is connected to the DVMRP router, and enter interface configuration mode. Advertise network 0.0.0.0 to DVMRP neighbors. Use this command only when the switch is a neighbor of mrouted Version 3.6 machines. The keywords have these meanings:
originateSpecifies that other routes more specific than 0.0.0.0 can also be advertised. onlySpecifies that no DVMRP routes other than 0.0.0.0 are advertised.
36-41
Command
Step 4 Step 5 Step 6
Purpose Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To prevent the default route advertisement, use the no ip dvmrp default-information interface configuration command.
Enabling DVMRP Unicast Routing, page 36-43 (optional) Rejecting a DVMRP Nonpruning Neighbor, page 36-43 (optional) Controlling Route Exchanges, page 36-46 (optional)
For information on basic DVMRP features, see the Configuring Basic DVMRP Interoperability Features section on page 36-37.
36-42
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Specify the interface that is connected to the DVMRP router, and enter interface configuration mode. Enable DVMRP unicast routing (to send and receive DVMRP routes). This feature is disabled by default. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip dvmrp unicast-routing end show running-config copy running-config startup-config
To disable this feature, use the no ip dvmrp unicast-routing interface configuration command.
36-43
Figure 36-6
You can prevent the switch from peering (communicating) with a DVMRP neighbor if that neighbor does not support DVMRP pruning or grafting. To do so, configure the switch (which is a neighbor to the leaf, nonpruning DVMRP machine) with the ip dvmrp reject-non-pruners interface configuration command on the interface connected to the nonpruning machine as shown in Figure 36-7. In this case, when the switch receives DVMRP probe or report message without the prune-capable flag set, the switch logs a syslog message and discards the message.
36-44
78-16180-02
Chapter 36
Figure 36-7
Source router or RP RP
Router A
Router B Receiver
Layer 3 switch Configure the ip dvmrp reject-non-pruners command on this interface. Leaf nonpruning DVMRP device
101245
Note that the ip dvmrp reject-non-pruners interface configuration command prevents peering with neighbors only. If there are any nonpruning routers multiple hops away (downstream toward potential receivers) that are not rejected, a nonpruning DVMRP network might still exist. Beginning in privileged EXEC mode, follow these steps to prevent peering with nonpruning DVMRP neighbors. This procedure is optional. Command
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
Purpose Enter global configuration mode. Specify the interface connected to the nonpruning DVMRP neighbor, and enter interface configuration mode. Prevent peering with nonpruning DVMRP neighbors. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id ip dvmrp reject-non-pruners end show running-config copy running-config startup-config
To disable this function, use the no ip dvmrp reject-non-pruners interface configuration command.
36-45
Limiting the Number of DVMRP Routes Advertised, page 36-46 (optional) Changing the DVMRP Route Threshold, page 36-46 (optional) Configuring a DVMRP Summary Address, page 36-47 (optional) Disabling DVMRP Autosummarization, page 36-49 (optional) Adding a Metric Offset to the DVMRP Route, page 36-49 (optional)
Purpose Enter global configuration mode. Change the number of DVMRP routes advertised over an interface enabled for DVMRP. This command prevents misconfigured ip dvmrp metric interface configuration commands from causing massive route injection into the MBONE. By default, 7000 routes are advertised. The range is 0 to 4294967295.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To configure no route limit, use the no ip dvmrp route-limit global configuration command.
36-46
78-16180-02
Chapter 36
Beginning in privileged EXEC mode, follow these steps to change the threshold number of routes that trigger the warning. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure the number of routes that trigger a syslog message. The default is 10,000 routes. The range is 1 to 4294967295. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal ip dvmrp routehog-notification route-count end show running-config copy running-config startup-config
To return to the default setting use the no ip dvmrp routehog-notification global configuration command. Use the show ip igmp interface privileged EXEC command to display a running count of routes. When the count is exceeded, *** ALERT *** is appended to the line.
36-47
Figure 36-8
DVMRP Report 151.16.0.0/16 m = 39 172.34.15.0/24 m = 42 202.13.3.0/24 m = 40 176.32.10.0/24 m=1 176.32.15.0/24 m=1 DVMRP router
interface tunnel 0 ip unnumbered fastethernet1/0/1 interface fastethernet1/0/1 ip addr 176.32.10.1 255.255.255.0 ip pim dense-mode interface fastethernet1/0/2 ip addr 176.32.15.1 255.255.255.0 ip pim dense-mode
Tunnel
DVMRP Route Table Src Network 151.16.0/16 172.34.15.0/24 202.13.3.0/24 Intf Fa1/0/1 Fa1/0/1 Fa1/0/1 Metric 7 10 8
Unicast Routing Table (10,000 Routes) Network 176.13.10.0/24 176.32.15.0/24 Fast Ethernet 176.32.20.0/24 1/0/2 176.32.15.0/24 Intf Fa1/0/1 Fa1/0/2 Fa1/0/2 Metric 10514432 10512012 45106372 Dist 90 90 90
86514
176.32.10.0/24
Beginning in privileged EXEC mode, follow these steps to customize the summarization of DVMRP routes if the default classful autosummarization does not suit your needs. This procedure is optional.
Note
At least one more-specific route must be present in the unicast routing table before a configured summary address is advertised.
Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface that is connected to the DVMRP router, and enter interface configuration command. Specify a DVMRP summary address.
configure terminal interface interface-id ip dvmrp summary-address address mask [metric value]
For summary-address address mask, specify the summary IP address and mask that is advertised instead of the more specific route. (Optional) For metric value, specify the metric that is advertised with the summary address. The default is 1. The range is 1 to 32.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove the summary address, use the no ip dvmrp summary-address address mask [metric value] interface configuration command.
36-48
78-16180-02
Chapter 36
Purpose Enter global configuration mode. Specify the interface connected to the DVMRP router, and enter interface configuration mode. Disable DVMRP autosummarization. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
configure terminal interface interface-id no ip dvmrp auto-summary end show running-config copy running-config startup-config
To re-enable auto summarization, use the ip dvmrp auto-summary interface configuration command.
36-49
Beginning in privileged EXEC mode, follow these steps to change the default metric. This procedure is optional. Command
Step 1 Step 2 Step 3
Purpose Enter global configuration mode. Specify the interface to be configured, and enter interface configuration mode. Change the metric added to DVMRP routes advertised in incoming reports. The keywords have these meanings:
(Optional) inSpecifies that the increment value is added to incoming DVMRP reports and is reported in mrinfo replies. (Optional) outSpecifies that the increment value is added to outgoing DVMRP reports for routes from the DVMRP routing table. If neither in nor out is specified, in is the default.
For increment, specify the value that is added to the metric of a DVMRP router advertised in a report message. The range is 1 to 31. If the ip dvmrp metric-offset command is not configured on an interface, the default increment value for incoming routes is 1, and the default for outgoing routes is 0.
Step 4 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip dvmrp metric-offset interface configuration command.
Clearing Caches, Tables, and Databases, page 36-51 Displaying System and Network Statistics, page 36-51 Monitoring IP Multicast Routing, page 36-52
36-50
78-16180-02
Chapter 36
Command clear ip cgmp clear ip dvmrp route {* | route} clear ip igmp group [group-name | group-address | interface] clear ip mroute {* | group [source]} clear ip pim auto-rp rp-address clear ip sdr [group-address | session-name]
Purpose Clear all group entries the Catalyst switches have cached. Delete routes from the DVMRP routing table. Delete entries from the IGMP cache. Delete entries from the IP multicast routing table. Clear the Auto-RP cache. Delete the Session Directory Protocol Version 2 cache or an sdr cache entry.
Note
This release does not support per-route statistics. You can display information to learn resource utilization and solve network problems. You can also display information about node reachability and discover the routing path your devices packets are taking through the network. You can use any of the privileged EXEC commands in Table 36-5 to display various routing statistics:
Table 36-5 Commands for Displaying System and Network Statistics
Command ping [group-name | group-address ] show ip dvmrp route [ip-address] show ip igmp groups [group-name | group-address | type number] show ip igmp interface [type number] show ip mcache [group [source]]
Purpose Send an ICMP Echo Request to a multicast group address. Display the entries in the DVMRP routing table. Display the multicast groups that are directly connected to the switch and that were learned through IGMP. Display multicast-related information about an interface. Display the contents of the IP fast-switching cache.
36-51
Table 36-5 Commands for Displaying System and Network Statistics (continued)
Command show ip mpacket [source-address | name] [group-address | name] [detail] show ip mroute [group-name | group-address] [source] [summary] [count] [active kbps] show ip pim interface [type number] [count] show ip pim neighbor [type number] show ip pim rp [group-name | group-addres s] show ip rpf {source-address | name}
Purpose Display the contents of the circular cache-header buffer. Display the contents of the IP multicast routing table. Display information about interfaces configured for PIM. List the PIM neighbors discovered by the switch. Display the RP routers associated with a sparse-mode multicast group. Display how the switch is doing Reverse-Path Forwarding (that is, from the unicast routing table, DVMRP routing table, or static mroutes). Display the Session Directory Protocol Version 2 cache.
Command mrinfo [hostname | address] [source-address | interface] mstat source [destination] [group] mtrace source [destination] [group]
Purpose Query a multicast router or multilayer switch about which neighboring multicast devices are peering with it. Display IP multicast packet rate and loss information. Trace the path from a source to a destination branch for a multicast distribution tree for a given group.
36-52
78-16180-02
C H A P T E R
37
Configuring MSDP
This chapter describes how to configure the Multicast Source Discovery Protocol (MSDP) on the Catalyst 3750 switch. The MSDP connects multiple Protocol-Independent Multicast sparse-mode (PIM-SM) domains. MSDP is not fully supported in this software release because of a lack of support for Multicast Border Gateway Protocol (MBGP), which works closely with MSDP. However, it is possible to create default peers that MSDP can operate with if MBGP is not running. To use this feature, the stack master must be running the enhanced multilayer image (EMI). Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2 . This chapter consists of these sections:
Understanding MSDP, page 37-1 Configuring MSDP, page 37-4 Monitoring and Maintaining MSDP, page 37-19
Understanding MSDP
MSDP allows multicast sources for a group to be known to all rendezvous points (RPs) in different domains. Each PIM-SM domain uses its own RPs and does not depend on RPs in other domains. An RP runs MSDP over the Transmission Control Protocol (TCP) to discover multicast sources in other domains. An RP in a PIM-SM domain has an MSDP peering relationship with MSDP-enabled devices in another domain. The peering relationship occurs over a TCP connection, primarily exchanging a list of sources sending to multicast groups. The TCP connections between RPs are achieved by the underlying routing system. The receiving RP uses the source lists to establish a source path.
37-1
Configuring MSDP
The purpose of this topology is to have domains discover multicast sources in other domains. If the multicast sources are of interest to a domain that has receivers, multicast data is delivered over the normal, source-tree building mechanism in PIM-SM. MSDP is also used to announce sources sending to a group. These announcements must originate at the domains RP. MSDP depends heavily on the Border Gateway Protocol (BGP) or MBGP for interdomain operation. We recommend that you run MSDP in RPs in your domain that are RPs for sources sending to global groups to be announced to the Internet.
MSDP Operation
Figure 37-1 shows MSDP operating between two MSDP peers. PIM uses MSDP as the standard mechanism to register a source with the RP of a domain. When MSDP is configured, this sequence occurs. When a source sends its first multicast packet, the first-hop router (designated router or RP) directly connected to the source sends a PIM register message to the RP. The RP uses the register message to register the active source and to forward the multicast packet down the shared tree in the local domain. With MSDP configured, the RP also forwards a source-active (SA) message to all MSDP peers. The SA message identifies the source, the group the source is sending to, and the address of the RP or the originator ID (the IP address of the interface used as the RP address), if configured. Each MSDP peer receives and forwards the SA message away from the originating RP to achieve peer reverse-path flooding (RPF). The MSDP device examines the BGP or MBGP routing table to discover which peer is the next hop toward the originating RP of the SA message. Such a peer is called an RPF peer (reverse-path forwarding peer). The MSDP device forwards the message to all MSDP peers other than the RPF peer. For information on how to configure an MSDP peer when BGP and MBGP are not supported, see the Configuring a Default MSDP Peer section on page 37-4. If the MSDP peer receives the same SA message from a non-RPF peer toward the originating RP, it drops the message. Otherwise, it forwards the message to all its MSDP peers. The RP for a domain receives the SA message from an MSDP peer. If the RP has any join requests for the group the SA message describes and if the (*,G) entry exists with a nonempty outgoing interface list, the domain is interested in the group, and the RP triggers an (S,G) join toward the source. After the (S,G) join reaches the sources DR, a branch of the source tree has been built from the source to the RP in the remote domain. Multicast traffic can now flow from the source across the source tree to the RP and then down the shared tree in the remote domain to the receiver.
37-2
78-16180-02
Chapter 37
RP + MSDP peer
MSDP peer
MSDP SA
M SD P SA
MSDP SA TCP connection BGP Register Multicast (S,G) Join PIM DR PIM sparse-mode domain
MSDP peer
Receiver
49885
Source
MSDP Benefits
MSDP has these benefits:
It breaks up the shared multicast distribution tree. You can make the shared tree local to your domain. Your local members join the local tree, and join messages for the shared tree never need to leave your domain. PIM sparse-mode domains can rely only on their own RPs, decreasing reliance on RPs in another domain. This increases security because you can prevent your sources from being known outside your domain. Domains with only receivers can receive data without globally advertising group membership. Global source multicast routing table state is not required, saving memory.
37-3
Configuring MSDP
Configuring MSDP
These sections describe how to configure MSDP:
Default MSDP Configuration, page 37-4 Configuring a Default MSDP Peer, page 37-4 (required) Caching Source-Active State, page 37-6 (optional) Requesting Source Information from an MSDP Peer, page 37-8 (optional) Controlling Source Information that Your Switch Originates, page 37-9 (optional) Controlling Source Information that Your Switch Forwards, page 37-12 (optional) Controlling Source Information that Your Switch Receives, page 37-14 (optional) Configuring an MSDP Mesh Group, page 37-16 (optional) Shutting Down an MSDP Peer, page 37-16 (optional) Including a Bordering PIM Dense-Mode Region in MSDP, page 37-17 (optional) Configuring an Originating Address other than the RP Address, page 37-18 (optional)
37-4
78-16180-02
Chapter 37
Beginning in privileged EXEC mode, follow these steps to specify a default MSDP peer. This procedure is required. Command
Step 1 Step 2
Purpose Enter global configuration mode. Define a default peer from which to accept all MSDP SA messages.
For ip-address | name, enter the IP address or Domain Name System (DNS) server name of the MSDP default peer. (Optional) For prefix-list list, enter the list name that specifies the peer to be the default peer only for the listed prefixes. You can have multiple active default peers when you have a prefix list associated with each. When you enter multiple ip msdp default-peer commands with the prefix-list keyword, you use all the default peers at the same time for different RP prefixes. This syntax is typically used in a service provider cloud that connects stub site clouds. When you enter multiple ip msdp default-peer commands without the prefix-list keyword, a single active peer accepts all SA messages. If that peer fails, the next configured default peer accepts all SA messages. This syntax is typically used at a stub site.
37-5
Configuring MSDP
Command
Step 3
Purpose (Optional) Create a prefix list using the name specified in Step 2.
ip prefix-list name [description string] | seq number {permit | deny} network length
(Optional) For description string , enter a description of up to 80 characters to describe this prefix list. For seq number, enter the sequence number of the entry. The range is 1 to 4294967294. The deny keyword denies access to matching conditions. The permit keyword permits access to matching conditions. For network length, specify the network number and length (in bits) of the network mask that is permitted or denied.
Step 4
ip msdp description {peer-name | peer-address} text end show running-config copy running-config startup-config
(Optional) Configure a description for the specified peer to make it easier to identify in a configuration or in show command output. By default, no description is associated with an MSDP peer. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove the default peer, use the no ip msdp default-peer ip-address | name global configuration command. This example shows a partial configuration of Router A and Router C in Figure 37-2. Each of these ISPs have more than one customer (like the customer in Figure 37-2) who use default peering (no BGP or MBGP). In that case, they might have similar configurations. That is, they accept SAs only from a default peer if the SA is permitted by the corresponding prefix list. Router A
Router(config)# ip msdp default-peer 10.1.1.1 Router(config)# ip msdp default-peer 10.1.1.1 prefix-list site-a Router(config)# ip prefix-list site-b permit 10.0.0.0/1
Router C
Router(config)# ip msdp default-peer 10.1.1.1 prefix-list site-a Router(config)# ip prefix-list site-b permit 10.0.0.0/1
37-6
78-16180-02
Chapter 37
Beginning in privileged EXEC mode, follow these steps to enable the caching of source/group pairs. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Enable the caching of source/group pairs (create an SA state). Those pairs that pass the access list are cached. For list access-list-number, the range is 100 to 199. Create an IP extended access list, repeating the command as many times as necessary.
configure terminal ip msdp cache-sa-state [list access-list-number] access-list access-list-number {deny | permit} protocol source source-wildcard destination destination-wildcard
Step 3
For access-list-number, the range is 100 to 199. Enter the same number created in Step 2. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For protocol, enter ip as the protocol name. For source, enter the number of the network or host from which the packet is being sent. 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. For destination, enter the number of the network or host to which the packet is being sent. For destination-wildcard, enter the wildcard bits in dotted decimal notation to be applied to the destination. 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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
Note
An alternative to this command is the ip msdp sa-request global configuration command, which causes the switch to send an SA request message to the MSDP peer when a new member for a group becomes active. For more information, see the next section. To return to the default setting (no SA state is created), use the no ip msdp cache-sa-state global configuration command. This example shows how to enable the cache state for all sources in 171.69.0.0/16 sending to groups 224.2.0.0/16:
Switch(config)# ip msdp cache-sa-state 100 Switch(config)# access-list 100 permit ip 171.69.0.0 0.0.255.255 224.2.0.0 0.0.255.255
37-7
Configuring MSDP
Purpose Enter global configuration mode. Configure the switch to send SA request messages to the specified MSDP peer. For ip-address | name, enter the IP address or name of the MSDP peer from which the local switch requests SA messages when a new member for a group becomes active. Repeat the command for each MSDP peer that you want to supply with SA messages.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip msdp sa-request {ip-address | name} global configuration command. This example shows how to configure the switch to send SA request messages to the MSDP peer at 171.69.1.1:
Switch(config)# ip msdp sa-request 171.69.1.1
37-8
78-16180-02
Chapter 37
Sources you advertise (based on your sources) Receivers of source information (based on knowing the requestor)
For more information, see the Redistributing Sources section on page 37-9 and the Filtering Source-Active Request Messages section on page 37-11.
Redistributing Sources
SA messages originate on RPs to which sources have registered. By default, any source that registers with an RP is advertised. The A flag is set in the RP when a source is registered, which means the source is advertised in an SA unless it is filtered. Beginning in privileged EXEC mode, follow these steps to further restrict which registered sources are advertised. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure which (S,G) entries from the multicast routing table are advertised in SA messages. By default, only sources within the local domain are advertised.
configure terminal ip msdp redistribute [list access-list-name] [asn aspath-access-list-number] [route-map map]
(Optional) For list access-list-name, enter the name or number of an IP standard or extended access list. The range is 1 to 99 for standard access lists and 100 to 199 for extended lists. The access list controls which local sources are advertised and to which groups they send. (Optional) For asn aspath-access-list-number, enter the IP standard or extended access list number in the range 1 to 199. This access list number must also be configured in the ip as-path access-list command. (Optional) For route-map map , enter the IP standard or extended access list number in the range 1 to 199. This access list number must also be configured in the ip as-path access-list command.
The switch advertises (S,G) pairs according to the access list or autonomous system path access list.
37-9
Configuring MSDP
Command
Step 3
Purpose Create an IP standard access list, repeating the command as many times as necessary. or Create an IP extended access list, repeating the command as many times as necessary.
access-list access-list-number {deny | permit} source [source-wildcard ] or access-list access-list-number {deny | permit} protocol source source-wildcard destination destination-wildcard
For access-list-number, the range is 1 to 99 for standard access lists and 100 to 199 for extended lists. Enter the same number created in Step 2. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For protocol, enter ip as the protocol name. For source, enter the number of the network or host from which the packet is being sent. 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. For destination, enter the number of the network or host to which the packet is being sent. For destination-wildcard, enter the wildcard bits in dotted decimal notation to be applied to the destination. 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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove the filter, use the no ip msdp redistribute global configuration command.
37-10
78-16180-02
Chapter 37
Purpose Enter global configuration mode. Filter all SA request messages from the specified MSDP peer. or Filter SA request messages from the specified MSDP peer for groups that pass the standard access list. The access list describes a multicast group address. The range for the access-list-number is 1 to 99. Create an IP standard access list, repeating the command as many times as necessary.
configure terminal ip msdp filter-sa-request ip-address | name or ip msdp filter-sa-request {ip-address | name} list access-list-number
Step 3
For access-list-number, the range is 1 to 99. The deny keyword denies access if the conditions are matched. The permit keyword permits access if the conditions are matched. For source, enter the number of the network or host from which the packet is being sent. (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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip msdp filter-sa-request {ip-address | name} global configuration command. This example shows how to configure the switch to filter SA request messages from the MSDP peer at 171.69.2.2. SA request messages from sources on network 192.4.22.0 pass access list 1 and are accepted; all others are ignored.
Switch(config)# ip msdp filter sa-request 171.69.2.2 list 1 Switch(config)# access-list 1 permit 192.4.22.0 0.0.0.255
37-11
Configuring MSDP
Using a Filter
By creating a filter, you can perform one of these actions:
Filter all source/group pairs Specify an IP extended access list to pass only certain source/group pairs Filter based on match criteria in a route map
Beginning in privileged EXEC mode, follow these steps to apply a filter. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Filter all SA messages to the specified MSDP peer. or
ip msdp sa-filter out {ip-address | name} To the specified peer, pass only those SA messages that pass the IP extended access list. The range for the extended access-list-number list access-list-number is 100 to 199. If both the list and the route-map keywords are used, all conditions must be true to pass any (S,G) pair in outgoing SA messages. or or To the specified MSDP peer, pass only those SA messages that meet the ip msdp sa-filter out {ip-address | name} match criteria in the route map map-tag . route-map map-tag If all match criteria are true, a permit from the route map passes routes through the filter. A deny filters routes.
37-12
78-16180-02
Chapter 37
Command
Step 3
Purpose (Optional) Create an IP extended access list, repeating the command as many times as necessary.
For access-list-number, enter the 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 protocol, enter ip as the protocol name. For source, enter the number of the network or host from which the packet is being sent. 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. For destination, enter the number of the network or host to which the packet is being sent. For destination-wildcard, enter the wildcard bits in dotted decimal notation to be applied to the destination. 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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove the filter, use the no ip msdp sa-filter out {ip-address | name} [list access-list-number ] [route-map map-tag] global configuration command. This example shows how to allow only (S,G) pairs that pass access list 100 to be forwarded in an SA message to the peer named switch.cisco.com:
Switch(config)# ip msdp peer switch.cisco.com connect-source gigabitethernet1/0/1 Switch(config)# ip msdp sa-filter out switch.cisco.com list 100 Switch(config)# access-list 100 permit ip 171.69.0.0 0.0.255.255 224.20 0 0.0.255.255
37-13
Configuring MSDP
configure terminal
ip msdp ttl-threshold {ip-address | name} Limit which multicast data is encapsulated in the first SA message to ttl the specified MSDP peer.
For ip-address | name, enter the IP address or name of the MSDP peer to which the TTL limitation applies. For ttl, enter the TTL value. The default is 0, which means all multicast data packets are forwarded to the peer until the TTL is exhausted. The range is 0 to 255.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To return to the default setting, use the no ip msdp ttl-threshold {ip-address | name} global configuration command.
Filter all incoming SA messages from an MSDP peer Specify an IP extended access list to pass certain source/group pairs Filter based on match criteria in a route map
37-14
78-16180-02
Chapter 37
Beginning in privileged EXEC mode, follow these steps to apply a filter. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Filter all SA messages from the specified MSDP peer. or From the specified peer, pass only those SA messages that pass the IP extended access list. The range for the extended access-list-number is 100 to 199. If both the list and the route-map keywords are used, all conditions must be true to pass any (S,G) pair in incoming SA messages.
configure terminal ip msdp sa-filter in ip-address | name or ip msdp sa-filter in {ip-address | name} list access-list-number
or From the specified MSDP peer, pass only those SA messages that meet the match criteria in the route map map-tag. If all match criteria are true, a permit from the route map passes routes through the filter. A deny will filter routes.
Step 3
(Optional) Create an IP extended access list, repeating the command as many times as necessary.
For access-list-number, enter the 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 protocol, enter ip as the protocol name. For source, enter the number of the network or host from which the packet is being sent. 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. For destination, enter the number of the network or host to which the packet is being sent. For destination-wildcard, enter the wildcard bits in dotted decimal notation to be applied to the destination. 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 Step 5 Step 6
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove the filter, use the no ip msdp sa-filter in {ip-address | name} [list access-list-number] [route-map map-tag] global configuration command. This example shows how to filter all SA messages from the peer named switch.cisco.com:
Switch(config)# ip msdp peer switch.cisco.com connect-source gigabitethernet1/0/1 Switch(config)# ip msdp sa-filter in switch.cisco.com
37-15
Configuring MSDP
Purpose Enter global configuration mode. Configure an MSDP mesh group, and specify the MSDP peer belonging to that mesh group. By default, the MSDP peers do not belong to a mesh group.
For name, enter the name of the mesh group. For ip-address | name, enter the IP address or name of the MSDP peer to be a member of the mesh group.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file. Repeat this procedure on each MSDP peer in the group. To remove an MSDP peer from a mesh group, use the no ip msdp mesh-group name {ip-address | name} global configuration command.
37-16
78-16180-02
Chapter 37
Beginning in privileged EXEC mode, follow these steps to shut down a peer. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Administratively shut down the specified MSDP peer without losing configuration information. For peer-name | peer address, enter the IP address or name of the MSDP peer to shut down.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To bring the peer back up, use the no ip msdp shutdown {peer-name | peer address} global configuration command. The TCP connection is reestablished
Note
We do not recommend using the ip msdp border sa-address global configuration command. It is better to configure the border router in the sparse-mode domain to proxy-register sources in the dense-mode domain to the RP of the sparse-mode domain and have the sparse-mode domain use standard MSDP procedures to advertise these sources. Beginning in privileged EXEC mode, follow these steps to configure the border router to send SA messages for sources active in the dense-mode region to the MSDP peers. This procedure is optional.
Command
Step 1 Step 2
Purpose Enter global configuration mode. Configure the switch on the border between a dense-mode and sparse-mode region to send SA messages about active sources in the dense-mode region. For interface-id, specify the interface from which the IP address is derived and used as the RP address in SA messages. The IP address of the interface is used as the Originator-ID, which is the RP field in the SA message.
Step 3
Configure which (S,G) entries from the multicast routing table are advertised in SA messages. For more information, see the Redistributing Sources section on page 37-9. Return to privileged EXEC mode.
Step 4
37-17
Configuring MSDP
Command
Step 5 Step 6
Purpose Verify your entries. (Optional) Save your entries in the configuration file.
Note that the ip msdp originator-id global configuration command also identifies an interface to be used as the RP address. If both the ip msdp border sa-address and the ip msdp originator-id global configuration commands are configured, the address derived from the ip msdp originator-id command specifies the RP address. To return to the default setting (active sources in the dense-mode region do not participate in MSDP), use the no ip msdp border sa-address interface-id global configuration command.
If you configure a logical RP on multiple switches in an MSDP mesh group. If you have a switch that borders a PIM sparse-mode domain and a dense-mode domain. If a switch borders a dense-mode domain for a site, and sparse-mode is being used externally, you might want dense-mode sources to be known to the outside world. Because this switch is not an RP, it would not have an RP address to use in an SA message. Therefore, this command provides the RP address by specifying the address of the interface.
Beginning in privileged EXEC mode, follow these steps to allow an MSDP speaker that originates an SA message to use the IP address on the interface as the RP address in the SA message. This procedure is optional. Command
Step 1 Step 2
Purpose Enter global configuration mode. Configures the RP address in SA messages to be the address of the originating device interface. For interface-id, specify the interface on the local switch. Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
If both the ip msdp border sa-address and the ip msdp originator-id global configuration commands are configured, the address derived from the ip msdp originator-id command specifies the address of the RP. To prevent the RP address from being derived in this way, use the no ip msdp originator-id interface-id global configuration command.
37-18
78-16180-02
Chapter 37
Command debug ip msdp [peer-address | name] [detail] [routes] debug ip msdp resets show ip msdp count [autonomous-system-number ]
Purpose Debugs an MSDP activity. Debugs MSDP peer reset reasons. Displays the number of sources and groups originated in SA messages from each autonomous system. The ip msdp cache-sa-state command must be configured for this command to produce any output. Displays detailed information about an MSDP peer.
show ip msdp sa-cache [group-address | source-address | Displays (S,G) state learned from MSDP peers. group-name | source-name] [autonomous-system-number] show ip msdp summary Displays MSDP peer status and SA message counts.
To clear MSDP connections, statistics, or SA cache entries, use the privileged EXEC commands in Table 37-2:
Table 37-2 Commands for Clearing MSDP Connections, Statistics, or SA Cache Entries
Command clear ip msdp peer peer-address | name clear ip msdp statistics [peer-address | name] clear ip msdp sa-cache [group-address | name]
Purpose Clears the TCP connection to the specified MSDP peer, resetting all MSDP message counters. Clears statistics counters for one or all the MSDP peers without resetting the sessions. Clears the SA cache entries for all entries, all sources for a specific group, or all entries for a specific source/group pair.
37-19
Configuring MSDP
37-20
78-16180-02
C H A P T E R
38
Note
For complete syntax and usage information for the commands used in this chapter, refer to the Cisco IOS Bridging and IBM Networking Command Reference, Volume 1 of 2, Release 12.2. This chapter consists of these sections:
Understanding Fallback Bridging, page 38-1 Configuring Fallback Bridging, page 38-3 Monitoring and Maintaining Fallback Bridging, page 38-11
Fallback Bridging Overview, page 38-1 Fallback Bridging and Switch Stacks, page 38-3
38-1
acts like a port on a router, but it is not connected to a router. A routed port is not associated with a particular VLAN, does not support VLAN subinterfaces, but behaves like a normal routed port. For more information about SVIs and routed ports, see Chapter 11, Configuring Interface Characteristics. A bridge group is an internal organization of network interfaces on a switch. You cannot use bridge groups to identify traffic switched within the bridge group outside the switch on which they are defined. Bridge groups on the switch function as distinct bridges; that is, bridged traffic and bridge protocol data units (BPDUs) are not exchanged between different bridge groups on a switch. Fallback bridging does not allow the spanning trees from the VLANs being bridged to collapse. Each VLAN has its own spanning-tree instance and a separate spanning tree, called the VLAN-bridge spanning tree, which runs on top of the bridge group to prevent loops. The switch creates a VLAN-bridge spanning-tree instance when a bridge group is created. The switch runs the bridge group and treats the SVIs and routed ports in the bridge group as its spanning-tree ports. These are the reasons for placing network interfaces into a bridge group:
To bridge all nonrouted traffic among the network interfaces making up the bridge group. If the packet destination address is in the bridge table, the packet is forwarded on a single interface in the bridge group. If the packet destination address is not in the bridge table, the packet is flooded on all forwarding interfaces in the bridge group. A source MAC address is learned on a bridge group only when the address is learned on a VLAN (the reverse is not true). Any address that is learned on a stack member is learned by all switches in the stack. To participate in the spanning-tree algorithm by receiving, and in some cases sending, BPDUs on the LANs to which they are attached. A separate spanning-tree process runs for each configured bridge group. Each bridge group participates in a separate spanning-tree instance. A bridge group establishes a spanning-tree instance based on the BPDUs it receives on only its member interfaces. If the bridge STP BPDU is received on a port whose VLAN does not belong to a bridge group, the BPDU is flooded on all the forwarding ports of the VLAN.
Figure 38-1 shows a fallback bridging network example. The switch has two ports configured as SVIs with different assigned IP addresses and attached to two different VLANs. Another port is configured as a routed port with its own IP address. If all three of these ports are assigned to the same bridge group, non-IP protocol frames can be forwarded among the end stations connected to the switch even though they are on different networks and in different VLANs. IP addresses do not need to be assigned to routed ports or SVIs for fallback bridging to work.
Figure 38-1 Fallback Bridging Network Example
Layer 3 switch
172.20.128.1
SVI 1
SVI 2
172.20.129.1
Host A
Host B
VLAN 20
VLAN 30
38-2
101240
78-16180-02
Chapter 38
Note
If a stack master running the EMI fails and if the newly elected stack master is running the SMI, the switch stack loses its fallback bridging capability. If stacks merge or if a switch is added to the stack, any new VLANs that are part of a bridge group and become active are included in the VLAN-bridge STP. When a stack member fails, the addresses learned from this member are deleted from the bridge group MAC address table. For more information about switch stacks, see Chapter 5, Managing Switch Stacks.
Default Fallback Bridging Configuration, page 38-4 Fallback Bridging Configuration Guidelines, page 38-4 Creating a Bridge Group, page 38-4 (required) Adjusting Spanning-Tree Parameters, page 38-6 (optional)
38-3
Feature Bridge groups Switch forwards frames for stations that it has dynamically learned Spanning tree parameters:
Default Setting None are defined or assigned to a port. No VLAN-bridge STP is defined. Enabled.
32768. 128. 10 Mbps: 100. 100 Mbps: 19. 1000 Mbps: 4. 2 seconds. 20 seconds. 30 seconds.
Note
The protected port feature is not compatible with fallback bridging. When fallback bridging is enabled, it is possible for packets to be forwarded from one protected port on a switch to another protected port on the same switch if the ports are in different VLANs.
38-4
78-16180-02
Chapter 38
Beginning in privileged EXEC mode, follow these steps to create a bridge group and to assign an interface to it. This procedure is required. Command
Step 1 Step 2
Purpose Enter global configuration mode. Assign a bridge group number, and specify the VLAN-bridge spanning-tree protocol to run in the bridge group. The ibm and dec keywords are not supported. For bridge-group, specify the bridge group number. The range is 1 to 255. You can create up to 32 bridge groups. Frames are bridged only among interfaces in the same group.
Step 3
interface interface-id
Specify the interface on which you want to assign the bridge group, and enter interface configuration mode. The specified interface must be one of these:
A routed port: a physical port that you have configured as a Layer 3 port by entering the no switchport interface configuration command. An SVI: a VLAN interface that you created by using the interface vlan vlan-id global configuration command. You can assign an IP address to the routed port or to the SVI, but it is not required.
Note Step 4
bridge-group bridge-group
Assign the interface to the bridge group created in Step 2. By default, the interface is not assigned to any bridge group. An interface can be assigned to only one bridge group.
Return to privileged EXEC mode. Verify your entries. (Optional) Save your entries in the configuration file.
To remove a bridge group, use the no bridge bridge-group global configuration command. The no bridge bridge-group command automatically removes all SVIs and routes ports from that bridge group. To remove an interface from a bridge group and to remove the bridge group, use the no bridge-group bridge-group interface configuration command. This example shows how to create bridge group 10, to specify that the VLAN-bridge STP runs in the bridge group, to define a port as a routed port, and to assign the port to the bridge group:
Switch(config)# bridge 10 protocol vlan-bridge Switch(config)# interface gigabitethernet3/0/1 Switch(config-if)# no switchport Switch(config-if)# no shutdown Switch(config-if)# bridge-group 10
38-5
This example shows how to create bridge group 10 and to specify that the VLAN-bridge STP runs in the bridge group. It defines a port as an SVI and assigns this port to VLAN 2 and to the bridge group:
Switch(config)# bridge 10 protocol vlan-bridge Switch(config)# vlan 2 Switch(config-vlan)# exit Switch(config)# interface vlan 2 Switch(config-if)# bridge-group 10 Switch(config-if)# no shutdown Switch(config-if)# exit Switch(config)# interface gigabitethernet2/0/2 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 2 Switch(config-if)# no shutdown
Changing the VLAN-Bridge Spanning-Tree Priority, page 38-7 (optional) Changing the Interface Priority, page 38-7 (optional) Assigning a Path Cost, page 38-8 (optional) Adjusting BPDU Intervals, page 38-9 (optional) Disabling the Spanning Tree on an Interface, page 38-11 (optional)
Note
Only network administrators with a good understanding of how switches and STP function should make adjustments to spanning-tree parameters. Poorly planned adjustments can have a negative impact on performance. A good source on switching is the IEEE 802.1D specification. For more information, refer to the References and Recommended Reading appendix in the Cisco IOS Configuration Fundamentals Command Reference.
38-6
78-16180-02
Chapter 38
Purpose Enter global configuration mode. Change the VLAN-bridge spanning-tree priority of the switch.
For bridge-group , specify the bridge group number. The range is 1 to 255. For number, enter a number from 0 to 65535. The default is 32768. The lower the number, the more likely the switch will be chosen as the root.
Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default setting, use the no bridge bridge-group priority global configuration command. To change the priority on a port, use the bridge-group priority interface configuration command (described in the next section). This example shows how to set the switch priority to 100 for bridge group 10:
Switch(config)# bridge 10 priority 100
Purpose Enter global configuration mode. Specify the interface to set the priority, and enter interface configuration mode. Change the priority of a port.
For bridge-group , specify the bridge group number. The range is 1 to 255. For number, enter a number from 0 to 255 in increments of 4. The lower the number, the more likely that the port on the switch will be chosen as the root. The default is 128.
Step 4
end
38-7
Command
Step 5 Step 6
Purpose Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default setting, use the no bridge-group bridge-group priority interface configuration command. This example shows how to change the priority to 20 on a port in bridge group 10:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# bridge-group 10 priority 20
Purpose Enter global configuration mode. Specify the port to set the path cost, and enter interface configuration mode. Assign the path cost of a port.
For bridge-group , specify the bridge group number. The range is 1 to 255. For cost, enter a number from 0 to 65535. The higher the value, the higher the cost.
For 10 Mbps, the default path cost is 100. For 100 Mbps, the default path cost is 19. For 1000 Mbps, the default path cost is 4.
Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default path cost, use the no bridge-group bridge-group path-cost interface configuration command. This example shows how to change the path cost to 20 on a port in bridge group 10:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# bridge-group 10 path-cost 20
38-8
78-16180-02
Chapter 38
Adjusting the Interval between Hello BPDUs, page 38-9 (optional) Changing the Forward-Delay Interval, page 38-10 (optional) Changing the Maximum-Idle Interval, page 38-10 (optional)
Note
Each switch in a spanning tree adopts the interval between hello BPDUs, the forward delay interval, and the maximum idle interval parameters of the root switch, regardless of what its individual configuration might be.
Purpose Enter global configuration mode. Specify the interval between hello BPDUs.
For bridge-group , specify the bridge group number. The range is 1 to 255. For seconds, enter a number from 1 to 10. The default is 2.
Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default setting, use the no bridge bridge-group hello-time global configuration command. This example shows how to change the hello interval to 5 seconds in bridge group 10:
Switch(config)# bridge 10 hello-time 5
38-9
For bridge-group , specify the bridge group number. The range is 1 to 255. For seconds, enter a number from 4 to 200. The default is 20.
Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default setting, use the no bridge bridge-group forward-time global configuration command. This example shows how to change the forward-delay interval to 10 seconds in bridge group 10:
Switch(config)# bridge 10 forward-time 10
Purpose Enter global configuration mode. Specify the interval that the switch waits to hear BPDUs from the root switch.
For bridge-group , specify the bridge group number. The range is 1 to 255. For seconds, enter a number from 6 to 200. The default is 30.
Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
To return to the default setting, use the no bridge bridge-group max-age global configuration command. This example shows how to change the maximum-idle interval to 30 seconds in bridge group 10:
Switch(config)# bridge 10 max-age 30
38-10
78-16180-02
Chapter 38
Purpose Enter global configuration mode. Specify the port, and enter interface configuration mode. Disable spanning tree on the port. For bridge-group, specify the bridge group number. The range is 1 to 255. Return to privileged EXEC mode. Verify your entry. (Optional) Save your entry in the configuration file.
configure terminal interface interface-id bridge-group bridge-group spanning-disabled end show running-config copy running-config startup-config
To re-enable spanning tree on the port, use the no bridge-group bridge-group spanning-disabled interface configuration command. This example shows how to disable spanning tree on a port in bridge group 10:
Switch(config)# interface gigabitethernet2/0/1 Switch(config-if)# bridge group 10 spanning-disabled
Purpose Removes any learned entries from the forwarding database. Displays details about the bridge group.
show bridge [bridge-group] [interface-id | Displays MAC addresses learned in the bridge group. mac-address | verbose] To display the bridge-group MAC address table on a stack member, start a session from the stack master to the stack member by using the session stack-member-number global configuration command. Enter the show bridge [bridge-group] [interface-id | mac-address | verbose] privileged EXEC command at the stack member prompt. For information about the fields in these displays, refer to the Cisco IOS Bridging and IBM Networking Command Reference, Volume 1 of 2, Release 12.2.
38-11
38-12
78-16180-02
C H A P T E R
39
Troubleshooting
This chapter describes how to identify and resolve software problems related to the Cisco IOS software on the Catalyst 3750 switch. Depending on the nature of the problem, you can use the command-line interface (CLI) or the Cluster Management Suite (CMS) to identify and solve problems. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack. Additional troubleshooting information, such as LED descriptions, is provided in the hardware installation guide.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the command reference for this release and the Cisco IOS Command Summary, Release 12.2. This chapter consists of these sections:
Recovering from Corrupted Software By Using the Xmodem Protocol, page 39-2 Recovering from a Lost or Forgotten Password, page 39-4 Preventing Switch Stack Problems, page 39-8 Recovering from a Command Switch Failure, page 39-9 Recovering from Lost Cluster Member Connectivity, page 39-12
Note
Recovery procedures require that you have physical access to the switch.
Preventing Autonegotiation Mismatches, page 39-13 Troubleshooting Power over Ethernet Switch Ports, page 39-13 SFP Module Security and Identification, page 39-13 Monitoring SFP Module Status, page 39-14 Using Ping, page 39-14 Using Layer 2 Traceroute, page 39-16 Using IP Traceroute, page 39-17 Using TDR, page 39-19 Using Debug Commands, page 39-21 Using the show platform forward Command, page 39-23 Using the crashinfo File, page 39-25
39-1
Troubleshooting
From your PC, download the software image tar file (image_filename.tar) from Cisco.com. The Cisco IOS image is stored as a bin file in a directory in the tar file. For information about locating the software image files on Cisco.com, refer to the release notes.
Step 2
If you are using Windows, use a zip program that is capable of reading a tar file. Use the zip program to navigate to and extract the bin file. If you are using UNIX, follow these steps:
1.
Display the contents of the tar file by using the tar -tvf <image_filename.tar> UNIX command.
switch% tar -tvf image_filename.tar drwxr-xr-x 9658/25 0 Apr 21 13:20 2003 c3750-i5-mz.121.11-AX/ drwxr-xr-x 9658/25 0 Apr 18 18:31 2003 c3750-i5-mz.121.11-AX/html/ -rw-r--r-- 9658/25 4005 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/homepage.htm -rw-r--r-- 9658/25 1392 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/not_supported.html -rw-r--r-- 9658/25 9448 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/common.js -rw-r--r-- 9658/25 22152 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/cms_splash.gif -rw-r--r-- 9658/25 1211 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/cms_13.html -rw-r--r-- 9658/25 2823 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/cluster.html -rw-r--r-- 9658/25 4195 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/Redirect.jar -rw-r--r-- 9658/25 14984 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/mono_disc.sgz -rw-r--r-- 9658/25 1329516 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/CMS.sgz -rw-r--r-- 9658/25 140105 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/images.sgz -rw-r--r-- 9658/25 213848 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/help.sgz -rw-r--r-- 9658/25 135599 Apr 18 15:56 2003 c3750-i5-mz.121.11-AX/html/CiscoChartPanel.sgz -rwxr-xr-x 9658/25 58860 Apr 18 18:31 2003 c3750-i5-mz.121.11-AX/html/cms_boot.jar -rw-r--r-- 9658/25 3970586 Apr 21 12:00 2003 c3750-i5-mz.121.11-AX/c3750-i5-mz.121.11-AX.bin -rw-r--r-- 9658/25 391 Apr 21 13:20 2003 c3750-i5-mz.121.11-AX/info -rw-r--r-- 9658/25 98 Apr 18 16:46 2003 info
39-2
78-16180-02
Chapter 39
2.
Locate the bin file and extract it by using the tar -xvf <image_filename.tar > <image_filename.bin> UNIX command.
switch% tar -xvf image_filename.tar image_filename.bin x c3750-i5-mz.121.11-AX/c3750-i5-mz.121.11-AX.bin, 3970586 bytes, 7756 tape blocks
3.
Verify that the bin file was extracted by using the ls -l <image_filename.bin> UNIX command.
switch% ls -l image_filename.bin -rw-r--r-1 boba 3970586 Apr 21 12:00 c3750-i5-mz.121.11-AX/c3750-i5-mz.121.11-AX.bin
Connect your PC with terminal-emulation software supporting the Xmodem Protocol to the switch console port. Set the line speed on the emulation software to 9600 baud. Unplug the switch power cord. Press the Mode button, and at the same time, reconnect the power cord to the switch. You can release the Mode button a second or two after the LED above port 1 goes off. Several lines of information about the software appear along with instructions:
The system has been interrupted prior to initializing the flash file system. The following commands will initialize the flash file system, and finish loading the operating system software# flash_init load_helper boot
Step 7
Step 8 Step 9
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. Load any helper files:
switch: load_helper
Step 10
Step 11 Step 12
After the Xmodem request appears, use the appropriate command on the terminal-emulation software to start the transfer and to copy the software image into flash memory. Boot the newly downloaded Cisco IOS image.
switch:boot flash:image_filename.bin
Use the archive download-sw privileged EXEC command to download the software image to the switch or to the switch stack. Use the reload privileged EXEC command to restart the switch and to verify that the new software image is operating properly. Delete the flash:image_filename.bin file from the switch.
39-3
Troubleshooting
Note
On these switches, a system administrator can disable some of the functionality of this 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 when password recovery has been disabled, a status message shows this during the recovery process. This section describes how to recover a forgotten or lost switch password. It provides two solutions:
Procedure with Password Recovery Enabled, page 39-5 Procedure with Password Recovery Disabled, page 39-6
You enable or disable password recovery by using the service password-recovery global configuration command. When you enter the service password-recovery or no service password-recovery command on the stack master, it is propagated throughout the stack and applied to all switches in the stack. Follow the steps in this procedure if you have forgotten or lost the switch password.
Step 1 Step 2 Step 3 Step 4
Connect a terminal or PC with terminal-emulation software to the switch console port. If you are recovering the password to a switch stack, connect to the console port of the stack master. Set the line speed on the emulation software to 9600 baud. Power off the standalone switch or the entire switch stack. Press the Mode button, and at the same time, reconnect the power cord to the standalone switch or the stack master. You can release the Mode button a second or two after the LED above port 1 turns off. Several lines of information about the software appear with instructions, informing you if the password recovery procedure has been disabled or not.
proceed to the Procedure with Password Recovery Enabled section on page 39-5, and follow the steps.
proceed to the Procedure with Password Recovery Disabled section on page 39-6, and follow the steps.
Step 5
After recovering the password, reload the standalone switch or the stack master:
Switch> reload slot <stack-master-member-number> Proceed with reload? [confirm] y
Step 6
39-4
78-16180-02
Chapter 39
Step 1
Step 2 Step 3
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. Load any helper files:
switch: load_helper
Step 4
Step 5
Rename the configuration file to config.text.old. This file contains the password definition.
switch: rename flash:config.text flash:config.text.old
Step 6
You are prompted to start the setup program. Enter N at the prompt:
Continue with the configuration dialog? [yes/no]: N
Step 7
Step 8
Note
Before continuing to Step 9, power on any connected stack members and wait until they have completely initialized.
39-5
Troubleshooting
Step 9
Press Return in response to the confirmation prompts. The configuration file is now reloaded, and you can change the password.
Step 10
Step 11
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
Step 13
Note
This procedure is likely to leave your switch virtual 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 14
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.
39-6
78-16180-02
Chapter 39
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.
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
Step 2
Step 3
Step 4
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
Step 5
Step 6
Step 7
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
Note
Before continuing to Step 9, power on any connected stack members and wait until they have completely initialized.
39-7
Troubleshooting
Step 9
This procedure is likely to leave your switch virtual 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.
Make sure the switches that you add to or remove from the switch stack are powered off. For all powering considerations in switch stacks, refer to the Switch Installation chapter in the hardware installation guide. After adding or removing stack members, make sure that the switch stack is operating at full bandwidth (32 Gbps). Press the Mode button on a stack member until the Stack mode LED is on. The last two port LEDs on the switch should be green. Depending on the switch model, the last two ports are either 10/100/1000 ports or small form-factor pluggable (SFP) module ports. If one or both of the last two port LEDs are not green, the stack is not operating at full bandwidth. We recommend using only one CLI session when managing the switch stack. Be careful when using multiple CLI sessions to the stack master. Commands that you enter in one session are not displayed in the other sessions. Therefore, it is possible that you might not be able to identify the session from which you entered a command. Manually assigning stack member numbers according to the placement of the switches in the stack can make it easier to remotely troubleshoot the switch stack. However, you need to remember that the switches have manually assigned numbers if you add, remove, or rearrange switches later. Use the switch current-stack-member-number renumber new-stack-member-number global configuration command to manually assign a stack member number. For more information about stack member numbers, see the Stack Member Numbers section on page 5-6.
If you replace a stack member with an identical model, the new switch functions with the exact same configuration as the replaced switch. This is also assuming the new switch is using the same member number as the replaced switch. Removing powered-on stack members causes the switch stack to divide (partition) into two or more switch stacks, each with the same configuration. If you want the switch stacks to remain separate, change the IP address or addresses of the newly created switch stacks. To recover from a partitioned switch stack:
1. 2. 3.
Power off the newly created switch stacks. Reconnect them to the original switch stack through their StackWise ports. Power on the switches.
39-8
78-16180-02
Chapter 39
For the commands that you can use to monitor the switch stack and its members, see the Displaying Switch Stack Information section on page 5-20.
Note
HSRP is the preferred method for supplying redundancy to a cluster. 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 provide 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, page 39-9 Replacing a Failed Command Switch with Another Switch, page 39-11
These recovery procedures require that you have physical access to the switch. For information on command-capable switches, refer to the release notes.
Disconnect the command switch from the member switches, and physically remove it from the cluster. Insert the member switch in place of the failed command switch, and duplicate its connections to the cluster members. 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, refer to the switch hardware installation guide.
Step 4
Step 5
39-9
Troubleshooting
Step 6
Step 7
Step 8
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 '[]'. Basic management setup configures only enough connectivity for management of the system, extended setup will ask you to configure each interface on the system Would you like to enter basic management setup? [yes/no]:
Step 10
Enter Y at the first prompt. The prompts in the setup program vary depending on the member switch you selected to be the command switch:
Continue with configuration dialog? [yes/no]: y
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.
When prompted for the enable secret and enable passwords, enter the passwords of the failed command switch again. When prompted, make sure to enable the switch as the cluster command switch, and press Return . 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 Step 16
After the initial configuration displays, verify that the addresses are correct. 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.
39-10
78-16180-02
Chapter 39
Step 17 Step 18
Start your browser, and enter the IP address of the new command switch. From the Cluster menu, select Add to Cluster to display a list of candidate switches to add to the cluster.
Insert the new switch in place of the failed command switch, and duplicate its connections to the cluster members. 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, refer to the switch hardware installation guide.
Step 3
Step 4 Step 5
Enter the password of the failed command switch. 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 '[]'. Basic management setup configures only enough connectivity for management of the system, extended setup will ask you to configure each interface on the system Would you like to enter basic management setup? [yes/no]:
39-11
Troubleshooting
Step 6
Enter Y at the first prompt. The prompts in the setup program vary depending on the switch you selected to be the command switch:
Continue with configuration dialog? [yes/no]: y
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.
When prompted for the enable secret and enable passwords, enter the passwords of the failed command switch again. When prompted, make sure to enable the switch as the cluster command switch, and press Return . When prompted, assign a name to the cluster, and press Return. The cluster name can be 1 to 31 alphanumeric characters, dashes, or underscores. When the initial configuration displays, verify that the addresses are correct. 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. Start your browser, and enter the IP address of the new command switch. From the Cluster menu, select Add to Cluster to display a list of candidate switches to add to the cluster.
Step 11 Step 12
Step 13 Step 14
A member switch (Catalyst 3750, Catalyst 3560, Catalyst 3550, Catalyst 3500 XL, Catalyst 2970, Catalyst 2950, Catalyst 2900 XL, Catalyst 2820, and Catalyst 1900 switch) cannot connect to the command switch through a port that is defined as a network port. Catalyst 3500 XL, Catalyst 2900 XL, Catalyst 2820, and Catalyst 1900 member switches must connect to the command switch through a port that belongs to the same management VLAN. A member switch (Catalyst 3750, Catalyst 3560, Catalyst 3550, Catalyst 2970, Catalyst 2950, Catalyst 3500 XL, Catalyst 2900 XL, Catalyst 2820, and Catalyst 1900 switch) connected to the command switch through a secured port can lose connectivity if the port is disabled because of a security violation.
39-12
78-16180-02
Chapter 39
A manually set speed or duplex parameter is different from the manually set speed or duplex parameter on the connected port. A port is set to autonegotiate, and the connected port is set to full duplex with no autonegotiation.
To maximize switch performance and ensure a link, follow one of these guidelines when changing the settings for duplex and speed:
Let both ports autonegotiate both speed and duplex. Manually set the speed and duplex parameters for the ports on both ends of the connection.
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.
show controllers power inline privileged EXEC command show power inline privileged EXEC command debug ilpower privileged EXEC command
39-13
Troubleshooting
Note
The security error message references the GBIC_SECURITY facility. The Catalyst 3750 switch supports SFP modules and does not support GBIC modules. Although the error message text refers to GBIC interfaces and modules, the security messages actually refer to the SFP modules and module interfaces. For more information about error messages, refer to the system message guide for this release. 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, refer to the command reference for this release. If the module is identified as a Cisco SFP module, but the system is unable to read vendor-data information to verify its accuracy, an SFP module error message is generated. In this case, you should remove and re-insert the SFP module. If it continues to fail, the SFP module might be defective.
Using Ping
This section consists of this information:
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 responseThe normal response ( hostname is alive) occurs in 1 to 10 seconds, depending on network traffic. Destination does not respondIf the host does not respond, a no-answer message is returned. Unknown hostIf the host does not exist, an unknown host message is returned. Destination unreachableIf the default gateway cannot reach the specified network, a destination-unreachable message is returned. Network or host unreachableIf there is no entry in the route table for the host or network, a network or host unreachable message is returned.
39-14
78-16180-02
Chapter 39
Executing Ping
If you attempt to ping a host in a different IP subnetwork, you must define a static route to the network or have IP routing configured to route between those subnets. For more information, see Chapter 34, Configuring IP Unicast Routing. IP routing is disabled by default on all switches. If you need to enable or configure IP routing, see Chapter 34, Configuring IP Unicast Routing. Beginning in privileged EXEC mode, use this command to ping another device on the network from the switch: Command ping ip host | address Purpose 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. This example shows how to ping an IP host:
Switch# ping 172.20.52.3 Type escape sequence to abort. Sending 5, 100-byte ICMP Echoes to 172.20.52.3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms Switch#
Character ! . U C I ? &
Description Each exclamation point means receipt of a reply. Each period means the network server timed out while waiting for a reply. A destination unreachable error PDU was received. A congestion experienced packet was received. User interrupted test. Unknown packet type. Packet lifetime exceeded.
To end a ping session, enter the escape sequence (Ctrl-^ X by default). Simultaneously press and release the Ctrl, Shift, and 6 keys and then press the X key.
39-15
Troubleshooting
Understanding Layer 2 Traceroute, page 39-16 Usage Guidelines, page 39-16 Displaying the Physical Path, page 39-17
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 function properly, do not disable CDP. For a list of switches that support Layer 2 traceroute, see the Usage Guidelines section on page 39-16. If any devices in the physical path are transparent to CDP, the switch cannot identify the path through these devices. For more information about enabling CDP, see Chapter 25, 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.
39-16
78-16180-02
Chapter 39
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 the 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
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.
tracetroute mac [interface interface-id] {source-mac-address} [interface interface-id] {destination-mac-address} [vlan vlan-id] [detail] tracetroute mac ip {source-ip-address | source-hostname}{destination-ip-address | destination-hostname} [detail]
For more information, refer to the command reference for this release.
Using IP Traceroute
This section consists of this information:
Understanding IP Traceroute
You can use IP traceroute to identify the path that packets take through the network on a hop-by-hop basis. The command output displays all network layer (Layer 3) devices, such as routers, that the traffic passes through on the way to the destination. Your switches can participate as the source or destination of the traceroute privileged EXEC command and might or might not appear as a hop in the traceroute command output. If the switch is the destination of the traceroute, it is displayed as the final destination in the traceroute output. Intermediate switches do not show up in the traceroute output if they are only bridging the packet from one port to another within the same VLAN. However, if the intermediate switch is a multilayer switch that is routing a particular packet, this switch shows up as a hop in the traceroute output. The traceroute privileged EXEC command uses the Time To Live (TTL) field in the IP header to cause routers and servers to generate specific return messages. Traceroute starts by sending a User Datagram Protocol (UDP) datagram to the destination host with the TTL field set to 1. If a router finds a TTL value
39-17
Troubleshooting
of 1 or 0, it drops the datagram and sends an Internet Control Message Protocol (ICMP) time-to-live-exceeded message to the sender. Traceroute finds the address of the first hop by examining the source address field of the ICMP time-to-live-exceeded message. To identify the next hop, traceroute sends a UDP packet with a TTL value of 2. The first router decrements the TTL field by 1 and sends the datagram to the next router. The second router sees a TTL value of 1, discards the datagram, and returns the time-to-live-exceeded message to the source. This process continues until the TTL is incremented to a value large enough for the datagram to reach the destination host (or until the maximum TTL is reached). To learn when a datagram reaches its destination, traceroute sets the UDP destination port number in the datagram to a very large value that the destination host is unlikely to be using. When a host receives a datagram destined to itself containing a destination port number that is unused locally, it sends an ICMP port-unreachable error to the source. Because all errors except port-unreachable errors come from intermediate hops, the receipt of a port-unreachable error means that this message was sent by the destination port.
Executing IP Traceroute
Beginning in privileged EXEC mode, follow this step to trace that the path packets take through the network: Command traceroute ip host Purpose Trace the path that packets take through the network.
Note
Though other protocol keywords are available with the traceroute privileged EXEC command, they are not supported in this release. This example shows how to perform a traceroute to an IP host:
Switch# traceroute ip 171.9.15.10 Type escape sequence to abort. Tracing the route to 171.69.115.10 1 172.2.52.1 0 msec 0 msec 4 msec 2 172.2.1.203 12 msec 8 msec 0 msec 3 171.9.16.6 4 msec 0 msec 0 msec 4 171.9.4.5 0 msec 4 msec 0 msec 5 171.9.121.34 0 msec 4 msec 4 msec 6 171.9.15.9 120 msec 132 msec 128 msec 7 171.9.15.10 132 msec 128 msec 128 msec Switch#
The display shows the hop count, IP address of the router, and the round-trip time in milliseconds for each of the three probes that are sent.
39-18
78-16180-02
Chapter 39
Character * ? A H N P Q U
Description The probe timed out. Unknown packet type. Administratively unreachable. Usually, this output means that an access list is blocking traffic. Host unreachable. Network unreachable. Protocol unreachable. Source quench. Port unreachable.
To end a trace in progress, enter the escape sequence (Ctrl-^ X by default). Simultaneously press and release the Ctrl, Shift, and 6 keys and then press the X key.
Using TDR
This section consists of this information:
Understanding TDR, page 39-19 Running TDR and Displaying the Results, page 39-20
Understanding TDR
In Cisco IOS Release 12.1(19)EA1 or later, you can use the Time Domain Reflector (TDR) feature to diagnose and resolve cabling problems. When running TDR, a local device sends a signal through a cable and compares the reflected signal to the initial signal. TDR is supported only on copper Ethernet 10/100/1000 ports. It is not supported on 10/100 ports or small form-factor pluggable (SFP) module ports. TDR can detect these cabling problems:
Open, broken, or cut twisted-pair wiresThe wires are not connected to the wires from the remote device. Shorted twisted-pair wiresThe wires are touching each other or the wires from the remote device. For example, a shorted twisted pair can occur if one wire of the twisted pair is soldered to the other wire.
If one of the twisted-pair wires is open, TDR can find the length at which the wire is open. Use TDR to diagnose and resolve cabling problems in these situations:
Replacing a switch Setting up a wiring closet Troubleshooting a connection between two devices when a link cannot be established or when it is not operating properly
39-19
Troubleshooting
If you enter the test cable-diagnostics tdr interface interface-id command on an interface that has a link status of up and a speed of 10 or 100 Mbps, these messages appear:
Switch# test cable-diagnostics tdr interface gigabitethernet1/0/2 TDR test on Gi1/0/2 will affect link state and traffic TDR test started on interface Gi1/0/2 A TDR test can take a few seconds to run on an interface Use 'show cable-diagnostics tdr' to read the TDR results.
To display the results, enter the show cable-diagnostics tdr interface interface-id privileged EXEC command:
Switch# show cable-diagnostics tdr interface gigabitethernet1/0/2 TDR test last run on: March 01 20:15:40 Interface Speed Local pair Pair length Remote pair Pair status --------- ----- ---------- ------------------ ----------- -------------------Gi1/0/2 auto Pair A 0 +/- 2 meters N/A Open Pair B 0 +/- 2 meters N/A Open Pair C 0 +/- 2 meters N/A Open Pair D 0 +/- 2 meters N/A Open
Table 39-3 lists the descriptions of the fields in the show cable-diagnostics tdr command output.
Table 39-3 Fields Descriptions for the show cable-diagnostics tdr Command Output
Description Interface on which TDR was run. Current speed of the connection. Name of the pair of wires that TDR is testing on the local interface.
Length of the cable when it is properly connected, the link is up, and the interface speed is 1000 Mbps. Location on the cable where the problem is, with respect to your switch. TDR can find the location in only one of these cases:
The cable is open. The cable has a short.
39-20
78-16180-02
Chapter 39
Table 39-3 Fields Descriptions for the show cable-diagnostics tdr Command Output (continued)
Description Name of the pair of wires to which the local pair is connected. The switch can learn about the remote pair only when the cable is properly connected and the link is up. Status of the pair of wires on which TDR is running:
NormalThe pair of wires is properly connected. Not completedThe test is running and is not completed. Not supportedThe interface does not support TDR. OpenThe pair of wires is open. ShortedThe pair of wires is shorted.
When TDR is running, this is the output from the show interface interface-id command:
Switch# show interface gigabitethernet1/0/2 gigabitethernet1/0/2 is up, line protocol is up (connected: TDR in Progress)
If you enter the show cable-diagnostics tdr interface interface-id command on an interface on which TDR was not run, this is the output:
Switch# show cable-diagnostics tdr interface gigabitethernet1/0/2 % TDR test was never issued on Gi1/0/2
Enabling Debugging on a Specific Feature, page 39-22 Enabling All-System Diagnostics, page 39-22 Redirecting Debug and Error Message Output, page 39-22
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, refer to the command reference for this release.
39-21
Troubleshooting
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 you want to monitor. Use the show running-config command to check its configuration. Even if the switch is properly configured, it might not generate the type of traffic 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.
Alternately, in privileged EXEC mode, you can enter the undebug form of the command:
Switch# undebug span-session
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.
39-22
78-16180-02
Chapter 39
Possible destinations include the console, virtual terminals, internal buffer, and UNIX hosts running a syslog server. The syslog format is compatible with 4.3 Berkeley Standard Distribution (BSD) UNIX and its derivatives.
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. When stack members generate a system error message, the stack master displays the error message to all stack members. The syslog resides on the stack master.
Note
Make sure to save the syslog to flash memory so that the syslog is not lost if the stack master fails. For more information about system message logging, see Chapter 29, Configuring System Message Logging.
Note
For more syntax and usage information for the show platform forward command, refer to the switch command reference for this release. Most of the information in the output from the command is useful mainly for technical support personnel, who have access to detailed information about the switch application-specific integrated circuits (ASICs). However, packet forwarding information can also be helpful in troubleshooting. This is an example of the output from the show platform forward command on Gigabit Ethernet port 1 in VLAN 5 when the packet entering that port is addressed to unknown MAC addresses. The packet should be flooded to all other ports in VLAN 5.
Switch# show platform forward gigabitethernet1/0/1 vlan 5 1.1.1 2.2.2 ip 13.1.1.1 13.2.2.2 udp 10 20 Global Port Number:24, Asic Number:5 Src Real Vlan Id:5, Mapped Vlan Id:5 Ingress: Lookup Key-Used Index-Hit A-Data InptACL 40_0D020202_0D010101-00_40000014_000A0000 01FFA 03000000 L2Local 80_00050002_00020002-00_00000000_00000000 00C71 0000002B Station Descriptor:02340000, DestIndex:0239, RewriteIndex:F005 ========================================== Egress:Asic 2, switch 1 Output Packets:
39-23
Troubleshooting
-----------------------------------------Packet 1 Lookup Key-Used OutptACL 50_0D020202_0D010101-00_40000014_000A0000 Port Gi1/0/1 Vlan SrcMac 0005 0001.0001.0001 DstMac Cos 0002.0002.0002
-----------------------------------------Packet 2 Lookup Key-Used OutptACL 50_0D020202_0D010101-00_40000014_000A0000 Port Gi1/0/2 Vlan SrcMac 0005 0001.0001.0001 DstMac Cos 0002.0002.0002
-----------------------------------------<output truncated> -----------------------------------------Packet 10 Lookup Key-Used Index-Hit A-Data OutptACL 50_0D020202_0D010101-00_40000014_000A0000 01FFE 03000000 Packet dropped due to failed DEJA_VU Check on Gi1/0/2
This is an example of the output when the packet coming in on Gigabit Ethernet port 1 in VLAN 5 is sent to an address already learned on the VLAN on another port. It should be forwarded from the port on which the address was learned.
Switch# show platform forward gigabitethernet1/0/1 vlan 5 1.1.1 0009.43a8.0145 ip 13.1.1.1 13.2.2.2 udp 10 20 Global Port Number:24, Asic Number:5 Src Real Vlan Id:5, Mapped Vlan Id:5 Ingress: Lookup Key-Used Index-Hit A-Data InptACL 40_0D020202_0D010101-00_40000014_000A0000 01FFA 03000000 L2Local 80_00050009_43A80145-00_00000000_00000000 00086 02010197 Station Descriptor:F0050003, DestIndex:F005, RewriteIndex:0003 ========================================== Egress:Asic 3, switch 1 Output Packets: -----------------------------------------Packet 1 Lookup Key-Used OutptACL 50_0D020202_0D010101-00_40000014_000A0000 Port Gi1/0/2 Vlan SrcMac 0005 0001.0001.0001 DstMac Cos 0009.43A8.0145
This is an example of the output when the packet coming in on Gigabit Ethernet port 1 in VLAN 5 has a destination MAC address set to the router MAC address in VLAN 5 and the destination IP address unknown. Since there is no default route set, the packet should be dropped.
Switch# show platform forward gigabitethernet1/0/1 vlan 5 1.1.1 03.e319.ee44 ip 13.1.1.1 13.2.2.2 udp 10 20 Global Port Number:24, Asic Number:5 Src Real Vlan Id:5, Mapped Vlan Id:5 Ingress: Lookup Key-Used InptACL 40_0D020202_0D010101-00_41000014_000A0000
39-24
78-16180-02
Chapter 39
L3Local 00_00000000_00000000-90_00001400_0D020202 010F0 01880290 L3Scndr 12_0D020202_0D010101-00_40000014_000A0000 034E0 000C001D_00000000 Lookup Used:Secondary Station Descriptor:02260000, DestIndex:0226, RewriteIndex:0000
This is an example of the output when the packet coming in on Gigabit Ethernet port 1 in VLAN 5 has a destination MAC address set to the router MAC address in VLAN 5 and the destination IP address set to an IP address that is in the IP routing table. It should be forwarded as specified in the routing table.
Switch# show platform forward gigabitethernet1/0/1 vlan 5 1.1.1 03.e319.ee44 ip 110.1.5.5 16.1.10.5 Global Port Number:24, Asic Number:5 Src Real Vlan Id:5, Mapped Vlan Id:5 Ingress: Lookup Key-Used Index-Hit A-Data InptACL 40_10010A05_0A010505-00_41000014_000A0000 01FFA 03000000 L3Local 00_00000000_00000000-90_00001400_10010A05 010F0 01880290 L3Scndr 12_10010A05_0A010505-00_40000014_000A0000 01D28 30090001_00000000 Lookup Used:Secondary Station Descriptor:F0070007, DestIndex:F007, RewriteIndex:0007 ========================================== Egress:Asic 3, switch 1 Output Packets: -----------------------------------------Packet 1 Lookup Key-Used OutptACL 50_10010A05_0A010505-00_40000014_000A0000 Port Gi1/0/2 Vlan SrcMac 0007 XXXX.XXXX.0246 DstMac Cos 0009.43A8.0147
39-25
Troubleshooting
You can display the most recent crashinfo file (that is, the file with the highest sequence number at the end of its filename) by entering the show stacks or the show tech-support privileged EXEC command. You also can access the file by using any command that can copy or display files, such as the more or the copy privileged EXEC command.
39-26
78-16180-02
A P P E N D I X
Supported MIBs
This appendix lists the supported management information base (MIBs) for this release on the Catalyst 3750 switch. It contains these sections:
MIB List, page A-1 Using FTP to Access the MIB Files, page A-3
MIB List
BRIDGE-MIB (RFC1493)
Note
The BRIDGE-MIB supports the context of a single VLAN. By default, SNMP messages using the configured community string always provide information for VLAN 1. To obtain the BRIDGE-MIB information for other VLANs, for example VLAN x, use this community string in the SNMP message: configured community string @x.
CISCO-CDP-MIB CISCO-CLUSTER-MIB CISCO-CONFIG-COPY-MIB CISCO-CONFIG-MAN-MIB CISCO-ENTITY-FRU-CONTROL-MIB CISCO-ENVMON-MIB CISCO-FLASH-MIB (Flash memory on all switches is modeled as removable flash memory.) CISCO-FTP-CLIENT-MIB CISCO-HSRP-MIB CISCO-HSRP-EXT-MIB (partial support) CISCO-IGMP-FILTER-MIB CISCO-IMAGE-MIB (Only stack master image details are shown.) CISCO IP-STAT-MIB CISCO-L2L3-INTERFACE-MIB CISCO-LACP-MIB
A-1
Supported MIBs
CISCO-MAC-NOTIFICATION-MIB CISCO-MEMORY-POOL-MIB (Only stack master image details are shown.) CISCO-PAE-MIB CISCO-PAGP-MIB CISCO-PING-MIB CISCO-PROCESS-MIB (Only stack master details are shown.) CISCO-RTTMON-MIB CISCO-STACK-MIB (Partial support: for some objects, only stack master information is supported. ENTITY MIB is a better alternative.) CISCO-STACKMAKER-MIB CISCO-STP-EXTENSIONS-MIB CISCO-SYSLOG-MIB CISCO-TCP-MIB CISCO-UDLDP-MIB CISCO-VLAN-IFTABLE-RELATIONSHIP-MIB CISCO-VLAN-MEMBERSHIP-MIB CISCO-VTP-MIB ENTITY-MIB ETHERLIKE_MIB IEEE8021-PAE-MIB IEEE8023-LACP-MIB IF-MIB (In and out counters for VLANs are not supported.) IGMP-MIB IPMROUTE-MIB OLD-CISCO-CHASSIS-MIB (Partial support; some objects reflect only the stack master.) OLD-CISCO-FLASH-MIB (Supports only the stack master. Use CISCO-FLASH_MIB.) OLD-CISCO-INTERFACES-MIB OLD-CISCO-IP-MIB OLD-CISCO-SYS-MIB OLD-CISCO-TCP-MIB OLD-CISCO-TS-MIB PIM-MIB RFC1213-MIB (Functionality is as per the agent capabilities specified in the CISCO-RFC1213-CAPABILITY.my.) RFC1253-MIB (OSPF-MIB) RMON-MIB RMON2-MIB SNMP-FRAMEWORK-MIB
A-2
78-16180-02
Appendix A
Note
You can also use this URL for a list of supported MIBs for the Catalyst 3750 switch: ftp://ftp.cisco.com/pub/mibs/supportlists/cat3750/cat3750-supportlist.html
You can access other information about MIBs and Cisco products on the Cisco web site: http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
Use FTP to access the server ftp.cisco.com. Log in with the username anonymous. Enter your e-mail username when prompted for the password. At the ftp> prompt, change directories to /pub/mibs/v1 and /pub/mibs/v2. Use the get MIB_filename command to obtain a copy of the MIB file.
A-3
Supported MIBs
A-4
78-16180-02
A P P E N D I X
Working with the Cisco IOS File System, Configuration Files, and Software Images
This appendix describes how to manipulate the Catalyst 3750 flash file system, how to copy configuration files, and how to archive (upload and download) software images to a standalone switch or to a switch stack. Unless otherwise noted, the term switch refers to a standalone switch and to a switch stack.
Note
For complete syntax and usage information for the commands used in this chapter, refer to the switch command reference for this release and the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2 . This appendix consists of these sections:
Working with the Flash File System, page B-1 Working with Configuration Files, page B-8 Working with Software Images, page B-20
Displaying Available File Systems, page B-2 Setting the Default File System, page B-3
B-1
Working with the Cisco IOS File System, Configuration Files, and Software Images
Displaying Information about Files on a File System, page B-3 Creating and Removing Directories, page B-4 Copying Files, page B-5 Deleting Files, page B-5 Creating, Displaying, and Extracting tar Files, page B-6 Displaying the Contents of a File, page B-8
Prefixes rw flash:flash3: rw bs: rw vb: rw nvram: rw tftp: rw null: rw system: ro xmodem: ro ymodem: rw flash5: rw rcp: rw ftp:
Table B-1
Value Amount of memory in the file system in bytes. Amount of free memory in the file system in bytes. Type of file system. flashThe file system is for a flash memory device. nvramThe file system is for a NVRAM device. opaqueThe file system is a locally generated pseudo file system (for example, the system) or a download interface, such as brimux. unknownThe file system is an unknown type.
Flags
B-2
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with the Flash File System
Table B-1
Field Prefixes
Value Alias for file system. flash:Flash file system. nvram:NVRAM. null:Null destination for copies. You can copy a remote file to null to find its size. rcp:Remote Copy Protocol (RCP) network server. system:Contains the system memory, including the running configuration. tftp:TFTP network server. xmodem:Obtain the file from a network machine by using the Xmodem protocol. ymodem:Obtain the file from a network machine by using the Ymodem protocol.
Command dir [/all] [filesystem:][filename] show file systems show file information file-url show file descriptors
Description Display a list of files on a file system. Display more information about each of the files on a file system. Display information about a specific file. Display a list of open file descriptors. File descriptors are the internal representations of open files. You can use this command to see if another user has a file open.
B-3
Working with the Cisco IOS File System, Configuration Files, and Software Images
Purpose Display the directories on the specified file system. For filesystem:, use flash: for the system board flash device. Change to the directory of interest. The command example shows how to change to the directory named new_configs.
Step 2
Step 3
pwd
Purpose Display the directories on the specified file system. For filesystem:, use flash: for the system board flash device. Create a new directory. The command example shows how to create the directory named old_configs. Directory names are case sensitive. Directory names are limited to 45 characters between the slashes (/); the name cannot contain control characters, spaces, deletes, slashes, quotes, semicolons, or colons.
Step 2
Step 3
dir filesystem:
To delete a directory with all its files and subdirectories, use the delete /force /recursive filesystem:/file-url privileged EXEC command. Use the /recursive keyword to delete the named directory and all subdirectories and the files contained in it. Use the /force keyword to suppress the prompting that confirms a deletion of each file in the directory. You are prompted only once at the beginning of this deletion process. Use the /force and /recursive keywords for deleting old software images that were installed by using the archive download-sw command but are no longer needed. For filesystem, use flash: for the system board flash device. For file-url, enter the name of the directory to be deleted. All the files in the directory and the directory are removed.
Caution
When files and directories are deleted, their contents cannot be recovered.
B-4
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with the Flash File System
Copying Files
To copy a file from a source to a destination, use the copy source-url destination-url privileged EXEC command. For the source and destination URLs, you can use running-config and startup-config keyword shortcuts. For example, the copy running-config startup-config command saves the currently running configuration file to the NVRAM section of flash memory to be used as the configuration during system initialization. You can also copy from special file systems ( xmodem:, ymodem:) as the source for the file from a network machine that uses the Xmodem or Ymodem protocol. Network file system URLs include ftp:, rcp:, and tftp: and have these syntaxes:
Local writable file systems include flash:. Some invalid combinations of source and destination exist. Specifically, you cannot copy these combinations:
From a running configuration to a running configuration From a startup configuration to a startup configuration From a device to the same device (for example, the copy flash: flash: command is invalid)
For specific examples of using the copy command with configuration files, see the Working with Configuration Files section on page B-8. To copy software images either by downloading a new version or by uploading the existing one, use the archive download-sw or the archive upload-sw privileged EXEC command. For more information, see the Working with Software Images section on page B-20.
Deleting Files
When you no longer need a file on a flash memory device, you can permanently delete it. To delete a file or directory from a specified flash device, use the delete [/force] [/recursive] [filesystem:]/file-url privileged EXEC command. Use the /recursive keyword for deleting a directory and all subdirectories and the files contained in it. Use the /force keyword to suppress the prompting that confirms a deletion of each file in the directory. You are prompted only once at the beginning of this deletion process. Use the /force and /recursive keywords for deleting old software images that were installed by using the archive download-sw command but are no longer needed. If you omit the filesystem: option, the switch uses the default device specified by the cd command. For file-url, you specify the path (directory) and the name of the file to be deleted. When you attempt to delete any files, the system prompts you to confirm the deletion.
Caution
When files are deleted, their contents cannot be recovered. This example shows how to delete the file myconfig from the default flash memory device:
Switch# delete myconfig
B-5
Working with the Cisco IOS File System, Configuration Files, and Software Images
Note
Instead of using the copy privileged EXEC command or the archive tar privileged EXEC command, we recommend using the archive download-sw and archive upload-sw privileged EXEC commands to download and upload software image files. For switch stacks, the archive download-sw and archive upload-sw privileged EXEC commands can only be used through the stack master. Software images downloaded to the stack master are automatically downloaded to the rest of the stack members. To upgrade a switch with an incompatible software image, use the archive copy-sw privileged EXEC command to copy the software image from an existing stack member to the incompatible switch. That switch automatically reloads and joins the stack as a fully functioning member.
For the local flash file system, the syntax is flash: For the FTP, the syntax is ftp:[[//username[:password]@location]/directory]/tar-filename.tar For the RCP, the syntax is rcp:[[//username@location]/directory]/tar-filename.tar For the TFTP, the syntax is tftp:[[//location]/directory]/tar-filename.tar
The tar-filename.tar is the tar file to be created. For flash:/file-url, specify the location on the local flash file system from which the new tar file is created. You can also specify an optional list of files or directories within the source directory to write to the new tar file. If none are specified, all files and directories at this level are written to the newly created tar file. This example shows how to create a tar file. This command writes the contents of the new-configs directory on the local flash device to a file named saved.tar on the TFTP server at 172.20.10.30:
Switch# archive tar /create tftp:172.20.10.30/saved.tar flash:/new-configs
B-6
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with the Flash File System
For source-url, specify the source URL alias for the local or network file system. These options are supported:
For the local flash file system, the syntax is flash: For the FTP, the syntax is ftp:[[//username[:password]@location]/directory]/tar-filename.tar For the RCP, the syntax is rcp:[[//username@location]/directory]/tar-filename.tar For the TFTP, the syntax is tftp:[[//location]/directory]/tar-filename.tar
The tar-filename.tar is the tar file to display. You can also limit the display of the files by specifying an optional list of files or directories after the tar file; then only those files appear. If none are specified, all files and directories appear. This example shows how to display the contents of a switch tar file that is in flash memory:
Switch# archive tar /table flash:c3750-i5q3l2-mz.121-6.AX1.tar info (219 bytes) c3750-i5q3l2-mz.121-6.AX1/ (directory) c3750-i5q3l2-mz.121-6.AX1/html/ (directory) c3750-i5q3l2-mz.121-6.AX1/html/foo.html (0 bytes) c3750-i5q3l2-mz.121-6.AX1/c3750-i5q3l2-mz.121-6.AX1.bin (610856 bytes) c3750-i5q3l2-mz.121-6.AX1/info (219 bytes)
This example shows how to display only the /html directory and its contents:
Switch# archive tar /table flash:c3750-tv0-m.tar c3750-i5q3l2-mz.121-6.AX1/html c3750-i5q3l2-mz.121-6.AX1/html/ (directory) c3750-i5q3l2-mz.121-6.AX1/html/foo.html (0 bytes)
For the local flash file system, the syntax is flash: For the FTP, the syntax is ftp:[[//username[:password]@location]/directory]/tar-filename.tar For the RCP, the syntax is rcp:[[//username@location]/directory]/tar-filename.tar For the TFTP, the syntax is tftp:[[//location]/directory]/tar-filename.tar
The tar-filename.tar is the tar file from which to extract files. For flash:/file-url [dir/file...], specify the location on the local flash file system into which the tar file is extracted. Use the dir/file... option to specify an optional list of files or directories within the tar file to be extracted. If none are specified, all files and directories are extracted.
B-7
Working with the Cisco IOS File System, Configuration Files, and Software Images
This example shows how to extract the contents of a tar file located on the TFTP server at 172.20.10.30. This command extracts just the new-configs directory into the root directory on the local flash file system. The remaining files in the saved.tar file are ignored.
Switch# archive tar /xtract tftp:/172.20.10.30/saved.tar flash:/new-configs
For information about configuration files in switch stacks, see the Switch Stack Configuration Files section on page 5-12. Configuration files contain commands entered to customize the function of the Cisco IOS software. A way to create a basic configuration file is to use the setup program or to enter the setup privileged EXEC command. For more information, see Chapter 4, Assigning the Switch IP Address and Default Gateway. You can copy (download) configuration files from a TFTP, FTP, or RCP server to the running configuration or startup configuration of the switch. You might want to perform this for one of these reasons:
To restore a backed-up configuration file. To use the configuration file for another switch. For example, you might add another switch to your network and want it to have a configuration similar to the original switch. By copying the file to the new switch, you can change the relevant parts rather than recreating the whole file. To load the same configuration commands on all the switches in your network so that all the switches have similar configurations.
You can copy (upload) configuration files from the switch to a file server by using TFTP, FTP, or RCP. You might perform this task to back up a current configuration file to a server before changing its contents so that you can later restore the original configuration file from the server. The protocol you use depends on which type of server you are using. The FTP and RCP transport mechanisms provide faster performance and more reliable delivery of data than TFTP. These improvements are possible because FTP and RCP are built on and use the TCP/IP stack, which is connection-oriented.
B-8
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
Guidelines for Creating and Using Configuration Files, page B-9 Configuration File Types and Location, page B-9 Creating a Configuration File By Using a Text Editor, page B-10 Copying Configuration Files By Using TFTP, page B-10 Copying Configuration Files By Using FTP, page B-12 Copying Configuration Files By Using RCP, page B-16 Clearing Configuration Information, page B-19
We recommend that you connect through the console port for the initial configuration of the switch. If you are accessing the switch through a network connection instead of through a direct connection to the console port, keep in mind that some configuration changes (such as changing the switch IP address or disabling ports) can cause a loss of connectivity to the switch. If no password has been set on the switch, we recommend that you set one by using the enable secret secret-password global configuration command.
Note
The copy {ftp: | rcp: | tftp:} system:running-config privileged EXEC command loads the configuration files on the switch as if you were entering the commands at the command line. The switch does not erase the existing running configuration before adding the commands. If a command in the copied configuration file replaces a command in the existing configuration file, the existing command is erased. For example, if the copied configuration file contains a different IP address in a particular command than the existing configuration, the IP address in the copied configuration is used. However, some commands in the existing configuration might not be replaced or negated. In this case, the resulting configuration file is a mixture of the existing configuration file and the copied configuration file, with the copied configuration file having precedence. To restore a configuration file to an exact copy of a file stored on a server, copy the configuration file directly to the startup configuration (by using the copy {ftp: | rcp: | tftp:} nvram:startup-config privileged EXEC command), and reload the switch.
B-9
Working with the Cisco IOS File System, Configuration Files, and Software Images
Copy an existing configuration from a switch to a server. For more information, see the Downloading the Configuration File By Using TFTP section on page B-11, the Downloading a Configuration File By Using FTP section on page B-13, or the Downloading a Configuration File By Using RCP section on page B-17.
Open the configuration file in a text editor, such as vi or emacs on UNIX or Notepad on a PC. Extract the portion of the configuration file with the desired commands, and save it in a new file. Copy the configuration file to the appropriate server location. For example, copy the file to the TFTP directory on the workstation (usually /tftpboot on a UNIX workstation). Make sure the permissions on the file are set to world-read.
Preparing to Download or Upload a Configuration File By Using TFTP, page B-10 Downloading the Configuration File By Using TFTP, page B-11 Uploading the Configuration File By Using TFTP, page B-11
Ensure that the workstation acting as the TFTP server is properly configured. On a Sun workstation, make sure that the /etc/inetd.conf file contains this line:
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd -p -s /tftpboot
Note
You must restart the inetd daemon after modifying the /etc/inetd.conf and /etc/services files. To restart the daemon, either stop the inetd process and restart it, or enter a fastboot command (on the SunOS 4.x) or a reboot command (on Solaris 2.x or SunOS 5.x). For more information on the TFTP daemon, refer to the documentation for your workstation.
Ensure that the switch has a route to the TFTP server. The switch and the TFTP server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the TFTP server by using the ping command.
B-10
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
Ensure that the configuration file to be downloaded is in the correct directory on the TFTP server (usually /tftpboot on a UNIX workstation). For download operations, ensure that the permissions on the file are set correctly. The permission on the file should be world-read. Before uploading the configuration file, you might need to create an empty file on the TFTP server. To create an empty file, enter the touch filename command, where filename is the name of the file you will use when uploading it to the server. During upload operations, if you are overwriting an existing file (including an empty file, if you had to create one) on the server, ensure that the permissions on the file are set correctly. Permissions on the file should be world-write.
Copy the configuration file to the appropriate TFTP directory on the workstation. Verify that the TFTP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using TFTP section on page B-10. Log into the switch through the console port or a Telnet session. Download the configuration file from the TFTP server to configure the switch. Specify the IP address or host name of the TFTP server and the name of the file to download. Use one of these privileged EXEC commands:
The configuration file downloads, and the commands are executed as the file is parsed line-by-line.
This example shows how to configure the software from the file tokyo-confg at IP address 172.16.2.155:
Switch# copy tftp://172.16.2.155/tokyo-confg system:running-config Configure using tokyo-confg from 172.16.2.155? [confirm] y Booting tokyo-confg from 172.16.2.155:!!! [OK - 874/16000 bytes]
Verify that the TFTP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using TFTP section on page B-10. Log into the switch through the console port or a Telnet session.
B-11
Working with the Cisco IOS File System, Configuration Files, and Software Images
Step 3
Upload the switch configuration to the TFTP server. Specify the IP address or host name of the TFTP server and the destination filename. Use one of these privileged EXEC commands:
This example shows how to upload a configuration file from a switch to a TFTP server:
Switch# copy system:running-config tftp://172.16.2.155/tokyo-confg Write file tokyo-confg on host 172.16.2.155? [confirm] y # Writing tokyo-confg!!! [OK]
The username specified in the copy command if a username is specified. The username set by the ip ftp username username global configuration command if the command is configured. Anonymous.
The password specified in the copy command if a password is specified. The password set by the ip ftp password password global configuration command if the command is configured. The switch forms a password named username@switchname.domain. The variable username is the username associated with the current session, switchname is the configured host name, and domain is the domain of the switch.
The username and password must be associated with an account on the FTP server. If you are writing to the server, the FTP server must be properly configured to accept your FTP write request. Use the ip ftp username and ip ftp password commands to specify a username and password for all copies. Include the username in the copy command if you want to specify only a username for that copy operation. If the server has a directory structure, the configuration file is written to or copied from the directory associated with the username on the server. For example, if the configuration file resides in the home directory of a user on the server, specify that user's name as the remote username. For more information, refer to the documentation for your FTP server.
B-12
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
Preparing to Download or Upload a Configuration File By Using FTP, page B-13 Downloading a Configuration File By Using FTP, page B-13 Uploading a Configuration File By Using FTP, page B-15
Ensure that the switch has a route to the FTP server. The switch and the FTP server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the FTP server by using the ping command. If you are accessing the switch through the console or a Telnet session and you do not have a valid username, make sure that the current FTP username is the one that you want to use for the FTP download. You can enter the show users privileged EXEC command to view the valid username. If you do not want to use this username, create a new FTP username by using the ip ftp username username global configuration command during all copy operations. The new username is stored in NVRAM. If you are accessing the switch through a Telnet session and you have a valid username, this username is used, and you do not need to set the FTP username. Include the username in the copy command if you want to specify a username for only that copy operation. When you upload a configuration file to the FTP server, it must be properly configured to accept the write request from the user on the switch.
For more information, refer to the documentation for your FTP server.
Purpose Verify that the FTP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using FTP section on page B-13. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode on the switch. This step is required only if you override the default remote username or password (see Steps 4, 5, and 6).
Step 4 Step 5
(Optional) Change the default remote username. (Optional) Change the default password.
B-13
Working with the Cisco IOS File System, Configuration Files, and Software Images
Command
Step 6 Step 7
end
Using FTP, copy the configuration file from a network server copy ftp:[[[//[username[:password ]@]location]/directory] to the running configuration or to the startup configuration file. /filename] system:running-config or copy ftp:[[[//[username[:password ]@]location]/directory] /filename] nvram:startup-config This example shows how to copy a configuration file named host1-confg from the netadmin1 directory on the remote server with an IP address of 172.16.101.101 and to load and run those commands on the switch:
Switch# copy ftp://netadmin1:mypass@172.16.101.101/host1-confg system:running-config Configure using host1-confg from 172.16.101.101? [confirm] Connected to 172.16.101.101 Loading 1112 byte file host1-confg:![OK] Switch# %SYS-5-CONFIG: Configured from host1-config by ftp from 172.16.101.101
This example shows how to specify a remote username of netadmin1. The software copies the configuration file host2-confg from the netadmin1 directory on the remote server with an IP address of 172.16.101.101 to the switch startup configuration.
Switch# configure terminal Switch(config)# ip ftp username netadmin1 Switch(config)# ip ftp password mypass Switch(config)# end Switch# copy ftp: nvram:startup-config Address of remote host [255.255.255.255]? 172.16.101.101 Name of configuration file[rtr2-confg]? host2-confg Configure using host2-confg from 172.16.101.101?[confirm] Connected to 172.16.101.101 Loading 1112 byte file host2-confg:![OK] [OK] Switch# %SYS-5-CONFIG_NV:Non-volatile store configured from host2-config by ftp from 172.16.101.101
B-14
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
Purpose Verify that the FTP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using FTP section on page B-13. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username or password (see Steps 4, 5, and 6).
(Optional) Change the default remote username. (Optional) Change the default password. Return to privileged EXEC mode.
Using FTP, store the switch running or startup configuration copy system:running-config ftp:[[[//[username[:password ]@]location]/directory] file to the specified location. /filename] or copy nvram:startup-config ftp:[[[//[username[:password ]@]location]/directory] /filename] This example shows how to copy the running configuration file named switch2-confg to the netadmin1 directory on the remote host with an IP address of 172.16.101.101:
Switch# copy system:running-config ftp://netadmin1:mypass@172.16.101.101/switch2-confg Write file switch2-confg on host 172.16.101.101?[confirm] Building configuration...[OK] Connected to 172.16.101.101 Switch#
This example shows how to store a startup configuration file on a server by using FTP to copy the file:
Switch# configure terminal Switch(config)# ip ftp username netadmin2 Switch(config)# ip ftp password mypass Switch(config)# end Switch# copy nvram:startup-config ftp: Remote host[]? 172.16.101.101 Name of configuration file to write [switch2-confg]? Write file switch2-confg on host 172.16.101.101?[confirm] ![OK]
B-15
Working with the Cisco IOS File System, Configuration Files, and Software Images
The username specified in the copy command if a username is specified. The username set by the ip rcmd remote-username username global configuration command if the command is configured. The remote username associated with the current TTY (terminal) process. For example, if the user is connected to the router through Telnet and was authenticated through the username command, the switch software sends the Telnet username as the remote username. The switch host name.
For a successful RCP copy request, you must define an account on the network server for the remote username. If the server has a directory structure, the configuration file is written to or copied from the directory associated with the remote username on the server. For example, if the configuration file is in the home directory of a user on the server, specify that user's name as the remote username. This section includes this information:
Preparing to Download or Upload a Configuration File By Using RCP, page B-16 Downloading a Configuration File By Using RCP, page B-17 Uploading a Configuration File By Using RCP, page B-18
Ensure that the workstation acting as the RCP server supports the remote shell (rsh). Ensure that the switch has a route to the RCP server. The switch and the server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the RCP server by using the ping command. If you are accessing the switch through the console or a Telnet session and you do not have a valid username, make sure that the current RCP username is the one that you want to use for the RCP download. You can enter the show users privileged EXEC command to view the valid username. If you do not want to use this username, create a new RCP username by using the ip rcmd remote-username username global configuration command to be used during all copy operations. The new username is stored in NVRAM. If you are accessing the switch through a Telnet session and you have a valid username, this username is used, and you do not need to set the RCP username. Include the username in the copy command if you want to specify a username for only that copy operation.
B-16
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
When you upload a file to the RCP server, it must be properly configured to accept the RCP write request from the user on the switch. For UNIX systems, you must add an entry to the .rhosts file for the remote user on the RCP server. For example, suppose that the switch contains these configuration lines:
hostname Switch1 ip rcmd remote-username User0
If the switch IP address translates to Switch1.company.com, the .rhosts file for User0 on the RCP server should contain this line:
Switch1.company.com Switch1
For more information, refer to the documentation for your RCP server.
Purpose Verify that the RCP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using RCP section on page B-16. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username (see Steps 4 and 5).
ip rcmd remote-username username end copy rcp:[[[//[username@]location]/directory]/filename] system:running-config or copy rcp:[[[//[username@]location]/directory]/filename] nvram:startup-config
(Optional) Specify the remote username. Return to privileged EXEC mode. Using RCP, copy the configuration file from a network server to the running configuration or to the startup configuration file.
This example shows how to copy a configuration file named host1-confg from the netadmin1 directory on the remote server with an IP address of 172.16.101.101 and load and run those commands on the switch:
Switch# copy rcp://netadmin1@172.16.101.101/host1-confg system:running-config Configure using host1-confg from 172.16.101.101? [confirm] Connected to 172.16.101.101 Loading 1112 byte file host1-confg:![OK] Switch# %SYS-5-CONFIG: Configured from host1-config by rcp from 172.16.101.101
B-17
Working with the Cisco IOS File System, Configuration Files, and Software Images
This example shows how to specify a remote username of netadmin1. Then it copies the configuration file host2-confg from the netadmin1 directory on the remote server with an IP address of 172.16.101.101 to the startup configuration:
Switch# configure terminal Switch(config)# ip rcmd remote-username netadmin1 Switch(config)# end Switch# copy rcp: nvram:startup-config Address of remote host [255.255.255.255]? 172.16.101.101 Name of configuration file[rtr2-confg]? host2-confg Configure using host2-confg from 172.16.101.101?[confirm] Connected to 172.16.101.101 Loading 1112 byte file host2-confg:![OK] [OK] Switch# %SYS-5-CONFIG_NV:Non-volatile store configured from host2-config by rcp from 172.16.101.101
Purpose Verify that the RCP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using RCP section on page B-16. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username (see Steps 4 and 5).
ip rcmd remote-username username end copy system:running-config rcp:[[[//[username@]location]/directory]/filename] or copy nvram:startup-config rcp:[[[//[username@]location]/directory]/filename]
(Optional) Specify the remote username. Return to privileged EXEC mode. Using RCP, copy the configuration file from a switch running or startup configuration file to a network server.
This example shows how to copy the running configuration file named switch2-confg to the netadmin1 directory on the remote host with an IP address of 172.16.101.101:
Switch# copy system:running-config rcp://netadmin1@172.16.101.101/switch2-confg Write file switch-confg on host 172.16.101.101?[confirm] Building configuration...[OK] Connected to 172.16.101.101 Switch#
B-18
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Configuration Files
Caution
You cannot restore the startup configuration file after it has been deleted.
Caution
B-19
Working with the Cisco IOS File System, Configuration Files, and Software Images
Note
Instead of using the copy privileged EXEC command or the archive tar privileged EXEC command, we recommend using the archive download-sw and archive upload-sw privileged EXEC commands to download and upload software image files. For switch stacks, the archive download-sw and archive upload-sw privileged EXEC commands can only be used through the stack master. Software images downloaded to the stack master are automatically downloaded to the rest of the stack members. To upgrade a switch with an incompatible software image, use the archive copy-sw privileged EXEC command to copy the software image from an existing stack member to the incompatible switch. That switch automatically reloads and joins the stack as a fully functioning member. You can download a switch image file from a TFTP, FTP, or RCP server to upgrade the switch software.
Note
You can upgrade your switch through CMS by using either TFTP or HTTP. For more information, select Administration > Software Upgrade in CMS. You can replace the current image with the new one or keep the current image in flash memory after a download. You upload a switch image file to a TFTP, FTP, or RCP server for backup purposes. You can use this uploaded image for future downloads to the same switch or to another of the same type. The protocol that you use depends on which type of server you are using. The FTP and RCP transport mechanisms provide faster performance and more reliable delivery of data than TFTP. These improvements are possible because FTP and RCP are built on and use the TCP/IP stack, which is connection-oriented. This section includes this information:
Image Location on the Switch, page B-20 tar File Format of Images on a Server or Cisco.com, page B-21 Copying Image Files By Using TFTP, page B-22 Copying Image Files By Using FTP, page B-25 Copying Image Files By Using RCP, page B-29 Copying an Image File from One Stack Member to Another, page B-34
Note
For a list of software images and the supported upgrade paths, refer to the release notes that shipped with your switch.
B-20
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
You can use the show version privileged EXEC command to see the software version that is currently running on your switch. In the display, check the line that begins with System image file is... . It shows the directory name in flash memory where the image is stored. You can also use the dir filesystem: privileged EXEC command to see the directory names of other software images that you might have stored in flash memory.
An info file, which serves as a table of contents for the tar file One or more subdirectories containing other images and files, such as Cisco IOS images and web management files
This example shows some of the information contained in the info file. Table B-3 provides additional details about this information:
system_type:0x00000000:c3750-i5-mz.121.11-AX image_family:C3750 stacking_number:1.0 info_end: version_suffix:i5-121.11-AX version_directory:c3750-i5-mz.121.11-AX image_system_type_id:0x00000000 image_name:c3750-i5-mz.121.11-AX.bin ios_image_file_size:3973632 total_image_file_size:5929472 image_feature:LAYER_3|MIN_DRAM_MEG=64 image_family:C3750 stacking_number:1.0 board_ids:0x401100c4 0x00000000 0x00000001 0x00000003 0x00000002 0x00008000 0x00008002 0x40110000 info_end:
Table B-3
Description Specifies the Cisco IOS image version string suffix Specifies the directory where the Cisco IOS image and the HTML subdirectory are installed Specifies the name of the Cisco IOS image within the tar file Specifies the Cisco IOS image size in the tar file, which is an approximate measure of how much flash memory is required to hold just the Cisco IOS image Specifies the size of all the images (the Cisco IOS image and the web management files) in the tar file, which is an approximate measure of how much flash memory is required to hold them Describes the core functionality of the image Specifies the minimum amount of DRAM needed to run this image Describes the family of products on which the software can be installed
B-21
Working with the Cisco IOS File System, Configuration Files, and Software Images
Note
Instead of using the copy privileged EXEC command or the archive tar privileged EXEC command, we recommend using the archive download-sw and archive upload-sw privileged EXEC commands to download and upload software image files. For switch stacks, the archive download-sw and archive upload-sw privileged EXEC commands can only be used through the stack master. Software images downloaded to the stack master are automatically downloaded to the rest of the stack members. To upgrade a switch with an incompatible software image, use the archive copy-sw privileged EXEC command to copy the software image from an existing stack member to the incompatible switch. That switch automatically reloads and joins the stack as a fully functioning member. This section includes this information:
Preparing to Download or Upload an Image File By Using TFTP, page B-22 Downloading an Image File By Using TFTP, page B-23 Uploading an Image File By Using TFTP, page B-24
Ensure that the workstation acting as the TFTP server is properly configured. On a Sun workstation, make sure that the /etc/inetd.conf file contains this line:
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd -p -s /tftpboot
Note
You must restart the inetd daemon after modifying the /etc/inetd.conf and /etc/services files. To restart the daemon, either stop the inetd process and restart it, or enter a fastboot command (on the SunOS 4.x) or a reboot command (on Solaris 2.x or SunOS 5.x). For more information on the TFTP daemon, refer to the documentation for your workstation.
Ensure that the switch has a route to the TFTP server. The switch and the TFTP server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the TFTP server by using the ping command. Ensure that the image to be downloaded is in the correct directory on the TFTP server (usually /tftpboot on a UNIX workstation). For download operations, ensure that the permissions on the file are set correctly. The permission on the file should be world-read.
B-22
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
Before uploading the image file, you might need to create an empty file on the TFTP server. To create an empty file, enter the touch filename command, where filename is the name of the file you will use when uploading the image to the server. During upload operations, if you are overwriting an existing file (including an empty file, if you had to create one) on the server, ensure that the permissions on the file are set correctly. Permissions on the file should be world-write.
Purpose Copy the image to the appropriate TFTP directory on the workstation. Make sure the TFTP server is properly configured; see the Preparing to Download or Upload an Image File By Using TFTP section on page B-22. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
Download the image file from the TFTP server to the switch, and overwrite the current image.
The /overwrite option overwrites the software image in flash memory with the downloaded image. The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //location, specify the IP address of the TFTP server. For /directory/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
Step 4
Download the image file from the TFTP server to the switch, and keep the current image.
The /leave-old-sw option keeps the old software version after a download. The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //location, specify the IP address of the TFTP server. For /directory/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
The download algorithm verifies that the image is appropriate for the switch model and that enough DRAM is present, or it aborts the process and reports an error. If you specify the /overwrite option, the download algorithm removes the existing image on the flash device whether or not it is the same as the new one, downloads the new image, and then reloads the software.
B-23
Working with the Cisco IOS File System, Configuration Files, and Software Images
Note
If the flash device has sufficient space to hold two images and you want to overwrite one of these images with the same version, you must specify the /overwrite option. If you specify the /leave-old-sw, the existing files are not removed. If there is not enough space to install the new image and keep the current running image, the download process stops, and an error message is displayed. The algorithm installs the downloaded image on the system board flash device (flash:). The image is placed into a new directory named with the software version string, and the BOOT environment variable is updated to point to the newly installed image. If you kept the old image during the download process (you specified the /leave-old-sw keyword), you can remove it by entering the delete /force /recursive filesystem:/file-url privileged EXEC command. For filesystem, use flash: for the system board flash device. For file-url, enter the directory name of the old image. All the files in the directory and the directory are removed.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
Purpose Make sure the TFTP server is properly configured; see the Preparing to Download or Upload an Image File By Using TFTP section on page B-22. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
For //location, specify the IP address of the TFTP server. For /directory/image-name.tar, specify the directory (optional) and the name of the software image to be uploaded. Directory and image names are case sensitive. The image-name.tar is the name of the software image to be stored on the server.
The archive upload-sw privileged EXEC command builds an image file on the server by uploading these files in order: info, the Cisco IOS image, and the web management files. After these files are uploaded, the upload algorithm creates the tar file format.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
B-24
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
Note
Instead of using the copy privileged EXEC command or the archive tar privileged EXEC command, we recommend using the archive download-sw and archive upload-sw privileged EXEC commands to download and upload software image files. For switch stacks, the archive download-sw and archive upload-sw privileged EXEC commands can only be used through the stack master. Software images downloaded to the stack master are automatically downloaded to the rest of the stack members. To upgrade a switch with an incompatible software image, use the archive copy-sw privileged EXEC command to copy the software image from an existing stack member to the incompatible switch. That switch automatically reloads and joins the stack as a fully functioning member. This section includes this information:
Preparing to Download or Upload an Image File By Using FTP, page B-25 Downloading an Image File By Using FTP, page B-26 Uploading an Image File By Using FTP, page B-28
The username specified in the archive download-sw or archive upload-sw privileged EXEC command if a username is specified. The username set by the ip ftp username username global configuration command if the command is configured. Anonymous. The password specified in the archive download-sw or archive upload-sw privileged EXEC command if a password is specified. The password set by the ip ftp password password global configuration command if the command is configured. The switch forms a password named username@switchname.domain. The variable username is the username associated with the current session, switchname is the configured host name, and domain is the domain of the switch.
The username and password must be associated with an account on the FTP server. If you are writing to the server, the FTP server must be properly configured to accept the FTP write request from you.
B-25
Working with the Cisco IOS File System, Configuration Files, and Software Images
Use the ip ftp username and ip ftp password commands to specify a username and password for all copies. Include the username in the archive download-sw or archive upload-sw privileged EXEC command if you want to specify a username only for that operation. If the server has a directory structure, the image file is written to or copied from the directory associated with the username on the server. For example, if the image file resides in the home directory of a user on the server, specify that user's name as the remote username. Before you begin downloading or uploading an image file by using FTP, do these tasks:
Ensure that the switch has a route to the FTP server. The switch and the FTP server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the FTP server by using the ping command. If you are accessing the switch through the console or a Telnet session and you do not have a valid username, make sure that the current FTP username is the one that you want to use for the FTP download. You can enter the show users privileged EXEC command to view the valid username. If you do not want to use this username, create a new FTP username by using the ip ftp username username global configuration command. This new name will be used during all archive operations. The new username is stored in NVRAM. If you are accessing the switch through a Telnet session and you have a valid username, this username is used, and you do not need to set the FTP username. Include the username in the archive download-sw or archive upload-sw privileged EXEC command if you want to specify a username for that operation only. When you upload an image file to the FTP server, it must be properly configured to accept the write request from the user on the switch.
For more information, refer to the documentation for your FTP server.
Purpose Verify that the FTP server is properly configured by referring to the Preparing to Download or Upload an Image File By Using FTP section on page B-25. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username or password (see Steps 4, 5, and 6).
(Optional) Change the default remote username. (Optional) Change the default password. Return to privileged EXEC mode.
B-26
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
Command
Step 7
Purpose
archive download-sw /overwrite /reload Download the image file from the FTP server to the switch, ftp:[[//username[:password ]@location]/directory] and overwrite the current image. /image-name.tar The /overwrite option overwrites the software image in flash memory with the downloaded image.
The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //username[:password ], specify the username and password; these must be associated with an account on the FTP server. For more information, see the Preparing to Download or Upload an Image File By Using FTP section on page B-25. For @location, specify the IP address of the FTP server. For directory/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
Step 8
archive download-sw /leave-old-sw /reload Download the image file from the FTP server to the switch, ftp:[[//username[:password ]@location]/directory] and keep the current image. /image-name.tar The /leave-old-sw option keeps the old software version after a download.
The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //username[:password ], specify the username and password. These must be associated with an account on the FTP server. For more information, see the Preparing to Download or Upload an Image File By Using FTP section on page B-25. For @location, specify the IP address of the FTP server. For directory/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
The download algorithm verifies that the image is appropriate for the switch model and that enough DRAM is present, or it aborts the process and reports an error. If you specify the /overwrite option, the download algorithm removes the existing image on the flash device, whether or not it is the same as the new one, downloads the new image, and then reloads the software.
Note
If the flash device has sufficient space to hold two images and you want to overwrite one of these images with the same version, you must specify the /overwrite option. If you specify the /leave-old-sw, the existing files are not removed. If there is not enough space to install the new image and keep the running image, the download process stops, and an error message is displayed.
B-27
Working with the Cisco IOS File System, Configuration Files, and Software Images
The algorithm installs the downloaded image onto the system board flash device (flash:). The image is placed into a new directory named with the software version string, and the BOOT environment variable is updated to point to the newly installed image. If you kept the old image during the download process (you specified the /leave-old-sw keyword), you can remove it by entering the delete /force /recursive filesystem:/file-url privileged EXEC command. For filesystem, use flash: for the system board flash device. For file-url, enter the directory name of the old software image. All the files in the directory and the directory are removed.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
Purpose Verify that the FTP server is properly configured by referring to the Preparing to Download or Upload a Configuration File By Using FTP section on page B-13. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username or password (see Steps 4, 5, and 6).
(Optional) Change the default remote username. (Optional) Change the default password. Return to privileged EXEC mode.
archive upload-sw Upload the currently running switch image to the FTP server. ftp:[[//[username[:password]@]location]/directory]/ For //username: password, specify the username and image-name.tar password. These must be associated with an account on the FTP server. For more information, see the Preparing to Download or Upload an Image File By Using FTP section on page B-25.
For @ location, specify the IP address of the FTP server. For /directory/image-name.tar, specify the directory (optional) and the name of the software image to be uploaded. Directory and image names are case sensitive. The image-name.tar is the name of the software image to be stored on the server.
B-28
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
The archive upload-sw command builds an image file on the server by uploading these files in order: info, the Cisco IOS image, and the web management files. After these files are uploaded, the upload algorithm creates the tar file format.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
Note
Instead of using the copy privileged EXEC command or the archive tar privileged EXEC command, we recommend using the archive download-sw and archive upload-sw privileged EXEC commands to download and upload software image files. For switch stacks, the archive download-sw and archive upload-sw privileged EXEC commands can only be used through the stack master. Software images downloaded to the stack master are automatically downloaded to the rest of the stack members. To upgrade a switch with an incompatible software image, use the archive copy-sw privileged EXEC command to copy the software image from an existing stack member to the incompatible switch. That switch automatically reloads and joins the stack as a fully functioning member. This section includes this information:
Preparing to Download or Upload an Image File By Using RCP, page B-29 Downloading an Image File By Using RCP, page B-31 Uploading an Image File By Using RCP, page B-33
B-29
Working with the Cisco IOS File System, Configuration Files, and Software Images
RCP requires a client to send a remote username on each RCP request to a server. When you copy an image from the switch to a server by using RCP, the Cisco IOS software sends the first valid username in this list:
The username specified in the archive download-sw or archive upload-sw privileged EXEC command if a username is specified. The username set by the ip rcmd remote-username username global configuration command if the command is entered. The remote username associated with the current TTY (terminal) process. For example, if the user is connected to the router through Telnet and was authenticated through the username command, the switch software sends the Telnet username as the remote username. The switch host name.
For the RCP copy request to execute successfully, an account must be defined on the network server for the remote username. If the server has a directory structure, the image file is written to or copied from the directory associated with the remote username on the server. For example, if the image file resides in the home directory of a user on the server, specify that users name as the remote username. Before you begin downloading or uploading an image file by using RCP, do these tasks:
Ensure that the workstation acting as the RCP server supports the remote shell (rsh). Ensure that the switch has a route to the RCP server. The switch and the server must be in the same subnetwork if you do not have a router to route traffic between subnets. Check connectivity to the RCP server by using the ping command. If you are accessing the switch through the console or a Telnet session and you do not have a valid username, make sure that the current RCP username is the one that you want to use for the RCP download. You can enter the show users privileged EXEC command to view the valid username. If you do not want to use this username, create a new RCP username by using the ip rcmd remote-username username global configuration command to be used during all archive operations. The new username is stored in NVRAM. If you are accessing the switch through a Telnet session and you have a valid username, this username is used, and there is no need to set the RCP username. Include the username in the archive download-sw or archive upload-sw privileged EXEC command if you want to specify a username only for that operation. When you upload an image to the RCP to the server, it must be properly configured to accept the RCP write request from the user on the switch. For UNIX systems, you must add an entry to the .rhosts file for the remote user on the RCP server. For example, suppose the switch contains these configuration lines:
hostname Switch1 ip rcmd remote-username User0
If the switch IP address translates to Switch1.company.com, the .rhosts file for User0 on the RCP server should contain this line:
Switch1.company.com Switch1
For more information, refer to the documentation for your RCP server.
B-30
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
Purpose Verify that the RCP server is properly configured by referring to the Preparing to Download or Upload an Image File By Using RCP section on page B-29. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username (see Steps 4 and 5).
ip rcmd remote-username username end archive download-sw /overwrite /reload rcp:[[[//[username@]location]/directory]/image-na me.tar]
(Optional) Specify the remote username. Return to privileged EXEC mode. Download the image file from the RCP server to the switch, and overwrite the current image.
The /overwrite option overwrites the software image in flash memory with the downloaded image. The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //username, specify the username. For the RCP copy request to execute successfully, an account must be defined on the network server for the remote username. For more information, see the Preparing to Download or Upload an Image File By Using RCP section on page B-29. For @location, specify the IP address of the RCP server. For /directory/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
B-31
Working with the Cisco IOS File System, Configuration Files, and Software Images
Command
Step 7
Purpose Download the image file from the RCP server to the switch, and keep the current image.
The /leave-old-sw option keeps the old software version after a download. The /reload option reloads the system after downloading the image unless the configuration has been changed and not been saved. For //username, specify the username. For the RCP copy request to execute, an account must be defined on the network server for the remote username. For more information, see the Preparing to Download or Upload an Image File By Using RCP section on page B-29. For @location, specify the IP address of the RCP server. For /directory]/image-name.tar, specify the directory (optional) and the image to download. Directory and image names are case sensitive.
The download algorithm verifies that the image is appropriate for the switch model and that enough DRAM is present, or it aborts the process and reports an error. If you specify the /overwrite option, the download algorithm removes the existing image on the flash device whether or not it is the same as the new one, downloads the new image, and then reloads the software.
Note
If the flash device has sufficient space to hold two images and you want to overwrite one of these images with the same version, you must specify the /overwrite option. If you specify the /leave-old-sw, the existing files are not removed. If there is not enough room to install the new image an keep the running image, the download process stops, and an error message is displayed. The algorithm installs the downloaded image onto the system board flash device (flash:). The image is placed into a new directory named with the software version string, and the BOOT environment variable is updated to point to the newly installed image. If you kept the old software during the download process (you specified the /leave-old-sw keyword), you can remove it by entering the delete /force /recursive filesystem:/file-url privileged EXEC command. For filesystem, use flash: for the system board flash device. For file-url, enter the directory name of the old software image. All the files in the directory and the directory are removed.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
B-32
78-16180-02
Appendix B
Working with the Cisco IOS File System, Configuration Files, and Software Images Working with Software Images
Purpose Verify that the RCP server is properly configured by referring to the Preparing to Download or Upload an Image File By Using RCP section on page B-29. Log into the switch through the console port or a Telnet session.
Step 2 Step 3
configure terminal
Enter global configuration mode. This step is required only if you override the default remote username (see Steps 4 and 5).
(Optional) Specify the remote username. Return to privileged EXEC mode. Upload the currently running switch image to the RCP server.
For //username, specify the username; for the RCP copy request to execute, an account must be defined on the network server for the remote username. For more information, see the Preparing to Download or Upload an Image File By Using RCP section on page B-29. For @location, specify the IP address of the RCP server. For /directory]/image-name.tar, specify the directory (optional) and the name of the software image to be uploaded. Directory and image names are case sensitive. The image-name.tar is the name of software image to be stored on the server.
The archive upload-sw privileged EXEC command builds an image file on the server by uploading these files in order: info, the Cisco IOS image, and the web management files. After these files are uploaded, the upload algorithm creates the tar file format.
Caution
For the download and upload algorithms to operate properly, do not rename image names.
B-33
Working with the Cisco IOS File System, Configuration Files, and Software Images
Note
To successfully use the archive copy-sw privileged EXEC command, you must have downloaded from a TFTP server the images for both the stack member switch being added and the stack master. You use the archive download-sw privileged EXEC command to perform the download. Beginning in privileged EXEC mode from the stack member that you want to upgrade, follow these steps to copy the running image file from the flash memory of a different stack member:
Command
Step 1 Step 2
Purpose Enter global configuration mode. Copy the running image file from a stack member, and then unconditionally reload the updated stack member.
Note
At least one stack member must be running the image that is to be copied to the switch that is running the incompatible software.
For /destination-system destination-stack-member-number, specify the number of the stack member (the destination) to which to copy the source running image file. If you do not specify this stack member number, the default is to copy the running image file to all stack members. Specify /force-reload to unconditionally force a system reload after successfully downloading the software image. For source-stack-member-number, specify the number of the stack member (the source) from which to copy the running image file. The stack member number range is 1 to 9.
Step 3
Reset the updated stack member, and put this configuration change into effect.
B-34
78-16180-02
A P P E N D I X
C-1
ARP Commands
Unsupported Global Configuration Commands
arp ip-address hardware-address smds arp ip-address hardware-address srp-a arp ip-address hardware-address srp-b
FallBack Bridging
Unsupported Privileged EXEC Commands
clear bridge [bridge-group ] multicast [router-ports | groups | counts ] [group-address] [interface-unit] [counts] clear vlan statistics show bridge [bridge-group ] circuit-group [circuit-group] [src-mac-address] [dst-mac-address] show bridge [bridge-group ] multicast [router-ports | groups] [group-address] show bridge vlan show interfaces crb show interfaces {ethernet | fastethernet} [interface | slot/port] irb show subscriber-policy range
C-2
78-16180-02
Appendix C
bridge bridge-group domain domain-name bridge irb bridge bridge-group mac-address-table limit number bridge bridge-group multicast-source bridge bridge-group protocol dec bridge bridge-group route protocol bridge bridge-group subscriber policy policy subscriber-policy policy [[no | default] packet [permit | deny]]
C-3
Appendix C HSRP
HSRP
Unsupported Global Configuration Commands
interface Async interface BVI interface Dialer interface Group-Async interface Lex interface Multilink interface Virtual-Template interface Virtual-Tokenring
Interface Commands
Unsupported Privileged EXEC Commands
show interfaces [interface-id | vlan vlan-id ] [crb | fair-queue | irb | mac-accounting | precedence | irb | random-detect | rate-limit | shape]
C-4
78-16180-02
Appendix C
Note
These commands have been replaced by the storm-control {broadcast | multicast | unicast} level level [.level] interface configuration command.
IP Multicast Routing
Unsupported Privileged EXEC Commands
clear ip rtp header-compression [type number] The debug ip packet command displays packets received by the switch CPU. It does not display packets that are hardware-switched. The debug ip mcache command affects packets received by the switch CPU. It does not display packets that are hardware-switched. The debug ip mpacket [detail] [access-list-number [group-name-or-address ] command affects only packets received by the switch CPU. Because most multicast packets are hardware-switched, use this command only when you know that the route will forward the packet to the CPU. debug ip pim atm show frame-relay ip rtp header-compression [interface type number ] The show ip mcache command displays entries in the cache for those packets that are sent to the switch CPU. Because most multicast packets are switched in hardware without CPU involvement, you can use this command, but multicast packet information is not displayed. The show ip mpacket commands are supported but are only useful for packets received at the switch CPU. If the route is hardware-switched, the command has no effect because the CPU does not receive the packet and cannot display it. show ip pim vc [group-address | name] [type number ] show ip rtp header-compression [type number] [detail]
C-5
IP Unicast Routing
Unsupported Privileged EXEC or User EXEC Commands
clear ip accounting [checkpoint] clear ip bgp address flap-statistics clear ip bgp prefix-list show cef [drop | not-cef-switched ] show ip accounting [checkpoint] [output-packets | access-violations] show ip bgp dampened-paths show ip bgp inconsistent-as show ip bgp regexp regular expression show ip prefix-list regular expression
C-6
78-16180-02
Appendix C
C-7
C-8
78-16180-02
Appendix C
Note
Use the show ip igmp snooping groups privileged EXEC command to display Layer 2 multicast address-table entries for a VLAN.
Miscellaneous
Unsupported Global Configuration Commands
errdisable detect cause dhcp-rate-limit errdisable recovery cause dhcp-rate-limit errdisable recovery cause unicast flood service compress-config
MSDP
Unsupported Privileged EXEC Commands
show access-expression show exception show location show pm LINE show smf [interface-id] show subscriber-policy [policy-number] show template [template-name]
C-9
RADIUS
Unsupported Global Configuration Commands
aaa nas port extended radius-server attribute nas-port radius-server configure radius-server extended-portnames
C-10
78-16180-02
Appendix C
SNMP
Unsupported Global Configuration Commands
snmp-server enable informs snmp-server ifindex persist
Spanning Tree
Unsupported Global Configuration Command
spanning-tree pathcost method {long | short}
VLAN
Unsupported User EXEC Commands
show running-config vlan show vlan ifindex
VTP
Unsupported Privileged EXEC Commands
vtp {password password | pruning | version number}
Note
This command has been replaced by the vtp global configuration command.
C-11
Appendix C VTP
C-12
78-16180-02
I N D EX
Numerics
10-Gigabit Ethernet interfaces configuration guidelines defined 802.1D See STP 802.1Q and trunk ports encapsulation 802.1s See MSTP 802.1w See RSTP 802.1x See port-based authentication 802.3ad See EtherChannel 802.3af See PoE 802.3z flow control
11-17 11-3 13-19 11-4 11-14
access control entries See ACEs access-denied response, VMPS access groups applying ACLs to interfaces IP
31-21 31-21 31-21 31-21 13-28
configuration limitations
13-17
clusters, switch
13-23
command switches member switches stack members switch clusters access lists See ACLs access ports defined accounting with 802.1x with RADIUS with TACACS+ ACEs and QoS defined
2-3 32-7 31-2 31-2 11-3
in switch clusters
6-9
A
abbreviating commands ABRs
34-25 6-10, 6-20 31-20
31-2 31-13
any keyword
IN-1
Index
ACLs (continued) applying on bridged packets on multicast packets on routed packets on switched packets time ranges to to an interface to QoS
32-7 32-38 31-17 31-20 31-38 31-40
31-39 31-38
precedence of
32-7, 32-38
resequencing entries
31-2
31-15
31-37
examples of extended IP
31-6 31-37
31-30
31-20 31-20
address aliasing
fragments and QoS guidelines implicit deny implicit masks matching criteria named
31-15 31-19 31-10, 31-14, 31-16 31-10 31-7
displaying the MAC address table dynamic accelerated aging default aging defined learning removing multicast group address range
36-3 17-9 7-20 7-21 7-23 7-28 17-9 17-9 7-22
7-28
violations, logging limiting actions logging messages log keyword matching monitoring
31-16 31-38
MAC, discovering
31-10
MAC extended
31-27, 32-41
IN-2
78-16180-02
Index
Address Resolution Protocol adjacency tables, with CEF administrative distances defined OSPF
34-72 34-31 34-63
managing ASBRs
34-25
7-28
34-50
9-31
9-29
authentication
34-38 35-9 9-36
aggregate addresses, BGP aggregated ports See EtherChannel aggregate policers aggregate policing aggregator template aging, accelerating aging time accelerated for MSTP for STP maximum for MSTP for STP alarms, RMON
18-22 17-23 28-3 13-21 18-21 17-9, 17-23 7-22 32-47 1-8
HSRP
authentication keys, and routing protocols authoritative time source, described authorization with RADIUS with TACACS+ autoconfiguration
9-27 9-11, 9-16 10-4 7-2
IN-3
Index
automatic discovery adding member switches considerations beyond a noncandidate device brand new switches connectivity
6-5 6-7 6-7 6-6 6-6 6-9 6-8 6-18
backup interfaces See Flex Links backup links banners configuring login
7-20 7-19 20-1
different VLANs
management VLANs
creating a cluster standby group in switch clusters See also CDP automatic QoS See QoS automatic recovery, clusters See also HSRP autonegotiation duplex mode mismatches See ASBRs autonomous systems, in BGP Auto-RP, described auxiliary VLAN See voice VLAN availability, features
1-5 36-5 1-3 34-44 1-3 6-10 6-5
34-56
clear commands
multipath support neighbors, types of path selection prefix filtering route dampening route maps
34-49
34-47 34-44
34-47 34-54
34-57 34-56
B
BackboneFast described disabling enabling support for
19-7 19-17 19-16 1-5
IN-4
78-16180-02
Index
binding database address, DHCP server See DHCP, Cisco IOS server database DHCP snooping See DHCP snooping binding database bindings address, Cisco IOS DHCP server DHCP snooping database IP source guard
21-15 21-5 21-5
BPDU guard described disabling enabling support for bridge groups See fallback bridging bridge protocol data unit See BPDU broadcast flooding broadcast packets directed
4-2 34-14 34-14 24-3 34-17 19-3 19-14 19-13 1-6 31-38
binding table, DHCP snooping See DHCP snooping binding database blocking packets booting boot loader, function of boot process manually boot loader accessing described prompt
4-14 4-2 4-14 4-1 4-13 4-13 24-6
flooded
specific image
C
cables, monitoring for unidirectional links candidate switch adding
4-2 36-5 6-18 6-5 26-1
environment variables
4-14
trap-door mechanism Border Gateway Protocol See BGP BPDU error-disabled state filtering
19-3 18-10
passwords
19-3
See also command switch, cluster standby group, and member switch caution, described CDP and trusted boundary configuring
25-2 25-2 32-36 6-5 xxxvi 6-21
CC (command switch)
IN-5
Index
class maps for QoS configuring described displaying See CoS clearing interfaces CLI abbreviating commands
25-2 25-2 2-3 11-25 32-42 32-7 32-67
disabling for routing device enabling and disabling on an interface on a switch monitoring overview support for
25-1 1-5 25-5 25-4 25-3
class of service
2-1
as IGMP snooping learning method clearing cached group entries enabling server support joining multicast group overview
36-7 36-7 1-4 36-33 23-3 36-51
2-5
16-1
recalling commands managing clusters client mode, VTP clock See system clock Cluster Management Suite See CMS cluster requirements See release notes clusters, switch
1-3 6-23
Cisco Discovery Protocol Cisco Express Forwarding See CEF Cisco Group Management Protocol See CGMP Cisco IOS DHCP server See DHCP, Cisco IOS DHCP server Cisco IOS File System See IFS Cisco StackWise technology See also stacks, switch CiscoWorks 2000 See CIDR classless routing
34-7 1-4, 30-5
2-4
accessing
6-13 6-18
6-17
IN-6
78-16180-02
Index
clusters, switch (continued) compatibility creating described managing through CLI planning
6-4 6-23 6-24 6-17 6-20 6-4
configuration modes
1-2, 1-4
Front Panel view, described privilege levels requirements Topology view wizards
3-6 3-7 3-8 to 3-9 3-15
through SNMP
Coarse Wave Division Multiplexer See CWDM SFPs command-line interface See CLI command modes commands abbreviating no and default
6-17 2-3 2-4 9-8 2-1
6-14 6-16
6-14, 6-24
command switch with HSRP disabled (CC) configuration conflicts defined enabling
6-2 6-17 6-10, 6-21 6-23 39-12
6-21
See also candidate switch, command switch, cluster standby group, member switch, and standby command switch cluster standby group and HSRP group automatic recovery considerations creating defined
6-20 6-2 6-3 6-11 6-11 35-11 6-12
from command-switch failure from lost member connectivity redundant replacing with another switch with cluster member
39-11 39-9 6-10, 6-20
virtual IP address
IN-7
Index
configuration files (continued) guidelines for creating and using limiting TFTP server access obtaining with DHCP specifying the filename types and location uploading preparing reasons for using FTP
B-10, B-13, B-16 B-8 B-15 B-18 B-11 3-5 4-10 11-8 B-9 4-7 9-5 30-16 B-9 B-5
See also candidate switch, cluster standby group, member switch, and standby command switch community list, BGP community ports community strings configuring in clusters overview SNMP
6-14, 30-8 30-4 15-2 34-53
30-15
compatibility, software
configuration, initial
1-10 1-2, 1-10, 3-12 1-10
Express Setup
39-12 9-38
See also hardware installation guide configuration conflicts, recovering from lost member connectivity 39-12 configuration examples, network configuration files clearing the startup configuration creating using a text editor default name described
B-8 4-12 B-19 B-10 B-19 1-12
consistency checks in VTP Version 2 console port, connecting to conventions command publication text CoS
xxxvi xxxvi xxxvi xxxvi 2-9
for examples
deleting a stored configuration downloading automatically preparing reasons for using FTP using RCP using TFTP
4-12 B-10, B-13, B-16 B-8 B-13 B-17 B-11
corrupted software, recovery steps with Xmodem in Layer 2 frames override priority trust priority
16-6 32-14 32-17 32-2 16-6
39-2
CoS input queue threshold map for QoS CoS output queue threshold map for QoS CoS-to-DSCP map for QoS
32-50
IN-8
78-16180-02
Index
11-25
cross-stack EtherChannel configuration guidelines configuring on Layer 2 interfaces described illustration support for described disabling enabling
33-2 33-3 1-5 33-12 33-16 33-12
fallback bridging
20-2
fast-convergence events
Fast Uplink Transition Protocol normal-convergence events support for Kerberos SSH
9-37 1-5 19-7
36-8
D
daylight saving time debugging enabling all system diagnostics enabling for a specific feature redirecting error message output using commands default commands 802.1x banners
10-11 32-18 7-18 39-21 2-4 39-22 39-22 39-22 7-13
19-12
RMON
IN-9
Index
DHCP-based autoconfiguration client request message exchange configuring client side DNS
4-6 4-6 4-5 21-8 4-5 4-3 4-4
standard QoS
17-13
relay device
5-17 29-4 7-15
switch stacks
system message logging system name and prompt TACACS+ UDLD VLANs VMPS VTP
26-4 9-13
voice VLAN
14-7
default gateway default networks default routes default routing deleting VLANs
support for
DHCP binding database See DHCP snooping binding database DHCP binding table See DHCP snooping binding database
11-20 1-12
configuration guidelines
31-12
21-7
destination-IP address-based forwarding, EtherChannel 33-8 destination-MAC address forwarding, EtherChannel detecting indirect link failures, STP device discovery protocol Device Manager DHCP Cisco IOS server database configuring described enabling relay agent server
21-8 21-9 21-12 21-7 3-9 25-1 19-8
packet format, suboption circuit ID remote ID DHCP snooping and private VLANs binding database See DHCP snooping binding database configuration guidelines default configuration
21-8 21-7 21-12 21-4 21-4 21-4
remote ID suboption
default configuration
21-5
IN-10
78-16180-02
Index
DHCP snooping (continued) displaying binding database displaying configuration message exchange process option 82 data insertion trusted interface untrusted interface untrusted messages adding bindings binding file format location bindings
21-6 21-5 21-5 21-13 21-8 21-2 21-2 21-2 21-14 21-14 21-4
32-2 34-34
21-3
creating and removing displaying the working discovery, clusters See automatic discovery
Distance Vector Multicast Routing Protocol See DVMRP distance-vector protocols distribute-list command DNS and DHCP-based autoconfiguration default configuration overview setting up support for
7-16 7-17 1-4 xxxvii xxxvi 7-17 7-18 4-6 34-3 34-72
clearing agent statistics configuration guidelines configuring deleting binding file bindings described displaying binding entries enabling entry
21-12 21-14 21-13 21-13 21-13 21-12
default configuration
database agent
21-5
21-13
configuration files preparing reasons for using FTP using RCP using TFTP
32-2 B-10, B-13, B-16 B-8 B-13 B-17 B-11
21-13 21-6
DHCP snooping binding table See DHCP snooping binding database Differentiated Services architecture, QoS
IN-11
Index
downloading (continued) image files deleting old image preparing reasons for using CMS using FTP using HTTP using RCP using TFTP DSCP
1-7, 32-2 32-14 32-17 B-20 1-2, 3-16, B-20 B-26 1-2, 3-16, B-20 B-31 B-23 B-24 B-22, B-25, B-29
advertising the default route to neighbors caching DVMRP routes learned in report messages 36-43 changing the threshold for syslog messages deleting displaying
36-51 36-51 36-49
36-46
DSCP input queue threshold map for QoS DSCP output queue threshold map for QoS DSCP-to-CoS map for QoS DTP
1-6, 13-17 34-34 32-52
limiting the number injected into MBONE limiting unicast route advertisements routing table
36-7 36-7 36-37
36-46
DSCP-to-DSCP-mutation map for QoS DUAL finite state machine, EIGRP duplex mode, configuring DVMRP autosummarization configuring a summary address disabling
36-49 11-14
32-53
36-42
characteristics configuring
36-39
13-4
13-30
connecting PIM domain to DVMRP router enabling unicast routing interoperability with Cisco devices
36-37 36-7 36-42 36-43
defined
11-3
dynamic addresses See addresses dynamic ARP inspection ARP cache poisoning ARP spoofing attack
36-41 36-37 22-1 22-1
36-45
22-8
22-4, 22-10
IN-12
78-16180-02
Index
dynamic ARP inspection (continued) default configuration described displaying ARP ACLs log buffer statistics
22-14 22-14 22-1 22-2 22-5 22-10
reconfirming
types of connections
34-3
trust state and rate limit function of log buffer clearing displaying
22-15 22-12 22-15 22-2 22-3
E
22-4
EBGP
34-40
editing features enabling and disabling keystrokes used wrapped lines EIGRP and IGRP
22-4 22-2 22-3 22-4 34-36 34-38 34-34 34-36 34-35 2-6 2-8 2-6
configuring
network security issues and interface trust states priority of ARP ACLs and DHCP snooping entries rate limiting of ARP packets configuring described statistics clearing displaying
22-15 22-15 22-11 22-10 22-4 22-4
default configuration
34-34
34-37
error-disabled state
validation checks, performing dynamic auto trunking mode dynamic desirable trunking mode
enable secret password encryption for passwords Enhanced IGRP See EIGRP
4-15
2-4
IN-13
Index
EtherChannel 802.3ad, described automatic creation of channel groups binding physical and logical interfaces numbering of configuring Layer 2 interfaces
33-12 33-16 33-15 33-4 33-11 33-4 33-6 33-5, 33-6
EtherChannel (continued) port-channel interfaces described port groups support for described disabling enabling adding
33-23 33-7, 33-18 33-4 33-4
numbering of
11-5
33-9
configuration guidelines
EtherChannel guard
19-10 19-17 19-17
Ethernet VLANs
13-9 13-8
forwarding methods
with VLANs
33-12
See also hardware installation guide extended-range VLANs configuration guidelines configuring creating defined MSTP
13-1 13-12 13-14 13-13
extended system ID
18-15 17-4, 17-16 10-1
33-19 33-19
STP
33-6 33-19
34-44
IN-14
78-16180-02
Index
F
failover support fallback bridging and protected ports bridge groups creating described displaying function of removing bridge table clearing displaying
38-11 38-11 38-4 11-7 38-4 38-2 38-11 38-2 38-5 38-4 1-5
Fast Uplink Transition Protocol FIB files copying crashinfo description location deleting tar creating extracting file system
B-6 39-25 B-5 34-60
19-6
26-1
39-25
number supported
38-5
B-8
B-6
38-4
displaying available file systems displaying file information local file system names
B-1 B-5 B-3
B-2
network file system names setting the default filtering in a VLAN non-IP traffic
31-30 31-27 B-3
stack changes, effects of disabling on an interface forward-delay interval hello BPDU interval interface priority keepalive messages path cost
38-8 38-7
2-8 2-8
filtering show and more command output filters, IP See ACLs, IP flash device, number of Flex Links configuration guidelines configuring
38-7 20-3 20-2 20-2 B-1
17-2 38-10
maximum-idle interval
24-6 1-7
17-12
Catalyst 3750 Switch Software Configuration Guide
78-16180-02
IN-15
Index
H
hardware limitations and Layer 3 interfaces HC (candidate switch) hello time MSTP STP history changing the buffer size described
38-1 2-4 2-5 2-5 29-10 2-5 18-20 17-22 2-3 6-21 11-21
QoS egress queueing and scheduling QoS ingress queueing and scheduling QoS policing and marking flow control MSTP STP
1-3, 11-17 32-9
forward-delay time
18-21 17-23
Forwarding Information Base See FIB forwarding nonroutable protocols FTP accessing MIB files configuration files downloading overview uploading image files deleting old image downloading uploading
B-26 B-25 B-28 B-13 B-12 B-13 A-3
disabling
history table, level and number of syslog messages abbreviations appended to in clusters host ports configuring kinds of
15-11 15-2 13-33 6-13 6-20
hosts, limit on dynamic ports Hot Standby Router Protocol See HSRP HP OpenView HSRP
1-4
G
get-bulk-request operation get-next-request operation get-request operation get-response operation Gigabit modules See SFPs global configuration mode guest VLAN and 802.1x guide audience purpose of guide mode
xxxv xxxv 1-2, 3-5
Catalyst 3750 Switch Software Configuration Guide
authentication string
default configuration
35-1 35-4 35-11 35-1 35-6
2-2 10-8
routing redundancy
IN-16
78-16180-02
Index
leave processing, enabling leaving multicast group multicast reachability overview queries
36-2 23-4 36-27
23-5
See also clusters, cluster standby group, and standby command switch
I
IBPG ICMP redirect messages support for
1-9 39-18 34-12 34-40
report suppression described disabling support for Version 1 changing to Version 2 described Version 2
31-20 31-22 36-3 39-18 36-29 23-5 23-11 1-4
time-exceeded messages traceroute and unreachable messages unreachables and ACLs ICMP ping executing overview See IRDP IDS appliances and ingress RSPAN and ingress SPAN IEEE 802.1p IFS
1-5 16-1 30-6 27-21 27-15 39-15 39-14
36-29
maximum query response time value pruning groups IGMP filtering configuring described monitoring support for IGMP groups configuring filtering IGMP profile
36-27 36-32 23-23 23-23 23-21 23-20 36-31 36-31
36-31
default configuration
23-19 23-25 1-4
as a member of a group controlling access to groups default configuration deleting cache entries displaying groups fast switching
36-32
configuration mode configuring IGMP snooping and address aliasing and stack changes configuring
23-6 23-21
36-28
23-2 23-6
36-51
36-30
23-6
IN-17
Index
IGMP snooping (continued) enabling and disabling global configuration Immediate Leave in the switch stack method
23-7 23-12 1-4 23-7 23-5 23-6 23-7 23-7
VLAN configuration IGMP throttling configuring described IGP IGRP split horizon support for described enabling defaults
34-24 1-8 34-25 23-23
physical, identifying
11-9 11-25 11-25
default configuration
23-20
shutting down
23-25 11-24 11-7 11-1
displaying action
supported
interfaces range macro command interface types See IGP Interior Gateway Routing Protocol See IGRP internal BGP See IBGP internal neighbors, BGP See ICMP
34-44 11-7
11-10
initial configuration
1-10 1-2, 1-10, 3-12 1-10
Express Setup
Internet Control Message Protocol Internet Group Management Protocol See IGMP Inter-Switch Link See ISL inter-VLAN routing
1-8, 34-2
range macros
interface configuration mode configuration guidelines 10-Gigabit Ethernet duplex and speed configuring duplex mode procedure speed
11-14 11-14 11-8 11-14 11-15
IN-18
78-16180-02
Index
IP ACLs applying to an interface extended, creating implicit deny implicit masks logging named
31-16 31-15 31-9 31-11 32-7 31-20
IP multicast routing (continued) and IGMP snooping Auto-RP adding to an existing sparse-mode cloud benefits of
36-14 36-51 36-10 36-17 36-14 23-1
filtering incoming RP announcement messages preventing candidate RP spoofing setting up in a new internetwork
6-4, 6-13 36-17 36-16
36-22
cluster access
default configuration
34-5
overview
redundant clusters
standby command switch See also IP information IP broadcast address IP directed broadcasts IP information assigned manually
4-10 34-16
34-61
36-8
23-21
36-11
group-to-RP mappings
36-5
BSR MBONE
36-5
36-51
all-multicast-routers
36-34 36-46
36-35
IN-19
Index
IP multicast routing (continued) SAP packets for conference session announcement 36-34 Session Directory (sdr) tool, described monitoring packet rate loss peering devices tracing a path
36-52 36-52 36-52 36-6 36-9 36-34
IP protocols in ACLs routing IP routing connecting interfaces with disabling enabling and 802.1x
34-19 34-19 11-7 31-12 1-8 34-74
IP routes, monitoring
multicast forwarding, described protocol interaction routing table deleting displaying RP assigning manually configuring Auto-RP
36-12 36-14 36-18 36-51 36-52 36-2 36-6
IP source guard
21-17 21-15 21-17 21-17 21-17 21-17 21-17
and DHCP snooping and EtherChannels and port security and routed ports and TCAM entries and trunk interfaces and VRF
21-17
configuring PIMv2 BSR using Auto-RP and BSR stacking stack master functions stack member functions See also CGMP See also DVMRP See also IGMP See also PIM IP phones and QoS
16-1
manual
binding table
configuration guidelines
36-8 36-8 36-51
default configuration described disabling displaying bindings enabling filtering source IP address
32-18 21-19 21-19 21-15 21-18
21-16
configuration
21-17
21-16 21-16
21-16 21-16
ensuring port security with QoS trusted boundary for QoS IP precedence
32-2 32-35
32-50
deleting
IN-20
78-16180-02
Index
administrative distances
assigning IP addresses to Layer 3 interfaces authentication keys broadcast address flooding packets storms
34-16 34-17 34-14 34-14 34-7 34-62 34-73
reverse address resolution routed ports static routing subnet mask subnet zero supernet UDP with SVIs
34-16 34-4 34-7 34-4 34-2 34-5
steps to configure
34-6 34-7
See also EIGRP See also OSPF See also RIP IRDP configuring
34-13 34-13 1-9
directed broadcasts
34-19
dynamic routing
34-19
34-3
34-6 34-5
configuring
34-13
J
join messages, IGMP
34-4 34-9 23-3
IN-21
Index
K
KDC described
9-32
MAC addresses and VLANs multiple devices on a port unicast traffic Layer 2 trunks
9-35 39-16 39-16
See also Kerberos keepalive messages Kerberos authenticating to boundary switch KDC
9-35 9-35 9-32
13-17 1-8
34-6 34-6
configuration examples
Layer 3 packets, classification methods LEDs, switch See hardware installation guide line configuration mode See EtherChannel link redundancy
2-2
32-2
operation
9-33
L
LACP See EtherChannel Layer 2 frames, classification with CoS Layer 2 interfaces, default configuration Layer 2 traceroute and ARP and CDP described
39-17 39-16 39-16 32-2 11-12
See system message logging Long-Reach Ethernet (LRE) technology loop guard described enabling support for
19-11 19-18 1-6 6-17 1-14, 1-21
broadcast traffic
39-16
IN-22
78-16180-02
Index
M
MAC addresses aging time
7-22 7-21 7-21
displaying in DHCP snooping binding database displaying in the IP source binding table dynamic learning removing in ACLs static adding allowing dropping removing
7-26 7-27 7-25 7-21 7-23
clustering CMS
1-2
overview
1-4 1-3
switch stacks
31-27
IP address association
discovery through different management VLANs mapping tables for QoS configuring CoS-to-DSCP DSCP
32-49 32-52 32-53 32-50 32-50
characteristics of
7-27 7-26
DSCP-to-CoS
1-9
MAC address notification, support for MAC address-to-VLAN mapping MAC extended access lists applying to Layer 2 interfaces configuring for QoS creating defined macros See Smartports macros manageability features
1-4 31-27 31-27 32-5 32-41
18-22
IN-23
Index
fallback bridging
1-9 20-3
automatic discovery
6-2 6-23 6-13
Flex Links
35-11
filters interfaces IP
snooping
See also candidate switch, cluster standby group, and standby command switch menu bar variations messages logging ACL violations to users through banners metrics, in BGP MHSRP MIBs accessing files with FTP location of files overview supported See POP mirroring traffic for analysis mismatches, autonegotiation module number monitoring access groups BGP CDP
34-59 26-1 31-40 31-40 11-7 27-1 39-13 30-1 30-5 A-3 A-3 35-7 34-48 34-68 31-16 7-18 3-4
34-18 36-50
23-12
27-2
15-15 36-23
RP mapping information
11-24, 39-14 1-9
mini-point-of-presence
SFP status
source-active messages speed and duplex mode traffic suppression VLAN filters maps VLANs VMPS VTP
31-41 31-41 13-16 13-32 14-16 24-16
ACL configuration
IN-24
78-16180-02
Index
MSDP benefits of
37-3 37-19
MSTP boundary ports configuration guidelines described described enabling BPDU guard described
37-17 37-18 19-3 19-13 18-3 18-13, 19-12 18-5 18-14
clearing MSDP connections and statistics controlling source information forwarded by switch originated by switch received by switch default configuration dense-mode regions sending SA messages to filtering incoming SA messages SA messages to a peer SA requests from a peer join latency, defined meshed groups configuring defined overview peers configuring a default monitoring
37-19 37-1 37-8 37-4 37-16 37-16 37-18 37-6 37-14 37-12 37-11 37-12 37-9 37-14 37-4
BPDU filtering
19-3 19-14
enabling
18-21
link type for rapid convergence maximum aging time maximum hop count MST region path cost root switch port priority
18-14 18-19 18-18 18-15 18-17 18-22 18-22
18-23
peer-RPF flooding
operations between regions default configuration displaying status enabling the mode EtherChannel guard described enabling
19-10 19-17 18-13
18-4
19-12
filtering from a peer filtering incoming filtering to a peer monitoring support for
37-19
IN-25
Index
MSTP (continued) interface state, blocking to forwarding interoperability with 802.1D described IST defined master loop guard described enabling MST region CIST
18-3 18-14 18-2 18-5 19-11 19-18 18-14 18-3 18-3 18-3 18-6 18-23 19-2 17-11
multicast packets
31-40 24-6 23-12
multicast router interfaces, monitoring multicast router ports, adding See MSDP multicast storm
24-2 24-4 23-9
multicast storm-control command Multicast VLAN Registration See MVR Multiple HSRP See MHSRP Multiple Spanning Tree Protocol See MSTP
hop-count mechanism
supported spanning-tree instances optional features supported overview Port Fast described enabling root guard described enabling root switch configuring
18-16 19-10 19-17 19-2 19-12 18-2 1-6
18-2
modes
effects of extended system ID unexpected behavior stack changes, effects of status, displaying
18-24 18-16
18-15
N
named IP ACLs
31-15
19-3
34-54
IN-26
78-16180-02
Index
support for
1-15
server aggregation and Linux server cluster small to medium-sized network network design performance services CDP SNMP See NTP no commands
2-4 31-27 1-13 1-13 1-17
synchronizing
network management
25-1 28-1 30-1
O
offline configuration for switch stacks Open Shortest Path First See OSPF optimizing system resources options, management OSPF area parameters, configuring configuring
13-7 34-27 34-29 1-4 8-1 5-7
RMON
non-IP traffic filtering nontrunking mode normal-range VLANs configuration modes defined
13-1
13-18
no switchport command note, described See NSSA NSSA, OSPF NTP associations authenticating defined peer server
7-6 7-6 7-2 7-5 34-29 xxxvi
11-4
route described
settings
not-so-stubby areas
interface parameters, configuring LSA group pacing monitoring router IDs support for
7-7 34-33 34-32 34-30 34-32
route summarization
1-8 34-30
virtual links
out-of-profile markdown
7-4
1-8
default configuration
IN-27
Index
P
packet modification, with QoS PAgP See EtherChannel parallel paths, in routing tables passive interfaces configuring OSPF passwords default configuration disabling recovery of encrypting for security in clusters overview recovery of setting enable Telnet
9-3 9-4 9-4 1-6 6-14, 6-19 9-1 39-4 9-2 9-5 34-31 34-71 34-62 32-17
displaying neighbors
36-11
router-query message interval, modifying shared tree and source tree, overview shortest path tree, delaying the use of sparse mode join messages and shared tree overview
36-4 36-5 36-4
36-26
36-23 36-25
prune messages RPF lookups support for versions interoperability v2 improvements ping
1-9
36-7
enable secret
9-6
36-9 36-23
with usernames VTP domain path cost MSTP STP PBR defined enabling
34-68 34-69 18-19 17-20
PIM-DVMRP, as snooping method character output description executing overview PoE configuring
34-70 11-19 1-9 39-13 32-51 39-15 39-14 39-15
fast-switched policy-based routing local policy-based routing PC (passive command switch) peers, BGP
34-54 1-12 34-70
support for
6-10, 6-21
for each matched traffic class for more than one traffic class described displaying
32-3 32-67
32-44 32-47
IN-28
78-16180-02
Index
token-bucket algorithm policy-based routing See PBR policy maps for QoS characteristics of configuring described displaying POP
1-21 32-44 32-7 32-68
10-9
10-8 10-3
10-19
10-9
authorization state and dot1x port-control command 10-4 authorized and unauthorized voice VLAN
10-7 10-4
authentication server
10-2 10-2
described interactions
10-13
RADIUS server
RADIUS client
10-15 10-18
RADIUS server parameters on the switch switch-to-client retransmission time default configuration described
10-1 10-11 10-17
topologies, supported
10-13, 32-24
IN-29
Index
port-based authentication (continued) VLAN assignment AAA authorization characteristics described voice VLAN described PVID VVID port-channel See EtherChannel Port Fast described enabling support for port priority MSTP STP ports 10-Gigabit Ethernet module access blocking protected routed secure switch trunks
11-3 24-6 13-4 11-4 18-18 17-18 19-2 19-12 13-29 10-7 10-7 1-3, 24-6 10-7 10-7 10-8 10-8 10-13
configuration tasks
default configuration
24-7 24-16
port blocking
24-10 13-28
primary VLANs
16-6
private VLAN edge ports See protected ports private VLANs across multiple switches and SDM template
13-3, 13-11 15-4 15-4
dynamic access
24-5 11-3 24-7
static-access
11-2
15-5 15-5
13-3, 13-17
VLAN assignments
community ports
community VLANs
IN-30
78-16180-02
Index
Protocol-Independent Multicast Protocol See PIM provisioning new members for a switch stack proxy ARP configuring definition pruning, VTP
34-11 34-9 34-12 5-7
default configuration end station access to IP addressing isolated port mapping monitoring ports community
15-2 15-3 15-2
with IP routing disabled disabling in VTP domain on a port enabling in VTP domain
15-8 15-11 15-13 14-14 13-23 14-14
isolated VLANs
15-14 15-15
15-2, 15-3
pruning-eligible list
13-22 14-5
17-11
instances supported
2-2
9-9
Q
QoS and MQC commands auto-QoS categorizing traffic
32-18 32-28 32-1
6-23
protected ports
IN-31
Index
QoS (continued) configuring (continued) port trust states within the domain trusted boundary
32-35 32-18 32-29 32-32
example configuration ingress queue defaults basic model classification class maps, described defined flowchart
32-3 32-6 32-3
32-7
forwarding treatment in frames and packets IP ACLs, described options for IP traffic policy maps, described trust DSCP, described trusted CoS, described class maps configuring displaying auto-QoS configuring aggregate policers auto-QoS DSCP maps
32-18 32-42 32-67
mapping DSCP or CoS values scheduling, described setting WTD thresholds WTD, described enabling globally flowcharts classification
32-6 32-17 32-32 32-4 32-60
32-62
egress queueing and scheduling ingress queueing and scheduling policing and marking implicit deny ingress queues allocating bandwidth
32-47 32-58 32-57 32-7 32-9
32-15 32-13
configuration guidelines
32-23 32-31
standard QoS
32-14
32-58
DSCP trust states bordering another domain egress queue characteristics ingress queue characteristics IP extended ACLs IP standard ACLs MAC ACLs policy maps
32-41 32-44 32-40 32-38 32-60 32-55
described flowchart
32-3 32-56
32-56
IN-32
78-16180-02
Index
QoS (continued) ingress queues (continued) setting WTD thresholds WTD, described IP phones automatic classification and queueing detection and trusted settings mapping tables CoS-to-DSCP displaying DSCP-to-CoS
32-50 32-67 32-52 32-53 32-50 32-18 32-18, 32-35 32-66 32-14 32-56
QoS (continued) queues configuring egress characteristics configuring ingress characteristics high priority (expedite) location of
32-11 32-12 32-11 32-17, 32-66 32-60 32-55
32-36
marked-down actions marking, described overview policers configuring described displaying number of types of policing described policy maps characteristics of configuring displaying
32-44 32-68 32-3, 32-8 32-1
23-4
packet modification
32-17
R
RADIUS attributes vendor-proprietary vendor-specific configuring
32-9 9-31 9-29
32-8
accounting authorization
authentication
32-9
communication, per-server
9-21 9-20
9-25 9-31
IN-33
Index
limiting the services to the user method list, defined operation of overview support for range macro
11-10 11-9 18-8 9-19 9-18
port priority
9-28
redundant clusters See cluster standby group redundant links and UplinkFast reloading software See RADIUS Remote Copy Protocol
4-16 19-15 34-34
of interfaces
17-11
See RCP Remote Network Monitoring See RMON Remote SPAN See RSPAN report suppression, IGMP
instances supported See RSTP RARP RCP configuration files downloading overview uploading image files deleting old image downloading uploading
B-31 B-17 B-16 34-9
rcommand command
6-23
23-5 23-11
31-15
26-6
B-29
overview
13-31
9-1 9-2
13-32
IN-34
78-16180-02
Index
34-9
1112, IP multicast and IGMP 1157, SNMPv1 1163, BGP 1253, OSPF 1267, BGP 1305, NTP 1587, NSSAs 1757, RMON 1771, BGP
30-2 34-40 34-6
MSTP STP
route calculation timers, OSPF route dampening, BGP routed packets, ACLs on routed ports configuring defined
11-3 6-8 11-21, 34-5 34-70 34-4 34-58 31-39
1166, IP addresses
34-25 34-40 7-2 34-25 28-2
34-40 30-2
1901, SNMPv2C
1902 to 1907, SNMPv2 2273-2275, SNMPv3 RIP advertisements authentication configuring described hop counts split horizon support for RMON default configuration displaying status groups supported overview statistics
28-1 28-6 34-20 34-23 34-21
34-57
default configuration
34-20 34-20 34-23
summary addresses
1-8
34-64
34-56
34-63
IN-35
Index
configuration guidelines default configuration destination ports displaying status in a switch stack monitored ports monitoring ports overview
1-9, 27-1 27-5 27-11 27-8 27-24 27-2
18-8, 18-23
4-10
S
SC (standby command switch) scheduled reloads SDM described
27-23 27-18 27-21 8-1 5-10 4-16 6-10, 6-20
limiting source traffic to specific VLANs specifying monitored ports with ingress traffic enabled source ports VLAN-based RSTP active topology BPDU format
18-10 18-11 18-7 18-7 18-7 27-6 27-6
switch stack consideration templates configuring number of SDM template aggregator configuring desktop types of
8-1 8-1 15-2 8-1 8-3 8-4 8-1
transmitted traffic
27-7
5-10, 8-2
processing
24-8
24-15
9-38
synchronized
See SSH
IN-36
78-16180-02
Index
security, port
applying global parameter values applying parameter values configuration guidelines creating defined
12-4 12-2
service-provider network, MSTP and RSTP set-request operation setup (CLI) program setup program failed command switch replacement replacing failed command switch SFPs monitoring status of numbering of status displaying See SRR show access-lists hw-summary command show and more command output, filtering show cdp traffic command
25-5 6-23 1-9 11-8 39-13 1-9, 11-24, 39-14 39-11 39-9 30-5 1-10
default configuration
12-1 12-8
displaying tracing
29-9
12-3 12-2
25-1
30-5
30-4
show cluster members command show configuration command show forward command show interfaces command
39-23
30-16 30-7
11-20
interface description in
Simple Network Management Protocol small form-factor pluggable modules See SFPs
30-12
30-5
IN-37
Index
SNMP (continued) limiting access by TFTP servers manager functions MIBs location of supported notifications overview security levels
A-3 A-1 30-5 1-4, 30-3 6-24 30-16 29-10
31-12
source-and-destination-IP address based forwarding, EtherChannel 33-8 source-and-destination MAC address forwarding, EtherChannel 33-8 source-IP address based forwarding, EtherChannel source-MAC address forwarding, EtherChannel SPAN and stack changes
27-10 27-11 33-8 33-8
27-11
status, displaying
system contact and location trap manager, configuring traps described disabling enabling overview types of users SNMPv1 SNMPv2C SNMPv3
30-3, 30-5
27-9
30-5
27-16, 27-22
limiting source traffic to specific VLANs removing destination (monitoring) ports specifying monitored ports with ingress traffic enabled source ports
23-1 27-6 27-6 27-12 27-15
27-16 27-14
versions supported
30-2 30-2 30-2
snooping, IGMP
software compatibility See stacks, switch software images location in flash scheduling reloads
B-20 39-2 4-16 B-21
spanning tree and native VLANs Spanning Tree Protocol See STP SPAN traffic split horizon IGRP RIP
34-24 34-23 27-5
13-19
recovery procedures
11-14
IN-38
78-16180-02
Index
SRR configuring shaped weights on egress queues shared weights on egress queues shared weights on ingress queues described
32-12 32-12 32-12 1-8 32-64 32-65 32-58
See also stacks, switch accessing CLI of specific member configuring member number
5-17 5-19
9-39 9-37
5-18
displaying information of
5-6 5-7
5-20
encryption methods
user authentication methods, supported 802.1x port-based authentication ACL configuration CDP
25-2 33-12 31-6 10-10
provisioning a new member See also stacks, switch stack member number stack protocol version stacks, switch
11-7 5-11
5-18
accessing CLI of specific member assigning information member number priority value
7-22 5-17 5-18 5-18
5-19
compatibility, software
5-12
5-15 B-34
5-20
5-11, B-34
78-16180-02
IN-39
Index
stacks, switch (continued) MAC address considerations management connectivity managing membership merged
5-3 17-10 36-8 5-1 5-3 7-22 5-14
1-3
Standby Command Configuration window standby command switch configuring defined priority
6-2 6-10 6-3 6-11 6-20 6-11
6-21
considerations
requirements
5-8 5-10 5-10
effects of adding a provisioned switch effects of replacing a provisioned switch provisioned configuration, defined provisioned switch, defined provisioning a new member partitioned adding replacing
5-3, 39-8 5-7 5-18 5-7
See also cluster standby group and HSRP See cluster standby group and HSRP standby ip command standby links standby router
20-1 35-1 35-9 35-4
provisioned switch
5-8 5-10 5-10
removing
4-13
replacing a failed member software compatibility software image version stack protocol version STP bridge ID
17-3
configuration file automatically downloading specifying the filename default boot configuration static access ports assigning to VLAN
13-11 4-12 4-12 4-12
defined
11-3, 13-3
7-14
13-2
IN-40
78-16180-02
Index
IP multicast routing
34-33
QoS ingress and egress RMON group Ethernet RMON group history SNMP input and output VTP
14-16 24-8
secondary root switch spanning-tree mode switch priority counters, clearing described enabling
19-5 19-16 17-21 17-24
17-17 17-14
sticky learning storm control configuring described displaying support for thresholds STP
cross-stack UplinkFast
24-3 24-2 24-16 1-3 24-2
default configuration
17-13 19-12
default optional feature configuration designated port, defined designated switch, defined
17-4 17-9 17-4 17-4 19-8
802.1D and multicast addresses 802.1t and VLAN identifier BackboneFast described disabling enabling described disabling enabling BPDU guard described disabling enabling
19-3 19-14 19-13 17-3 19-7 19-17 19-16
EtherChannel guard
BPDU filtering
19-3 19-15 19-14
effects on the secondary root switch unexpected behavior features supported inferior BPDU
17-3 17-10 1-5
instances supported
19-2
IN-41
Index
STP (continued) interface states blocking disabled learning listening overview forwarding
17-7 17-8 17-6, 17-7
interoperability and compatibility among modes keepalive messages load sharing overview
13-24 13-26 13-24 17-2 17-11
status, displaying superior BPDU timers, described UplinkFast described enabling stratum, NTP VLAN-bridge
7-2 19-4 19-15
17-12
34-29 15-1
subdomains, private VLAN subnet mask subnet zero summer time supernet
34-7 34-6 34-7
modes supported
multicast addresses, effect of optional features supported overview path costs Port Fast described enabling port priorities
19-2 19-12 13-25 17-2 13-26, 13-27
13-28
34-4
preventing root switch selection protocols supported root guard described enabling
19-10 19-17 17-3
11-6
redundant connectivity
routing between VLANs switch clustering technology See also clusters, switch switch console port
17-3 1-5
13-2 6-1
IN-42
78-16180-02
Index
switchport block multicast command switchport block unicast command switchport command switch priority MSTP STP
18-20 17-21 1-1 11-13 24-5
time stamps, enabling and disabling UNIX syslog servers configuring the daemon facilities supported system name default configuration default setting See also DNS
7-15 7-15 7-15 29-13 29-11
29-12
switch software features switch virtual interface See SVI synchronization, BGP syslog
manual configuration
34-44
See system message logging system clock configuring daylight saving time manually time zones overview
7-2 7-11 7-13 7-12 7-12 7-13
manual configuration
T
TACACS+ accounting, defined authorization, defined configuring accounting
9-17 9-13 9-11 9-11 9-11
summer time
displaying the time and date See also NTP system message logging default configuration disabling enabling
29-4 29-4
authentication, defined
authentication key
29-9
authorization
login authentication default configuration identifying the server in clusters operation of overview
29-8 6-16
facility keywords, described level keywords, described limiting messages message format overview
29-1 29-10 29-2
9-16
sequence numbers, enabling and disabling setting the display destination device
29-5
support for
9-17
IN-43
Index
tar files creating extracting TDR Telnet accessing management interfaces from a browser
2-10 1-5 2-9 1-9 B-6 B-6
Topology view, described traceroute, Layer 2 and ARP and CDP described
39-17 39-16 39-16
broadcast traffic
39-16
39-17 39-16
Terminal Access Controller Access Control System Plus terminal lines, setting a password TFTP configuration files downloading uploading
B-11 B-10
39-17
configuration files in base directory configuring for autoconfiguration image files deleting
B-24 B-23 B-22
traffic suppression
7-23
See NTP and system clock Time Domain Reflector See TDR time-range command time ranges in ACLs time zones
7-12 31-17 31-17 29-7
30-1, 30-5
connectivity problems
IN-44
78-16180-02
Index
troubleshooting (continued) SFP security and identification show forward command with CiscoWorks with ping
39-14 29-1 30-5 39-21 39-23 39-13
U
UDLD default configuration disabling fiber-optic interfaces globally
26-5 26-6 26-3 26-5 26-4
with system message logging with traceroute trunk ports configuring defined encapsulation trunks allowed-VLAN list configuring ISL
13-17 13-21 13-20, 13-25, 13-27 13-20 11-3, 13-3 39-17 1-6
trunking encapsulation
per interface
26-6 26-1
26-7
load sharing setting STP path costs using STP port priorities parallel
13-26 13-22 13-17 13-26 13-24, 13-25 13-23
UDP, configuring
unauthorized ports with 802.1x unicast MAC address filtering and adding static addresses and CPU packets
7-26 7-26
native VLAN for untagged traffic pruning-eligible list to non-DTP device understanding trusted port states between QoS domains classification options support for
1-8 32-32 32-36 32-5 13-17 32-35
and broadcast MAC addresses and multicast addresses configuration guidelines described unicast storm
7-26 24-2
7-26 7-26
24-4
ensuring port security for IP phones within a QoS domain type of service See ToS
24-6
UniDirectional Link Detection protocol UNIX syslog servers daemon configuration facilities supported
29-11 29-13 29-12
IN-45
Index
unrecognized Type-Length-Value (TLV) support upgrading information See release notes upgrading software images See downloading UplinkFast described disabling enabling support for uploading configuration files preparing reasons for using FTP using RCP using TFTP image files preparing reasons for using FTP using RCP using TFTP See UDP user EXEC mode
2-2 9-7 B-22, B-25, B-29 B-20 B-28 B-33 B-24 B-10, B-13, B-16 B-8 B-15 B-18 B-11 19-4 19-16 19-15 1-5
14-4
13-21
13-28
2-2, 13-7
13-8
13-8
vlan global configuration command VLAN management domain See VMPS VLAN map entries, order of VLAN maps applying
31-34 31-34 31-35 31-30 31-30 14-2
13-7
username-based authentication
V
version-dependent transparent mode version mismatch (VM) mode virtual IP address cluster standby group command switch virtual router vlan.dat file See also IP addresses
35-1, 35-2 13-5 13-22 6-11, 6-21 6-11, 6-21 5-12 14-4
31-36 31-32
IN-46
78-16180-02
Index
VLAN-bridge STP
14-3
configuration guidelines, extended-range VLANs configuration guidelines, normal-range VLANs configuration options configuring
13-1 13-13 13-7
13-29
configuring IDs 1006 to 4094 connecting through SVIs creating in config-vlan mode default configuration deleting described displaying features illustrated internal
13-11 11-2, 13-1 13-16 13-1, 13-12 13-8
reconfirming
troubleshooting
mapping MAC addresses to VLANs reconfirmation interval, changing reconfirming membership retry count, changing voice-over-IP voice VLAN Cisco 7960 phone, port connections
16-1 13-31 13-32
13-31
extended-range
1-6 13-2 13-13
16-1
configuration guidelines
8-4, 16-3
limiting source traffic with RSPAN limiting source traffic with SPAN modifying
13-9 13-23
configuring IP phones for data traffic override CoS of incoming frame configuring ports for voice traffic in 802.1p priority tagged frames 802.1Q frames
16-4 16-4 16-5 16-6 16-6
connecting to an IP phone
13-3
16-3
17-11
displaying VQP
1-6, 13-27
Catalyst 3750 Switch Software Configuration Guide
78-16180-02
IN-47
Index
VTP adding a client to a domain advertisements and extended-range VLANs and normal-range VLANs client mode, configuring configuration global configuration mode guidelines
14-8 14-7 14-7 14-15 13-19, 14-3, 14-4 14-2 14-2 14-11
VLAN configuration mode configuration mode options configuration requirements guideline resetting configuring client mode server mode
14-11 14-10 14-12 14-4 14-7 14-15 14-15
14-12
14-9
transparent mode consistency checks default configuration described disabling domains modes client server
14-3, 14-11 14-3, 14-10 14-3 14-1 14-12 14-8
W
weighted tail drop See WTD wizards WTD described
32-11 1-2, 3-6
domain names
14-2
14-9
X
Xmodem protocol
39-2
IN-48
78-16180-02