# Intel EtherExpress 100 - ioctl SIOCGIFHWADDR: No such device

## mopoke

Hello,

I've been struggling with this one for a while and I still can't figure it. I am trying to install Gentoo on my IBM Thinkpad R31 and have been struggling getting the Ethernet networking going.

The machine has an Intel chipset. For the network adapter, lspci says:

Intel Corp. 82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (rev 42)

The ethernet works perfectly with the installation livecd (I emerged lots of things from the internet using it). lsmod shows me that it's using the e100 driver (As I would expect).

Firstly I tried my own compiled kernel using the e100 driver. Everything works ok on boot until it tries to bring up eth0 using DHCP (I do have dhcp running - this is how the livecd gets its IP). In /var/log/messages I see the error:

Jul 24 14:54:15 bungle dhcpcd[9363]: dhcpStart: ioctl SIOCGIFHWADDR: No such device

Jul 24 14:54:15 bungle rc-scripts: ERROR:  Problem starting needed services.

Jul 24 14:54:15 bungle rc-scripts:         "netmount" was not started.

I figured maybe I'd missed a module somewhere. To be sure, I tried using genkernel instead with hotplug and coldplug. But it's a no go - I get the same error. Here's some relevant sections of the /var/log/messages file:

Jul 24 14:54:06 bungle e100: Intel(R) PRO/100 Network Driver, 3.4.8-k2-NAPI

Jul 24 14:54:06 bungle e100: Copyright(c) 1999-2005 Intel Corporation

Jul 24 14:54:06 bungle ACPI: PCI Interrupt Link [PILE] enabled at IRQ 11

Jul 24 14:54:06 bungle ACPI: PCI Interrupt 0000:01:08.0[A] -> Link [PILE] -> GSI 11 (level, low) -> IRQ 11

Jul 24 14:54:06 bungle e100: eth0: e100_probe: addr 0x80100000, irq 11, MAC addr 00:0A:E4:41:04:E4

...

Jul 24 14:54:15 bungle dhcpcd[9363]: dhcpStart: ioctl SIOCGIFHWADDR: No such device

Compared to the relevant lines from /var/log/messages when booting with the livecd:

Jul 24 12:29:01 livecd e100: Intel(R) PRO/100 Network Driver, 3.3.6-k2-NAPI

Jul 24 12:29:01 livecd e100: Copyright(c) 1999-2004 Intel Corporation

Jul 24 12:29:01 livecd ACPI: PCI Interrupt Link [PILE] enabled at IRQ 11

Jul 24 12:29:01 livecd ACPI: PCI interrupt 0000:01:08.0[A] -> GSI 11 (level, low) -> IRQ 11

Jul 24 12:29:01 livecd e100: eth0: e100_probe: addr 0x80100000, irq 11, MAC addr 00:0A:E4:41:04:E4

...

Jul 24 12:29:12 livecd e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex

When booting with genkernel lsmod shows that the e100 module is loaded.

So it doesn't look as if it's related to the kernel; using genkernel, shouldn't I get the same results as with the Live CD (Or similar). Is there any config file I've missed which might have an impact on dhcpd not finding the device? I have the following lines in /etc/conf.d/net:

iface_eth0="dhcp"

dhcpcd_eth0="nodns nontp nonis"

I'm stumped. Anyone point out my (no doubt obvious) mistake?

Thanks

Andy

----------

## NeddySeagoon

mopoke,

Boot normally and do 

```
ifconfig -a
```

 Do you have an eth0?

Have you got an eth1 as well?

If you have the two interfaces, which one has the HWaddr 00:0A:E4:41:04:E4 ?

If there are no ethX interfaces at all do the following

```
modprobe e100
```

Does that get you eth0 listed in 

```
ifconfig -a
```

if so, 

```
/etc/init.d/net.eth0 restart
```

should bring it all to life.

It can be automated  - post back.

----------

## mopoke

Thanks for the reply.

 *NeddySeagoon wrote:*   

> 
> 
> Boot normally and do 
> 
> ```
> ...

 

I have eth0 and lo. eth0 has a HWaddr: 00:0A:E4:41:04:E4

 *NeddySeagoon wrote:*   

> 
> 
> If you have the two interfaces, which one has the HWaddr 00:0A:E4:41:04:E4 ?
> 
> If there are no ethX interfaces at all do the following
> ...

 

Doing /etc/init.d/net.eth0 restart yields:

Bringing eth0 up via DHCP ...                                           [ !! ]

and adds a line to /var/log/messages:

Jul 24 16:21:05 bungle dhcpd[9815]: dhcpStart: ioctl SIOCGIFHWADDR: No such device

----------

## NeddySeagoon

mopoke,

What is in your /etc/conf.d/net ?

Only comments would be a good answer.

----------

## mopoke

 *NeddySeagoon wrote:*   

> mopoke,
> 
> What is in your /etc/conf.d/net ?
> 
> Only comments would be a good answer.

 

There's two uncommented lines:

iface_eth0="dhcp"

dhcpcd_eth0="nodns nontp nonis"

----------

## NeddySeagoon

mopoke,

That would be OK with a very old baselayout package.

Try commenting them both out. Recent baselayouts try dhcp on eth0 if they are not told anything else.

By recent, I mean before the 2005.0 liveCD

----------

## mopoke

 *NeddySeagoon wrote:*   

> mopoke,
> 
> That would be OK with a very old baselayout package.
> 
> Try commenting them both out. Recent baselayouts try dhcp on eth0 if they are not told anything else.
> ...

 

If I comment those lines in /etc/conf.d/net then I get an error on boot:

Please make sure that /etc/conf.d/net has $ifconfig_eth0 set (or $iface_eth0 for old-style configuration)

----------

## mopoke

 *mopoke wrote:*   

>  *NeddySeagoon wrote:*   mopoke,
> 
> That would be OK with a very old baselayout package.
> 
> Try commenting them both out. Recent baselayouts try dhcp on eth0 if they are not told anything else.
> ...

 

OK... Following up. I changed /etc/conf.d/net to have:

ifconfig_eth0="dhcp" 

And it now works.

Thanks for your help!

----------

