I only get a /64 IPv6 from my provider. Therefore I have configured in OpenWRT as described here as IPv6 relay. The clients get also immediately 2 correct IPv6 addresses assigned. However, a
ping6 www.google.com does not work on the client. In the routes of the client no IPv6 default gateway appears. As soon as I ping the public IPv6 address of the router from the client, all IPv6 traffic works without problems and in the routes of the client a default IPv6 route with the local link address of the router appears. Why do I have to do this ping for IPv6 to start working?
Then find another provider. The chances are they have been given a /32 which give them over 4 billion /64's. My ISP gives me a /48, not a /64.
Just for completeness, are you requesting a wider than /64 delegated prefix from your provider over DHCPv6? IIRC my ISP (Comcast) was handing me a /64 until I changed the DHCPv6 client config on the WAN interface to request a wider one. Tried /56 (maybe /48 too) but they seem to only hand out a /60 prefix. Still better than /64.
I find it odd that you must specifically ping (ICMP Echo Request). Are you blocking ICMP anywhere by firewall?
Specifically are you blocking certain ICMPv6 needed for IPv6 network connectivity?
@dimitris This is my backup Internet access, which runs over LTE. Unfortunately, you never get more than a /64 over LTE in Germany. Even a request for e.g. /58 leads to a /64.
@lleachii I do not block anything specific regarding IPv6
However, I found out that I am not alone with this problem and that it exists in OpenWRT for a long time. For others with the problem, here is the link to the Github issue. I have solved it for me now with NAT6. This is sufficient for my purposes. I'm watching the Github issue and hope it will be solved in the future. Thanks for the answers.