2018-02-26, 10:57:11 -0500, David Miller wrote: > From: Sabrina Dubroca <s...@queasysnail.net> > Date: Mon, 26 Feb 2018 16:41:32 +0100 > > > What are you concerned about, if we let userspace set this flag? > > I am concerned that the kernel is no longer in charge of making sure > that all of the RFC rules are met in this area.
This can already happen with IFA_F_NODAD or net.ipv6.conf.*.accept_dad. We'll send packets using non-unique addresses. > Userland is now repsonsible for implementing correct behavior when it > takes over this task, and therefore the kernel has no say in the > matter of proper ipv6 neighbor discovery and addrconf behavior. As an aside, that's also the case whenever userland uses packet sockets. > Unlike with things like DHCP, addrconf et al. in ipv6 are > fundamentally defined aspects of the protocol suite. > > This division of responsibility means that we will also run into > situations where who (kernel or user) must take care of X or Y might > be ambiguous or hard to pin down in certain circumstances. I don't think it's ambiguous here, but I can add documentation. > I really don't like this situation where a fundamental protocol is > conditionally the responsibility of the kernel, it's really bad design > decision overall. I understand. But I think with this patch, userspace could rely on the kernel's DAD, instead of having to perform DAD itself in order to avoid the delay that non-optimistic DAD introduces. -- Sabrina