The answer for IPv4 was figured out here:
http://unix.stackexchange.com/questions/90443/sysctl-proc-sys-net-ipv46-conf-whats-the-difference-between-all-defau

The behaviour is non-obvious. For some settings the interface and 'all'
settings are ANDed together; for others they are OR'd, for others the
MAX is taken.

send_redirects is an OR, which means you can enable sending of redirects
on all interfaces (conf.all.send_redirects=1) but you cannot disable
sending them on all interfaces. In that case you have to set
conf.all.send_redirects=0 *and* set each individual interface.

So in /etc/sysctl.conf you have to list all the interfaces which the
host has (or may have) at startup time, if you want to disable sending
of redirects on those interfaces. A tri-state setting for conf.all would
be much more useful, but that's not what we have.

Now back to the original report, which was about
net.ipv6.conf.all.autoconf=0. What is the intended behaviour from the
kernel authors?

include/linux/inetdevice.h appears to have IPv4 settings only. For IPv6:

grep -R devconf_all net/ipv6

Unfortunately it's not obvious to me how "all" + interface-specific
parameters  interact for IPv6. There are some places where the two are
explicitly combined: e.g.

[net/ipv6/ndisc.c]
                     (net->ipv6.devconf_all->proxy_ndp || idev->cnf.proxy_ndp) 
&&

I don't see anything similar for autoconf. However there is:

[net/ipv6/af_inet6.c]
MODULE_PARM_DESC(autoconf, "Enable IPv6 address autoconfiguration on all 
interfaces");

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/96578

Title:
  The sysctl net.ipv6.conf.all.autoconf does not apply to "all"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/96578/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to