I've been running my own pre-19.07 builds for a while, but I noticed last week IPv6 LAN connectivity is broken. OpenWrt isn't handing out LAN IPv6 addresses anymore, but IPv6 WAN functionality still works (that is, I can still ping IPv6 websites from my router, but clients only have their link-local IPv6 addresses).
Since the WAN and LAN interfaces have valid IPv6 addresses, the issue seems to be with the OpenWrt configuration, not with my ISP's modem/router (which I cannot bridge, but which seems to be delegating correctly from what I can see).
/etc/config/dhcp
config dhcp 'lan'
option interface 'lan'
option leasetime '12h'
option start '40'
option limit '60'
list dhcp_option '3,10.0.0.1'
list dhcp_option '6,10.0.0.1,9.9.9.9'
option dhcpv6 'relay'
option ra 'relay'
option ndp 'relay'
#option ra_management '1'
config dhcp 'wan'
option interface 'wan'
option dhcpv6 'relay'
option ra 'relay'
option ndp 'relay'
option master '1'
option ignore '1'
Requesting an IPv6 address from a client does not show anything whatsoever in logread. Odhcpd is running.
The WAN interface and the LAN bridge have a routable IPv6 address from the same 'family' (2a02:xxxx should be OK afaik):
# ip -6 addr show eth0.2
20: eth0.2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
inet6 2a02:578:xxxx:800:42b0:76ff:fe24:24b8/128 scope global dynamic noprefixroute
valid_lft 6636sec preferred_lft 3036sec
inet6 fe80::42b0:76ff:fe24:24b8/64 scope link
valid_lft forever preferred_lft forever
# ip -6 addr show br-lan
18: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
inet6 2a02:578:xxxx:8fc::1/62 scope global dynamic noprefixroute
valid_lft 6633sec preferred_lft 3033sec
inet6 fd99:54:4952::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::42b0:76ff:fe24:24bc/64 scope link
valid_lft forever preferred_lft forever
Any ideas what's wrong here?