Features/NFSClientIPv6

= NFSClientIPv6 =

Summary
Support for mounting NFS servers over IPv6.

Owner

 * Name: Jeff Layton


 * email: jlayton@redhat.com

Current status

 * Targeted release: Fedora 13
 * Last updated: January 18, 2010
 * Percentage of completion: 100%

Detailed Description
Much of this support is already upstream, but the main feature points are:


 * Kernel RPC support for IPv6
 * Kernel NFS client support for IPv6
 * Kernel lock manager (lockd) support for IPv6
 * mount.nfs support for IPv6
 * rpc.gssd support for IPv6
 * rpc.statd support for IPv6

Benefit to Fedora
Many installations already use IPv6, and we would like the ability to mount via NFS over these networks. Solaris has support NFS over IPv6 for years. There's no reason that Linux can't also support it.

Scope
This involves changing both the kernel pieces and the utilities in nfs-utils. Most of the kernel support is already in 2.6.30. Userspace nfs-utils needs to have IPv6 support turned on and will gain a dependency on libtirpc.

As an interim step, we'd like to see TI-RPC support enabled first in nfs-utils, and then later turn on full IPv6 support.

How To Test
To test, a server that supports IPv6 is required. Server-side support is not yet complete for Linux, so an OpenSolaris server is recommended for testing.

The tester will need a recent kernel with support for NFS over IPv6 and an nfs-utils userspace package with IPv6 enabled.

It's expected that most NFS functionality won't change with the addition of IPv6. The exception will be in the establishment of connections and in places where IP addresses get passed back and forth. Of particular interest is:


 * mounting via IPv6
 * mount handling when a hostname has both IPv4 and IPv6 addresses defined in hosts DB or DNS
 * delegation callback support for NFSv4
 * file locking over NFSv2/3
 * KRB5/GSSAPI support when the server and KDC can only communicate via IPv6
 * KRB5 handling when a hostname has both IPv4 and IPv6 addresses defined in hosts DB or DNS

All of the above should work before victory is declared.

User Experience
Users not using IPv6 should notice no change. Users with IPv6 only networks should now have the ability to mount NFS servers. Users on mixed IPv4 and IPv6 networks may now start mounting via IPv6.

Dependencies
Most of the kernel support is already upstream and should make the next release without too much problem. nfs-utils still needs to have this support enabled.

Contingency Plan
If we cannot make the release, then we'll just disable support for IPv6 in nfs-utils. That should move everything back to legacy behavior.

Documentation

 * Upstream linux-nfs wiki page

Release Notes

 * Fedora now has support for mounting NFS exports via IPv6

Comments and Discussion

 * See Talk:Features/NFSClientIPv6