Re: IPv6 default routes / NM vs. kernel autoconfig

> All,
> 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.

The lower-metric route should be from NetworkManager and it should reflect
the default route for the device that is used for connectivity. In your
case it seems to be nonsense.

There have been many changes in the IPv6 code since last NM update in F17
and particularly the default gateway handling has been revised. The best
approach is to either to test with HEAD or to wait for an update.


> 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.

Currently, NetworkManager doesn't cope well with changes like this and
unfortunately this applies to the Git version of NM as well. I hope
to improve this at some point of time but even the kernel is not very
helpful here.

> 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.

The workaround is to restart the connection.

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

NM is working around lack of information from kernel and it works only in
basic situations. There are solutions to this.

> 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?

There is no official goal AFAIK. And I don't believe in this solution.

> I think this would be a VERY GOOD thing.

I don't think it is a good idea but I've already heard various opinions
on this.

> The kernel autoconf has, in
> my
> experience, a lot of problems.

And these problems should rather be fixed than worked around.

> For example, it tries to configure
> every
> interface by default - including vlan sub-interfaces,

vlan sub-interfaces are virtual ethernet devices. The networking
layer works exactly the same as on any other interface.

> and members of
> bridges or bonds. This is usually (very) unhelpful.

Members of bridges and bonds could probably be left out. But this
can be done automatically by the kernel, as it's useless anyway.
With or without NetworkManager.

> 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.

I agree. Using sysctl to avoid kernel problems is messy.

Just added to:



> Comments welcome.
> Cheers,
> Phil
> _______________________________________________
> networkmanager-list mailing list
> networkmanager-list gnome org

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