Looks like Proxmox 8 is generating new IPv6 DUID for every reboot

Jul 10, 2021
36
6
13
44
www.saudiqbal.com
It took me a while to find out why proxmox fails to boot after each reboot because proxmox is generating a new DUID for ipv6 each time it boots, no such problem with Proxmox 7. The problem is that the router refuses to give a new IPv6 to a mac address stored in a static lease for proxmox and proxmox gets stuck after booting waiting for an IPv6 address. Every time I boot there is a new default-duid in /var/lib/dhcp/dhclient6.vmbr0.leases file. Hopefully someone can figure out why there is no stable DUID used in Proxmox 8.

Code:
auto lo
iface lo inet loopback

iface xxxxxxx inet manual

auto vmbr0
allow-hotplug vmbr0
iface vmbr0 inet dhcp
    hwaddress ether xx:xx:xx:xx:xx:xx
    gateway xxxxxxx
    bridge-ports xxx
    bridge-stp off
    bridge-fd 0


iface vmbr0 inet6 dhcp
    gateway xxxxxxx

I fixed it by adding the following code to /etc/dhcp/dhclient.conf
Code:
interface "vmbr0" {
    send dhcp6.client-id x:x:x:x:x:x:x:x:x:x;
}
Get the client id from your /var/lib/dhcp/dhclient6.vmbr0.leases file
option dhcp6.client-id

Finally don't forget to add net.ipv6.conf.vmbr0.accept_ra=2 to your /etc/sysctl.conf file and reboot ProxMox.
 
Last edited:
Hopefully someone can figure out why there is no stable DUID used in Proxmox 8.
maybe the new ifupdown2 version have some change about dhcp6 ? but I don't see any change about duid.

Finally don't forget to add net.ipv6.conf.vmbr0.accept_ra=2 to your /etc/sysctl.conf file and reboot ProxMox.
note that 'accept_ra 2' in /etc/network/interface should works now on proxmox8 (it was buggy in previous ifupdown2 version)
 
I've encountered this issue. When I set iface vmbr0 inet6 dhcp the sistem hangs until it gets an ipv6 address.

To test this, I've stopped the dhcpv6 server and radvd and the host wouldn't finish the bootup. After I turn on dhcpv6 and radvd, proxmox finishes the bootup sequence. Replicated this on 2 proxmox hosts.

My solution for now is to set a cron job to start the dhclient after reboot and restart every 24h ( @reboot sleep 60 && /usr/sbin/dhclient -6 vmbr0 )

Side note 1. I've had the problem with random DUID since Proxmox 7 and my usual solution involved the/etc/systemd/networkd.conf file but this one seems more reliable.


Side note 2. I'm pretty sure in the past I could place the inet6 line anywhere like this:

Code:
auto vmbr0
iface vmbr0 inet static
    address 192.168.0.100/24
 
iface vmbr0 inet6 dhcp

but now, dhcpv6 starts only if I place the line directly under auto like so:

Code:
auto vmbr0
iface vmbr0 inet6 dhcp
iface vmbr0 inet static
    address 192.168.0.100/24
 
Last edited:
Hi,
I'm currently looking for the 2).

I have found a bug "inet dhcp + inet6 auto" (where only first decleration is used) . Maybe is it the same with (inet static + inet6 dhcp).


Edit:

https://github.com/CumulusNetworks/ifupdown2/issues/174
"having a mix of both "static" and "dhcp" stanza is currently not supported."

I'll try to see if we can fix ifupdown2 ourself
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!