Cloud and Self-Hosting

Proxmox: You need ifupdown2 to reload network configuration (500): How to Fix It

Fix Proxmox "you need ifupdown2 to reload network configuration (500)": fix the repos, install ifupdown2 safely, then Apply Configuration. PVE 6 to 9.

By Amjid Ali · · Updated · 5 min read

You need ifupdown2 to reload network configuration (500)
In this article
  1. Quick fix
  2. Why the error appears
  3. Which Proxmox versions are affected?
  4. Step 1: make sure the repositories work
  5. Step 2: install ifupdown2
  6. Step 3: apply the network configuration
  7. Step 4: verify
  8. Troubleshooting
  9. Video: step by step
  10. Next steps
  11. Proxmox course on Udemy

The Proxmox error "you need ifupdown2 to reload network configuration (500)" appears when you click Apply Configuration under System > Network on a node that still uses Debian's classic ifupdown. To fix it, make sure a working Proxmox repository is enabled, run apt update, then apt install ifupdown2. After that, Apply Configuration reloads the network live, with no reboot. If you cannot install it right now, a reboot also applies the pending changes.

I first hit this on a Proxmox VE 6.3 server in 2021, and the same fix still applies on Proxmox VE 8 and 9. Here is the full fix, plus what to do if the install fails.

Quick fix

apt update                # must finish without 401 or "not signed" errors
apt install ifupdown2     # replaces ifupdown, keeps /etc/network/interfaces

Then go back to node > System > Network and click Apply Configuration.

If apt update shows 401 Unauthorized from enterprise.proxmox.com, fix the repositories first (Step 1 below).

Why the error appears

When you change the network in the web interface, Proxmox does not edit /etc/network/interfaces directly. It writes the change to /etc/network/interfaces.new and shows:

Pending changes (Either reboot or use 'Apply Configuration' (needs ifupdown2) to activate)

The Apply Configuration button moves interfaces.new into place and runs ifreload -a, a command that only exists in ifupdown2. Classic ifupdown has no safe live reload, so the API call fails with HTTP 500 and the message "you need ifupdown2 to reload network configuration".

You can see which one you have:

dpkg -l | grep ifupdown
ii  ifupdown2   3.x.x-x   all   Network Interface Management tool similar to ifupdown

If it lists ifupdown instead of ifupdown2, you will get the error.

Which Proxmox versions are affected?

Proxmox VE ifupdown2 by default? Typical cause of the error
6.x No Default install used classic ifupdown
7.x, 8.x, 9.x (fresh ISO install) Yes Rare; ifupdown2 was removed or replaced
Installed on top of Debian Not always Debian's default is ifupdown
Upgraded from 6.x Not automatically The upgrade keeps ifupdown

ifupdown2 is also required for Proxmox SDN (Software-Defined Networking), so it is worth having even if you rarely change the network.

Step 1: make sure the repositories work

apt install ifupdown2 downloads the package from your configured repositories. On a node without a subscription, the default enterprise repository returns 401 Unauthorized and apt cannot fetch anything.

Quickest way (GUI): node, Updates > Repositories, select pve-enterprise and click Disable, then Add > No-Subscription > Add. Do the same for a Ceph enterprise entry if there is one.

On the CLI, the files depend on your version:

  • Proxmox VE 9 (Trixie): add Enabled: no to /etc/apt/sources.list.d/pve-enterprise.sources and create /etc/apt/sources.list.d/proxmox.sources with the pve-no-subscription component.
  • Proxmox VE 8 (Bookworm): comment out the line in /etc/apt/sources.list.d/pve-enterprise.list and add deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription.

The exact commands for both are in my guide to disabling the Proxmox enterprise repository and enabling no-subscription.

Proxmox VE 6.x (Buster)

The original version of this article was written for Proxmox VE 6.3. Proxmox VE 6 has been end of life since July 2022 and Debian moved the Buster repositories to archive.debian.org, so the fix there is really to upgrade. If you must work on such a node, the 6.x lines were:

# /etc/apt/sources.list.d/pve-enterprise.list (disabled)
# deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise

# /etc/apt/sources.list
deb http://download.proxmox.com/debian/pve buster pve-no-subscription

Then refresh:

apt update

It must finish without errors before you continue.

Step 2: install ifupdown2

Before installing, make sure there are no pending network changes in the GUI (click Revert if unsure), and ideally run the install from a console or inside tmux, in case the SSH session drops:

apt install tmux -y && tmux new -s net
apt install ifupdown2

apt will tell you it removes ifupdown and installs ifupdown2; answer Y. Your /etc/network/interfaces is kept as it is.

You need ifupdown2 to reload network configuration (500)

Step 3: apply the network configuration

Go back to node > System > Network. Make your change (or re-check the pending one) and click Apply Configuration. The task log should end with TASK OK.

From the shell, after editing /etc/network/interfaces by hand:

ifreload -a

Step 4: verify

dpkg -l ifupdown2
ip -br addr
ip -br link show type bridge

ifupdown2 should show ii (installed), and your bridges (for example vmbr0) should be up with the expected IP addresses. To check the running state matches the file:

ifquery --check -a

Troubleshooting

E: Unable to locate package ifupdown2 or has no installation candidate. Your package lists are empty or broken because apt update failed. Fix the repositories (Step 1) and run apt update again until it is clean.

401 Unauthorized during apt update. The enterprise repository is enabled without a subscription. Disable it and add no-subscription.

Apply Configuration now fails with an ifreload -a error instead. ifupdown2 is installed, but the new configuration has a problem, for example a bridge port that does not exist, a duplicate IP or a typo. Run ifreload -a in the shell to see the exact error, fix /etc/network/interfaces.new (or click Revert and redo the change), and apply again.

Network gone after a reboot or kernel update. That is usually not ifupdown2 but a renamed network interface, so vmbr0 lost its port. Compare ip link with /etc/network/interfaces from the console, correct the name and run ifreload -a. On Proxmox VE 9, pve-network-interface-pinning can pin names so they stop changing. The Proxmox VE 8 to 9 upgrade guide covers this in more detail.

Proxmox installed on Debian with NetworkManager. Proxmox expects /etc/network/interfaces to be managed by ifupdown2. Remove NetworkManager (or make sure it does not manage the Proxmox interfaces) and configure the bridge in /etc/network/interfaces.

Video: step by step

Next steps

Once ifupdown2 is installed you can safely change bridges, VLANs and bonds from the GUI. If you are still on an old release, see how to upgrade Proxmox VE to the latest version, and keep a copy of your network configuration with my guide to backing up the Proxmox host configuration.

Proxmox course on Udemy

If you want to support this blog, joining the course and leaving feedback helps a lot.

proxmox ve guide

To join the full course, click here for the Proxmox course. You can watch more Proxmox tutorials on my YouTube channel, read my ultimate guide to Proxmox, or clone an HDD to SSD. To download Proxmox, visit the official downloads page.

Frequently asked questions

How do I fix "you need ifupdown2 to reload network configuration (500)" in Proxmox?+

Make sure a working Proxmox repository is enabled (no-subscription if you have no subscription), run apt update, then apt install ifupdown2. After that, the Apply Configuration button in System, Network works and applies changes without a reboot. Until then, a reboot also applies the pending changes.

What is ifupdown2 in Proxmox?+

ifupdown2 is a rewrite of Debian's classic ifupdown network tool. It can reload /etc/network/interfaces live with ifreload -a, which is what the Proxmox web interface uses for Apply Configuration. It is installed by default on new installs since Proxmox VE 7.0 and is needed for SDN.

What does "Pending changes (Either reboot or use 'Apply Configuration' (needs ifupdown2) to activate)" mean?+

Proxmox saved your network change to /etc/network/interfaces.new but has not applied it yet. Click Apply Configuration to apply it live (needs ifupdown2), click Revert to discard it, or reboot the node to apply it at boot.

Is it safe to install ifupdown2 over SSH?+

It normally is. The package replaces ifupdown and keeps your existing /etc/network/interfaces. As a precaution, run it inside tmux or screen, or from a physical or IPMI console, and do not have unapplied network changes pending when you install it.

Why do I get this error on Proxmox VE 8 or 9?+

New installs of 7.0 and later already include ifupdown2, so on 8 or 9 it usually means the node was installed on top of Debian, was upgraded from Proxmox VE 6, or something replaced ifupdown2 with classic ifupdown. Reinstall it with apt install ifupdown2.

Sources

  1. Proxmox VE Administration Guide, Network Configuration, Proxmox Server Solutions
  2. Package Repositories, Proxmox Server Solutions

Related videos

Video library
  • Cloud and Self-Hosting

    Proxmox QEMU Guest Agent: Install & Enable in Ubuntu VM (Show IP, Shutdown Fix!)

    · 2:33 · 2.3K views

    Watch on YouTube
  • Cloud and Self-Hosting

    Restored Ubuntu VM on Proxmox? Update Mirror, Timezone & Hostname (Full Fix After Moving Countries)

    · 4:24 · 156 views

    Watch on YouTube