From Fedora Project Wiki
 
(32 intermediate revisions by 2 users not shown)
Line 1: Line 1:
NetworkManager supports the IPv6 protocol.
NetworkManager supports the IPv6 protocol and it is turned on by default. It connects to networks with SLAAC and DHCPv6 and keeps the connection running. Many bugs have been fixed recently, so it's possible that it doesn't
work well in your distribution. Reasonably good support will be delivered with NetworkManager 9.6 and Linux 3.5.  


== Static configuration ==
Due to the existence of IPv6 link-local addresses, routing configuration and address configuration are orthogonal.


No ra or dhcp configuration. NetworkManager
Please remember that IPv6 ''is'' different.
supports static configuration.


== Automatic configuration ==
For details about possible IPv6 scenarios, see [[Networking/Addressing#Dynamic_IPv6_configuration]].


To experiment with automatic IPv6 configuration in NetworkManager we recommend trying one or more of
== IPv6 Privacy Extensions ==
the following scenarios:


=== SLAAC without DNS configuration ===
NetworkManager supports [http://tools.ietf.org/html/rfc4941 privacy extensions] through the 'ip6-privacy' key.


/etc/radvd.conf:
An example of a minimally configured keyfile (placed in /etc/NetworkManager/system-connections) is below. Values for the connection section may be obtained using the <code>nmcli connection</code> command.
<pre>[connection]
id=
uuid=
type=


<pre>
[ipv6]
interface eth0 {
method=auto
    AdvSendAdvert on;
ip6-privacy=2</pre>
    prefix 2001:db8:1:2::/64 {};
};
</pre>


DNS queries typically use IPv4. NetworkManager
Or edit a gui created config file at /etc/sysconfig/network-scripts/ifcfg-* and add
supports this configuration and it also works
IPV6_PRIVACY=rfc3041
when device is ignored by NetworkManager.


=== SLAAC with RDNSS and DNSSL ===
== Debugging ==


/etc/radvd.conf:
You can run NetworkManager on foreground with various debugging settings:


<pre>
<pre>
interface eth0 {
/path/to/NetworkManager --no-daemon \
    AdvSendAdvert on;
     --log-level=debug --log-domains=DEVICE,IP6,DHCP6 2>~/nm.debug
     prefix 2001:db8:1:2::/64 {};
    RDNSS 2001:db8:1:2::ab {};
    DNSSL example.net {};
};
</pre>
</pre>


The contents of host's /etc/resolv.conf is filled in by NetworkManager. NetworkManager
Be careful not to run multiple instances of NetworkManager. Check with <code>ps -ef</code> if you experience weird behavior.
currently supports RDNSS but not DNSSL. NetworkManager has problems with RDNSS but they
have to be solved on IETF level.


[https://bugzilla.gnome.org/show_bug.cgi?id=676322 Gnome Bug 676322 - IPv6 DNSSL does not get into /etc/resolv.conf]
== Long-term goals ==


[https://bugzilla.redhat.com/show_bug.cgi?id=753482 Fedora Bug 753482 - wifi drops every 15 minutes (ip-config-unavailable) because of IPv6 RDNSS timeout]
* Don't tear down interfaces, keep link-local networking always on
* Get kernel problems fixed, then simplify ipv6 handling in NM


=== SLAAC with DHCPv6 Information Request ===
== Recently fixed ==


/etc/radvd.conf:
=== Git ===


<pre>
[https://bugzilla.gnome.org/show_bug.cgi?id=676317 Gnome Bug 676317 - IPv6 DHCPv6 configuration fails: nm_system_replace_default_ip6_route returns -7]
interface eth0 {
    AdvSendAdvert on;
    AdvOtherConfigFlag on;
    prefix 2001:db8:1:2::/64 {};
};
</pre>


/etc/dhcp/dhcpd6.conf:
[https://bugzilla.gnome.org/show_bug.cgi?id=676740 Gnome Bug 676740 - NetworkManager fails to configure DHCPv6 address under some circumstances (because it 'assumes')]


<pre>
[https://bugzilla.gnome.org/show_bug.cgi?id=676322 Gnome Bug 676322 - IPv6 DNSSL does not get into /etc/resolv.conf]
subnet6 2001:db8:1:2::/64 {
    option dhcp6.name-servers 2001:db8:1:2::ab;
    option dhcp6.domain-search "example.net";
}
</pre>


This is often used to supply DNS information to hosts that don't support
[https://bugzilla.redhat.com/show_bug.cgi?id=824121 Fedora Bug 824121 - IPv6: Kernel doesn't propagate DNSSL to userspace (e.g. NetworkManager)]
RDNSS/DNSSL in Router Advertisements. NetworkManager fully supports
this configuration.


=== DHCPv6 address and DNS configuration ===
[https://bugzilla.redhat.com/show_bug.cgi?id=753482 Fedora Bug 753482 - wifi drops every 15 minutes (ip-config-unavailable) because of IPv6 RDNSS timeout]


/etc/radvd.conf:
[http://www.ietf.org/mail-archive/web/ipv6/current/msg15816.html IETF IPv6 Mailing List – question on RDNSS, RFC 6106 part 5.1]


<pre>
== WONTFIX / NOTABUG ==
interface eth0 {
    AdvSendAdvert on;
    AdvManagedFlag on;
    AdvOtherConfigFlag on;
    prefix 2001:db8:1:2::/64 {
        AdvAutonomous off;
    };
};
</pre>


/etc/dhcp/dhcpd6.conf:
[https://bugzilla.gnome.org/show_bug.cgi?id=677099 Gnome Bug 677099 - IPv6: NetworkManager configures RDNSS and DNSSL though DHCPv6 even though AdvOtherConfigFlag is not set]
 
<pre>
subnet6 2001:db8:1:2::/64 {
    option dhcp6.name-servers 2001:db8:1:2::ab;
    option dhcp6.domain-search "example.net";
    range6 2001:db8:1:2::1:0000 2001:db8:1:2::1:ffff;
}
</pre>
 
This is a typical DHCPv6 configuration. Note that routing information are stil delivered
through Router Advertisements. NetworkManager fails in this scenario.
 
[https://bugzilla.gnome.org/show_bug.cgi?id=676317 Gnome Bug 676317 - IPv6 DHCPv6 configuration fails: nm_system_replace_default_ip6_route returns -7]

Latest revision as of 22:03, 8 September 2013

NetworkManager supports the IPv6 protocol and it is turned on by default. It connects to networks with SLAAC and DHCPv6 and keeps the connection running. Many bugs have been fixed recently, so it's possible that it doesn't work well in your distribution. Reasonably good support will be delivered with NetworkManager 9.6 and Linux 3.5.

Due to the existence of IPv6 link-local addresses, routing configuration and address configuration are orthogonal.

Please remember that IPv6 is different.

For details about possible IPv6 scenarios, see Networking/Addressing#Dynamic_IPv6_configuration.

IPv6 Privacy Extensions

NetworkManager supports privacy extensions through the 'ip6-privacy' key.

An example of a minimally configured keyfile (placed in /etc/NetworkManager/system-connections) is below. Values for the connection section may be obtained using the nmcli connection command.

[connection]
id=
uuid=
type=

[ipv6]
method=auto
ip6-privacy=2

Or edit a gui created config file at /etc/sysconfig/network-scripts/ifcfg-* and add

IPV6_PRIVACY=rfc3041

Debugging

You can run NetworkManager on foreground with various debugging settings:

/path/to/NetworkManager --no-daemon \
    --log-level=debug --log-domains=DEVICE,IP6,DHCP6 2>~/nm.debug

Be careful not to run multiple instances of NetworkManager. Check with ps -ef if you experience weird behavior.

Long-term goals

  • Don't tear down interfaces, keep link-local networking always on
  • Get kernel problems fixed, then simplify ipv6 handling in NM

Recently fixed

Git

Gnome Bug 676317 - IPv6 DHCPv6 configuration fails: nm_system_replace_default_ip6_route returns -7

Gnome Bug 676740 - NetworkManager fails to configure DHCPv6 address under some circumstances (because it 'assumes')

Gnome Bug 676322 - IPv6 DNSSL does not get into /etc/resolv.conf

Fedora Bug 824121 - IPv6: Kernel doesn't propagate DNSSL to userspace (e.g. NetworkManager)

Fedora Bug 753482 - wifi drops every 15 minutes (ip-config-unavailable) because of IPv6 RDNSS timeout

IETF IPv6 Mailing List – question on RDNSS, RFC 6106 part 5.1

WONTFIX / NOTABUG

Gnome Bug 677099 - IPv6: NetworkManager configures RDNSS and DNSSL though DHCPv6 even though AdvOtherConfigFlag is not set