You Are Here: Home » Linux » News

Fedora 15 Changing The Network Device Naming Scheme

By on January 25th, 2011     
Fedora Linux

Fedora Linux

Fedora developer, Matt Domsch, has announced that Fedora 15 is breaking the conventional ethX naming scheme used for Ethernet devices by adopting a new scheme called Consistent Network Device Naming.

The ethX naming scheme works fine as long as the system has only one Ethernet port. However if there are more than one Ethernet ports, a sort of race condition develops at every system boot and the ports may get their names in an arbitrary order. Suppose we have two Ethernet devices - eth0 and eth1. It cannot be ensured that eth0 will remain as eth0 and eth1 will remain as eth1 after the next system boot. The names will be allocated arbitrarily. This is generally not a problem in personal computers because there is only one port. However, some servers have multiple Ethernet ports and this naming scheme creates problems in such cases.

To ensure that the devices retain the same name regardless of system boots, Dell has developed a tool call biosdevname. The biosdevname renames the Ethernet devices according to the information presented by the system BIOS. This, however, means the old ethX naming scheme cannot be used. It will be replaced by the Consistent Network Device Naming.

According the Matt Domsch, the new naming scheme is as follows:

  • em[1-N] for on-board (embedded) NICs (# matches chassis labels)
  • pci<slot>#<port> for cards in PCI slots, port 1..N
  • NPAR & SR-IOV devices add a suffix of _<vf>, from 0..N depending on the number of Partitions or Virtual Functions exposed on each port.
  • Other Linux conventions, such as .<vlan> and :<alias> suffixes remain unchanged and are still applicable.

The new naming scheme is more complicated than the ethX scheme no doubt. But it will not make any difference to most personal computers as they generally have only a single Ethernet port. This change will not affect the Wireless and USB devices.

With Fedora 15, biosdevname is going to be included by default and the naming scheme for Ethernet devices will follow the Consistent Network Device Naming.

Although Fedora is shipping biosdevname first, other Linux distributions are also expected to adopt it. There is reportedly a blueprint for integrating this in Ubuntu 11.04 already and a feature request for inclusion in OpenSUSE as well.

Further Readings:

1. Consistent Network Naming Coming To Fedora 15

2. Breaking a few eggs: Fedora 15 changes network device naming

3. Consistent Network Naming




         Submit to Reddit     Stumble


Related Posts by Tags: , , , , , ,



  • Pingback: Tweets that mention Fedora 15 Changing The Network Device Naming Scheme -- Topsy.com

  • guest

    At least on Ubuntu, you already have an udev based mechanism that ties device name to a MAC address. The udev rule file for this is /etc/udev/rules.d/70-persistent-net.rules, and it’s auto-written by default so users don’t have care about this if they don’t want to, but it allows manual device naming too by editing the file. What’s wrong with this approach?

  • dandu

    this is crazy, the udev approach is much better, it solves the persistence issue and is backwards compatible

    • Michael

      I am sorry but udev simply never work reliably.

      • Guest

        uhm what? udev works just fine; all other distributions use it to work around this very issue. What do you know that everybody else doesn’t?

        Besides, if udev doesn’t work, then just file a bug report or talk to the developers; this ugly hack needs to go away. I’m *not* learning one naming scheme for every distribution out there — what’s next, Fedora not liking /dev/sd*?

      • Anarke_Incarnate

        You are doing it wrong, then. Udev works fine if you do it the right way. The best way, I have found, is to bind it to the PCI Address. udevinfo helps you get that information.

  • Anup

    We used a network init script to give the same dev’s the same names always. It worked all the time… not sure why we need the new model!

  • Anonymous

    Fedora is seen by Red Hat managers/shareholders as a proving ground for REHL which is used mostly in the enterprise. And it’s in the enterprise that you’ll find more than one ethernet port so this maybe gives them incentive to find a solution to a problem? Is it a better way to do this?

    • Guest

      Yep, it’s called udev. It’s used by everyone else, don’t know why Fedora will take the run-our-own-hack-road …

  • NLSurfMan

    5 out of 10 modern days PC’s have 2 NIC’s on board [citation needed] so I don’t see where the assumption of one NIC comes from?

  • Fraveydank

    The ethX “convention” has only been a convention on Linux; every other Unix (including modern BSDs, with the exception of OS X) uses the network driver name as the identifier. That works pretty well in a heterogeneous system; in a homogeneous system, as long as you’re not moving cards about, everything gets initialized in the same order at boot anyway.

    • Anonymous

      Solaris has been known to reorder interfaces after OS upgrades, or even patches.. I do think this proposed scheme is a bit unwieldy though, and prefer the MAC address binding option that’s already present in ifcfg-* .

      I would, however, like to see something IPMPesque in Linux, perhaps stackable bonded NICs, so for example you can have 2+ bonded NICs into one switch for speed, and a failover NIC to a different switch, then bond the two ‘NICs’ together in active/passive.. I don’t believe Linux can do that, while Solaris can because bonding/trunking can be handled separately from multipathing.

      • Timothy

        What you describe is completely supported in Linux. You can multipath bonded interfaces or bond multipathed interfaces.

  • Anonymous

    Umm.. isn’t this why the ifcfg-ethx file has the config bound to a certain NICs MAC Address..

  • me

    this is dumb, why not use the MAC address on the card as the device name? it’s unique on your network, not related to booting order, and is a very general concept across architectures.

  • Lord Metroid

    I hope the Fedora developers are aware that it is possible to bind the names to the mac addresses.

  • Pingback: Fedora 15 - Changing Eth Device Naming Scheme!

  • Dinkibird

    As a sysadmin I dont like this idea. I _like_ that the name is a logical, arbitrary name abstracted completely from the physical device. MAC address binding is more than good enough.
    I don’t care what slot a PCI card is in, most of the time in the server world it won’t help you anyway. Take blades for example, all you have is a backplane with port numbers that don’t necessarily correspond to anything physical on the motherboard.
    If the actual issue is that the order can change on a boot/update/patch, then let’s just lock down the order. It’s obviously possible as implied by the proposed solution here – lets just say em0 is eth0, em1 is eth1, pci1#1 is eth2, etc.
    But pci1#2? That’s supposed to help me…what exactly?

  • Stephen

    # isn’t a great delimiter in the PCI naming scheme; why not something that isn’t a shell comment character, like “-”?.

  • Pingback: Fedora cambiará los nombres de los dispositivos Ethernet.

  • Anonymous

    I’ve used Red Hat Linux. We kept the ethX convention and used iftab and ifrename to make sure the name assignment didn’t change.

  • Guest

    ok, 2 things right off the top of my head

    now, I’m not familar with fedora at all, but will this only work with x86 or x64 machines that run a bios? and what about PC’s that run alternative bios’, even something like EFI, will it work with that?

  • F Tournier

    Totally stupid. Udev already handles this

  • Pingback: eamcet*[SEO対策調査自動更新ブログ] | Fedora15では「ethX」という表記がなくなる

  • Pingback: Fedora15では「ethX」という表記がなくなる | 目指せ!!サーバマスター

  • Pingback: Fedora 15 mudará a nomenclatura de placas de rede | Linux Ajuda

  • Pingback: Fedora 15 mudará a nomenclatura de placas de rede : Blogosfera

  • root

    Senseless, and not necessary… This scheme tells me that some people have too much time on their hands, and don’t spend it looking at existing (and fully functional) solutions. I believe udev was mentioned as well as ifcfg.

    Congratulations, you’ve invented a solution desperately in need of a problem.

  • Pingback: Fedora 15 mudará a nomenclatura de placas de rede « Pablo Arbão

  • Leoocosta

    Totally unnecessary, I like Fedora, but invent a lot of trash, so this makes Fedora a boring system.

  • Pingback: Fedora Site Hacked? Sourceforge Hacked?? Unified Package Installer! KDE 4.6 Released! | This Week In Linux

  • Pingback: Programa 1×16 – Tarjetas gráficas y Policy Kit | Pánico en el Núcleo

  • Pingback: Fedora 15 Released – Includes Dynamic Firewall, GNOME 3 Among Other Features

  • Pingback: A aparut Fedora 15 - kandrei.ro

  • BlackJackShellac

    I disabled this lunacy with biosdevname=0 in grub.conf for each kernel entry.

  • BlackJackShellac

    And the worst part is that they renamed starting from 1 instead of 0.  The C programmer is me is mortified.

  • Burian007

    on F15 iptraf -i em1 gets device not supported …

  • Handy

    This was apparently added for Dell Computer corp.  it was not requested by the non-commercial community. Not that commercial contributions are suspect, but they shouldnt favor one vendor hardware installation procedures. It would seem that this should not have been the new default over use of eth0 without the coordinated changes of basic applications (example iptraf).  This change still causes trouble after new installations  9 months later.  Bad example of open source colaboration and forced changed.



Fedora 15 Changing The Network Device Naming Scheme was originally published on Digitizor.com on January 25, 2011 - 1:54 am (Indian Standard Time)