Skip to content

ProxmoxVE: nameservers not configured if multiple nameservers are provided in network-data #1225

@mx-shift

Description

@mx-shift

Bug

Configuring a Proxmox VM with the following network-config causes the IP and gateway to be set during early boot but no nameservers are configured:

version: 1
config:
    - type: physical
      name: eth0
      mac_address: 'bc:24:11:e5:98:ff'
      subnets:
      - type: static
        address: '192.168.88.43'
        netmask: '255.255.255.0'
        gateway: '192.168.88.1'
    - type: nameserver
      address:
      - '192.168.88.30'
      - '192.168.88.31'

using a single nameserver works correctly.

Operating System Version

Fedora CoreOS 42.20250705.1.0

Afterburn Version

Afterburn-multi 5.8.2

Environment

What hardware/cloud provider/hypervisor is being used to run Afterburn?

Proxmox VE 8.4.1

Expected Behavior

[root@test ~]# resolvectl
Global
Protocols: LLMNR=resolve -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: stub

Link 2 (ens18)
Current Scopes: DNS LLMNR/IPv4 LLMNR/IPv6
Protocols: +DefaultRoute LLMNR=resolve -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 192.168.88.30
DNS Servers: 192.168.88.30
Default Route: yes


## Actual Behavior ##

[root@test ~]# resolvectl
Global
Protocols: LLMNR=resolve -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: stub

Link 2 (ens18)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
Protocols: -DefaultRoute LLMNR=resolve -mDNS -DNSOverTLS DNSSEC=no/unsupported
Default Route: no


## Reproduction Steps ##

  1. Create a new Proxmox VM
  2. Import https://builds.coreos.fedoraproject.org/prod/streams/next/builds/42.20250705.1.0/x86_64/fedora-coreos-42.20250705.1.0-proxmoxve.x86_64.qcow2.xz as the root disk 
  3. Add a cloud-init drive
  4. Configure IP, gateway, and two nameservers in Proxmox's cloud-init UI
  5. Boot the OS
  6. Run `resolvectl` and see no nameservers are configured
  7. Check /etc/NetworkManager/system-connections/default_connection.nmconnection and see no nameservers are configured
 
 ## Other Information ##

https://github.com/coreos/afterburn/blob/main/src/providers/proxmoxve/cloudconfig.rs#L246 seems to be wrong.  According to https://www.man7.org/linux/man-pages/man7/dracut.cmdline.7.html, each nameserver needs a separate nameserver= argument, not commas.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions