HSRP

Having a “small” problem with HSRP.

ASCII Network Diagram

[switch-a1]--[router-a1]--[ISP 1 Cloud]--[router-b1]--[switch-b1]--- Active Link
|          |                           |              |
[switch-a2]--[router-a2]--[ISP 1 Cloud]--[router-b1]--[switch-b2]--- Standby Link

I configured HSRP all on devices. My problem is, when a switch-a1 fails, router-a1 fails over to router-a2. but router-b1 will not fail over as the link between router-a1 and router-b1 via ISP 1 is still up.

I tried HSRP tracking, but the best tracking method I found is IP Route Reachability.
Track shows the object is up if the gateway to that network is still in your routing table.

so even configuring “track 100 ip route 10.2.2.2/32 reachability” doesn’t work, as the gateway is added manually as a static route.

Sample Config from Cisco.

!Router A Configuration
track 100 ip route 10.2.2.0/24 reachability
!
interface Ethernet0/0
ip address 10.1.1.21 255.255.255.0
standby 1 preempt
standby 1 ip 10.1.1.1
standby 1 priority 110
standby 1 track 100 decrement 10

Maybe HSRP is not that right solution for this deployment. 4 pairs of HSRP-ed devices connected.
Solution:

Well, my teammates manage to solve this problem. Apparently HSRP not just track the interface but objects like route reachability and others.

The route reachability somehow didn’t work as determines the object is up if the gateway to that network is still in your routing table, so even the link is down. As we are using static route, its still in the routing table.

We discovered IP SLA, but it’s for IOS 12.4, and our image is still 12.3. The old commands is rtr, Response Time Reporter. In short we use ICMP Echos from a router to another switch to see whether that tracked objects is up or not.

So by configuring that RTR, the router-a will check with the switch-b and vice vesa to see whether the link is up or not. Of coz, there will be a lot of small packets generated every few sec. No other choice.