Junk Food for the Brain

Open Source and Awesomesauce :)

Where Is My Eth0 in Fedora 15 ?

| Comments

After installing Fedora 15, you may find your eth0 network card (NIC) is no longer present when you do an ifconfig. e.g:-

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:36008 errors:0 dropped:0 overruns:0 frame:0
          TX packets:36008 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:3368266 (3.2 MiB)  TX bytes:3368266 (3.2 MiB)  
p34p1     Link encap:Ethernet  HWaddr 20:CF:30:0F:37:4A  
          inet addr:192.168.0.10  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::22cf:30ff:fe0f:374a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3010801 errors:0 dropped:1 overruns:0 frame:0
          TX packets:2249595 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4355046356 (4.0 GiB)  TX bytes:180163909 (171.8 MiB)
          Interrupt:69 Base address:0x2000 

What has happened is, from Fedora 15 onwards, they have implemented a new feature called Consistent Network Device Naming.

As a result, embedded NICs will be shown as em1, em2 etc, while PCI network cards will have the name pp.

As seen from the output of my motherboard, my eth0 is actually a PCI add on card number 34, and is using slot number 1.

But my card is built-in to the motherboard. Shouldn’t it be em1 or something?

This is by design of your motherboard. These cards are integrated PCI addons, done by the manufacturer itself.

Virtual Machines however, will have their cards remain as eth0 etc.

You can disabled this feature by appending the following into your grub.conf kernel commandline:

biosdevname=0

For more information, look at the Fedora 15 page.