# [SOLVED]dhcpcd-2.0.5 timed out , cant connect to router ...

## ATA

greetings,

after a lot of reading i finally got the network driver to do what it should do,

and theres the next problem, 

after reading bout 20 thread with nearly the same prob , even looking at the "bug" mentioned somewhere in one of the threads i dont know what to do anymore,

problem:

when i try /etc/init.d/net.eth1 start it says 

```

...

    running dhcpcd 

Error, timed out waiting for a valid DHCP server response

```

it wont work with static ip either,

i cant connect to the router for some reason,

on windows everything is fine, i checked cable for bout 2-3 times rebooted with live cd everything works,

but when i reboot to my installed sys i get the above posted error,

i cant even ping the other pcs from the static gbit ip,

i set my nameserver to my routers ip, to the ip from the isp nameserver ,

if its really a problem with the dhcpcd version 2.0.5 can someone tell me how to upgrade it to 2.0.8 (its not in "normal" portage, and i dont know how to get the experimentel packages, i did emerge --search for that pack but could not find it,

other solution: just tell me the name of another dhcp client, i searched for that on emerge --search too but only got 6 hits where nothin was close to a "normal" dhcp client for me,(guess im wrong there sry then,)

specs:

x86 genkernel, forcedeth autoload,

onboard yukon smthin gbit lan (eth0)

onboard nforce2 100mbit lan (eth1)

the yukon port is connected to a gbit switch and connected to a few other pcs for "faster" file transfer over them,(subnet is 192.168.5.x), no dhcp server on that port, just static ips.

the nforce2 port is connected to a 100mbit switch which is connected to my adsl-modem/router combination,

subnit 192.168.3.x) router is 192.168.3.1

/etc/conf.d/net

```

config_eth0=( "192.168.5.2 netmask 255.255.255.0 brd 192.168.5.255" ) 

config_eth1=( "dhcp" )

```

ifconfig shows me following:

```

eth0 

   ...

   inet addr:192.168.5.2 bcast:192.168.5.255 mask:255.255.255.0

   ...

lo

  ...

   inet addr: 127.0.0.1 mask 255.0.0.0

  ...

```

ifconfig eth1 shows me:

```

eth1 link encap :ethernet hwaddr xx....

broadcast multicast mtu:1500 metric:1

...

```

route -n:

```

destination gateway genmask ... iface

192.168.5.0 0.0.0.0 255.255.255.0... eth0

127.0.0.1 127.0.0.1 255.0.0.0 ... lo

```

if you need more tell me ill get it asap.Last edited by ATA on Sun Jul 23, 2006 3:21 am; edited 1 time in total

----------

## UberLord

Try dhcpcd-2.0.8 and then dhcpcd-2.0.3

----------

## ATA

greetings

i unmerge the old dhcpcd 2.0.5 first.

i tried to emerge 2.0.8 with the command: emerge =net-misc/dhcpcd-2.0.8

but it said me "thats not a valid package atom"

so i downloaded the 2.0.8 from http://developer.berlios.de/projects/dhcpcd

i think i did as in the readme and install file told:

./configure

make

make install

the program itself seems to work, but when i start it with dhcpcd eth1 i coulnd even get an answer after bout 1 min,

but i guess i do something wrong cause the 2.0.8 isnt recognized .

when i try to do : /etc/init.d/net.eth1 start it says no module loaded for dhcp_start  (similar to that)

do i use the wrong emerge command? if so then the wiki "TIP Installing Specific Packages" is partly wrong  :Smile: 

i did emerge --search dhcpcd-2.0.8 too but it says no packages.

i installed 2.0.3 and same error no response or message from the program.

i do the emerge commands after rebooting with livecd, 

the dhcpcd-2.0.8 was installed while in normal boot.

so my question now:

how to install dhcpcd-2.0.8 with an emerge command?

or where else could the error be?

is it maybe some server related thing?

i tried to remove the mac-address from the dhcp server to just get a random ip from my ip-pool but still nothing changed.

any other suggestions?

----------

## UberLord

ACCEPT_KEYWORDS="~x86" emerge -av "=net-misc/dhcpcd-2.0.8"

----------

## ATA

greetings again,

booted into live cd, did the essential thinks like mounting chroot etc,

then try to emerge the dhcpcd-2.0.8 with your command:

"emerge : there are no ebulds to satisfy "=net-misc/dhcpcd-2.0.8"

so its still not finding,

guess maybe something wrong with my make.conf?

here it is for ya:

[code]

CFLAGS="-march=athlon-xp -pipe -02"

CHOST="i386-pc-linux-gnu"

CXXFLAGS="-02 -mtune=i686 -pipe"

MAKEOPTS="-j2"

gentoo_mirror="...."

sync="..."

USE="-gtk -gnome qt kde dvd alsa cdr"

what could be possible the reason that i dont find a package on a mirror? an outdated one? or isnt that possible?

ill try another mirror in bout 2 hours ill edit it into if it works  :Smile: 

----------

## UberLord

You probably need to emerge --sync

I've just put dhcpcd-2.0.8-r2 into the tree which fixes a few more problems ..... try that version

----------

## ATA

greetings again,

i did emerge --sync and now i got the package dhcpcd-2.0.8-r2

but the bad message is: still not working

same error: time out waiting for a vaild

what i forget to say until now:

i got another pc with rtl8139 chip and dhcpcd-2.0.5 and its workin fine,

strange,

any other info i can give you?

or anything else i could try?

----------

## UberLord

Post the output of "dhcpcd -d eth1" and then try dhcpcd-2.0.3

I've just spotted that it also doesn't work with a static IP so it's sounding very much like a driver error.

----------

## ATA

greetings, 

output of #dhcpcd -d eth1

dhcp-2.0.8-r2

```
# dhcpcd -d eth1

Info, MAC address = **********

Debug, broadcasting DHCP_request for 192.168.3.2

Debug, timed out waiting for dhcp_acc response

Debug, broadcasting dhcp_discover

error, timed out waiting for valid dhcp server response
```

output of #dhcpcd -d eth1

dhcp-2.0.3

```
# dhcpcd -d eth1

Info, MAC address = **********

Debug, broadcasting DHCP_request for 192.168.3.2

Debug, timed out waiting for dhcp_acc response

Debug, broadcasting dhcp_discover

error, timed out waiting for valid dhcp server response
```

i put this ip in the router config.

anything else i can tell you?

i can´t ping my gb network [5.x] with other network interface too

maybe it´s sth. on this end?

----------

## UberLord

 *ATA wrote:*   

> output of #dhcpcd -d eth1
> 
> dhcp-2.0.3
> 
> ```
> ...

 

That is not dhcpcd-2.0.3 - you could not have seen the word error on the last line.

----------

## altonsmith

I had this problem for a few months on my firewall.

It would work intermittantly on reboot but failed most of the time (up to 10 consecutive failures) to the point where I would always leave the machine on (some people don't run mahcines 24/7)

I found the problem revolved around udev despite the error messages being a timeout for dhcpcd.

The way the default network device rules for udev are configured sometimes swaps the mappings of which network card is eth0 and eth1 

With my lan card being assigned a static ip and using dhcp for the internet connection.

To check this is the case, run the following command

```

grep "dhcpcd.'*: MAC address"' /var/log/messages

```

This will show all the mac addresss the dhcpcd tries to setup via dhcpcd

Running ifconfig will show what mac address is bound to which network name

```
ifconfig
```

The HWaddr value is the cards unique identifier that was assigned to the udev name of ethx

If the MAC address being used by dhcpcd is not the card you expect then you need to make some custom udev rules (or keep swapping cables if the are cat cabled).

You need to make a new rule file or modify an existing custom file in /etc/udev/rules.d/

Don't modify 50-udev-rules and make sure the name of your file starts with a number less than 50 or the standard rule will fire before yours

I created 30-network.rules

```

KERNEL=="eth*", SYSFS{address}=="xx:xx:xx:xx:xx:xx", NAME="eth0"

KERNEL=="eth*", SYSFS{address}=="yy:yy:yy:yy:y
```

y:yy", NAME="eth1"

[/code]

where xx:xx:xx:xx:xx:xx is the first mac address you want to use for the eth0

where yy:yy:yy:yy:yy:yy is the first mac address you want to use for the eth1

There was another thread that talked about giving the network devices more meaningful names like in the below example

```

KERNEL=="eth*", SYSFS{address}=="xx:x:x:xx:xx:xx", NAME="inet"

KERNEL=="eth*", SYSFS{address}=="yy:yy:yy:y:y:yy", NAME="lan"

```

This method would require additional search and replacing config files for the new network device names but works a treat.

I went the extra yards and did the latter option for a few more minutes work and garanteed no network name ambiguiity.

You could also change the rule to include symlink the old device names.Last edited by altonsmith on Sun Jul 23, 2006 3:34 am; edited 1 time in total

----------

## ATA

greetings again,

after you said that i dont get the "right" version when i execute the command dhcpcd -d eth1, i searched for any dhcpcd related files and found some caching files where stands in (not exactly but i could see on that) that eth1 and eth0 are switched for whatever reason, 

so assumed it would work the other way arround and it did.

its working now with 2.0.8-r2 .

strange but i can live with that  :Smile: 

only thing i wonder about now is why its exactly the oposite of the install cd?eth0 gbit on the install cd is now eth1 and vice versa.

thanks for your help

----------

## UberLord

If eth0 and eth1 are switched, you'll probably want to write a udev rule to ensure their names are correct as described above  :Smile: 

----------

## ATA

na it doesnt bother me today, if i want to do it i know where to search, i got a explanation here in the forum that i can user for that so its no prob after all ^^

----------

