From Fedora Project Wiki

Disabling IPv6 for specific connection

Q: Does this feature include the use case when I need to have ipv6 disabled for a specific connection, which includes not having any inet6 addresses in the interface (as seen by ifconfig), which I have even when using current (fedora 11) nm (unless removing the ipv6 module from kernel or disabling ipv6 other way)? -- user:Mso

Q: I'll extend the question. Right now there's a variable, IPV6INIT, which, according to ifup-ipv6 and ifdown-ipv6, is supposed to turn off IPv6 on an interface-by-interface basis. The only thing it really does is disable running ifup-ipv6. An interface still has at least a link-local address. Furthermore, if you manually flush all IPv6 addresses (ip -6 addr flush), unplugging the cable and plugging it back in brings back the link-local address. I know that's a function of how the kernel handles the interface, but will NM make up for it? --Akistler 05:06, 4 June 2009 (UTC)

  • This would be possible... but why exactly do you want to? What breaks if the interface has a link-local IPv6 address? (I want to make sure we're fixing the right bug.) --Danw

Please don't require dhcpv6

I use radvd on my networks instead of dhcpv6. Don't hardcode NM to require dhcpv6.

  • The NM package will require the dhcpv6 package, but whether or not it actually gets used will be configurable at runtime, as with IPv4 DHCP. You'll be able to configure IPv6 interfaces to use various combinations of static IP/routes, router advertisements, and DHCPv6. (Out of curiosity, how are you currently getting DNS information? Static DNS server addresses? DHCPv4?) --Danw
I use DHCPv4 to assign IPv4 and DNS. Sure, eventually I might have to use DHCPv6, but radvd works great. --Mooninite 21:19, 9 June 2009 (UTC)
I can answer that on my networks, the DNS server is statically configured, but only because my wireless infrastructure doesn't support IPv6 yet (and may not support RA - as an architectural choice - when it does support IPv6). For the wired part, I'd agree with the OP, though. It's better not to require DHCPv6. RA works just fine in many cases. --Akistler 05:35, 4 June 2009 (UTC)
  • radvd supports broadcasting rdnss entries, aka recursive DNS servers. A daemon like rdnssd is capable of watching for the router advertisements and updating /etc/resolv.conf as needed. I'm no n-m guru, but it isn't something that is overly hard to do -- all of the needed data can be contained in the router advertisement. From my radvd.conf:
interface eth1 {
        AdvSendAdvert on;
        prefix 2001:470:d82b:ffff::/64 {
        };
        RDNSS 2001:470:d82b:ffff::2 fec0:0:0:ffff::1 {
                AdvRDNSSOpen on;
        };

}; 

This defines two recursive DNS servers to use, 2001:470:d82b:ffff::2, and fec0:0:0:ffff::1.

There should be no need for dhcpv6 (or v4) in order to get recursive DNS servers for the system. Also, take a look at this IETF draft, namely section 2. Vista doesn't record RDNSS servers sent in the router advertisement, but instead uses this fallback system.

Both are relatively 'easy' to implement (imo, both should be implemented), and do not require full-blown DHCP.

--Kylesb 22:02, 9 June 2009 (UTC)