Are you trying to configure dhclient to persistently look for an IP address lease?
This guide is for you.
Recently we had a customer who came across a DHCP outage. As an aftermath, he lost the system's IP address.
His goal was to configure Linux dhclient command to continuously requests an IP lease until one is granted by DHCP Server / Router.
In this context, we shall look into how to configure Linux dhclient command to continuously requests an IP lease until DHCP Server/Router grant one.
How to Configure dhclient to persistently look for an IP address lease ?
As we mentioned earlier, one of our customers came across a DHCP outage. When the system lost its IP address, to recover it we had to either reboot the system or get a console and restart the network.
Since the dhclient was not running, it was unable to get a new IP address after the DHCP server recovery.
In such a case, Linux dhclient command can provide an IP lease until DHCP Server/Router grants one.
We use the dhclient command to obtain, renew and release a client’s IP address, subnet mask, default gateway, and DNS servers from a DHCP server.
Similarly, we use the ps command to determine if the system is using init or systemd. If PID 1 is init, then we will use the service command.
The dhclient command provides a means for configuring one or more network interfaces using the Dynamic Host Configuration Protocol or BOOTP protocol. However, if these protocols fail, it statically assigns an address.
In order to perform we need to set the PERSISTENT_DHCLIENT option by editing the Ethernet configuration file. It is turned off by default.
i. Initially, log in as the root user.
ii. Open /etc/sysconfig/network-scripts/ifcfg-eth0 file to set eth0 to persistently look for an IP address lease:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
iii. At the end configuration, append the line PERSISTENT_DHCLIENT=1:
iv. Save and close the file.
v. To test the changes either restart the networking service or reboot the laptop/desktop:
# /etc/init.d/networking restart
Make note that network switches and other protocols may need to configure properly to work with this option.
Furthermore, to display DHCP configuration information:
1. Open a command prompt.
2. Use ifconfig -a to display all IP configuration information.
3. Observe whether we have any network adapters that are DHCP Enabled. If so, identify the DHCP Server, when it shows Lease Obtained and when it shows Lease Expires.