I asked some time ago about the mapping of devices to interfaces eth0, eth1, etc, and received some lucid responses, particularly from Luciano Rocha, who wrote: ---------------------------------- > I'm puzzled by the device eth0 , etc, > chosen by different drivers. It's not chosen by the drivers. It's automatically assigned by the kernel, in chronological order (regarding device registration). Also, the userland can change a device name as it pleases. (You could name it yourself: /sbin/ip link set eth0 name ne0 ---------------------------------- But I had a time-wasting episode today after re-booting my desktop. This has 3 devices eth0, eth1 and eth2, and the last two came up in the wrong order, or at least a different order to usual. This threw dhcpd and my little system into chaos, especially as I didn't realise what had caused my laptop to lose its connection, since its WiFi device seemed to be working. When I re-booted a second time, eth0 and eth1 came up as desired - eth0 is the link to the internet, while eth1 links to a WRT54GL with ethernet and WiFi connections. But eth2 did not come up. It should interface to a second WiFi device. Instead this device has chosen the interface __tmp875397547 . I guess the reason the device did not choose eth2 was that this had somehow been reserved by its previous connection to the WRT54GL. I'd like to understand how exactly this allocation works, but my main query is: how can one determine which devices will be assigned to which interfaces ethx? Or, more simply, how can I ensure the eth1 is the interface for this particular device, the WRT54GL? Any advice or suggestions gratefully received.