[Bug 1609367] Re: ifupdown does not set ipv6-only large mtu
Dan Streetman
dan.streetman+launchpad at canonical.com
Mon Aug 29 15:50:24 UTC 2016
> While we could see about getting the script included in yakkety (or y+1);
> curtin will still need to
> handle this unless we want to SRU ifdowndown in precise, trusty and
> xenial. This has an enormous
> impact; so it's not something we should take lightly.
As long as curtin handles it correctly, I don't see any need to SRU
ifupdown; just adding the scripts in y and forward should be enough.
Anyone manually configuring ifupdown in X or earlier can manually setup
both inet and inet6 sections to get the mtus right.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ifupdown in Ubuntu.
https://bugs.launchpad.net/bugs/1609367
Title:
ifupdown does not set ipv6-only large mtu
Status in ifupdown package in Ubuntu:
Confirmed
Bug description:
ifupdown changes a device's mtu differently, between "inet" section
mtu and "inet6" section mtu. For "inet", ifupdown changes the
device's mtu, using 'ip link set DEV mtu NNN'. However for "inet6",
ifupdown changes the interface's IPv6 mtu, using 'sysctl -q -e -w
net.ipv6.conf.DEV.mtu=NNN'.
The problem is that a device's ipv6 mtu cannot be larger than the
device mtu. Normally this is not a problem; the main reason a device
needs a separate ipv6 mtu is to support ipv6 tunneling inside ipv4
(e.g. 6in4 or 6rd), so ifupdown would also have a ipv4 "inet" section
that contained a larger mtu (or, the ipv6 section would have a lower-
than-default mtu).
But, in the case of an interface that is configured only for ipv6
*and* large frames (e.g. 9000 mtu), there is only an "inet6" section
in the ifupdown config, and so ifupdown fails to set the device's mtu,
which causes its attempt to set the ipv6 mtu to fail.
I believe the correct behavior is for ifupdown to check if there is
any "inet" config section for the same device as the "inet6" section,
and if there is not then it should change the device mtu as well as
the ipv6 mtu. Additionally, the "inet6" configuration must be done
after the "inet" configuration for the same device, since the ipv6 mtu
can't be higher than the device mtu.
I don't see any easy way to add that logic to inet6.defn, however...
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1609367/+subscriptions
More information about the foundations-bugs
mailing list