Add pve-network-interface-pinning to PVE post-install #1534

Closed
opened 2026-02-05 01:28:52 +03:00 by OVERLORD · 7 comments
Owner

Originally created by @mmomjian on GitHub (Aug 26, 2025).

🌟 Briefly describe the feature

Add pve-network-interface-pinning to PVE post-install

📝 Detailed description

It would be helpful to add pve-network-interface-pinning generate as an option to the PVE post install script (link)

Source: PVE docs

💡 Why is this useful?

This helps reduce the chance of NICs changing names after PCIE device changes.

Originally created by @mmomjian on GitHub (Aug 26, 2025). ### 🌟 Briefly describe the feature Add pve-network-interface-pinning to PVE post-install ### 📝 Detailed description It would be helpful to add `pve-network-interface-pinning generate` as an option to the PVE post install script ([link](https://community-scripts.github.io/ProxmoxVE/scripts?id=post-pve-install)) Source: [PVE docs](https://pve.proxmox.com/pve-docs/pve-admin-guide.html#_using_the_pve_network_interface_pinning_tool) ### 💡 Why is this useful? This helps reduce the chance of NICs changing names after PCIE device changes.
OVERLORD added the enhancement label 2026-02-05 01:28:52 +03:00
Author
Owner

@MickLesk commented on GitHub (Aug 26, 2025):

I'm not a fan of such interventions per se, most users are ultimately happy that they can use the little bit of terminal. Then you should ask them whether networks are pinned? To be honest, I can see this going wrong and some users then saying we'll change something on their network cards or something else.

@MickLesk commented on GitHub (Aug 26, 2025): I'm not a fan of such interventions per se, most users are ultimately happy that they can use the little bit of terminal. Then you should ask them whether networks are pinned? To be honest, I can see this going wrong and some users then saying we'll change something on their network cards or something else.
Author
Owner

@lasharor commented on GitHub (Aug 26, 2025):

I think this is a usefull request. Or at least to point out that this is an option in the latest PVE version. I don't really see what the downside is. Especially if done during post install.

@lasharor commented on GitHub (Aug 26, 2025): I think this is a usefull request. Or at least to point out that this is an option in the latest PVE version. I don't really see what the downside is. Especially if done during post install.
Author
Owner

@MickLesk commented on GitHub (Aug 26, 2025):

The main hurdle for normal users is risk of breaking network connectivity.

-> The pve-network-interface-pinning tool creates .link files and rewrites key configs (/etc/network/interfaces, host firewall, SDN configs).
-> If the user doesn’t fully understand what’s happening, a reboot could result in renamed NICs and the host losing network access.
-> the most home-lab users are fine with systemd’s predictable naming as-is; they rarely hit renaming issues.
-> pining is mainly valuable for more complex setups (servers with multiple PCIe NICs, frequent hardware changes).

So enabling it automatically in post-install is dangerous — safer is just to inform users that the option exists, or provide it as a separate optional tool/script.

@MickLesk commented on GitHub (Aug 26, 2025): The main hurdle for normal users is risk of breaking network connectivity. -> The pve-network-interface-pinning tool creates .link files and rewrites key configs (/etc/network/interfaces, host firewall, SDN configs). -> If the user doesn’t fully understand what’s happening, a reboot could result in renamed NICs and the host losing network access. -> the most home-lab users are fine with systemd’s predictable naming as-is; they rarely hit renaming issues. -> pining is mainly valuable for more complex setups (servers with multiple PCIe NICs, frequent hardware changes). So enabling it automatically in post-install is dangerous — safer is just to inform users that the option exists, or provide it as a separate optional tool/script.
Author
Owner

@mmomjian commented on GitHub (Aug 26, 2025):

I was picturing an option -“do you want to pin network interface names? This may disrupt network connection until the next reboot”

@mmomjian commented on GitHub (Aug 26, 2025): I was picturing an option -“do you want to pin network interface names? This may disrupt network connection until the next reboot”
Author
Owner

@michelroegl-brunner commented on GitHub (Aug 26, 2025):

This would be, as stated by @MickLesk before, better suited in its own script/tool. There is no need to bloat existing scripts with functions most useres would prob. never use.

@michelroegl-brunner commented on GitHub (Aug 26, 2025): This would be, as stated by @MickLesk before, better suited in its own script/tool. There is no need to bloat existing scripts with functions most useres would prob. never use.
Author
Owner

@mmomjian commented on GitHub (Aug 26, 2025):

I feel like you could make that argument about everything in the post install script tbh. Why is disabling HA not its own script for example? Either way it doesn’t bother me, I will continue to configure my nodes myself

@mmomjian commented on GitHub (Aug 26, 2025): I feel like you could make that argument about everything in the post install script tbh. Why is disabling HA not its own script for example? Either way it doesn’t bother me, I will continue to configure my nodes myself
Author
Owner

@MickLesk commented on GitHub (Aug 26, 2025):

In this case, however, you can't just assume that you are the only one; the scripts have been used almost 1 million times in the last few months. Some users don't even know how curl works or what nano is.
The post installer script intentionally whiptails everyone through, with additional hints etc.

Perhaps conceivable as a single script, but not as an extension. It is not a core component of the installation.

@MickLesk commented on GitHub (Aug 26, 2025): In this case, however, you can't just assume that you are the only one; the scripts have been used almost 1 million times in the last few months. Some users don't even know how curl works or what nano is. The post installer script intentionally whiptails everyone through, with additional hints etc. Perhaps conceivable as a single script, but not as an extension. It is not a core component of the installation.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#1534