46d12ae7d3
NetworkManager takes a distinctly differnet network management approach and the bulk of the dhcp-all-interfaces code is largely targetted at distribution specific configuration. Some which may or may not override settings, or only partially assert desirable settings. As such, we need to set appropriate configuration, such as the correct client to be used, and timeouts based upon user supplied settings. By default this change sets the client to be dhclient on redhat styled machines, as the packaging default, while it works for ramdisk usage, it does not reset the interface between retries, which can be critical if the infrastucture operator is attempting to configure LACP trunks to the end node. Change-Id: I0e0cfbdbf7ef2b2861b934ccd7dab9d83a35c8f0 Story: 2008001 Task: 40648 |
||
---|---|---|
.. | ||
install.d | ||
element-deps | ||
package-installs.yaml | ||
pkg-map | ||
README.rst |
dhcp-all-interfaces
Autodetect network interfaces during boot and configure them for DHCP
The rationale for this is that we are likely to require multiple network interfaces for use cases such as baremetal and there is no way to know ahead of time which one is which, so we will simply run a DHCP client on all interfaces with real MAC addresses (except lo) that are visible on the first boot.
On non-Gentoo based distributions the script /usr/local/sbin/dhcp-all-interfaces.sh will be called early in each boot and will scan available network interfaces and ensure they are configured properly before networking services are started.
On Gentoo based distributions we will install the dhcpcd package and ensure the service starts at boot. This service automatically sets up all interfaces found via dhcp and/or dhcpv6 (or SLAAC).
Environment Variables
- DIB_DHCP_TIMEOUT
-
- Required
-
No
- Default
-
30
- Description
-
Amount of time in seconds that the systemd service(or dhclient) will wait to get an address. Should be increased in networks such as Infiniband.
- Example
-
DIB_DHCP_TIMEOUT=300