Multiple default routes on multihome host

Wes Peters wes at opensail.org
Fri Feb 22 03:51:12 UTC 2008


On Feb 20, 2008, at 1:54 PM, Bruce M. Simpson wrote:
> Wes Peters wrote:
>> I see a number of people have replied to this message offering  
>> solutions of how to accomplish your migration, using a variety of  
>> tools available to you in FreeBSD.  I've always found this  
>> community very supportive in this fashion, and I'm glad they've  
>> jumped in to help you in your transition as well.  Please note that  
>> the variety of solutions presented recognize that your transition  
>> period is just that, a temporary situation, and that "multiple  
>> default routes" is not the solution.
>
> The thing is, in a peer-to-peer or ad-hoc mesh network, not having  
> access to a single next-hop serving as the gateway of last resort  
> has a much higher probability of occurring than in a fully converged  
> network with more deterministic layer 3 behaviour.
>
> So we're largely arguing apples vs oranges here. Fact of the matter  
> is, we can't tell people how to run their networks, or which  
> protocols to run. People want IP everywhere and they want it now.  
> (Infinite demand for free goods is another story.)
>
> The argument that functionality "should not" be present because  
> people "should not" run their networks that way carries no water --  
> particularly so when issues of wireless presence and ad-hoc networks  
> blow the old assumptions out of the water.

As much as anything I just object to the semantic dissonance in  
"multiple" "default".  Think about it.

I still haven't decided what it means at the packet level to have  
multiple default routes.  Does that mean that, not having found a  
"better" route, I send the packets out both routes?  Choose between  
them?  Doesn't that tend to flap packets in a TCP "connection" back  
and forth?  Does my router have to remember which route it chose for a  
TCP connection and reuse that one?

I know people want to be able to plug in a pair of itty bitty routers  
and just have their computers be smart enough to use the "best" one,  
but it's not clear the implementations they are pushing us towards --  
Linux and Windows -- actually accomplish that.  In fact, what they  
usually do is screw it up badly and the people only THINK they're  
getting any enhanced reliability.

You're one of the few people who could convince me that they're doing  
better than my experience says, or that we have a way of doing  
better.  Short of being able to somehow collect information about  
whether these links are working, I just don't how it would work.  I  
can design a daemon that can such thing abusing ICMP, but that is just  
a poor man's routing daemon, and still doesn't require multiple  
default routes, just one that is semi-intelligently managed.

--
            Where am I, and what am I doing in this handbasket?
Wes Peters                                                     wes at opensail.org




More information about the freebsd-net mailing list