First, i have read this doc: https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/isg/configuration/xe-3s/isg-xe-3s-book/isg-ipv6.pdf
Here is simple config:
ip subscriber list slist
ipv6 prefix default 48
!
interface SomeInterface0/0.123
ipv6 address 2001:db8::1/64
ipv6 enable
ipv6 nd ra suppress
ip subscriber routed
initiator unclassified ip-address list slist
!
ipv6 route 2001:db8:123::/48 2001:db8::2
I works well when there is traffic sourced from user network 2001:db8:123::/48 - a single session created with address 2001:db8:123::
but what about traffic, generated by user router? it tries to create another session for address 2001:db8:: with is undesired, because whole 2001:db8::/48 is NOT a subscriber network, only small /64 segment of it is a particular user network.
The only work around seems to be using part of subscriber's network for the link with them. But that's undesired, because end user would like to have control of whole his /48 block.
Any suggestions?