Configuring Proxmox VE using only netplan

TafkaMax

New Member
Jun 17, 2025
2
1
3
Hi

I am trying to configure Proxmox VE using only netplan, as it is easier to generate yaml config using ansible, than the weird format of /etc/network/interfaces.

We have stumbled onto something interesting. Proxmox gets data from /etc/network/interfaces file. So we don't have that file configured and it disregards any data that is generated by netplan, e.g. those options that I have configured are not present int the UI of ProxmoxVE.

What solutions are there?

The config itself is a classical linuxbridge implementation with vlan-s.

  1. I have bond1 for proxmox backend traffic with a three node proxmox cluster with interconnected links.
  2. bond0 that is connected to the rest of the network via switches that has multiple VLAN-s tagged, where one has an IP addres that connects to the rest of the network.

YAML:
network:
    bonds:
        bond0:
            dhcp4: false
            dhcp6: false
            interfaces:
            - enp197s0f0np0
            - enp197s0f1np1
            macaddress: REDACTED
            nameservers:
                addresses:
                - 192.168.2.5
                - 192.168.3.6
            parameters:
                down-delay: 200
                lacp-rate: fast
                mii-monitor-interval: 100
                mode: 802.3ad
                transmit-hash-policy: layer3+4
                up-delay: 0
        bond1:
            addresses:
            - 10.0.1.1/24
            interfaces:
            - enp67s0f0np0
            - enp67s0f1np1
            mtu: 9000
            parameters:
                mode: broadcast
    bridges:
        vlanbr3:
            interfaces:
            - bond0.3
            parameters:
                forward-delay: 0
                stp: false
        vlanbr2:
            addresses:
            - 192.168.2.2/24
            interfaces:
            - bond0.2
            parameters:
                forward-delay: 0
                stp: false
            routes:
            -   to: default
                via: 192.168.2.1
    ethernets:
        enp197s0f0np0: {}
        enp197s0f1np1: {}
        enp67s0f0np0:
            mtu: 9000
        enp67s0f1np1:
            mtu: 9000
    renderer: networkd
    version: 2
    vlans:
        bond0.2:
            id: 2
            link: bond0
        bond0.3:
            id: 3
            link: bond0
 
Last edited:
If you want a supported configuration, use /etc/network/interfaces as currently it's the only supported way to configure the network, not just for the GUI but for other functionalities like Cluster deployment.
IMHO you should adapt the tool (ansible) to the application (pve) and not the other way around. And pretty sure there are ansible modules to manage the network and/or PVE easily.
 
  • Like
Reactions: UdoB
Yeah I figured out that I need to use the classical linux networking. No point in creating a duplication of the same config in netplan. So I am converting to use the standard interfaces file.
 
  • Like
Reactions: UdoB