- Finding Feature Information
- Contents
- Restrictions for HSRP
- Information About HSRP
- HSRP Operation
- HSRP Version 2 Design
- HSRP Benefits
- HSRP Groups and Group Attributes
- HSRP Preemption
- HSRP Priority and Preemption
- How Object Tracking Affects the Priority of an HSRP Router
- HSRP Addressing
- Virtual MAC Addresses and BIA MAC Addresses
- HSRP Timers
- HSRP Text Authentication
- HSRP MD5 Authentication
- HSRP Messages and States
- HSRP and ARP
- HSRP Object Tracking
- HSRP Group Shutdown
- HSRP Support for ICMP Redirects
- ICMP Redirects to Active HSRP Routers
- ICMP Redirects to Passive HSRP Routers
- ICMP Redirects to Non-HSRP Routers
- Passive HSRP Router Advertisements
- ICMP Redirects Not Sent
- HSRP Support for MPLS VPNs
- HSRP Multiple Group Optimization
- ISSU—HSRP
- SSO HSRP
- HSRP MIB Traps
- How to Configure HSRP
- Enabling HSRP
- Delaying the Initialization of HSRP on an Interface
- Configuring HSRP Priority and Preemption
- Configuring HSRP Object Tracking
- Configuring HSRP MD5 Authentication Using a Key String
- Configuring HSRP MD5 Authentication Using a Key Chain
- Troubleshooting HSRP MD5 Authentication
- Configuring HSRP Text Authentication
- Customizing HSRP
- Configuring Multiple HSRP Groups for Load Balancing
- Enabling HSRP Support for ICMP Redirects
- Improving CPU and Network Performance with HSRP Multiple Group Optimization
- Configuring HSRP Virtual MAC Addresses or BIA MAC Addresses
- Changing to HSRP Version 2
- Enabling SSO Aware HSRP
- Verifying SSO Aware HSRP
- Enabling HSRP MIB Traps
- Configuration Examples for HSRP
- Example: HSRP Priority and Preemption
- Example: HSRP Object Tracking
- Example: HSRP Group Shutdown
- Example: HSRP MD5 Authentication Using Key Strings
- Example: HSRP MD5 Authentication Using Key Chains
- Example: HSRP MD5 Authentication Using Key Strings and Key Chains
- Example: HSRP Text Authentication
- Example: Multiple HSRP for Load Balancing
- Example: Improving CPU and Network Performance with HSRP Multiple Group Optimization
- Example: HSRP Support for ICMP Redirect Messages
- Example: HSRP Virtual MAC Addresses and BIA MAC Address
- Example: HSRP Version 2
- Example: SSO HSRP
- Example: HSRP MIB Traps:
- Additional References
- Feature Information for HSRP
- Glossary
Configuring HSRP
The Hot Standby Router Protocol (HSRP) is a First Hop Redundancy Protocol (FHRP) designed to allow for transparent fail-over of the first-hop IP router. HSRP provides high network availability by providing first-hop routing redundancy for IP hosts networks configured with a default gateway IP address. HSRP is used in a group of routers for selecting an active router and a standby router. 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 when the active router fails or when preset conditions are met.
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the "Feature Information for HSRP" section.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•Configuration Examples for HSRP
Restrictions for HSRP
•HSRP is designed for use over multiaccess, multicast, or broadcast capable Ethernet LANs. HSRP is not intended as a replacement for existing dynamic protocols.
Information About HSRP
•HSRP Groups and Group Attributes
•How Object Tracking Affects the Priority of an HSRP Router
•Virtual MAC Addresses and BIA MAC Addresses
•Virtual MAC Addresses and BIA MAC Addresses
•HSRP Support for ICMP Redirects
•ICMP Redirects to Active HSRP Routers
•ICMP Redirects to Passive HSRP Routers
•ICMP Redirects to Non-HSRP Routers
•Passive HSRP Router Advertisements
•HSRP Multiple Group Optimization
HSRP Operation
Most IP hosts have an IP address of a single router configured as the default gateway. When HSRP is used, the HSRP virtual IP address is configured as the host's default gateway instead of the IP address of the router.
HSRP is useful for hosts that do not support a router discovery protocol (such as ICMP Router Discovery Protocol [IRDP]) and cannot switch to a new router when their selected router reloads or loses power. Because existing TCP sessions can survive the failover, this protocol also provides a more transparent recovery for hosts that dynamically choose a next hop for routing IP traffic.
When HSRP is configured on a network segment, it provides a virtual MAC address and an IP address that is shared among a group of routers running HSRP. The address of this HSRP group is referred to as the virtual IP address. One of these devices is selected by the protocol to be the active router. The active router receives and routes packets destined for the MAC address of the group. For n routers running HSRP, n + 1 IP and MAC addresses are assigned.
HSRP detects when the designated active router fails, at which point a selected standby router assumes control of the MAC and IP addresses of the Hot Standby group. A new standby router is also selected at that time.
HSRP uses a priority mechanism to determine which HSRP configured router is to be the default active router. To configure a router as the active router, you assign it a priority that is higher than the priority of all the other HSRP-configured routers. The default priority is 100, so if you configure just one router to have a higher priority, that router will be the default active router.
Devices that are running HSRP send and receive multicast User Datagram Protocol (UDP)-based hello messages to detect router failure and to designate active and standby routers. When the active router fails to send a hello message within a configurable period of time, the standby router with the highest priority becomes the active router. The transition of packet forwarding functions between routers is completely transparent to all hosts on the network.
You can configure multiple Hot Standby groups on an interface, thereby making fuller use of redundant routers and load sharing.
Figure 1 shows a network configured for HSRP. By sharing a virtual MAC address and IP address, two or more routers can act as a single virtual router. The virtual router does not physically exist but represents the common default gateway for routers that are configured to provide backup to each other. You do not need to configure the hosts on the LAN with the IP address of the active router. Instead, you configure them with the IP address (virtual IP address) of the virtual router as their default gateway. If the active router fails to send a hello message within the configurable period of time, the standby router takes over and responds to the virtual addresses and becomes the active router, assuming the active router duties.
Figure 1 HSRP Topology
HSRP Version 2 Design
HSRP version 2 is designed to address the following issues relative to HSRP version 1:
•Previously, millisecond timer values are not advertised or learned. HSRP version 2 advertises and learns millisecond timer values. This change ensures stability of the HSRP groups in all cases.
•Group numbers are restricted to the range from 0 to 255. HSRP version 2 expands the group number range from 0 to 4095.
•HSRP version 2 provides improved management and troubleshooting. With HSRP version 1, there is no method to identify from HSRP active hello messages which physical router sent the message because the source MAC address is the HSRP virtual MAC address. The HSRP version 2 packet format includes a 6-byte identifier field that is used to uniquely identify the sender of the message. Typically, this field is populated with the interface MAC address.
•The multicast address 224.0.0.2 is used to send HSRP hello messages. This address can conflict with Cisco Group Management Protocol (CGMP) leave processing.
Version 1 is the default version of HSRP.
HSRP version 2 uses the new IP multicast address 224.0.0.102 to send hello packets instead of the multicast address of 224.0.0.2, which is used by version 1. This new multicast address allows CGMP leave processing to be enabled at the same time as HSRP.
HSRP version 2 permits an expanded group number range, 0 to 4095, and consequently uses a new MAC address range 0000.0C9F.F000 to 0000.0C9F.FFFF. The increased group number range does not imply that an interface can, or should, support that many HSRP groups. The expanded group number range was changed to allow the group number to match the VLAN number on subinterfaces.
When the HSRP version is changed, each group will reinitialize because it now has a new virtual MAC address.
HSRP version 2 has a different packet format than HSRP version 1. The packet format uses a type-length-value (TLV) format. HSRP version 2 packets received by an HSRP version 1 router will have the type field mapped to the version field by HSRP version 1 and subsequently ignored.
The Gateway Load Balancing Protocol (GLBP) also addresses the same issues relative to HSRP version 1 that HSRP version 2 does. See the "Configuring GLBP" module for more information on GLBP.
HSRP Benefits
Redundancy
HSRP employs a redundancy scheme that is time proven and deployed extensively in large networks.
Fast Failover
HSRP provides transparent fast failover of the first-hop router.
Preemption
Preemption allows a standby router to delay becoming active for a configurable amount of time.
Authentication
HSRP message digest 5 (MD5) algorithm authentication protects against HSRP-spoofing software and uses the industry-standard MD5 algorithm for improved reliability and security.
HSRP Groups and Group Attributes
By using the command-line interface (CLI), group attributes can be applied to:
•A single HSRP group—Performed in interface configuration mode and applies to a group.
•All groups on the interface—Performed in interface configuration mode and applies to all groups on the interface.
•All groups on all interfaces—Performed in global configuration mode and applies to all groups on all interfaces.
HSRP Preemption
When a newly reloaded router becomes HSRP active, and there is already an HSRP active router on the network, it may appear that HSRP preemption is not functioning. This can occur because the new HSRP active router did not receive any hello packets from the current HSRP active router, and the preemption configuration never factored into the new routers decision making.
This can occur on some larger hardware platforms where there can be a delay in an interface receiving packets.
In general, we recommend that all HSRP routers have the following configuration:
standby delay minimum 30 reload 60
The standby delay minimum reload interface configuration command delays HSRP groups from initializing for the specified time after the interface comes up.
This command is separate from the standby preempt delay interface configuration command, which enables HSRP preemption delay.
HSRP Priority and Preemption
Preemption enables the HSRP router with the highest priority to immediately become the active router. Priority is determined first by the configured priority value, and then by the IP address. In case of ties, the primary IP addresses are compared, and the higher IP address has priority. In each case, a higher value is of greater priority. If you do not use the standby preempt interface configuration command in the configuration for a router, that router will not become the active router, even if its priority is higher than all other routers.
A standby router with equal priority but a higher IP address will not preempt the active router.
When a router first comes up, it does not have a complete routing table. You can set a preemption delay that allows preemption to be delayed for a configurable time period. This delay period allows the router to populate its routing table before becoming the active router.
How Object Tracking Affects the Priority of an HSRP Router
The priority of a device can change dynamically if it has been configured for object tracking and the object that is being tracked goes down. The tracking process periodically polls the tracked objects and notes any change of value. The changes in the tracked object are communicated to HSRP, either immediately or after a specified delay. The object values are reported as either up or down. Examples of objects that can be tracked are the line protocol state of an interface or the reachability of an IP route. If the specified object goes down, the HSRP priority is reduced. The HSRP router with the higher priority can now become the active router if it has the standby preempt command configured. See the "Configuring HSRP Object Tracking" section for more information on object tracking.
HSRP Addressing
HSRP routers communicate between each other by exchanging HSRP hello packets. These packets are sent to the destination IP multicast address 224.0.0.2 (reserved multicast address used to communicate to all routers) on UDP port 1985. The active router sources hello packets from its configured IP address and the HSRP virtual MAC address while the standby router sources hellos from its configured IP address and the interface MAC address, which may or may not be the Burned-In MAC address (BIA).
Because hosts are configured with their default gateway as the HSRP virtual IP address, hosts must communicate with the MAC address associated with the HSRP virtual IP address. This MAC address will be a virtual MAC address composed of 0000.0C07.ACxy, where xy is the HSRP group number in hexadecimal based on the respective interface. For example, HSRP group one will use the HSRP virtual MAC address of 0000.0C07.AC01. Hosts on the adjoining LAN segment use the normal Address Resolution Protocol (ARP) process to resolve the associated MAC addresses.
HSRP version 2 uses the new IP multicast address 224.0.0.102 to send hello packets instead of the multicast address of 224.0.0.2, which is used by version 1. This new multicast address allows Cisco Group Management Protocol (CGMP) leave processing to be enabled at the same time as HSRP.
HSRP version 2 permits an expanded group number range, 0 to 4095, and consequently uses a new MAC address range 0000.0C9F.F000 to 0000.0C9F.FFFF.
Virtual MAC Addresses and BIA MAC Addresses
Perform this task to configure an HSRP virtual MAC address or a burned-in address (BIA) MAC address.
A router automatically generates a virtual MAC address for each HSRP router. However, some network implementations, such as Advanced Peer-to-Peer Networking (APPN), use the MAC address to identify the first hop for routing purposes. In this case, it is often necessary to be able to specify the virtual MAC address by using the standby mac-address command; the virtual IP address is unimportant for these protocols.
The standby use-bia command was implemented to overcome the limitations of using a functional address for the HSRP MAC address on Token Ring interfaces. This command allows HSRP groups to use the BIA MAC address of an interface instead of the HSRP virtual MAC address. When HSRP runs on a multiple-ring, source-routed bridging environment and the HSRP routers reside on different rings, configuring the standby use-bia command can prevent confusion about the routing information field (RFI).
HSRP Timers
Each HSRP router maintains three timers that are used for timing hello messages: an active timer, a standby timer, and a hello timer. When a timer expires, the router changes to a new HSRP state. Routers or access servers for which timer values are not configured can learn timer values from the active or standby router. The timers configured on the active router always override any other timer settings. All routers in a Hot Standby group should use the same timer values.
For HSRP version 1, nonactive routers learn timer values from the active router, unless millisecond timer values are being used. If millisecond timer values are being used, all routers must be configured with the millisecond timer values. This rule applies if either the hello time or the hold time is specified in milliseconds. This configuration is necessary because the HSRP hello packets advertise the timer values in seconds. HSRP version 2 does not have this limitation; it advertises the timer values in milliseconds.
HSRP Text Authentication
HSRP ignores unauthenticated HSRP protocol messages. The default authentication type is text authentication.
HSRP authentication protects against false HSRP hello packets causing a denial-of-service attack. For example, Router A has a priority of 120 and is the active router. If a host sends spoof HSRP hello packets with a priority of 130, then Router A stops being the active router. If Router A has authentication configured such that the spoof HSRP hello packets are ignored, Router A will remain the active router.
HSRP packets will be rejected in any of the following cases:
•The authentication schemes differ on the router and in the incoming packets.
•Text authentication strings differ on the router and in the incoming packet.
HSRP MD5 Authentication
Before the introduction of HSRP MD5 authentication, HSRP authenticated protocol packets with a simple plain text string. HSRP MD5 authentication is an enhancement to generate an MD5 digest for the HSRP portion of the multicast HSRP protocol packet. This functionality provides added security and protects against the threat from HSRP-spoofing software.
MD5 authentication provides greater security than the alternative plain text authentication scheme. MD5 authentication allows each HSRP group member to use a secret key to generate a keyed MD5 hash that is part of the outgoing packet. A keyed hash of an incoming packet is generated and if the hash within the incoming packet does not match the generated hash, the packet is ignored.
The key for the MD5 hash can be either given directly in the configuration using a key string or supplied indirectly through a key chain.
HSRP has two authentication schemes:
•Plain text authentication
•MD5 authentication
HSRP authentication protects against false HSRP hello packets causing a denial-of-service attack. For example, Router A has a priority of 120 and is the active router. If a host sends spoof HSRP hello packets with a priority of 130, then Router A stops being the active router. If Router A has authentication configured such that the spoof HSRP hello packets are ignored, Router A will remain the active router.
HSRP packets will be rejected in any of the following cases:
•The authentication schemes differ on the router and in the incoming packets.
•MD5 digests differ on the router and in the incoming packet.
•Text authentication strings differ on the router and in the incoming packet.
HSRP Messages and States
Routers configured with HSRP exchange three types of multicast messages:
•Hello—The hello message conveys to other HSRP routers the HSRP priority and state information of the router.
•Coup—When a standby router wants to assume the function of the active router, it sends a coup message.
•Resign—A router that is the active router sends this message when it is about to shut down or when a router that has a higher priority sends a hello or coup message.
At any time, a router configured with HSRP is in one of the following states:
•Active—The router is performing packet-transfer functions.
•Standby—The router is prepared to assume packet-transfer functions if the active router fails.
•Speak—The router is sending and receiving hello messages.
•Listen—The router is receiving hello messages.
•Init or Disabled—The router is not yet ready or able to participate in HSRP, possibly because the associated interface is not up. HSRP groups configured on other routers on the network that are learned via snooping are displayed as being in the Init state. Locally configured groups with an interface that is down or groups without a specified interface IP address appear in the Init state.
HSRP uses logging level 5 for syslog messages related to HSRP state changes to allow logging of an event without filling up the syslog buffer on the router with low-priority Level 6 messaging.
HSRP and ARP
HSRP also works when the hosts are configured for proxy ARP. When the active HSRP router receives an ARP request for a host that is not on the local LAN, the router replies with the MAC address of the virtual router. If the active router becomes unavailable or its connection to the remote LAN goes down, the router that becomes the active router receives packets addressed to the virtual router and transfers them accordingly. If the Hot Standby state of the interface is not active, proxy ARP responses are suppressed.
HSRP Object Tracking
Object tracking separates the tracking mechanism from HSRP and creates a separate standalone tracking process that can be used by any other process as well as HSRP. The priority of a device can change dynamically when it has been configured for object tracking and the object that is being tracked goes down. Examples of objects that can be tracked are the line protocol state of an interface or the reachability of an IP route. If the specified object goes down, the HSRP priority is reduced.
A client process, such as HSRP, Virtual Router Redundancy Protocol (VRRP), or Gateway Load Balancing Protocol (GLBP), can now register its interest in tracking objects and then be notified when the tracked object changes state.
For more information about Object Tracking, see the "Configuring Enhanced Object Tracking" module.
HSRP Group Shutdown
The FHRP—HSRP Group Shutdown feature enables you to configure an HSRP group to become disabled (its state changed to Init) instead of having its priority decremented when a tracked object goes down. Use the standby track command with the shutdown keyword to configure HSRP group shutdown.
If an object is already being tracked by an HSRP group, you cannot change the configuration to use the HSRP Group Shutdown feature. You must first remove the tracking configuration using the no standby track command and then reconfigure it using the standby track command with the shutdown keyword.
HSRP Support for ICMP Redirects
By default, HSRP filtering of ICMP redirect messages is enabled on routers running HSRP.
ICMP is a network layer Internet protocol that provides message packets to report errors and other information relevant to IP processing. ICMP can send error packets to a host and can send redirect packets to a host.
When running HSRP, it is important to prevent hosts from discovering the interface (or real) IP addresses of routers in the HSRP group. If a host is redirected by ICMP to the real IP address of a router, and that router later fails, then packets from the host will be lost.
ICMP redirect messages are automatically enabled on interfaces configured with HSRP. This functionality works by filtering outgoing ICMP redirect messages through HSRP, where the next hop IP address may be changed to an HSRP virtual IP address.
ICMP Redirects to Active HSRP Routers
The next-hop IP address is compared to the list of active HSRP routers on that network; if a match is found, then the real next-hop IP address is replaced with a corresponding virtual IP address and the redirect message is allowed to continue.
If no match is found, then the ICMP redirect message is sent only if the router corresponding to the new next hop IP address is not running HSRP. Redirects to passive HSRP routers are not allowed (a passive HSRP router is a router running HSRP, but which contains no active HSRP groups on the interface).
For optimal operation, every router in a network that is running HSRP should contain at least one active HSRP group on an interface to that network. Every HSRP router need not be a member of the same group. Each HSRP router will snoop on all HSRP packets on the network to maintain a list of active routers (virtual IP addresses versus real IP addresses).
Consider the network shown in Figure 2, which supports the HSRP ICMP redirection filter.
Figure 2 Network Supporting the HSRP ICMP Redirection Filter
If the host wants to send a packet to another host on Net D, then it first sends it to its default gateway, the virtual IP address of HSRP group 1.
The following is the packet received from the host:
dest MAC = HSRP group 1 virtual MAC
source MAC = Host MAC
dest IP = host-on-netD IP
source IP = Host IP
Router R1 receives this packet and determines that router R4 can provide a better path to Net D, so it prepares to send a redirect message that will redirect the host to the real IP address of router R4 (because only real IP addresses are in its routing table).
The following is the initial ICMP redirect message sent by router R1:
dest MAC = Host MAC
source MAC = router R1 MAC
dest IP = Host IP
source IP = router R1 IP
gateway to use = router R4 IP
Before this redirect occurs, the HSRP process of router R1 determines that router R4 is the active HSRP router for group 3, so it changes the next hop in the redirect message from the real IP address of router R4 to the virtual IP address of group 3. Furthermore, it determines from the destination MAC address of the packet that triggered the redirect message that the host used the virtual IP address of group 1 as its gateway, so it changes the source IP address of the redirect message to the virtual IP address of group 1.
The modified ICMP redirect message showing the two modified fields (*) is as follows:
dest MAC = Host MAC
source MAC = router R1 MAC
dest IP = Host IP
source IP* = HSRP group 1 virtual IP
gateway to use* = HSRP group 3 virtual IP
This second modification is necessary because hosts compare the source IP address of the ICMP redirect message with their default gateway. If these addresses do not match, the ICMP redirect message is ignored. The routing table of the host now consists of the default gateway, virtual IP address of group 1, and a route to Net D through the virtual IP address of group 3.
ICMP Redirects to Passive HSRP Routers
Redirects to passive HSRP routers are not permitted. Redundancy may be lost if hosts learn the real IP addresses of HSRP routers.
In Figure 2, redirection to router R8 is not allowed because R8 is a passive HSRP router. In this case, packets from the host to Net D will first go to router R1 and then be forwarded to router R4; that is, they will traverse the network twice.
A network configuration with passive HSRP routers is considered a misconfiguration. For HSRP ICMP redirection to operate optimally, every router on the network that is running HSRP should contain at least one active HSRP group.
ICMP Redirects to Non-HSRP Routers
Redirects to routers not running HSRP on their local interface are permitted. No redundancy is lost if hosts learn the real IP address of non-HSRP routers.
In Figure 2, redirection to router R7 is allowed because R7 is not running HSRP. In this case, the next hop IP address is unchanged. The source IP address is changed dependent upon the destination MAC address of the original packet. You can specify the no standby redirect unknown command to stop these redirects from being sent.
Passive HSRP Router Advertisements
Passive HSRP routers send out HSRP advertisement messages both periodically and when entering or leaving the passive state. Thus, all HSRP routers can determine the HSRP group state of any HSRP router on the network. These advertisements inform other HSRP routers on the network of the HSRP interface state, as follows:
•Dormant—Interface has no HSRP groups. A single advertisement is sent once when the last group is removed.
•Passive—Interface has at least one non-active group and no active groups. Advertisements are sent out periodically.
•Active—Interface has at least one active group. A single advertisement is sent out when the first group becomes active.
You can adjust the advertisement interval and holddown time using the standby redirect timers command.
ICMP Redirects Not Sent
If the HSRP router cannot uniquely determine the IP address used by the host when it sends the packet that caused the redirect, the redirect message will not be sent. The router uses the destination MAC address in the original packet to make this determination. In certain configurations, such as the use of the standby use-bia interface configuration command specified on an interface, redirects cannot be sent. In this case, the HSRP groups use the interface MAC address as their virtual MAC address. The router now cannot determine if the default gateway of the host is the real IP address or one of the HSRP virtual IP addresses that are active on the interface.
Using HSRP with ICMP redirects is not possible in the Cisco 800 series, Cisco 1000 series, Cisco 1600 series, Cisco 2500 series, Cisco 3000 series, and Cisco 4500 series routers because the Ethernet controller can only support one MAC address.
The IP source address of an ICMP packet must match the gateway address used by the host in the packet that triggered the ICMP packet, otherwise the host will reject the ICMP redirect packet. An HSRP router uses the destination MAC address to determine the gateway IP address of the host. If the HSRP router is using the same MAC address for multiple IP addresses then it is not possible to uniquely determine the gateway IP address of the host and the redirect message is not sent.
The following is sample output from the debug standby events icmp EXEC command if HSRP could not uniquely determine the gateway used by the host:
10:43:08: HSRP: ICMP redirect not sent to 20.0.0.4 for dest 30.0.0.2
10:43:08: HSRP: could not uniquely determine IP address for mac 00d0.bbd3.bc22
HSRP Support for MPLS VPNs
HSRP support for a Multiprotocol Label Switching (MPLS) Virtual Private Network (VPN) interface is useful when an Ethernet LAN is connected between two provider edge (PE) routers with either of the following conditions:
•A customer edge (CE) router with a default route to the HSRP virtual IP address
•One or more hosts with the HSRP virtual IP address configured as the default gateway
Each VPN is associated with one or more VPN routing/forwarding (VRF) instances. A VRF consists of the following elements:
•IP routing table
•Cisco Express Forwarding (CEF) table
•Set of interfaces that use the CEF forwarding table
•Set of rules and routing protocol parameters to control the information in the routing tables
VPN routing information is stored in the IP routing table and the CEF table for each VRF. A separate set of routing and CEF tables is maintained for each VRF. These tables prevent information from being forwarded outside a VPN and also prevent packets that are outside a VPN from being forwarded to a router within the VPN.
HSRP adds ARP entries and IP hash table entries (aliases) using the default routing table instance. However, a different routing table instance is used when VRF forwarding is configured on an interface, causing ARP and ICMP echo requests for the HSRP virtual IP address to fail.
HSRP support for MPLS VPNs ensures that the HSRP virtual IP address is added to the correct IP routing table and not to the default routing table.
HSRP Multiple Group Optimization
Increasingly, many hundreds of subinterfaces are being configured on the same physical interface, with each subinterface having its own HSRP group. The negotiation and maintenance of multiple HSRP groups can have a detrimental impact on network traffic and CPU utilization.
Only one HSRP group is required on a physical interface for the purposes of electing active and standby routers. This group is known as the master group. Other HSRP groups may be created on each subinterface and linked to the master group via the group name. These linked HSRP groups are known as client or slave groups.
The HSRP group state of the client groups follows that of the master group. Client groups do not participate in any sort of router election mechanism.
Client groups send periodic messages in order to refresh their virtual MAC addresses in switches and learning bridges. The refresh message may be sent at a much lower frequency compared with the protocol election messages sent by the master group.
ISSU—HSRP
The In Service Software Upgrade (ISSU) process allows Cisco IOS XE software to be updated or otherwise modified while packet forwarding continues. In most networks, planned software upgrades are a significant cause of downtime. ISSU allows Cisco IOS XE software to be modified while packet forwarding continues, which increases network availability and reduces downtime caused by planned software upgrades. This document provides information about ISSU concepts and describes the steps taken to perform ISSU in a system.
For detailed information about ISSU, see the Cisco IOS XE In Service Software Upgrade Process document.
SSO HSRP
SSO HSRP alters the behavior of HSRP when a router with redundant Route Processors (RPs) is configured for Stateful Switchover (SSO) redundancy mode. When an RP is active and the other RP is standby, SSO enables the standby RP to take over if the active RP fails.
With this functionality, HSRP SSO information is synchronized to the standby RP, allowing traffic that is sent using the HSRP virtual IP address to be continuously forwarded during a switchover without a loss of data or a path change. Additionally, if both RPs fail on the active HSRP router, then the standby HSRP router takes over as the active HSRP router.
The feature is enabled by default when the redundancy mode of operation is set to SSO.
SSO Dual-Route Processors and Cisco Nonstop Forwarding
SSO functions in networking devices (usually edge devices) that support dual RPs. SSO provides RP redundancy by establishing one of the RPs as the active processor and the other RP as the standby processor. SSO also synchronizes critical state information between the RPs so that network state information is dynamically maintained between RPs.
SSO is generally used with Cisco Nonstop Forwarding (NSF). Cisco NSF enables forwarding of data packets to continue along known routes while the routing protocol information is being restored following a switchover. With NSF, users are less likely to experience service outages.
HSRP and SSO Working Together
SSO HSRP enables the Cisco IOS XE HSRP subsystem software to detect that a standby RP is installed and the system is configured in SSO redundancy mode. Further, if the active RP fails, no change occurs to the HSRP group itself and traffic continues to be forwarded through the current active gateway router.
Prior to this feature, when the primary RP of the active router failed, it would stop participating in the HSRP group and trigger another router in the group to take over as the active HSRP router.
SSO HSRP is required to preserve the forwarding path for traffic destined to the HSRP virtual IP address through an RP switchover.
Configuring SSO on the edge router enables the traffic on the Ethernet links to continue during an RP failover without the Ethernet traffic switching over to an HSRP standby router (and then back, if preemption is enabled).
HSRP MIB Traps
HSRP MIB supports Simple Network Management Protocol (SNMP) Get operations, to allow network devices to get reports about HSRP groups in a network from the network management station.
Enabling HSRP MIB trap support is performed through the CLI, and the MIB is used for getting the reports. A trap notifies the network management station when a router leaves or enters the active or standby state. When an entry is configured from the CLI, the RowStatus for that group in the MIB immediately goes to the active state.
The Cisco IOS XE software supports a read-only version of the MIB, and set operations are not supported.
This functionality supports four MIB tables, as follows:
•cHsrpGrpEntry table defined in CISCO-HSRP-MIB.my
•cHsrpExtIfTrackedEntry, cHsrpExtSecAddrEntry, and cHsrpExtIfEntry defined in CISCO-HSRP-EXT-MIB.my
The cHsrpGrpEntry table consists of all the group information defined in RFC 2281, Cisco Hot Standby Router Protocol; the other tables consist of the Cisco extensions to RFC 2281, which are defined in CISCO-HSRP-EXT-MIB.my.
How to Configure HSRP
•Enabling HSRP (required)
•Delaying the Initialization of HSRP on an Interface (optional)
•Configuring HSRP Priority and Preemption (required)
•Configuring HSRP Object Tracking (optional)
•Configuring HSRP MD5 Authentication Using a Key String (optional)
•Configuring HSRP MD5 Authentication Using a Key Chain (optional)
•Troubleshooting HSRP MD5 Authentication (optional)
•Configuring HSRP Text Authentication (optional)
•Customizing HSRP (optional)
•Configuring Multiple HSRP Groups for Load Balancing (optional)
•Enabling HSRP Support for ICMP Redirects (optional)
•Improving CPU and Network Performance with HSRP Multiple Group Optimization (optional)
•Configuring HSRP Virtual MAC Addresses or BIA MAC Addresses (optional)
•Changing to HSRP Version 2 (optional)
•Enabling SSO Aware HSRP (optional)
•Verifying SSO Aware HSRP (optional)
•Enabling HSRP MIB Traps (optional)
Enabling HSRP
Perform this task to enable 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 virtual IP address for the Hot Standby group. For HSRP to elect a designated router, you must configure the virtual IP address for at least one of the routers in the group; it can be learned on the other routers in the group.
Prerequisites
You can configure many attributes in HSRP such as authentication, timers, priority, and preemption. It is best practice to configure the attributes first before enabling the HSRP group.
This practice avoids authentication error messages and unexpected state changes in other routers that can occur if the group is enabled first and then there is a long enough delay (one or two hold times) before the other configuration is entered.
We recommend that you always specify an HSRP IP address.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask
5. standby [group-number] ip [ip-address [secondary]]
6. end
7. show standby [all] [brief]
8. show standby type number [group-number | all] [brief]
DETAILED STEPS
Delaying the Initialization of HSRP on an Interface
Perform this task to delay the initialization of HSRP on an interface.
The standby delay command is used to delay HSRP initialization either after a reload and/or after an interface comes up. This configuration allows the interface and router time to settle down after the interface up event and helps prevent HSRP state flapping.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask
5. standby delay minimum min-delay reload reload-seconds
6. standby [group-number] ip [ip-address [secondary]]
7. end
8. show standby delay [type number]
DETAILED STEPS
Troubleshooting Tips
We recommend that you use the standby delay minimum reload command if the standby timers command is configured in milliseconds or if HSRP is configured on a VLAN interface.
Configuring HSRP Priority and Preemption
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask
5. standby [group-number] priority priority
6. standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]
7. standby [group-number] ip [ip-address [secondary]]
8. end
9. show standby [all] [brief]
10. show standby type number [group-number | all] [brief]
DETAILED STEPS
Configuring HSRP Object Tracking
Perform this task to configure HSRP to track an object and change the HSRP priority based on the state of the object.
Each tracked object is identified by a unique number that is specified on the tracking CLI. Client processes use this number to track a specific object.
For more information on object tracking, see the "Configuring Enhanced Object Tracking" module.
SUMMARY STEPS
1. enable
2. configure terminal
3. track object-number interface type number {line-protocol | ip routing}
4. exit
5. interface type number
6. standby [group-number] track object-number [decrement priority-decrement] [shutdown]
7. standby [group-number] ip [ip-address [secondary]]
8. end
9. show track [object-number | brief] [interface [brief] | ip route [brief] | resolution | timers]
DETAILED STEPS
Configuring HSRP MD5 Authentication Using a Key String
Restrictions
Text authentication cannot be combined with MD5 authentication for an HSRP group at any one time. When MD5 authentication is configured, the text authentication field in HSRP hello messages is set to all zeroes on transmit and ignored on receipt, provided the receiving router also has MD5 authentication enabled.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby [group-number] priority priority
6. standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]
7. standby [group-number] authentication md5 key-string [0 | 7] key [timeout seconds]
8. standby [group-number] ip [ip-address [secondary]]
9. Repeat Steps 1 through 8 on each router that will communicate.
10. end
11. show standby
DETAILED STEPS
Troubleshooting Tips
If you are changing a key string in a group of routers, change the active router last to prevent any HSRP state change. The active router should have its key string changed no later than one holdtime period, specified by the standby timers interface configuration command, after the non-active routers. This procedure ensures that the non-active routers do not time out the active router.
Configuring HSRP MD5 Authentication Using a Key Chain
Perform this task to configure HSRP MD5 authentication using a key chain. Key chains allow a different key string to be used at different times according to the key chain configuration. HSRP will query the appropriate key chain to obtain the current live key and key ID for the specified key chain.
SUMMARY STEPS
1. enable
2. configure terminal
3. key chain name-of-chain
4. key key-id
5. key-string string
6. exit
7. exit
8. interface type number
9. ip address ip-address mask [secondary]
10. standby [group-number] priority priority
11. standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]
12. standby [group-number] authentication md5 key-chain key-chain-name
13. standby [group-number] ip [ip-address [secondary]]
14. Repeat Steps 1 through 12 on each router that will communicate.
15. end
16. show standby
DETAILED STEPS
Troubleshooting HSRP MD5 Authentication
Perform this task if HSRP MD5 authentication is not operating correctly.
SUMMARY STEPS
1. enable
2. debug standby errors
DETAILED STEPS
|
|
|
---|---|---|
Step 1 |
enable Router> enable |
Enables privileged EXEC mode. •Enter your password if prompted. |
Step 2 |
debug standby errors Router# debug standby errors |
Displays error messages related to HSRP. •Error messages will be displayed for each packet that fails to authenticate, so use this command with care. •See the "Examples" section for an example of the type of error messages displayed when two routers are not authenticating. |
Examples
In the following example, Router A has MD5 text string authentication configured, but Router B has the default text authentication:
Router# debug standby errors
A:Jun 16 12:14:50.337:HSRP:Et0/1 Grp 0 Auth failed for Hello pkt from 10.21.0.5, MD5 confgd but no tlv
B:Jun 16 12:16:34.287:HSRP:Et0/1 Grp 0 Auth failed for Hello pkt from 10.21.0.4, Text auth failed
In the following example, both Router A and Router B have different MD5 authentication strings:
Router# debug standby errors
A:Jun 16 12:19:26.335:HSRP:Et0/1 Grp 0 Auth failed for Hello pkt from 10.21.0.5, MD5 auth failed
B:Jun 16 12:18:46.280:HSRP:Et0/1 Grp 0 Auth failed for Hello pkt from 10.21.0.4, MD5 auth failed
Configuring HSRP Text Authentication
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby [group-number] priority priority
6. standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]
7. standby [group-number] authentication text string
8. standby [group-number] ip [ip-address [secondary]]
9. Repeat Steps 1 through 8 on each router that will communicate.
10. end
11. show standby
DETAILED STEPS
Customizing HSRP
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby [group-number] timers [msec] hellotime [msec] holdtime
6. standby [group-number] ip [ip-address [secondary]]
DETAILED STEPS
|
|
|
---|---|---|
Step 1 |
enable Router> enable |
Enables privileged EXEC mode. •Enter your password if prompted. |
Step 2 |
configure terminal Router# configure terminal |
Enters global configuration mode. |
Step 3 |
interface type number Router(config)# interface GigabitEthernet0/0/0 |
Configures an interface type and enters interface configuration mode. |
Step 4 |
ip address ip-address mask [secondary] Router(config-if)# ip address 10.0.0.1 255.255.255.0 |
Specifies a primary or secondary IP address for an interface. |
Step 5 |
standby [group-number] timers [msec] hellotime [msec] holdtime Router(config-if)# standby 1 timers 5 15 |
Configures the time between hello packets and the time before other routers declare the active Hot Standby router to be down. •Normally, the holdtime value is greater than or equal to three times the value of hellotime. •See the "SUMMARY STEPS" section for more information. |
Step 6 |
standby [group-number] ip [ip-address [secondary]] Router(config-if)# standby 1 ip 10.0.0.3 |
Activates HSRP. |
Troubleshooting Tips
Some HSRP state flapping can occasionally occur if the holdtime is set to less than 250 milliseconds, and the processor is busy. It is recommended that holdtime values less than 250 milliseconds be used. You can use the standby delay command to allow the interface to come up completely before HSRP initializes.
Configuring Multiple HSRP Groups for Load Balancing
Perform this task to configure multiple HSRP groups for load balancing.
Multiple HSRP groups enable redundancy and load-sharing within networks and allow redundant routers to be more fully utilized. While a router is actively forwarding traffic for one HSRP group, it can be in standby or in the listen state for another group.
If two routers are used, then Router A would be configured as active for group 1 and standby for group 2. Router B would be standby for group 1 and active for group 2. Fifty percent of the hosts on the LAN would be configured with the virtual IP address of group 1 and the remaining hosts would be configured with the virtual IP address of group 2. See the "Example: Multiple HSRP for Load Balancing" section for a diagram and configuration example.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby [group-number] priority priority
6. standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]
7. standby [group-number] ip [ip-address [secondary]]
8. On the same router, repeat Steps 5 through 7 to configure the router attributes for different standby groups.
9. exit
10. Repeat Steps 3 through 9 to configure HSRP on another router.
DETAILED STEPS
Enabling HSRP Support for ICMP Redirects
By default, HSRP filtering of ICMP redirect messages is enabled on routers running HSRP. Perform this task to reenable this feature on your router if it is disabled.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. standby redirect [timers advertisement holddown] [unknown]
5. end
6. show standby redirect [ip-address] [interface-type interface-number] [active] [passive] [timers]
DETAILED STEPS
Improving CPU and Network Performance with HSRP Multiple Group Optimization
Configure the HSRP master group using the steps in the "Configuring Multiple HSRP Groups for Load Balancing" section.
Perform this task to configure multiple HSRP client groups.
The standby follow command configures an HSRP group to become a slave of another HSRP group.
HSRP client groups follow the master HSRP with a slight, random delay so that all client groups do not change at the same time.
Use the standby mac-refresh seconds command to directly change the HSRP client group refresh interval. The default interval is 10 seconds and can be configured to as much as 255 seconds.
Restrictions
•Client or slave groups must be on the same physical interface as the master group.
•A client group takes its state from the group it is following. Therefore, the client group does not use its timer, priority, or preemption settings. A warning is displayed if these settings are configured on a client group:
Router(config-if)# standby 1 priority 110
%Warning: This setting has no effect while following another group.
Router(config-if)# standby 1 timers 5 15
% Warning: This setting has no effect while following another group.
Router(config-if)# standby 1 preempt delay minimum 300
% Warning: This setting has no effect while following another group.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby mac-refresh seconds
6. standby group-number follow group-name
7. exit
8. Repeat Steps 3 through 6 to configure additional HSRP client groups.
DETAILED STEPS
Configuring HSRP Virtual MAC Addresses or BIA MAC Addresses
Perform this task to configure an HSRP virtual MAC address or a burned-in address (BIA) MAC address.
Restrictions
You cannot use the standby use-bia and standby mac-address commands in the same configuration; they are mutually exclusive.
The standby use-bia command has the following disadvantages:
•When a router becomes active the virtual IP address is moved to a different MAC address. The newly active router sends a gratuitous ARP response, but not all host implementations handle the gratuitous ARP correctly.
•Proxy ARP breaks when the standby use-bia command is configured. A standby router cannot cover for the lost proxy ARP database of the failed router.
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask [secondary]
5. standby [group-number] mac-address mac-address
or
standby use-bia [scope interface]
6. standby [group-number] ip [ip-address [secondary]]
DETAILED STEPS
Changing to HSRP Version 2
HSRP version 2 was introduced to prepare for further enhancements and to expand the capabilities beyond what is possible with HSRP version 1. HSRP version 2 has a different packet format than HSRP version 1.
Restrictions
•HSRP version 2 is not available for ATM interfaces running LAN emulation.
•HSRP version 2 will not interoperate with HSRP version 1. An interface cannot operate both version 1 and version 2 because both versions are mutually exclusive. However, the different versions can be run on different physical interfaces of the same router. You cannot change from version 2 to version 1 if you have configured groups above the group number range allowed for version 1 (0 to 255).
SUMMARY STEPS
1. enable
2. configure terminal
3. interface type number
4. ip address ip-address mask
5. standby version {1 | 2}
6. standby [group-number] ip [ip-address [secondary]]
7. end
8. show standby
DETAILED STEPS
Enabling SSO Aware HSRP
The functionality is enabled by default when the redundancy mode is set to SSO. Perform this task to reenable HSRP to be SSO aware if it has been disabled.
Note You may want to disable SSO HSRP by using the no standby sso command if you have LAN segments that should switch HSRP traffic to a redundant device while SSO maintains traffic flow for other connections.
SUMMARY STEPS
1. enable
2. configure terminal
3. redundancy
4. mode sso
5. exit
6. no standby sso
7. standby sso
8. end
DETAILED STEPS
Verifying SSO Aware HSRP
To verify or debug HSRP SSO operation, perform the following steps from the active RP console.
SUMMARY STEPS
1. show standby
2. debug standby events ha
DETAILED STEPS
Step 1 show standby
Use the show standby command to display the state of the standby RP, for example:
Router# show standby
GigabitEthernet0/0/0 - Group 1
State is Active (standby RP)
Virtual IP address is 10.1.0.7
Active virtual MAC address is unknown
Local virtual MAC address is 000a.f3fd.5001 (bia)
Hello time 1 sec, hold time 3 sec
Authentication text "authword"
Preemption enabled
Active router is unknown
Standby router is unknown
Priority 110 (configured 120)
Track object 1 state Down decrement 10
Group name is "name1" (cfgd)
Step 2 debug standby events ha
Use the debug standby events ha command to display the active and standby RPs, for example:
Router# debug standby events ha
!Active RP
*Apr 27 04:13:47.755: HSRP: Gi0/0/1 Grp 101 RF Encode state Listen into sync buffer
*Apr 27 04:13:47.855: HSRP: CF Sync send ok
*Apr 27 04:13:57.755: HSRP: Gi0/0/1 Grp 101 RF Encode state Speak into sync buffer
*Apr 27 04:13:57.855: HSRP: CF Sync send ok
*Apr 27 04:14:07.755: HSRP: Gi0/0/1 Grp 101 RF Encode state Standby into sync buffer
*Apr 27 04:14:07.755: HSRP: Gi0/0/1 Grp 101 RF Encode state Active into sync buffer
*Apr 27 04:14:07.863: HSRP: CF Sync send ok
*Apr 27 04:14:07.867: HSRP: CF Sync send ok
!Standby RP
*Apr 27 04:11:21.011: HSRP: RF CF client 32, entity 0 got msg len 24
*Apr 27 04:11:21.011: HSRP: Gi0/0/1 Grp 101 RF sync state Init -> Listen
*Apr 27 04:11:31.011: HSRP: RF CF client 32, entity 0 got msg len 24
*Apr 27 04:11:31.011: HSRP: Gi0/0/1 Grp 101 RF sync state Listen -> Speak
*Apr 27 04:11:41.071: HSRP: RF CF client 32, entity 0 got msg len 24
*Apr 27 04:11:41.071: HSRP: RF CF client 32, entity 0 got msg len 24
*Apr 27 04:11:41.071: HSRP: Gi0/0/1 Grp 101 RF sync state Speak -> Standby
*Apr 27 04:11:41.071: HSRP: Gi0/0/1 Grp 101 RF sync state Standby -> Active
Enabling HSRP MIB Traps
SUMMARY STEPS
1. enable
2. configure terminal
3. snmp-server enable traps hsrp
4. snmp-server host host community-string hsrp
DETAILED STEPS
Configuration Examples for HSRP
•Example: HSRP Priority and Preemption
•Example: HSRP Object Tracking
•Example: HSRP MD5 Authentication Using Key Strings
•Example: HSRP MD5 Authentication Using Key Chains
•Example: HSRP MD5 Authentication Using Key Strings and Key Chains
•Example: HSRP Text Authentication
•Example: Multiple HSRP for Load Balancing
•Example: HSRP Support for ICMP Redirect Messages
Example: HSRP Priority and Preemption
In the following example, Router A is configured to be the active router for group 1 because it has the higher priority and standby router for group 2. Router B is configured to be the active router for group 2 and standby router for group 1.
Router A Configuration
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.1.0.21 255.255.0.0
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 ip 10.1.0.1
Router(config-if)# standby 2 priority 95
Router(config-if)# standby 2 preempt
Router(config-if)# standby 2 ip 10.1.0.2
Router B Configuration
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.1.0.22 255.255.0.0
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 priority 105
Router(config-if)# standby 1 ip 10.1.0.1
Router(config-if)# standby 2 priority 110
Router(config-if)# standby 2 preempt
Router(config-if)# standby 2 ip 10.1.0.2
Example: HSRP Object Tracking
In the following example, the tracking process is configured to track the IP-routing capability of serial interface 1/0. HSRP on Gigabit Ethernet interface 0/0/0 then registers with the tracking process to be informed of any changes to the IP-routing state of serial interface 1/0. If the IP state on serial interface 1/0 goes down, the priority of the HSRP group is reduced by 10.
If both serial interfaces are operational, Router A will be the HSRP active router because it has the higher priority. However, if IP routing on serial interface 1/0 in Router A fails, the HSRP group priority will be reduced and Router B will take over as the active router, thus maintaining a default virtual gateway service to hosts on the 10.1.0.0 subnet.
Router A Configuration
Router(config)# track 100 interface serial1/0/0 ip routing
!
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.1.0.21 255.255.0.0
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 track 100 decrement 10
Router(config-if)# standby 1 ip 10.1.0.1
Router B Configuration
Router(config)# track 100 interface serial1/0/0 ip routing
!
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.1.0.22 255.255.0.0
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 priority 105
Router(config-if)# standby 1 track 100 decrement 10
Router(config-if)# standby 1 ip 10.1.0.1
Example: HSRP Group Shutdown
In the following example, the tracking process is configured to track the IP-routing capability of Gigabit Ethernet interface 0/0/0. HSRP on Gigabit Ethernet interface 0/0/1 then registers with the tracking process to be informed of any changes to the IP-routing state of Gigabit Ethernet interface 0/0/0. If the IP state on Gigabit Ethernet interface 0/0/0 goes down, the HSRP group is disabled.
If both Gigabit Ethernet interfaces are operational, Router A will be the HSRP active router because it has the higher priority. However, if IP routing on Gigabit Ethernet interface 0/0/0 in Router A fails, the HSRP group will be disabled and Router B will take over as the active router, thus maintaining a default virtual gateway service to hosts on the 10.1.0.0 subnet.
Router A Configuration
Router(config)# track 100 interface GigabitEthernet0/0/0 ip routing
!
Router(config)# interface GigabitEthernet0/0/1
Router(config-if)# ip address 10.1.0.21 255.255.0.0
Router(config-if)# standby 1 ip 10.1.0.1
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 track 100 shutdown
Router B Configuration
Router(config)# track 100 interface GigabitEthernet0/0/0 ip routing
!
Router(config)# interface GigabitEthernet0/0/1
Router(config-if)# ip address 10.1.0.22 255.255.0.0
Router(config-if)# standby 1 ip 10.1.0.1
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 priority 105
Router(config-if)# standby 1 track 100 shutdown
If an object is already being tracked by an HSRP group, you cannot change the configuration to use the HSRP Group Shutdown feature. You must first remove the tracking configuration using the no standby track command and then reconfigure it using the standby track command with the shutdown keyword.
The following example shows how to change the configuration of a tracked object to include the HSRP Group Shutdown feature:
Router(config)# no standby 1 track 100 decrement 10
Router(config)# standby 1 track 100 shutdown
Example: HSRP MD5 Authentication Using Key Strings
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 authentication md5 key-string 54321098452103ab timeout 30
Router(config-if)# standby 1 ip 10.21.0.10
Example: HSRP MD5 Authentication Using Key Chains
In the following example, HSRP queries the key chain "hsrp1" to obtain the current live key and key ID for the specified key chain:
Router(config)# key chain hsrp1
Router(config-keychain)# key 1
Router(config-keychain-key)# key-string 54321098452103ab
Router(config-keychain-key)# exit
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 authentication md5 key-chain hsrp1
Router(config-if)# standby 1 ip 10.21.0.10
Example: HSRP MD5 Authentication Using Key Strings and Key Chains
The key ID for key-string authentication is always zero. If a key chain is configured with a key ID of zero, then the following configuration will work:
Router 1
Router(config)# key chain hsrp1
Router(config-keychain)# key 0
Router(config-keychain-key)# key-string 54321098452103ab
Router(config-keychain-key)# exit
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# standby 1 authentication md5 key-chain hsrp1
Router(config-if)# standby 1 ip 10.21.0.10
Router 2
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# standby 1 authentication md5 key-string 54321098452103ab
Router(config-if)# standby 1 ip 10.21.0.10
Example: HSRP Text Authentication
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 authentication text company2
Router(config-if)# standby 1 ip 10.21.0.10
Example: Multiple HSRP for Load Balancing
You can use HSRP or multiple HSRP groups when you configure load sharing. In Figure 3, half of the clients are configured for Router A, and half of the clients are configured for Router B. Together, the configuration for Routers A and B establish two Hot Standby groups. For group 1, Router A is the default active router because it has the assigned highest priority, and Router B is the standby router. For group 2, Router B is the default active router because it has the assigned highest priority, and Router A is the standby router. During normal operation, the two routers share the IP traffic load. When either router becomes unavailable, the other router becomes active and assumes the packet-transfer functions of the router that is unavailable. The standby preempt interface configuration command is necessary so that if a router goes down and then comes back up, preemption occurs and restores load sharing.
Figure 3 HSRP Load Sharing Example
The following 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
Router(config)# hostname RouterA
!
Router(config)# interface GigabitEthernet 0/0/0
Router(config-if)# ip address 10.0.0.1 255.255.255.0
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 ip 10.0.0.3
Router(config-if)# standby 2 preempt
Router(config-if)# standby 2 ip 10.0.0.4
Router B Configuration
Router(config)# hostname RouterB
!
Router(config)# interface GigabitEthernet 0/0/0
Router(config-if)# ip address 10.0.0.2 255.255.255.0
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 ip 10.0.0.3
Router(config-if)# standby 2 priority 110
Router(config-if)# standby 2 preempt
Router(config-if)# standby 2 ip 10.0.0.4
Example: Improving CPU and Network Performance with HSRP Multiple Group Optimization
The following example shows how to configure an HSRP client and master group:
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# no shutdown
Router(config-if)# standby mac-refresh 30
! Client Hello message interval
!
Router(config)# interface GigabitEthernet0/0/1
Router(config-if)# no shutdown
Router(config-if)# ip vrf forwarding VRF2
Router(config-if)# ip address 10.0.0.100 255.255.0.0
Router(config-if)# standby 1 ip 10.0.0.254
Router(config-if)# standby 1 priority 110
Router(config-if)# standby 1 preempt
Router(config-if)# standby 1 name HSRP1
!Server group
!
Router(config)# interface GigabitEthernet0/0/2
Router(config-if)# no shutdown
Router(config-if)# ip vrf forwarding VRF3
Router(config-if)# ip address 10.0.0.100 255.255.0.0
Router(config-if)# standby 2 ip 10.0.0.254
Router(config-if)# standby 2 follow HSRP1
! Client group
!
Router(config)# interface GigabitEthernet0/0/3
Router(config-if)# no shutdown
Router(config-if)# ip vrf forwarding VRF4
Router(config-if)# ip address 10.0.0.100 255.255.0.0
Router(config-if)# standby 2 ip 10.0.0.254
Router(config-if)# standby 2 follow HSRP1
! Client group
Example: HSRP Support for ICMP Redirect Messages
Router A Configuration—Active for Group 1 and Standby for Group 2
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.0.0.10 255.0.0.0
Router(config-if)# standby redirect
Router(config-if)# standby 1 priority 120
Router(config-if)# standby 1 preempt delay minimum 20
Router(config-if)# standby 1 ip 10.0.0.1
Router(config-if)# standby 2 priority 105
Router(config-if)# standby 2 preempt delay minimum 20
Router(config-if)# standby 2 ip 10.0.0.2
Router B Configuration—Standby for Group 1 and Active for Group 2
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.0.0.11 255.0.0.0
Router(config-if)# standby redirect
Router(config-if)# standby 1 priority 105
Router(config-if)# standby 1 preempt delay minimum 20
Router(config-if)# standby 1 ip 10.0.0.1
Router(config-if)# standby 2 priority 120
Router(config-if)# standby 2 preempt delay minimum 20
Router(config-if)# standby 2 ip 10.0.0.2
Example: HSRP Virtual MAC Addresses and BIA MAC Address
In an APPN network, an end node is typically configured with the MAC address of the adjacent network node. In the following example, if the end nodes are configured to use 4000.1000.1060, HSRP group 1 is configured to use the same MAC address:
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.0.0.1
Router(config-if)# standby 1 mac-address 4000.1000.1060
Router(config-if)# standby 1 ip 10.0.0.11
In the following example, the burned-in address of Token Ring interface 3/0 will be the virtual MAC address mapped to the virtual IP address:
Router(config)# interface token3/0
Router(config-if)# standby use-bia
Note You cannot use the standby use-bia command and the standby mac-address command in the same configuration.
Example: HSRP Version 2
The following example shows how to configure HSRP version 2 on an interface with a group number of 350:
Router(config)# interface vlan350
Router(config-if)# standby version 2
Router(config-if)# standby 350 priority 110
Router(config-if)# standby 350 preempt
Router(config-if)# standby 350 timers 5 15
Router(config-if)# standby 350 ip 172.20.100.10
Example: SSO HSRP
The following example shows how to set the redundancy mode to SSO. HSRP is automatically SSO-aware when this mode is enabled.
Router(config)# redundancy
Router(config-red)# mode sso
If SSO HSRP is disabled using the no standby sso command, you can reenable it as shown in the following example:
Router(config)# interface GigabitEthernet1/0/0
Router(config-if)# ip address 10.1.1.1 255.255.0.0
Router(config-if)# standby priority 200
Router(config-if)# standby preempt
Router(config-if)# standby sso
Example: HSRP MIB Traps:
The following examples show how to configure HSRP on two routers and enable the HSRP MIB trap support functionality. As in many environments, one router is preferred as the active one. Configuring a router's preference as the active router is realized by configuring it at a higher priority level and enabling preemption. In the following example, the active router is referred to as the primary router. The second router is referred to as the backup router:
Router A
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 10.1.1.1 255.255.0.0
Router(config-if)# standby priority 200
Router(config-if)# standby preempt
Router(config-if)# standby ip 10.1.1.3
Router(config-if)# exit
Router(config)# snmp-server enable traps hsrp
Router(config)# snmp-server host yourhost.cisco.com public hsrp
Router B
Router(config)#interface GigabitEthernet1/0/0
Router(config-if)# ip address 10.1.1.2 255.255.0.0
Router(config-if)# standby priority 101
Router(config-if)# standby ip 10.1.1.3
Router(config-if)# exit
Router(config)# snmp-server enable traps hsrp
Router(config)# snmp-server host myhost.cisco.com public hsrp
Additional References
Related Documents
|
|
---|---|
Cisco IOS commands |
|
GLBP |
"Configuring GLBP" module |
HSRP commands: complete command syntax, command mode, command history, defaults, usage guidelines, and examples |
|
ISSU |
|
Object tracking |
|
VRRP |
"Configuring VRRP" module |
Standards
|
|
---|---|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
— |
MIBs
|
|
---|---|
CISCO-HSRP-MIB |
To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL: |
RFCs
|
|
---|---|
RFC 792 |
Internet Control Message Protocol |
RFC 1828 |
IP Authentication Using Keyed MD5 |
RFC 2281 |
Cisco Hot Standby Router Protocol |
Technical Assistance
Feature Information for HSRP
Table 1 lists the features in this module and provides links to specific configuration information.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Note Table 1 lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
|
|
|
---|---|---|
FHRP—HSRP-MIB |
Cisco IOS XE |
The FHRP—HSRP-MIB feature introduces support for the CISCO-HRSP-MIB. |
FHRP—HSRP Group Shutdown |
Cisco IOS XE |
The FHRP—HSRP Group Shutdown feature enables you to configure an HSRP group to become disabled (its state changed to Init) instead of having its priority decremented when a tracked object goes down. The following sections provide information about this feature: •Configuring HSRP Object Tracking The following commands were modified by this feature: standby track, show standby. |
FHRP—HSRP Multiple Group Optimization |
Cisco IOS XE |
FHRP—HSRP Multiple Group Optimization feature improves the negotiation and maintenance of multiple HSRP groups configured on a subinterface. Only one HSRP group is required on a physical interface for the purposes of electing active and standby routers. This group is known as the master group. Other HSRP groups may be created on each subinterface and linked to the master group via the group name. These linked HSRP groups are known as client or slave groups. The following sections provide information about this feature: •HSRP Multiple Group Optimization •Improving CPU and Network Performance with HSRP Multiple Group Optimization •Example: Improving CPU and Network Performance with HSRP Multiple Group Optimization The following commands were introduced or modified by this feature: standby follow, show standby. |
HSRP—ISSU |
Cisco IOS XE |
The HSRP—ISSU feature enables support for ISSU in HSRP. The In Service Software Upgrade (ISSU) process allows Cisco IOS XE software to be updated or otherwise modified while packet forwarding continues. In most networks, planned software upgrades are a significant cause of downtime. ISSU allows Cisco IOS XE software to be modified while packet forwarding continues, which increases network availability and reduces downtime caused by planned software upgrades. The following section provides information about this feature: For more information about this feature, see the Cisco IOS XE In Service Software Upgrade Process document. There are no new or modified command for this feature. |
HSRP MD5 Authentication |
Cisco IOS XE |
Prior to the introduction of the HSRP MD5 Authentication feature, HSRP authenticated protocol packets with a simple plain text string. The HSRP MD5 Authentication feature is an enhancement to generate an MD5 digest for the HSRP portion of the multicast HSRP protocol packet. This feature provides added security and protects against the threat from HSRP-spoofing software. The following sections provide information about this feature: •Configuring HSRP MD5 Authentication Using a Key String •Configuring HSRP MD5 Authentication Using a Key Chain •Troubleshooting HSRP MD5 Authentication •Example: HSRP MD5 Authentication Using Key Strings •Example: HSRP MD5 Authentication Using Key Chains •Example: HSRP MD5 Authentication Using Key Strings and Key Chains The following commands were introduced or modified by this feature: show standby, standby authentication. |
HSRP Support for ICMP Redirects |
Cisco IOS XE |
The HSRP support for ICMP Redirects feature enables ICMP redirection on interfaces configured with HSRP. The following sections provide information about this feature: •Configuring HSRP MD5 Authentication Using a Key String •Example: HSRP Support for ICMP Redirect Messages The following commands were introduced or modified by this feature: debug standby event, debug standby events icmp, show standby, standby redirects |
HSRP Support for MPLS VPNs |
Cisco IOS XE |
HSRP support for a Multiprotocol Label Switching (MPLS) Virtual Private Network (VPN) interface is useful when an Ethernet LAN is connected between two provider edge (PE) routers with either of the following conditions: The following section provides information about this feature: There are no new or modified command for this feature. |
HSRP Version 2 |
Cisco IOS XE |
HSRP Version 2 feature was introduced to prepare for further enhancements and to expand the capabilities beyond what is possible with HSRP version 1. HSRP version 2 has a different packet format than HSRP version 1. The following sections provide information about this feature: The following commands were introduced or modified by this feature: show standby, standby ip, standby version. |
SSO—HSRP |
Cisco IOS XE |
The SSO—HSRP feature alters the behavior of HSRP when a router with redundant RPs is configured for SSO. When an RP is active and the other RP is standby, SSO enables the standby RP to take over if the active RP fails. The following sections provide information about this feature: •SSO Dual-Route Processors and Cisco Nonstop Forwarding •HSRP and SSO Working Together The following commands were introduced or modified by this feature: debug standby events, standby sso. |
Glossary
active router—The primary router in an HSRP group that is currently forwarding packets for the virtual router.
active RP—The active RP that controls the system, provides network services, runs the routing protocols, and presents the system management interface.
client group—An HSRP group that is created on a subinterface and linked to the master group via the group name.
HSRP—Hot Standby Router Protocol. Protocol that provides high network availability and transparent network-topology changes. HSRP creates a router group with a lead router that services all packets sent to the HSRP address. The lead router is monitored by other routers in the group, and if it fails, one of these standby HSRP routers inherits the lead position and the HSRP group address.
ISSU—In Service Software Upgrade. A process that allows Cisco IOS XE software to be updated or otherwise modified while packet forwarding continues. In most networks, planned software upgrades are a significant cause of downtime. ISSU allows Cisco IOS XE software to be modified while packet forwarding continues, which increases network availability and reduces downtime caused by planned software upgrades.
NSF—Nonstop Forwarding. The ability of a router to continue to forward traffic to a router that may be recovering from a failure. Also, the ability of a router recovering from a failure to continue to correctly forward traffic sent to it by a peer.
RF—Redundancy Facility. A structured, functional interface used to notify its clients of active and standby state progressions and events.
RP—Route Processor. A generic term for the centralized control unit in a chassis. Platforms usually use a platform-specific term, such as RSP on the Cisco 7500, the PRE on the Cisco 10000, or the SUP+MSFC on the Cisco 7600.
RPR—Route Processor Redundancy. RPR provides an alternative to the High System Availability (HSA) feature. HSA enables a system to reset and use a standby Route Processor (RP) if the active RP fails. Using RPR, you can reduce unplanned downtime because RPR enables a quicker switchover between an active and standby RP if the active RP experiences a fatal error.
RPR+—An enhancement to RPR in which the standby RP is fully initialized.
SSO—Stateful Switchover. SSO refers to the implementation of Cisco IOS XE software that allows applications and features to maintain a defined state between an active and standby RP. When a switchover occurs, forwarding and sessions are maintained. Along with NSF, SSO makes an RP failure undetectable to the network.
standby group—The set of routers participating in HSRP that jointly emulate a virtual router.
standby router—The backup router in an HSRP group.
standby RP—The backup RP.
switchover—An event in which system control and routing protocol execution are transferred from the active RP to the standby RP. Switchover may be a manual operation or may be induced by a hardware or software fault. Switchover may include transfer of the packet forwarding function in systems that combine system control and packet forwarding in an indivisible unit.
virtual IP address—The default gateway IP address configured for an HSRP group.
virtual MAC address—For Ethernet, the automatically generated MAC address when HSRP is configured. The standard virtual MAC address used is: 0000.0C07.ACxy, where xy is the group number in hexadecimal. The functional address is used for Token Ring. The virtual MAC address is different for HSRP version 2.