Tuesday, July 8, 2014

Getting rid of p3p0 p3p1 p3p* ethernet naming in (Ubuntu) Linux

UPDATE 15-04-2016:With 16.04 you need biosdevname=0 net.ifnames=0 

Since I switched to a new mainboard, I constantly got annoyed by the "new ethernet naming convention". Apparently that is the mechanism causing my ethernet cards suddenly being named p3p*. It is not a big issue that it happens, but something is preventing consitent naming of my networking devices.

After minor kernel updates, suddenly p3p0 is named p3p1. Thanks to this blog post's comments I finally have the eth* names back.

Short summary of the post

Just make sure you add biosdevname=0 to your boot options, e.g. by modifying /etc/default/grub and running $ sudo update-grub.

As a side remark, it should already name consistent by adding a rule to /etc/udev/rules.d/70-persistent-net.rules but this only happened automatically after setting the boot option. 

I experienced this myself on Ubuntu 12.04 and 14.04, but apparently RedHat based distro's are also affected.