I'm new at both Azure and systemd-networkd, so bear with me.
I've deployed an Ubuntu 24.04 VM on Azure, and have configured the Azure side of things to a state that appears fully correct — I have both private and public IPv4 and IPv6 addresses configured according to MS documentation, and attached to the VM's network controller. I've also booted the VM after the IPv6 addition. However, it's non-functional: I can't ping the public IPv6 address (ICMP is allowed and it works for the IPv4 side), and I cant ping -6
out of the VM either. The private IPv6 address does not appear in the ip addr
output whereas the private IPv4 address does.
It's likely that the Azure 24.04 image is not configured to work with IPv6 by default, as IPv6 addresses don't exist for VMs by default either.
Let's assume for the moment that the Azure side is correctly configured. What should I do to get the systemd-networkd to find the IPv6 address?
/etc/systemd/network
is empty. /run/systemd/network/10-netplan-eth0.network
looks like this:
[Match] Driver=hv_netvsc PermanentMACAddress=<omitted> Name=eth0 [Network] DHCP=yes LinkLocalAddressing=ipv6 [DHCP] RouteMetric=100 UseMTU=true
On the Azure side, both types of private addresses are set to be dynamic, and the public addresses static. At the end of this, I'd expect the private IPv6 address to show up in ip addr
, but not the public one, as the public IPv4 address does not show up there either.