admin@vyos:~$ show ipv6 route Codes: K - kernel route, C - connected, S - static, R - RIPng, O - OSPFv3, I - ISIS, B - BGP, * - FIB route. S ::/0 [1/0] via yyyy::2 inactive C>* ::1/128 is directly connected, lo C>* yyyy::1/128 is directly connected, lo O>* yyyy::2/128 [110/1] via xxxx:fc54, tun0, 00:37:21 ... admin@vyos:~$ ping6 yyyy::2 PING yyyy::2(yyyy::2) 56 data bytes 64 bytes from yyyy::2: icmp_seq=1 ttl=64 time=13.9 ms 64 bytes from yyyy::2: icmp_seq=2 ttl=64 time=15.0 ms ^C --- yyyy::2 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 13.938/14.488/15.039/0.563 ms
When the router boots the static route is created, a script updates the IPSEC+GRE tunnel locally and remotely for dynamic IP, and eventually OSPFv3 learns the route to the remote router's loopback.
However, static default route with next-hop of the remote router's loopback does not function at this time unless destroyed and recreated. It is displayed as "inactive" and not installed in kernel routing table.
Deleting and recreating the static route after the loopback is learned from OSPFv3 allows traffic to be forwarded as expected and route is no longer displayed as "inactive".