MAC address of ipv6 default gateway is expiring without traffic

Hello everyone,

on some of my FreeBSD VMs I have noticed, that when there is no IPv6 traffic (inbound or outbound), the ndp entry (MAC address) of the IPv6 default gateway expires.
Once the ndp entry has expired, the IPv6 default gateway is no longer usable and all future incoming and outgoing connections stop working.
This only happens on IONOS VPS servers, and is probably connected to this thread: https://forums.freebsd.org/threads/ipv6-not-working.90032/
My Howto Guide I have used to set things up: https://forums.freebsd.org/threads/howto-setting-up-freebsd-13-on-a-ionos-vps-server.84406/

FreeBSD versions affected: 13.0-RELEASE to 13.2-RELEASE-p3
IPv6 default router configuration: ipv6_defaultrouter="fe80::1%vmx0"
Hypervisor used for the VPS server: VMware
Virtual NIC used for the VPS server: VMXNET3

Here are some examples of behavior I have observed (output of ndp -a):

FreeBSD VM 1 - IPv6 is working and there is an additional link-local address of the IPv6 gateway (fe80::250:56ff:fe8c:172f):
Code:
Neighbor                          Linklayer Address  Netif Expire    1s 5s
fe80::1%vmx0                      00:50:56:8c:17:2f   vmx0 15s       R R
2001:db8:0:0::1                   00:50:56:2e:de:25   vmx0 permanent R
fe80::250:56ff:fe8c:172f%vmx0     00:50:56:8c:17:2f   vmx0 23h59m38s S R
fe80::250:56ff:fe2e:de25%vmx0     00:50:56:2e:de:25   vmx0 permanent R

FreeBSD VM 2 - IPv6 is not working and the ndp entry for fe80::1%vmx0 is incomplete:
Code:
Neighbor                          Linklayer Address  Netif Expire    1s 5s
fe80::1%vmx0                      (incomplete)        vmx0 1s        I  1
2001:db8:0:0::1                   00:50:56:1a:36:3d   vmx0 permanent R
fe80::250:56ff:fe1a:363d%vmx0     00:50:56:1a:36:3d   vmx0 permanent R

FreeBSD VM 3 - IPv6 is not working and the ndp entry for fe80::1%vmx0 is expired:
Code:
Neighbor                          Linklayer Address  Netif Expire    1s 5s
2001:db9:0:0::1                      00:50:56:23:2d:fc   vmx0 permanent R
fe80::250:56ff:fe23:2dfc%vmx0        00:50:56:23:2d:fc   vmx0 permanent R

As soon as I run the command ping fe80::1%vmx0 the ndp entry will be populated again.
One workaround would be to run a cron job ever so often to ping fe80::1%vmx0, but I'd like a permanent solution.

Is there a way to stop the ndp entry to expire to make shure that IPv6 connections will be usable going forward?
To my knowledge IONOS does not use Router Advertisements or DHCPv6 for IPv6.

Thanks in advance. :)
 
Just checking back to see if you found an answer? Seeing similar behavior on several VPS’s.
Not yet, as I also have encountered other issues with IPv6 on FreeBSD, mainly IPv6 connectivity breaking once I restart the network ( # service netif restart && service routing restart) when using SLAAC because for some reason, FreeBSD only applies the prefixes it gets from router advertisements, but ignores the IPv6 default gateway - so the IPv6 default route disappears from the routing table.

I guess I should probably ask for help at the FreeBSD mailing list, but recently I haven't had the time to do so.

(Edit: Updated the restart command)
 
FreeBSD only applies the prefixes it gets from router advertisements, but ignores the IPv6 default gateway - so the IPv6 default route disappears from the routing table.
Routing isn't set up with /etc/rc.d/netif, static routes are set up with /etc/rc.d/routing; In other words run service routing restart.
 
Back
Top