Proposed F19 Feature: systemd/udev Predictable Network Interface Names

Bill Nottingham notting at redhat.com
Wed Jan 23 21:54:58 UTC 2013


Matthew Miller (mattdm at fedoraproject.org) said: 
> On Wed, Jan 23, 2013 at 07:59:07PM +0000, Jaroslav Reznik wrote:
> > The udevd service has a long history of providing predicatable names for
> > block devices and others. For Fedora 19 we'd like to provide the same for
> > network interfaces, following a similar naming scheme, but only as
> > fallback if not other solution such as biosdevname is installed or the
> > administrator manually defined network interface names via udev rules or
> > the old network scripts.
> [...]
> > This feature is about enabling this as default in Fedora, but only as a 
> > fallback if the user/administrator did not manually assign names to interfaces 
> > via udev rules, or via the old networking scripts, or if biosdevname is 
> > installed.
> 
> This seems to invent yet another new naming scheme. We just went through
> this pain, and the biosdevname scheme went through several iterations in the
> field and represents real-world lessons learned. Is there a compelling
> reason to make the systemd/udev policy for Fedora not just follow the
> existing solution to the same problem embodied in biosdevname? (Then, we
> could just phase out biosdevname.)

biosdevname naming isn't apparently consistent across versions.
https://bugzilla.redhat.com/show_bug.cgi?id=782145#c21

The problems are roughly this:
- biosdevname only provides predictable naming for machines with SMBIOS
  type 9 & type 41 records
- For other machines, it does 'best effort' based off of heuristics and
  attempting to enumerate all the devices... which gives weird/unpredictable
  results.

This code has the benefit of:
- covering more device types (not just BIOSes with type 9 & type 41)
- not attempting to do heuristics that name devices via enumeration

However, it does have the large disadvantage of changing the namespace used.

Bill


More information about the devel mailing list