in.c autoadding prefix route
Vladimir Grebenschikov
vova at fbsd.ru
Wed Nov 17 08:50:36 PST 2004
В чт, 11/11/2004 в 21:24 +0100, Max Laier пишет:
> All,
>
> I know I have sent this a couple of times before, but never got anywhere. This
> time I am set to commit!
>
> The attached patch (http://people.freebsd.org/~mlaier/in.c.patch) derived from
> WIDE via OpenBSD in.c, rev 1.21 improves the handling of automatic prefix
> routes.
>
> Right now you can't have two legs into the same network. If you want to, you
> must give on of the interfaces a host address only (netmask /32). This way it
> is not possible to hand over the route if one of the interfaces is
> "removed" (however this is done in the special case).
>
> The patch allows to add more than on IPv4 address with the same prefix. In the
> case that there is a route already, we leave it alone and add the new address
> without the IFA_ROUTE flag. When we remove an address later on, that has a
> route associated, we try to find an alternative address to use for the route
> and hand it over.
>
> This is required for CARP, but should be helpful for other situations as well.
>
> Any objections?
This change actually broke one simple thing:
# ifconfig lo0 alias 10.0.16.111/32
# ping 10.0.16.111
PING 10.0.16.111 (10.0.16.111): 56 data bytes
ping: sendto: No route to host
^C
#
You should (anyway should) add routing of interface address itself to
loop-back interface, like it usually done in all other cases.
Please fix.
--
Vladimir B. Grebenchikov
vova at fbsd.ru
More information about the freebsd-net
mailing list