Wireguard interfaces have IPv6 link-local addresses that are all fe80::fdfe.
Here's the A side of a tunnel:
trae@cr01a-vyos# show interfaces wireguard wg2 address 192.168.254.25/30 description "VL: L::cr01a-vyos.int wg2 | R::cr01-vyos.bhs wg0" ipv6 { ospfv3 { cost 1 dead-interval 40 hello-interval 10 ifmtu 1420 instance-id 0 mtu-ignore priority 1 retransmit-interval 5 transmit-delay 1 } } peer CR01-VYOS.BHS { address <ADDRESS> allowed-ips 0.0.0.0/0 allowed-ips ::/0 persistent-keepalive 5 port 51820 pubkey <pubkey> } port 51822 private-key CR01A.INT_CR01.BHS trae@cr01a-vyos# ip -6 a show dev wg2 16: wg2: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 state UNKNOWN qlen 1000 inet6 fe80::fdfe/64 scope link valid_lft forever preferred_lft forever [edit]
Here's the B side:
vyos@cr01-vyos# show interfaces wireguard wg0 address 192.168.254.26/30 description "VL: L::cr01-vyos.bhs wg0 | R::cr01a-vyos.int wg2" ipv6 { ospfv3 { cost 1 dead-interval 40 hello-interval 10 ifmtu 1420 instance-id 0 mtu-ignore priority 1 retransmit-interval 5 transmit-delay 1 } } peer CR01A-VYOS.INT { address <ADDRESS> allowed-ips 0.0.0.0/0 allowed-ips ::/0 persistent-keepalive 5 port 51822 pubkey <PUBKEY> } port 51820 private-key CR01.BHS_CR01A.INT vyos@cr01-vyos# ip -6 a show dev wg0 7: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 state UNKNOWN qlen 1000 inet6 fe80::fdfe/64 scope link valid_lft forever preferred_lft forever
I believe this is due to the fact that you're attempting to add an EUI64 address here:
https://github.com/vyos/vyos-1x/blob/current/python/vyos/ifconfig/interface.py#L1017
EUI64 requires a MAC address, and Wireguard interfaces have no MAC:
trae@cr01a-vyos# ip link show wg2 16: wg2: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/none alias VL: L::cr01a-vyos.int wg2 | R::cr01-vyos.bhs wg0
I'm guessing you'll need to figure out another way of generating the IPv6 LL address, or alternatively, leave it to the user to configure.