Construct public ipv6 adress from hostname of router and interface id of client [closed]
Business class internet service should be providing a static IPv6 prefix. The address space is easily big enough to provide this for everyone.
DNS is the first choice for resolving names to IPs. Consider a DNS updating script, running on a box that knows the prefix. nsupdate, ddclient, something like that. A script to drive that is fairly simple: concatenate a /64 prefix plus interface ID.
Maybe store the prefix in DNS as well, so it can be retrieved by name.