Eric Leschinski asked:
I have a fresh install of Fedora 17 installed, 64 bit. Everything works flawlessly, It connects to the internet automatically when I plug in the internet cable.
So I’m kind of confused when I issue this command:
el@defiant ~ $ ifconfig eth0
And I get the error:
eth0: error fetching interface information: Device not found
Device not found? Here is ifconfig:
I get this:
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.102 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::ea40:f2ff:fee1:58c prefixlen 64 scopeid 0x20<link> ether e8:40:f2:e1:05:8c txqueuelen 1000 (Ethernet) RX packets 44753 bytes 51284267 (48.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 34222 bytes 4294174 (4.0 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 20 memory 0xf7d00000-f7d20000 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 16436 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 5152 bytes 1263744 (1.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5152 bytes 1263744 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
So, it appears that someone has changed the old
em1 since earlier versions of Fedora (Fedora 8 is the last I know which used
eth0). If I do the command:
ifconfig em1 then I get something similar to the old
ifconfig eth0. But why the name change?
My question is why was
eth0 changed to
em1 and what the heck does
Systems, particularly servers, with multiple network ports, name the ports ethX in a non-deterministic order, and are therefore not useful for system administrators.
System Administrators can then use BIOS-provided names, which are consistent and not arbitrarily named, for their network ports. This eliminates the confusion that non-deterministic naming brings, and eliminates the use of hard-coded MAC address based port renaming which a) is racy and error-prone, and b) introduces state into an otherwise stateless system.
This change affects most desktop, notebook, and server-class systems.
em means that the interface is
embedded onto the motherboard. Other names apply for add-on cards:
p#p# names refer to PCI (and its modern derivatives) expansion cards, where the first number is the slot on the motherboard which they’re plugged into, the second number is the port on the card (a card may contain multiple ports) and the third number, if present, is a virtual function number.
If it really bothers you, you can rename the interface to anything you want.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.