Some routes no longer getting flagged with 'GATEWAY' in fbsd >=8

Li, Qing qing.li at bluecoat.com
Mon Jun 17 19:26:21 UTC 2013


Hi,

I tried to keep the route messages to be legacy compatible due to reported 
breakage at the time. Let me revisit the code and get back to you.

I haven't run the quagga code for years, so please don't mind me request
some information from you offline.

--Qing


________________________________________
From: owner-freebsd-net at freebsd.org [owner-freebsd-net at freebsd.org] on behalf of Mack Nagashima [freebsd at mackn.org]
Sent: Monday, June 17, 2013 11:44 AM
To: freebsd-net at freebsd.org
Subject: Some routes no longer getting flagged with 'GATEWAY' in fbsd >=8

we're in the process of upgrading from fbsd 7 to 9 and noticed a change
in behavior that might be problematic for us.

We use quagga to establish bgp sessions with a router.  We have it set
to redistribute kernel routes.
Zebra seems to drop anything that doesn't have the 'GATEWAY' flag set on
a route.

Prior to fbsd8 this wasn't a problem.  Doing something like the
following worked fine in fbsd7:

ifconfig em0 inet 192.168.100.1/24
ifconfig lo0 inet 192.168.100.100/24 alias
route add -nostatic 192.168.100.100/32 192.168.100.1

in fbsd7 this would yield a route with the flags <UP,GATEWAY> according
to RTM_GET.
in fbsd8+ the same would yield a route with <UP> without the GATEWAY flag.

However the RTM_ADD for the 'route add' comes in with <UP,GATEWAY,DONE>
on fbsd8+ so quagga does add if it's up before the route gets added but
starting quagga after the route is added ignores it since it's missing
the GATEWAY flag once in the routing table.  (route delete also fails to
propagate to quagga since the GATEWAY flag is missing)

I assume this is all due to the networking overhaul in fbsd8 and perhaps
it no longer flags any route who's gateway is bound to ANY interface on
the box as a gateway.

So the ultimate question is..  is there a way to get the legacy behavior
and get them flagged with GATEWAY so zebra will see them or a better
solution with the way networking now works...  (i noticed that issuing a
'route change' of an existing route with the GATEWAY flag set seems to
work as it doesn't drop the flag when the gateway changes under it...)

Thanks in advance!

-mackn

_______________________________________________
freebsd-net at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"


More information about the freebsd-net mailing list