Network interface name changes

f4242

Renowned Member
Dec 19, 2016
106
5
83
Quebec, QC
Hello,

Yesterday, we did a regular PVE8 software upgrade (no major upgrade). Theses are the packages that were updated:

Install: proxmox-kernel-6.8.12-13-pve-signed:amd64 (6.8.12-13, automatic)
Upgrade: pve-docs:amd64 (8.4.0, 8.4.1), pve-edk2-firmware-ovmf:amd64 (4.2025.02-3, 4.2025.02-4~bpo12+1), proxmox-backup-restore-image:amd64 (0.6.1, 0.7.0), proxmox-widget-toolkit:amd64 (4.3.11, 4.3.13), pve-firmware:amd64 (3.15-4, 3.16-3), zfs-zed:amd64 (2.2.7-pve2, 2.2.8-pve1), zfs-initramfs:amd64 (2.2.7-pve2, 2.2.8-pve1), spl:amd64 (2.2.7-pve2, 2.2.8-pve1), pve-qemu-kvm:amd64 (9.2.0-6, 9.2.0-7), libnvpair3linux:amd64 (2.2.7-pve2, 2.2.8-pve1), proxmox-mail-forward:amd64 (0.3.2, 0.3.3), libpve-cluster-api-perl:amd64 (8.1.0, 8.1.2), pve-edk2-firmware-legacy:amd64 (4.2025.02-3, 4.2025.02-4~bpo12+1), libproxmox-backup-qemu0:amd64 (1.5.1, 1.5.2), libuutil3linux:amd64 (2.2.7-pve2, 2.2.8-pve1), libpve-storage-perl:amd64 (8.3.6, 8.3.7), libzpool5linux:amd64 (2.2.7-pve2, 2.2.8-pve1), proxmox-kernel-6.8:amd64 (6.8.12-11, 6.8.12-13), pve-cluster:amd64 (8.1.0, 8.1.2), proxmox-backup-file-restore:amd64 (3.4.1-1, 3.4.4-1), pve-container:amd64 (5.2.7, 5.3.0), pve-i18n:amd64 (3.4.4, 3.4.5), proxmox-archive-keyring:amd64 (3.2, 3.3), proxmox-backup-client:amd64 (3.4.1-1, 3.4.4-1), proxmox-mini-journalreader:amd64 (1.4.0, 1.5), pve-manager:amd64 (8.4.1, 8.4.11), libpve-common-perl:amd64 (8.3.2, 8.3.4), libpve-notify-perl:amd64 (8.1.0, 8.1.2), libzfs4linux:amd64 (2.2.7-pve2, 2.2.8-pve1), proxmox-kernel-helper:amd64 (8.1.1, 8.1.4), zfsutils-linux:amd64 (2.2.7-pve2, 2.2.8-pve1), libpve-cluster-perl:amd64 (8.1.0, 8.1.2), linux-libc-dev:amd64 (6.1.140-1, 6.1.147-1)
End-Date: 2025-08-18 18:04:14

Current pveversion: pve-manager/8.4.11/14a32011146091ed (running kernel: 6.8.12-13-pve)

The issue is that after reboot, there was no network working on the host. We found later that the eth0 interface has been renamed to eno1. We changed the network configuration and things worked again.

I understand this could happen on major update like PVE 7 to 8 or 8 to 9... but I wonder if this is normal to see a change like that on minor update?
 
this is fixable with persistent network naming that uses mac addresses and works with any linux distribution using systemd
add "net.ifname-policy=mac" to /etc/default/grub on GRUB_CMDLINE_LINUX line
update-grub
systemctl enable systemd-network-generator.service

if your systemd is new enough else

create the file needed manually

Code:
cat <<EOF > /etc/systemd/network/99-default.link
[Match]
OriginalName=*

[Link]
NamePolicy=mac
AlternativeNamesPolicy=database onboard slot path
MACAddressPolicy=none

EOF

as such after a reboot the nic will also be called after the mac address but with an enx prefix.
 
Last edited: