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

Re: ifupdown: boot console says 'Failed to start Raise network interfaces' yet interface is up



Le 16/08/2016 à 22:07, Rick Thomas a écrit :

On Aug 16, 2016, at 12:59 AM, Pascal Hambourg <pascal@plouf.fr.eu.org> wrote:

iface eth0 inet6 static
      address 2001:1234:2d2:1:f2ad:4eff:fe00:3077
      netmask 64

This IPv6 address looks like an autoconfigured address calculated
from the MAC address. You should not statically assign this kind of
address.

You are correct.  I assumed that when the IPv4 address needed to be
static, the same was true for the IPv6 address as well.

No, IPv4 and IPv6 configuration and operation are mostly independent.

I further assumed that declaring it to be inet6 static would prevent it
from getting any address from the RA.  Apparently not.

Indeed. A single interface can have multiple addresses, each being either static or dynamic.

Why do you say that I should not statically assign this kind of address?

Because it does not provide any benefit. The interface identifier part based on the MAC address is only useful to ensure the address uniqueness with stateless autoconfiguration (unlike stateful configuration such as DHCP where the server takes care of uniqueness).

But this kind of address is long and impossible to remember. With static configuration, the uniqueness is ensured by the administrator who can chose whatever convenient addresses they like such as <prefix>::n.

Also, if you change the MAC address (when replacing the hardware part containing it), you must also manually change a static MAC-based address. You don't have to do this with an arbitrary static address.

It seems that it is getting a dynamic address from the RA (Yes, it’s
the same address as I am statically assigning.)  Prior to the most
recent Sid update, it did not get a dynamic address.  Is that a bug?

My Debian systems configured as hosts (not routers), which is the default, have had SLAAC enabled since many Debian versions.

If you want to disable IPv6 stateless autoconfiguration, just add "ipv6.autoconf=0" to the kernel parameters. Don't add it in a modprobe file as IPv6 is not build as a module in Debian kernels, so it wouln't have any effect. See <https://www.kernel.org/doc/Documentation/networking/ipv6.txt> for reference. Methods based on sysctl are not reliable because the network configuration may happen before sysctl setup.


Reply to: