(→Scope) |
|||
Line 75: | Line 75: | ||
* Everyday use of Fedora in various network environments | * Everyday use of Fedora in various network environments | ||
* Testing the tracked bug reports | * Testing the tracked bug reports | ||
* Specific tests, e.g. for <code>getaddrinfo()</code> | * Specific tests, e.g. for <code>getaddrinfo()</code> and ''glib'' API | ||
== User experience == | == User experience == |
Revision as of 14:24, 7 January 2013
Dualstack Networking
Summary
Support proper dual stack networking. All major system services and user applications should work with both IPv4 and IPv6. All of them should also be able to cope with multiple addresses per hostname via proper use of getaddrinfo().
Owner
- Name: Pavel Šimerda
- Email: psimerda at redhat.com
- Name: David Jaša
- Email: djasa at redhat.com
- Name Tore Anderson
- Email: tore at fud.no
Current status
- Targeted release: Fedora 19
- Last updated: 2013-01-02
- Percentage of completion: 0%
Detailed description
Fedora supports dualstack global networking. That means the computer with Fedora is connected to internet using both IPv4 and IPv6 protocols. But many important system services and applications either don't do IPv6, do it incorrectly, or don't cope with various network conditions.
Unfortunately, while trying to improve IPv6 support, some IPv4 use cases became broken as well. That's why the goal of this feature is not only to support IPv4, but to support all possible real-world cases.
Dualstack-ready software must cope with all possible scenarios including IPv4-only connectivity, IPv6-only connectivity and dual connectivity. The software must also cope with node-local (aka localhost) networking, which as been used by software for decades.
Though it would be nice to have all applications in Fedora fixed to work in any of the scenarios, it is not feasible to test that. Therefore this feature is about major software used in servers, desktops and laptops. The list of such applications will be completed over the time.
Bugs related to dualstack networking should be added to the following tracker bug:
http://bugzilla.redhat.com/show_bug.cgi?id=883152
Also see: https://bugzilla.redhat.com/show_bug.cgi?id=ipv6blocker
Benefit to Fedora
One of Fedora's goals is to be a modern linux distribution that will work in modern environments. For this to be achieved, proper IPv4-only support and proper dualstack support is a MUST. IPv6-only use cases are rare but may become more common at any time. It's better to be prepared for those, too.
Scope
Any software commonly used on day-to-day basis should be correctly handling IPv4-only, IPv6-only and dualstack use cases.
Libraries:
- glibc: name resolution must work properly
- glib: provides networking API for applications
System services:
- knfsd
Applications:
Network testing tools (optional, may become a separate feature):
ping
doesn't support IPv6 addresses nor hostnamestcpdump
doesn't support IPv6 hostnames
Note: Network configuration tools are out of scope of this feature. See Networking#Fedora_feature_pages for other network-related features.
How to test
This is the most difficult part. We are going to combine the following approaches to testing:
- Everyday use of Fedora in various network environments
- Testing the tracked bug reports
- Specific tests, e.g. for
getaddrinfo()
and glib API
User experience
Users currently experience networking problems in various environments even during the most basic use of their system because of principal problems in the distribution. These problems would go away.
Dependencies
Not known.
Contingency plan
This feature is about fixing all important parts of the distribution. We do not expect the required changes to negatively affect the rest of the packages. But if any problems occur, we are ready to help fixing them before the respective version is released. As a last resort, any problematic change can be reverted.
Documentation
Release notes
Dualstack networking is fully supported and glibc and other packages will be tested for not including fundamental design flaws and important bugs regarding IPv4 and IPv6 support.