Anaconda currently relies on the libdhcp (which, in turn, uses the libdhcp4client and libdhcp6client libraries) library for network device configuration. We discover the available devices in the system using udev and hal and then present a configuration interface for the user to collect configuration information. Once we have that information, we call libdhcp to bring up the device. The main problems with this are duplication of a lot of effort (other tools already do this) and the fact that we execute the DHCP and DHCPv6 clients via a library call, so the protocols are not followed correctly. Beyond that, we lack the capabilities for any new networking technologies that gain support in Fedora. Because we have our own configuration path, we cannot make use of those new tools.

Moving to NetworkManager in the installer will bring all of the current network interface management to the installer that the final system currently has.

Once NM is present in rawhide's anaconda environment, IPv4 support needs to be tested to ensure we have the same level of functionality that we currently have. IPv6 may not be complete for Fedora 10, but if it is, we should test that as well. By Fedora 11, IPv6 support should be done in NM.

To test a new capability gained by moving to NM, we should test WPA wireless network installations and ensure those work.

Users should not notice a significant different with the way network configuration works during installation. Most of the changes are on the backend. Users will still be required to pick an interface to use and to fill in any required information such as WPA keys or static settings. For the stage 2 network configuration screen, users should notice a significantly simplified interface since we are relying on NetworkManager going forward.