# retry dhcpcd when failed (probably SOLVED)

## nielchiano

Hi,

I'm having a problem with my network-card (via-rhine driver). Sometimes it somehow crashes; the kernel notices it, and resets the card:

```
07:58:43 dhcpcd[7331]: MAC address = 00:11:09:**:**:**

07:58:54 eth0: no IPv6 routers present

07:59:15 NETDEV WATCHDOG: eth0: transmit timed out

07:59:15 eth0: Transmit timed out, status 0000, PHY status 786d, resetting...

07:59:15 via-rhine: Reset not complete yet. Trying harder.

07:59:15 eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

08:00:43 dhcpcd[7331]: timed out waiting for a valid DHCP server response
```

However, the packet that should have been transmitted is lost.

Now, the problem is that usually that packet is the DHCP-request. The result is that the machine fails to boot completely, because eth0 can't start (timeout on DHCP).

How can I force the DHCP client (currently using dhcpcd) to retry the request if he fails for several times before giving up?Last edited by nielchiano on Mon Feb 12, 2007 5:05 pm; edited 1 time in total

----------

## UberLord

Upgrade to dhcpcd-3.0.11 where we repeatedly send the last message every 3 seconds until we get a valid response. You may also want to use

```
dhcpcd_eth0="-t 60" to specify a longer timeout in /etc/conf.d/net
```

----------

## nielchiano

thank you UberLord.

I can't mark this thread "SOLVED", since this only pops up every now and then, but I'll take your word for it.

I marked it "probably SOLVED" instead

----------

## hrnick

I found this and I'm wondering if something similar is possible to do in gentoo. Sometimes the router I connect to is down and it would be great if the boot process didn't stop at the net.eth0 init script and retried to connect to the router in a background process. It would be even better if sshd, rdate, samba and other processes depending on net.eth0 could be started as soon as the computer got an ip from the router.

----------

