Solve the IPv6 issue of the broadband in my dormitory
Background
My broadband ISP in my dormitory is China Unicom, FTTB. It is terrible that it has only 100Mbps connectivity (Fast Ethernet). But the most horrible thing is that the BRAS only assigned the IPv6 address by SLAAC, even can not assign PD prefix to my router.
CU is the only ISP that provides PPPoE + IPv6 + public IPv4 in our university. Because of this, I didn’t change my mind to migrate my ISP in the slightest, but tried to work around the problem.
Early attempts
There is a way to get a fake IPv6 prefix by masquerading as a prefix proxy. I tried this method and it worked. The only drawback is that the lower-level device cannot get the IPv6 address distributed by DHCPv6.
Here is an article for reference: odhcpd 中继模式原理、局限以及解决方案。
Root of the problem
Furthermore, the root of the problem is that the BRAS can not assign a PD prefix correctly, so we can try to change the BRAS if there is more than one BRAS in the network.
There are two in the picture.
So, the root of the problem is that the BRAS cannot assign the PD prefix correctly, so if there are multiple BRASs in the network, we can try to change the BRAS.
In OpenWrt, we can specify an AC (AC=Access Concentrator) to make the router communicate with a fixed AC upstream of the network. That’s how I solved it.
There are actually three BRASs on the opposite side:
b1-s-gdzh-xsk => 10.147.*.* Prefix /64
b1-s-gdzh-nkhy => 10.144.*.* Prefix /64
b3-s-gdzh-sc165 => 10.145.*.* No Prefix
So just specify the first two.
And finally I got it, cool.