I'm having a problem with tracking and route maps.
My route maps are working, but not with the track keyword. I know the reason it is not working, but I'm not sure how to fix it.
I have two /30 links between two sites. These /30's are presented as ethernet (read: interfaces always up, therefore IP addresses are always reachable) I am tracking the far side ip address on the /30's, but when one link goes down, the tracked ip address is still available via the other route so the route map never changes.
I have my config below (and topology attached) - the routemaps and track objects are the same on 3560_1 and 3560_2. I'm running EIGRP all over. I was thinking it could be made to work if I could set the TTL on ipIcmpEcho to 1, but I couldn't find a way to do that. The only other thing I can think of is to use an ACL blocking ICMP in a specific way.
track 101 rtr 101 reachability
track 102 rtr 102 reachability
access-list 101 permit ip host 172.18.1.26 host 172.20.209.50
access-list 102 permit ip host 172.18.1.27 host 172.20.209.51
route-map EX_REP permit 10
match ip address 101
set ip next-hop verify-availability 192.168.20.5 1 track 101
route-map EX_REP permit 20
match ip address 102
set ip next-hop verify-availability 192.168.20.1 1 track 102
type echo protocol ipIcmpEcho 192.168.20.5
rtr schedule 101 life forever start-time now
type echo protocol ipIcmpEcho 192.168.20.1
rtr schedule 102 life forever start-time now
I would suggest that one way to fix your issue is to configure a pair of host specific static routes in which you specify both the next hop you want to reach and the interface to use to get there. It might look something like:
ip route 192.168.20.1 255.255.255.255 fastether?/?
ip route 192.168.20.5 255.255.255.255 fastether?/?
Your issue is that when one of the interfaces stops working the remote address is still reachable through the other interface and so the track does not detect the failure. The host specific static will take precedence over any other way to get to the next hop and it will say to get to that address you must use only this interface. This will allow the track to detect failure of forwarding over that interface.