It is not up to Proxmox to decide how this is done, it is systemd, which Proxmox relies upon.
Historically, network device naming in the presence of multiple network devices was always a PITA. Then came systemd and changed how it was done -
several times, see:
https://manpages.debian.org/bookworm/systemd/systemd.net-naming-scheme.7.en.html
Currently, there are device names that are based on firmware, topology and other factors. What seems to be the case with your setup is that systemd thinks those devices are onboard and therefore get enoX names. While this assumption may be wrong anyway (since you could exchange those cards), the order will most probably depend on the PCIe topology. Potentially, a daughter board could be considered "on-board" and not a peripheral card.
If systemd thought the devices where on standard "peripheral" PCIe paths, it would probably name them enpXsY, but the order would still be dependend on what is detected in what order. Maybe the layout of the ports on your new NIC daughterboard is just different.
You can either use "link" entries in /etc/systemd/network that match on specific attributes like PCIe path or MAC address to have it otherwise like so (you did but it would probably not help the next time if the MACs change again):
Code:
[Match]
# This is the MAC address of the card to change. You can also
# match against other properties like PCI/USB slot.
MACAddress=d8:5e:d3:11:22:33
[Link]
# This is the name to assign. It must not conflict with any existing
# device, so be careful if you use a name like eth0 which can fail
# unexpectedly if you plug in another device that ends up on eth0 first.
Name=ens0
or you can use the pre-systemd scheme by adding "net.ifnames=0 biosdevname=0" to the Proxmox kernel commandline. In that case, the devices are numbered ethX in the order they are being detected, like in the olden days. I do that with all Linux VMs, BTW, should I recreate the VM and get another MAC or have more/less/different PCIe slots assigned.
Whatever the case, I doubt that Proxmox could easily "fix" this.