kern/71474: route lookup does not skip interfaces marked down
Ruslan Ermilov
ru at freebsd.org
Wed Sep 8 05:50:25 PDT 2004
The following reply was made to PR kern/71474; it has been noted by GNATS.
From: Ruslan Ermilov <ru at freebsd.org>
To: Thomas Quinot <thomas at freebsd.org>
Cc: bug-followup at freebsd.org
Subject: Re: kern/71474: route lookup does not skip interfaces marked down
Date: Wed, 8 Sep 2004 15:49:26 +0300
On Wed, Sep 08, 2004 at 02:26:29PM +0200, Thomas Quinot wrote:
> * Ruslan Ermilov, 2004-09-08 :
>
> > But your test case only applies to P2P interfaces, when both ends
> > of two P2P interfaces share the same IP address.
>
> No, this is not the case. Only the remote ends of the two interfaces
> share the same IP address. I described that test case because using gif
> interfaces makes it easier to reproduce, but I initially observed this
> symptom with one bge and one Intel wireless (ndis) interface.
>
That's what I meant (two remote ends of both interfaces).
> > I do not see how this could apply to broadcast interfaces.
>
> As follows. Consider a machine with two Ethernet interfaces I1 and I2.
>
> ifconfig I1 192.168.0.1 netmask 255.255.255.0
> ifconfig I1 down
> ifconfig I2 192.168.0.2 netmask 255.255.255.0
> route add default 192.168.0.254
>
> The default route will be set to 192.168.0.254 on I1, not on I2 as
> expected.
>
It's still a misconfiguration -- if you do not bring the I1 interface
down, the "interface" route for I2 will not be installed, and the
ifconfig(8) command will be aborted. Anyway...
I reproduced this with two ng_eiface(4) nodes. There's still a useful
option in the route(8) utility -- you can supply an explicit reference
to the interface, like this:
: route add default 192.168.0.254 -ifp I1
This is also vaguely documented in the route(8) manpage, FWIW:
: In a change or add command where the destination and gateway are not suf-
: ficient to specify the route ..., the -ifp or -ifa modifiers may be used
: to determine the interface or interface address.
Cheers,
--
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
More information about the freebsd-bugs
mailing list