IPv6 default routes / NM vs. kernel autoconfig


I work in the network team at an (almost) fully IPv6 enabled site. We use a lot of Linux servers and desktops as part of the Network infrastructure.

We recently rebooted one of our IPv6 routers, serving a subnet with two IPv6 gateways. After the reboot, a Fedora 17 machine running the most recent NM package had the following routing table entries, and no IPv6 connectivity:

::/0              fe80::21b:2bff:fec1:dcc1   UG   1   0     0 em1
::/0              fe80::217:e0ff:fe43:5941   UGDAe 1024 0     0 em1
::/0              fe80::21b:2bff:fec1:dcc2   UGDAe 1024 0     0 em1

Note that the lower-metric route is for the IPv6 host ending in dcc1, but the two higher-metric routes, which I assume come from the kernel autoconf, are different hosts - dcc1 and 5941.

We took a look at the router, and found that, before reboot, it had been using blahblah:dcc1 as the link-local, but after reboot it started using blahblah:dcc2.

The kernel autoconf seems to have picked this up - the Cisco routers send an RA with lifetime=0 before going down - but what I am assuming is the NetworkManager-installed static route didn't change.

My main question: What should happen in this situation? Is this a bug in NM?

As a secondary question: what is the eventual goal for IPv6 in NetworkManager? Specifically, is the goal to suppress ALL the kernel-based autoconf logic, and have NetworkManager drive the address configuration?

I think this would be a VERY GOOD thing. The kernel autoconf has, in my experience, a lot of problems. For example, it tries to configure every interface by default - including vlan sub-interfaces, and members of bridges or bonds. This is usually (very) unhelpful.

You can resort to /etc/sysctl.conf to hack around this, but it's messy. In addition, the various sysctl knobs are not well-decomposed, or even very obvious.

Comments welcome.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]