Persistent Interface Name
General Information
Persistent network interface names prevent interfaces being renamed from “eth0” to “eth1” upon reboot.
Instead, a name based upon BIOS/firmware information can be used if available.
Checklist
- Distro(s): Debian Based or Enterprise Linux
Enable BIOS Device Names
Install biosdevname
yum install biosdevname
Enable biosdevname as a parameter passed to the kernel
- EL7
vim /etc/default/grub # Add to GRUB_CMDLINE_LINUX values GRUB_CMDLINE_LINUX="biosdevname=1"
- EL6
vim /boot/grub/grub.conf # Append biosdevname=1 to all kernel lines. Example: kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro root=/dev/sda3 biosdevname=1
Update Grub config
- EL 7
grub2-mkconfig -o /boot/grub2/grub.cfg
- EL 6: manual changes already made above.
- Ubuntu
update-grub
Naming Scheme Preference
The following preference order is used for biosdevname:
- Firmware/BIOS index numbers for on board devices
- Example: eno2
- Not Available?: Fallback to number 2
- Firmware/BIOS provided PCI Express slot index numbers
- Example: ens2
- Not Available?: Fallback to number 3
- Physical Location of the connector
- Example: enp3s0
- Not Available?: Fallback to number 5
- Interfaces MAC address (not used by default, but can be user selected)
- Example: enx080027e468c1
- Not Available?: Fallback to number 5
- Traditional unpredictable naming
- Example: eth0