diskimage-builder/diskimage_builder/elements/dhcp-all-interfaces
Clark Boylan 7b41f8160b Fix dhcp-all-interfaces on debuntu systems
There are two issues with dhcp-all-interfaces on debuntu interfaces
addressed here. First is the path to dhclient lease files is
/var/lib/dhcp not /var/lib/dhclient. Second there is a missing newline
in the ENI interface file which causes a parse error.

Change-Id: Ice83e0d49a4234301dc12daf828ba80fef414cdb
2022-04-26 13:37:13 -07:00
..
install.d Fix dhcp-all-interfaces on debuntu systems 2022-04-26 13:37:13 -07:00
element-deps Move elements & lib relative to diskimage_builder package 2016-11-01 17:27:41 -07:00
package-installs.yaml Add IPv6 support in dhcp-all-interfaces 2019-11-13 09:31:01 +01:00
pkg-map Install ndisc6 package in element script 2019-12-03 14:57:33 +01:00
README.rst dhcp-all-interfaces: opt let NetworkManager doit. 2022-01-24 01:45:49 +01:00

===================
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

DIB_DHCP_NETWORK_MANAGER_AUTO
  :Required: No
  :Default: false
  :Description: When NetworkManager is detected, and this is set to true the
   dhcp-all-interfaces service will not be installed. Only the NetworkManager
   configuration will be added. NetworkManager is quite capable to do automatic
   interface configuration. NetworkManager will by default try to
   auto-configure any interface with no configuration, it will use DHCP for
   IPv4 and Router Advertisements to decide how to initialize IPv6.
  :Example: DIB_DHCP_NETWORK_MANAGER_AUTO=true