So, I'm currently embarking on trying to create a linux failover router, using Gentoo Linux. After much googling, I figured I'd might as well ask. Anyway, here is what I have done.
Configured kernel with NAT support, along with the MULTIPATH options and all that stuff. Everything seems to work fine, I enabled eth0, and eth1 with default routes. Now according to all the documentation I've read, this is pretty much all you have to do along with lowering the value in /proc/sys/net/ipv4/route/gc_timeout (which I have done.) Now here comes the weird thing, if I turn off the default router on eth0, it takes a bit, but eth1 does eventually become the default route, now when I flip the router at eth0 back on, it seems like the kernel is having a hard time making a decision on which route to take or something, because the internet completely shuts down and wont come back up, unless I manually remove one of the routes.
And I've been googling for a bit now trying to figure out why, but it seems like all the documentation I come across isn't really helping me much. Any help is appreciated, and thanked in advanced