This documentation has been moved.
Configuring HSRP
Downloads: This chapterpdf (PDF - 575.0KB) The complete bookPDF (PDF - 1.12MB) | Feedback

Configuring HSRP

Table Of Contents

Configuring HSRP

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

SSO Dual-Route Processors and Cisco Nonstop Forwarding

HSRP and SSO Working Together

HSRP MIB Traps

How to Configure HSRP

Enabling HSRP

Prerequisites

Delaying the Initialization of HSRP on an Interface

Troubleshooting Tips

Configuring HSRP Priority and Preemption

Configuring HSRP Object Tracking

Configuring HSRP MD5 Authentication Using a Key String

Restrictions

Configuring HSRP MD5 Authentication Using a Key Chain

Troubleshooting HSRP MD5 Authentication

Configuring HSRP Text Authentication

Customizing HSRP

Troubleshooting Tips

Configuring Multiple HSRP Groups for Load Balancing

Enabling HSRP Support for ICMP Redirects

Improving CPU and Network Performance with HSRP Multiple Group Optimization

Restrictions

Configuring HSRP Virtual MAC Addresses or BIA MAC Addresses

Restrictions

Changing to HSRP Version 2

Restrictions

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

Related Documents

Standards

MIBs

RFCs

Technical Assistance

Feature Information for HSRP

Glossary


Configuring HSRP


First Published: May 2, 2005
Last Updated: May 4, 2009

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

Restrictions for HSRP

Information About HSRP

How to Configure HSRP

Configuration Examples for HSRP

Additional References

Feature Information for HSRP

Glossary

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 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

Virtual MAC Addresses and BIA MAC Addresses

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

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask

Example:

Router(config-if)# ip address 172.16.6.5 255.255.255.0

Configures an IP address for an interface.

Step 5 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 172.16.6.100

Activates HSRP.

If you do not configure a group number, it defaults to 0. The group number range is from 0 to 255 for HSRP version 1 and from 0 to 4095 for HSRP version 2.

The ip-address is the virtual IP address of the virtual router. 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.

Step 6 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 7 

show standby [all] [brief]

Example:

Router# show standby

(Optional) Displays HSRP information.

This command displays information for each group. The all option display groups that are learned or that do not have the standby ip command configured.

Step 8 

show standby type number [group-number | all] [brief]

Example:

Router# show standby GigabitEthernet 0

(Optional) Displays HSRP information about specific groups or interfaces.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet1/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask

Example:

Router(config-if)# ip address 10.0.0.1 255.255.255.0

Specifies an IP address for an interface.

Step 5 

standby delay minimum min-delay reload reload-seconds

Example:

Router(config-if)# standby delay minimum 20 reload 25

(Optional) Configures the delay period before the initialization of HSRP groups.

The min-delay value is the minimum time (in seconds) to delay HSRP group initialization after an interface comes up. This minimum delay period applies to all subsequent interface events.

The reload-seconds value is the time period to delay after the router has reloaded. This delay period applies only to the first interface-up event after the router has reloaded.

Step 6 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.0.0.3 255.255.255.0

Activates HSRP.

Step 7 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 8 

show standby delay [type number]

Example:

Router# show standby delay

(Optional) Displays HSRP information about delay periods.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask

Example:

Router(config-if)# ip address 10.0.0.1 255.255.255.0

Specifies an IP address for an interface.

Step 5 

standby [group-number] priority priority

Example:

Router(config-if)# standby 1 priority 110

Configures HSRP priority.

The default priority is 100.

Step 6 

standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]

Example:

Router(config-if)# standby 1 preempt delay minimum 380

Configures HSRP preemption and preemption delay.

The default delay period is 0 seconds; if the router wants to preempt, it will do so immediately. By default, the router that comes up later becomes the standby.

Step 7 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.0.0.3 255.255.255.0

Activates HSRP.

Step 8 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 9 

show standby [all] [brief]

Example:

Router# show standby

(Optional) Displays HSRP information.

This command displays information for each group. The all option display groups that are learned or that do not have the standby ip command configured.

Step 10 

show standby type number [group-number | all] [brief]

Example:

Router# show standby GigabitEthernet0/0/0

(Optional) Displays HSRP information about specific groups or interfaces.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

track object-number interface type number {line-protocol | ip routing}

Example:

Router(config)# track 100 interface GigabitEthernet0/0/0 line-protocol

Configures an interface to be tracked and enters tracking configuration mode.

Step 4 

exit

Example:

Router(config-track)# exit

Returns to global configuration mode.

Step 5 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 6 

standby [group-number] track object-number [decrement priority-decrement] [shutdown]

Example:

Router(config-if)# standby 1 track 100 decrement 20

Configures HSRP to track an object and change the Hot Standby priority on the basis of the state of the object.

By default, the priority of the router is decreased by 10 if a tracked object goes down. Use the decrement priority-decrement keyword and argument combination to change the default behavior.

When multiple tracked objects are down and priority-decrement values have been configured, these configured priority decrements are cumulative. If tracked objects are down, but none of them were configured with priority decrements, the default decrement is 10 and it is cumulative.

Use the shutdown keyword to disable the HRSP group on the router when the tracked object goes down.

Note 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.

Step 7 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.10.10.0

Activates HSRP.

The default group number is 0. The group number range is from 0 to 255 for HSRP version 1 and from 0 to 4095 for HSRP version 2.

Step 8 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 9 

show track [object-number | brief] [interface [brief]| ip route [brief]| resolution | timers]

Example:

Router# show track 100 interface

Displays tracking information.

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

 
Command
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

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] priority priority

Example:

Router(config-if)# standby 1 priority 110

Configures HSRP priority.

Step 6 

standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]

Example:

Router(config-if)# standby 1 preempt

Configures HSRP preemption.

Step 7 

standby [group-numberauthentication md5 key-string [0 | 7] key [timeout seconds

Example:

Router(config-if)# standby 1 authentication md5 key-string d00b4r987654321a timeout 30

Configures an authentication string for HSRP MD5 authentication.

The key argument can be up to 64 characters in length and it is recommended that at least 16 characters be used.

No prefix to the key argument or specifying 0 means the key will be unencrypted.

Specifying 7 means the key will be encrypted. The key-string authentication key will automatically be encrypted if the service password-encryption global configuration command is enabled.

The timeout value is the period of time that the old key string will be accepted to allow configuration of all routers in a group with a new key.

Step 8 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.0.0.3

Activates HSRP.

Step 9 

Repeat Steps 1 through 8 on each router that will communicate.

Step 10 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 11 

show standby

Example:

Router# show standby

(Optional) Displays HSRP information.

Use this command to verify your configuration. The key string or key chain will be displayed if configured.

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

 
Command
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

key chain name-of-chain

Example:

Router(config)# key chain hsrp1

Enables authentication for routing protocols and identifies a group of authentication keys.

Step 4 

key key-id

Example:

Router(config-keychain)# key 100

Identifies an authentication key on a key chain.

The key-id must be a number.

Step 5 

key-string string

Example:

Router(config-keychain-key)# key-string mno172

Specifies the authentication string for a key.

The string can be 1 to 80 uppercase or lowercase alphanumeric characters; the first character cannot be a number.

Step 6 

exit

Example:

Router(config-keychain-key)# exit

Returns to Keychain configuration mode.

Step 7 

exit

Example:

Router(config-keychain)# exit

Returns to global configuration mode.

Step 8 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 9 

ip address ip-address mask [secondary]

Example:

Router(config-if)# ip address 10.21.8.32 255.255.255.0

Specifies a primary or secondary IP address for an interface.

Step 10 

standby [group-number] priority priority

Example:

Router(config-if)# standby 1 priority 110

Configures HSRP priority.

Step 11 

standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]

Example:

Router(config-if)# standby 1 preempt

Configures HSRP preemption.

Step 12 

standby [group-numberauthentication md5 key-chain key-chain-name

Example:

Router(config-if)# standby 1 authentication md5 key-chain hsrp1

Configures an authentication MD5 key chain for HSRP MD5 authentication.

The key chain name must match the name specified in Step 3.

Step 13 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.21.8.12

Activates HSRP.

Step 14 

Repeat Steps 1 through 12 on each router that will communicate.

Step 15 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 16 

show standby

Example:

Router# show standby

(Optional) Displays HSRP information.

Use this command to verify your configuration. The key string or key chain will be displayed if configured.

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

 
Command
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

debug standby errors

Example:
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

 
Command
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

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] priority priority

Example:

Router(config-if)# standby 1 priority 110

Configures HSRP priority.

Step 6 

standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]

Example:

Router(config-if)# standby 1 preempt

Configures HSRP preemption.

Step 7 

standby [group-numberauthentication text string

Example:

Router(config-if)# standby 1 authentication text authentication1

Configures an authentication string for HSRP text authentication.

The default string is cisco.

Step 8 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.0.0.3

Activates HSRP.

Step 9 

Repeat Steps 1 through 8 on each router that will communicate.

Step 10 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 11 

show standby

Example:

Router# show standby

(Optional) Displays HSRP information.

Use this command to verify your configuration. The key string or key chain will be displayed if configured.

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 [msechellotime [msecholdtime

6. standby [group-number] ip [ip-address [secondary]]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

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 [msechellotime [msecholdtime

Example:

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]]

Example:

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

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] priority priority

Example:

Router(config-if)# standby 1 priority 110

Configures HSRP priority.

Step 6 

standby [group-number] preempt [delay {minimum delay | reload delay | sync delay}]

Example:

Router(config-if)# standby 1 preempt

Configures HSRP preemption.

Step 7 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 10.0.0.3

Activates HSRP.

Step 8 

On the same router, repeat Steps 5 through 7 to configure the router attributes for different standby groups.

For example, Router A can be configured as an active router for group 1 and be configured for active or standby router for another HSRP group with different priority and preemption values.

Step 9 

exit

Example:

Router(config-if)# exit

Exits to global configuration mode.

Step 10 

Repeat Steps 3 through 9 on another router.

Configures multiple HSRP and enables load balancing on another router.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

standby redirect [timers advertisement holddown] [unknown]

Example:

Router(config-if)# standby redirect

Enables HSRP filtering of ICMP redirect messages.

You can also use this command in global configuration mode, which enables HSRP filtering of ICMP redirect messages on all interfaces configured for HSRP.

Step 5 

end

Example:

Router(config-if)# end

Returns to privileged EXEC mode.

Step 6 

show standby redirect [ip-address] [interface-type interface-number] [active] [passive] [timers]

Example:

Router# show standby redirect

(Optional) Displays ICMP redirect information on interfaces configured with HSRP.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number 

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

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 mac-refresh seconds

Example:

Router(config-if)# standby mac-refresh 30

Configures the HSRP client group refresh interval.

Step 6 

standby group-number follow group-name

Example:

Router(config-if)# standby 1 follow HSRP1

Configures an HSRP group as a client group.

Step 7 

exit

Example:

Router(config-if)# exit

Exits to global configuration mode.

Step 8 

Repeat Steps 3 through 6 to configure additional HSRP client groups.

Configures multiple HSRP client groups.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number

Example:

Router(config)# interface GigabitEthernet0/0/0

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask [secondary]

Example:

Router(config-if)# ip address 172.16.6.5 255.255.255.0

Configures an IP address for an interface.

Step 5 

standby [group-number] mac-address mac-address

or

standby use-bia [scope interface]

Example:

Router(config-if)# standby 1 mac-address 5000.1000.1060

or

Example:

Router(config-if)# standby use-bia

Specifies a virtual MAC address for HSRP.

This command cannot be used on a Token Ring interface.

or

Configures HSRP to use the burned-in address of the interface as its virtual MAC address.

The scope interface keywords specify that the command is configured just for the subinterface on which it was entered, instead of the major interface.

Step 6 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 1 ip 172.16.6.100

Activates HSRP.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

interface type number

Example:

Router(config)# interface vlan 400

Configures an interface type and enters interface configuration mode.

Step 4 

ip address ip-address mask

Example:

Router(config-if)# ip address 10.10.28.1 255.255.255.0

Sets an IP address for an interface.

Step 5 

standby version {1 | 2}

Example:

Router(config-if)# standby version 2

Changes the HSRP version.

Step 6 

standby [group-number] ip [ip-address [secondary]]

Example:

Router(config-if)# standby 400 ip 10.10.28.5

Activates HSRP.

The group number range for HSRP version 2 is expanded to 0 through 4095. The group number range for HSRP version 1 is 0 through 255.

Step 7 

end

Example:

Router(config-if)# end

Ends the current configuration session and returns to privileged EXEC mode.

Step 8 

show standby

Example:

Router# show standby

(Optional) Displays HSRP information.

HSRP version 2 information will be displayed if configured.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

redundancy

Example:

Router(config)# redundancy

Enters redundancy configuration mode.

Step 4 

mode sso

Example:

Router(config-red)# mode sso

Enables the redundancy mode of operation to SSO.

After performing this step, HSRP is SSO aware on interfaces that are configured for HSRP and the standby RP is automatically reset.

Step 5 

exit

Example:

Router(config-red)# exit

Exits redundancy configuration mode.

Step 6 

no standby sso

Example:

Router(config)# no standby sso

Disables HSRP SSO mode for all HSRP groups.

Step 7 

standby sso

Example:

Router(config)# standby sso

Enables the SSO HSRP feature if you have disabled the functionality.

Step 8 

end

Example:

Router(config)# end

Ends the current configuration session and returns to privileged EXEC mode.

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

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

snmp-server enable traps hsrp

Example:

Router(config)# snmp-server enable traps hsrp

Enables the router to send SNMP traps and informs, and HSRP notifications.

Step 4 

snmp-server host host community-string hsrp

Example:
Router# snmp-server host myhost.comp.com public 
hsrp

Specifies the recipient of an SNMP notification operation, and that HSRP notifications be sent to the host.

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 Version 2

Example: SSO HSRP

Example: HSRP MIB Traps:

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 ConfigurationActive 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 ConfigurationStandby 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

Related Topic
Document Title

Cisco IOS commands

Cisco IOS Master Commands List, All Releases

GLBP

"Configuring GLBP" module

HSRP commands: complete command syntax, command mode, command history, defaults, usage guidelines, and examples

Cisco IOS IP Application Services Command Reference

ISSU

Cisco IOS XE In Service Software Upgrade Process document

Object tracking

"Configuring Enhanced Object Tracking" module

VRRP

"Configuring VRRP" module


Standards

Standards
Title

No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.


MIBs

MIBs
MIBs Link

CISCO-HSRP-MIB
CISCO-HSRP-EXT-MIB

To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs


RFCs

RFCs
Title

RFC 792

Internet Control Message Protocol

RFC 1828

IP Authentication Using Keyed MD5

RFC 2281

Cisco Hot Standby Router Protocol


Technical Assistance

Description
Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html


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.


Table 1 Feature Information for HSRP 

Feature Name
Releases
Feature Information

FHRP—HSRP-MIB

Cisco IOS XE
Release 2.1

The FHRP—HSRP-MIB feature introduces support for the CISCO-HRSP-MIB.

FHRP—HSRP Group Shutdown

Cisco IOS XE
Release 2.1

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:

HSRP Group Shutdown

Configuring HSRP Object Tracking

Example: HSRP Group Shutdown

The following commands were modified by this feature: standby track, show standby.

FHRP—HSRP Multiple Group Optimization

Cisco IOS XE
Release 2.1

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
Release 2.1

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:

ISSU—HSRP

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
Release 2.1

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:

HSRP MD5 Authentication

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
Release 2.1

The HSRP support for ICMP Redirects feature enables ICMP redirection on interfaces configured with HSRP.

The following sections provide information about this feature:

HSRP Group Shutdown

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
Release 2.1

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:

HSRP Support for MPLS VPNs

There are no new or modified command for this feature.

HSRP Version 2

Cisco IOS XE
Release 2.1

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:

HSRP Version 2 Design

Changing to HSRP Version 2

The following commands were introduced or modified by this feature: show standby, standby ip, standby version.

SSO—HSRP

Cisco IOS XE
Release 2.1

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 HSRP

SSO Dual-Route Processors and Cisco Nonstop Forwarding

HSRP and SSO Working Together

Enabling SSO Aware HSRP

Verifying SSO Aware HSRP

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.