IPV6 Health Check

Registered by Chuck Short on 2011-04-20

IPV4 addresses have been exhausted. We should double check that we are okay for IPV6 and make the required changes needed for better IPV6 support.

Blueprint information

Steve Langasek
Stéphane Graber
Stéphane Graber
Series goal:
Accepted for oneiric
Milestone target:
Started by
Colin Watson on 2011-08-10
Completed by
Stéphane Graber on 2011-10-07


Work items:
[cjwatson] Pick up the ipv6 netcfg enabled d-i code: DONE
[cjwatson] Implement stateful DHCPv6 in netcfg: DONE
[cjwatson] Implement dual-stack support in netcfg: DONE
[cjwatson] Convert existing IPv6 netcfg code to permit using isc-dhcp-client for DHCPv6 on Linux: DONE
[cjwatson] Deal with MIR for ndisc6 (bug 806723): DONE
[cjwatson] Figure out interactions with ifupdown for SLAAC and DHCPv6: DONE
[stgraber] Verify dhcpv6 functionality in isc-dhcp-client-udeb (see below): DONE
[vorlon] merge latest NFS from debian: DONE
[vorlon] Upstartify rpcbind: DONE
[etienne-goyer-outlands] Check status of IPv6 support within Go et al: POSTPONED
[vorlon] Follow up with pgraner on testing of IPv6 support : DONE
[vorlon] Drill down to the known failures for consumer hardware and ensure these are tested/QA'ed
 - Maybe related to Ubuntu Friendly hardware ?: TODO
[stgraber] Work on automated testing of IPv6 for both d-i and NM.: DONE

isc-dhcp-client-udeb tests:
 - Works fine for dhcpv4 (dhclient -4 -d eth0)
 - Works fine for dhcpv6 (dhclient -6 -d eth0)
 - Included by default on CDs but not installed. So required: anna-install isc-dhcp-client-udeb
 - Current default dhcp client is busybox's udhcpc. As we ship isc-dhcp-client-udeb anyway and netcfg supports it for ipv4 already, it's probably worth just switching to it for both v4 and v6.
 - It's to be noted that the mini.iso image doesn't contain isc-dhcp-client-udeb and so only relies on udhcpc which doesn't support IPv6. We'll probably need to include the isc-dhcp-client udeb in that image so we have a work IPv6 stack there too.

Meeting notes:
The IPv4 address space has been depleted, look at what's required in Ubuntu to get the ipv6 stack in good shape.
 * IPv6 is urgent everywhere...

 * Installer support
  - Dual stack and IPv6 only
  -- http://lists.debian.org/debian-boot/2011/01/msg00883.html (do not use brackets because they corrupt the URL)
  - DHCPv6 (both in installer and after)
  - NFS
  - UFW - supported
  - Issues with consumer grade hardware

Pre-meeting notes:
Renamed to a foundations spec, as this is a core issue for Ubuntu and it's derivatives -robbie.w

2011-05-17, amano
- Security and privacy are important. Maybe you should enable the Security Extensions for IPv6 by default? Win XP, Vista and Win 7 do so by default and iOS since version 4.3. Most certainly Ubuntu should do so as well. Source (in german): http://www.heise.de/netze/artikel/IPv6-Privacy-Extensions-einschalten-1204783.html. See page 3 for their suggestions to Ubuntu users.

2011-05-01, mathieu-tl:
Some extra things to consider in discussion contributed by Erik Andersen:
- check support for ipv6 in PPPoE (NM-specific) (mentioned on NM bugzilla, see https://bugzilla.gnome.org/show_bug.cgi?id=593813)
- providing a way for users to enable/disable ipv6 privacy extensions (see bug 176125)
- verify / make UFW IPv6 ready (jdstrand: it's ready-- been in ufw since the beginning, with improvements all along the way) (erik-b-andersen:when I mentioned this, I mostly meant setting IPV6=yes in /etc/default/ufw)

2011-05-02, EtienneG
Foundations-related topic to discuss:
- Whether or not we should support the IPv6-only use-case (ie, not dual-stack)
- Installer support: d-i/netcfg, etc.
- NFS: replacing portmap with rpcbind (if needed) and making sure we have all the bits and pieces. Right now, nfs-utils is compiled without --enable-ipv6.
- Status of DHCPv6
- How well the various interpreted languages (Python, Perl, Ruby, PHP, Go, etc) supports IPv6

Non-foundations related topic that might be of interest:
- Making the Ubuntu network infrastructure (archive, web site, Launchpad, etc) reachable by IPv6
- Creating automated test-case for IPv6-only configuration
- Are all the major clients/daemons in main IPv6-capable? Should it be made a requirement?
- libvirt IPv6 support seems broken (not sure)

- Ubuntu should ideally work identically with IPv4-only, IPv6-only, and dual-stack setups, including cases where one of v4 or v6 is broken (not connected to the internet), and work with all the possible router advertisement/dhcpv4/dhcpv6 setups.

 - Apparently libnet-dns-perl doesn't support IPv6: http://lists.amavis.org/pipermail/amavis-users/2011-June/000462.html there is a patch attached to the message.
 - http://www.ripe.net/ripe/docs/ripe-501 is worth reviewing as that's a decent summary of 'official' IPv6 requirements.


Work Items