At 18 Feb 2008 21:55:50 +0000, Nick Barnes <[EMAIL PROTECTED]> wrote:

At 2008-02-18 21:36:18+0000, Bill Moran writes:
In response to Nick Barnes <[EMAIL PROTECTED]>:

I have a multi-home host: more than one IP address. The addresses are in separate subnets but run over the same ethernet segment (this is a
temporary situation while I switch an office network over from one
network provider to another).

I want packets from address A1 to be sent via gateway G1, but packets
from address A2 to be sent via gateway G2.

How do I do this?  Can I just have more than one default route?  I'm
remote from the machine in question, so I don't want to tinker with
the default route until I'm sure of the answer.

You can't have multiple default routes.  The fact that you want to is
an indicator of incorrect network design, although it could be an
artifact of the interim setup while you migrate things around.

I would suggest you ask yourself (and possibly the list) _why_ you think multiple default routes is necessary ... what is it that you're hoping to accomplish. I'm guessing your looking for some sort of redundancy,
in which case something like CARP or RIP is liable to be the correct
solution.

I agree that this is probably my inexperience showing.

Yes.  :^)

I have an office network which is switching leased line, from provider
P1 to provider P2.  I have a /25 from P1 and a (different) /24 from
P2.  I am doing the migration a few machines at a time: move a little,
test a little, etc.  I am dual-homing each host for a short period
while I am switching it over.  The dual-homing works just fine, over a
shared ethernet segment, except for the fact that I can only have one
default route.

Repeat after me: "The default route is the route I use when I don't know a better route."

If you have two connections to the internet, the usual way of handling this is to have a single router that understands both routes. This single router maintains a routing table that knows which connection is the "best" one to use for each IP destination. It maintains this routing table by exchanging route information with other (nearby) routers, most especially those at the other end of your internet connection(s).

If you don't have a single routing instance to do this for you, you have to push the same information all the way down to the devices, so they can make those routing decisions for themselves.

The default route is then one that is used when no other match was found in the routing table. It is an interesting philosophical argument to consider what is the meaning of more than one "default" route -- if you have more than one, how can it be a "default"? When you hit these multiple "default" routes, do you send the packet to all of them? Pick one? Which one? Try one, and if that doesn't work, then try another? Who is responsible for remembering which one(s) don't work?

There is a dangerous assumption here that because both Microsoft and Linux have done something, it's a good idea. In point of fact, it's not a good idea, it is codifying bad network design. If you think you need two or more default routes, you need to learn a little bit more about networking instead.

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.

I'll get down off my soapbox now. This is such an FAQ on this list, you should be required to read and answer this question before being allowed to post to the list. :^)

--
           Where am I, and what am I doing in this handbasket?
Wes Peters                                                     [EMAIL PROTECTED]


_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to