GNOME Bugzilla – Bug 734037
Implement Rapid DHCP (RFC4436)
Last modified: 2020-11-12 14:27:55 UTC
I came across this article <http://cafbit.com/entry/rapid_dhcp_or_how_do> that explain how do Mac OS X does to configure the network using DHCP as fast as they do. They are able to have a configured network interface in 30ms. This is also described in RFC 4436 <http://www.ietf.org/rfc/rfc4436.txt> The point is: - Be ready as fast as possible when the link becomes ready. That means having the DHCP client already loaded and ready - ARP request for each of the previous networks we were connected to. Send the ARP request to the MAC adress of the DHCP server (do not broadcast) and request the DHCP server IP. - In many cases, the network we are connected to is already known and the DHCP server replies to the ARP request. We then know that we are connected to this network. - Start a DHCP request, requesting out old IP address - In parallel, check that the IP address is not in use using ARP, don't wait too long for a reply, and if the address is not taken, preconfigure the interface We then have a network interface that is already configured, even before the DHCP server replied with a new lease. We also have good confidence that the IP address is not used by anyone else.
I'm missing a couple of important pieces of information. First of all I would like to know your estimate of the current DHCP configuration time and whether it can actually be improved using the described techniques or there is another problem (whether generic or hardware specific). But even with that information, I don't think NetworkManager is the right place to implement (Rapid) DHCP logic. NetworkManager is currently using dhclient and as far as I know, it's going to also support systemd's DHCP library. In my opinion, the bug report should first be filed with systemd and when the library works as expected, NetworkManager should just use it according to the docs.
bugzilla.gnome.org is being shut down in favor of a GitLab instance. We are closing all old bug reports and feature requests in GNOME Bugzilla which have not seen updates for a long time. If you still use NetworkManager and if you still see this bug / want this feature in a recent and supported version of NetworkManager, then please feel free to report it at https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/ Thank you for creating this report and we are sorry it could not be implemented (workforce and time is unfortunately limited).