I've been fighting the crux of this problem for months, but I'll try to keep it short here. I need some advice.
I have an MPLS network through my provider with about 20 sites. We are fully meshed. Most sites have a 2811 router and our routing protocol is OSPF. I cannot use EIGRP with my provider, which is a shame, because I think it would solve all my problems.
I've installed a second router at some of my remote MPLS sites that have their own Internet connection. I want to use a GRE/IPSEC (or DMVPN) tunnel to backup the MPLS network with a tunnel back to Corporate. I have the tunnel interface Shutdown at the moment, and manually bring it up when there is an MPLS outage, because.......
If I leave the tunnel up, OSPF works through it as designed. However,
*NO* amount of playing with the metrics nor the TAC can help me with this problem.When the tunnel and MPLS are both up, some routes simply prefer the tunnel over the MPLS link. I want my MPLS T1 to be preferred in all cases unless it is down. Because the tunnel connects directly to my datacenter, and depending on whether the OSPF routes are external, intra-area or inter-area, some routes always see the tunnel as closer.
After weeks of working on it with the TAC, I've decided to pursue a different tactic. What if I just leave the tunnel interface shutdown until such a time when my MPLS circuit dies and automate it to come up? Is this possible? I'm okay with a few seconds of outage to bring up the tunnel.
Dialer-watch does not work with tunnel interfaces. So I was wondering if I could make use of the TCL scripting language, or some other such new 12.3/12.4 feature that behaves in the same way.
Question: Is there a way to make an IOS router check for the presence of a route learned from another local router in OSPF, and when it is missing, change the status of an interface from shutdown to 'no shutdown'? And of course, put it back to 'shutdown' when the route comes back after being advertised by the MPLS router?
-Robert