Arch Linux: eth0 no carrier - network fails at boot

Posted by user905686 on Super User See other posts from Super User or by user905686
Published on 2012-02-23T11:25:20Z Indexed on 2012/09/26 21:40 UTC
Read the original article Hit count: 278

Filed under:
|
|

The problem

My computer is connected to a network where dhcp is required. So my network configuration in /etc/rc.conf looks like

interface=eth0
address=
netmask=
broadcast=
gateway=

My deamons are

DAEMONS=(!hwclock syslog-ng network netfs crond ntpd)

With this configuration, Arch hangs at boot a long time at "Network" (Still it says "[done]", but after boot I have no connection). I found out two workaround:

Workaround 1

  • remove network from deamons
  • run mii-tool --reset eth0 and dhcpcd eth0 after boot (somehow it does not work when placing these commands in /etc/rc.local.

Then dhcp work very quickly (because of the reset!). Before executing the first command, ip link show eth0 has "NO CARRIER" in output. Afterwards, it doesn´t. (Also, mii-tool first shows "no link", afterwards eth0: 10 Mbit, half duplex, link ok.

Workaround 2

  • Change network configuration to

    interface=eth0
    address=x.y.z.21
    netmask=255.255.255.0
    broadcast=xxx.y.z.255
    gateway=x.y.z.254
    

    whereas x, y, z build the specific adresses of the network (Though dhcp is used, I get a static ip).

  • Add the commands mii-tool --reset eth0 and dhcpcd eth0 to /etc/rc.local

Now network starts quickly at boot (though I don´t know if successfully), the commands in /etc/rc.local are executed and the connection is fine after login.

What to do?

So the problem seems to be that dhcpcd stucks at "wating for carrier" or sth.

I do not like the workaround, because some deamons need network (though they seem to start). What can I do to have eth0 ready for dhcp at boot? Or is there another problem?

© Super User or respective owner

Related posts about networking

Related posts about dhcp