To simulate a "real" IPv6 service, I'm running OpenWrt on a VPS which tunnels its GUA /56 over WIreguard to a router at home.
This works fine if I manually configure the prefix into the home router. Being a "real" ISP though, it should advertise it on DHCPv6.
Whenever ip6asign is set on an interface, the interface itself takes a prefix out of the pool, reducing the size of the available assignments. This is unnecessary.
I see no reason for an interface that faces downstream (a LAN) to hold a GUA at all (prove me wrong?). The upstream router can be reached as a gateway and DNS server using its ULA. That is how cable modems work (sort of-- there's actually a lot going on inside a cable modem that is supposed to be invisible to the customer).
So I'd like for uchcpd to serve prefixes without the side effect of a GUA being taken away.
The not-working server side configuration that I'm working from is:
config interface 'wg0' option proto 'wireguard' option private_key 'XXXXX' option listen_port '51820' list addresses 'fe80::1/64' config interface 'wg0_s' option proto 'static' option device '@wg0' option ip6assign '60' option ip6class 'local' option ip6prefix '2600:XXXX:XXXX:XX00::/56' config wireguard_wg0 option public_key 'XXXXXX' # list allowed_ips 'fe80::4/128' list allowed_ips 'fe80::XXXX:XXXX:XXXX:XXXX/128' list allowed_ips '2600:XXXX:XXXX:XX00::/56' option route_allowed_ips '1'
config dhcp 'wg0' option interface 'wg0_s' option dhcpv6 'server' option dhcpv6_na '0' option dhcpv6_pd '1' option dns_service '1' option ra_flags 'other-config' option ra_slaac '0'