To save power, my DSL router is automatically shut down when my computer is powered off. When I start the computer, the router is also started. This works fine.
The problem is that when the router is started, it takes about 30-60 seconds before it initializes the connection and starts servicing DHCP requests. In the meantime the computer has already tried to get an IP address from DHCP. More importantly, it gives up trying before the router is up. In order to get a configuration for the network, I then have to manually force an renewal of the IP address.
I did not find a way to make the default DHCP client, dhcpcd, wait longer before giving up, without also causing the boot process to hang. Instead, I opted to use the dhclient, which is also installed by default but not enabled. This is done in /etc/sysconfig/network/dhcp where:
is changed to:
I also tweaked the options for dhclient a bit in /etc/dhclient.conf:
send dhcp-lease-time 3600;
request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers,
host-name, nis-domain, nis-servers;
require subnet-mask, domain-name-servers;
Now the DHCP client will run as a background process, waiting for the router to come up, but without slowing the boot process down.