[Cerowrt-devel] IPv6 RA and RTPROT_whatever [was: switching cerowrt to quagga-babeld issues]
jch at pps.jussieu.fr
Fri Jul 6 12:52:58 EDT 2012
> There is a kernel patch attached, which should fix the issue with IPv6
> default route delivery in CeroWrt (it does fix it on my PC).
I'm a little bit confused.
RAs are supposed to be ignored by routers -- the RFCs are very clear on
that. Linux obeys the RFCs, it will disable accept_ra when forwarding
is set on an interface.
Now there's a race condition -- if the RA was accepted before the
routing daemon set the forwarding knob, then the default route will
remain. However, it will not be renewed -- when the RA expires, you'll
lose your default route.
The workaround to this race condition is to have the routing daemon
ignore RA-originated routes. This is traditionally done by making such
routes RTPROT_BOOT and ignoring such routes in the routing daemon (and
installing routing-protocol-originated routes with a lower metric).
So am I'm confused, or is marking RA-originated routes as anything else
than RTPROT_BOOT exactly the wrong thing to do?
More information about the Cerowrt-devel