Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've just installed a Fedora 19 on VMware workstation 9. The default network device is "ens33" instead of "eth0" on RHEL.

The reason I have to use "eth0" is that the license component of one of our products has be to be linked with "eth0".

There are some posts discussing about similar issues, most of which are for older OS. I haven't found one that exactly match my situation.

Can anyone advise please. Thank you.

share|improve this question
Fedora 19 is significantly different from RHEL 5.5 as in the question this was marked a duplicate of, and the answer isn't the same. – mattdm Aug 24 '13 at 3:39
up vote 21 down vote accepted

The easiest way to restore the old way Kernel/modules/udev rename your ethernet interfaces is supplying these kernel parameters to Fedora 19:

  1. net.ifnames=0
  2. biosdevname=0

To do so follow this steps:

  1. Edit /etc/default/grub
  2. At the end of GRUB_CMDLINE_LINUX line append "net.ifnames=0 biosdevname=0"
  3. Save the file
  4. Type "grub2-mkconfig -o /boot/grub2/grub.cfg"
  5. Type "reboot"

If you didn't supply these parameters during the installation, you will probably need to adjust and/or rename interface files at /etc/sysconfig/network-scripts/ifcfg-*.

Up to Fedora 18, just biosdevname=0 was enough.

As an example, in a certain machine, in a exhaustive research, I got:

-No parameters: NIC identified as "enp5s2".
-Parameter biosdevname=0: NIC identified as "enp5s2".
-Parameter net.ifnames=0: NIC identified as "em1".
-Parameter net.ifnames=0 AND biosdevname=0: NIC identified as "eth0".

share|improve this answer
Thank you very much for the detailed steps! Everything MathWorks was providing me was for much older versions of Fedora. – Dr. Watson Aug 31 '13 at 17:47
@dr-watson: Up to Fedora 14, ethX was the default naming for ethernet interfaces. In Fedora 15, the Consistent Network Device Naming was implemented. From Fedora 15 up to 18, just biosdevname=0 was enough to keep ethX naming. You are welcome. – Guilsson Sep 2 '13 at 22:56
This solution also works on Fedora 20. Thanks. – heuristicus Dec 22 '13 at 14:27
Also worked on Fedora 21 – Eric Grunzke Dec 18 '14 at 19:25
ubuntu 14.04 as well. – sjas Feb 13 '15 at 13:15

You can do this using a udev rule, like so:

cat > /etc/udev/rules.d/99-rename-to-eth0.rules << EOF
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$(cat /sys/class/net/ens33/address)", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
share|improve this answer

In Fedora 20, things seem to have changed a bit further.

1) grub kernel arguments
Yes, both "net.ifnames=0" and "biodevame=0" seem necessary.

2) /etc/sysconfig/network-scripts/ifcfg-ethX
Yes, these are necessary, too.

3) /etc/udev/rules.d/60-net.rules
If you have multiple interfaces and want to control naming of each device rather than letting the kernel do in its own way, /etc/udev/rules.d/60-net.rules seems necessary to override /usr/lib/udev/rules.d/60-net.rules like the following.

# PCI device 0x1011:0x0019 (tulip) {SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:c0:f0:4c:f5:78", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x10ec:0x8168 (r8169) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="60:a4:4c:b5:26:48", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

4) yum remove biosdevname seems unecessary.

share|improve this answer
+1, works in F20. – AkiRoss Jul 22 '14 at 8:07

This is different in Fedora 19 than in previous releases. There are two things to address:

  1. Remove biosdevname if it is installed. (yum remove biosdevname, or put -biosdevname in your kickstart.
  2. Disable the udev rule: ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules

More info can be found at http://fedoraproject.org/wiki/Features/SystemdPredictableNetworkInterfaceNames

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.