[SOLVED] No IPv6 on host, but all VMs have working IPv6

prof7bit

New Member
Oct 1, 2022
2
2
3
I have a proxmox installation behind a fritz box. My provider put me behind a DS-Lite tunnel, so I need to get IPv6 working.

All my VMs already had a working and routable Ipv6 all the time without any intervention or special care by me, I was able to port-forward them in the fritz box and access them from the outside via IPv6 just fine.

Also all my other devices behind my fritzbox have working IPv6 addresses for many years now without any special intervention by me.

Only the host system (proxmox itself) does not have a global IPv6 address

I cannot remember having changed anything in any relevant config file because networking has been working fine from the beginning on.

Is this the expected result for a default installation?

If so: How do I enable IPv6 on the host so that I can reach the web UI via IPv6?

Code:
root@pve:~# ifconfig
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 00:e0:4c:01:82:46  txqueuelen 1000  (Ethernet)
        RX packets 31176  bytes 10107235 (9.6 MiB)
        RX errors 0  dropped 43  overruns 0  frame 0
        TX packets 26792  bytes 6080662 (5.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

fwbr103i0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 96:e3:b9:9a:99:1c  txqueuelen 1000  (Ethernet)
        RX packets 3948  bytes 386861 (377.7 KiB)
        RX errors 0  dropped 1258  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

fwln103i0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 9e:c1:28:40:92:8f  txqueuelen 1000  (Ethernet)
        RX packets 7471  bytes 990799 (967.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2942  bytes 515122 (503.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

fwpr103p0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 82:21:86:d8:56:ae  txqueuelen 1000  (Ethernet)
        RX packets 2942  bytes 515122 (503.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7471  bytes 990799 (967.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 1231  bytes 351639 (343.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1231  bytes 351639 (343.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tap100i0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST>  mtu 1500
        ether b6:20:0d:92:3c:8e  txqueuelen 1000  (Ethernet)
        RX packets 24333  bytes 4784904 (4.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 27486  bytes 9031864 (8.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tap103i0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST>  mtu 1500
        ether 02:1a:bd:8d:48:d9  txqueuelen 1000  (Ethernet)
        RX packets 2942  bytes 515122 (503.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7471  bytes 990799 (967.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vmbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.2  netmask 255.255.0.0  broadcast 10.0.255.255
        inet6 fe80::2e0:4cff:fe01:8246  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:01:82:46  txqueuelen 1000  (Ethernet)
        RX packets 9765  bytes 1841603 (1.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5136  bytes 1720550 (1.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Code:
root@pve:~# cat /etc/network/interfaces
auto lo
iface lo inet loopback

iface eno1 inet manual

auto vmbr0
iface vmbr0 inet dhcp
        bridge-ports eno1
        bridge-stp off
        bridge-fd 0

iface wlo2 inet manual
 
I think I found the problem:

I had to set:

Code:
net.ipv6.conf.vmbr0.accept_ra = 2

in order to make it work.

I found it while I was trying "ip token set" from the command line to force it to generate itself a new IP address immediately, it spew out:
"Error: ipv6: Router advertisement is disabled on device." although this had been set to 1 by default the entire time.

I looked for documentation and found this: https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt

Code:
accept_ra - INTEGER
    Accept Router Advertisements; autoconfigure using them.

    It also determines whether or not to transmit Router
    Solicitations. If and only if the functional setting is to
    accept Router Advertisements, Router Solicitations will be
    transmitted.

    Possible values are:
        0 Do not accept Router Advertisements.
        1 Accept Router Advertisements if forwarding is disabled.
        2 Overrule forwarding behaviour. Accept Router Advertisements
          even if forwarding is enabled.

    Functional default: enabled if local forwarding is disabled.
                disabled if local forwarding is enabled.

After setting this to 2 and without changing anything else and then rebooting the host it promptly generated itself an IPv6 address for vmbr0, populated the routing table properly and the web UI is now reachable through the v6 address and I can finally reach my proxmox again when I am not at home.

So this Thread can be regarded as solved. I hope it might be useful for others having the same problem.
 
Last edited:
  • Like
Reactions: ebahn and effgee
Yes, came across this issue but instead I disabled forwarding on the bridge interface as I'm not using the Proxmox firewall. You solution is great too. ;)
 
Last edited:
Thank You, @prof7bit! I spent 12 hours trying to troubleshoot this problem, including reinstalling pve both from iso and ontop of a brand new debian bullseye install, until I finally came across your solution!
 

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!