Hyperoptic 是英国的一个运营商。
Hyperoptic 用的是 SLAAC,我在 IPv6 Client 里面使用了一个 /56 的仅获取 prefix,这没啥问题。
在运行一段时间之后,IPv6 Client 里面设置的 Client 会一直 searching…,然后所有下面的设备都会丢失 IPv6 地址。
奇怪了很久,之前重启还管用,直到最近不知什么时候变得重启都不管用了。
解决方案很简单,开户的时候 Hyperoptic 的客服会问你的路由器的 MAC 地址,我当时报的是 Hyperoptic 的原配路由器的 MAC 地址,把它找出来。
我的是 Hyperoptic 定制的 ZTE ZXHN H298A,把路由器翻过来,可以看到两个 MAC 地址,中间用 ~ 分隔。一般开户的时候你会从第一个开始说,所以取第一个就行。
我在 WinBox 里面的 Terminal 操作。WinBox 的 GUI 好像不能直接修改 MAC 地址。
/interface ethernet
print
这时候就可以看到 RouterBoard 原本的 MAC 地址。
Flags: R - RUNNING; S - SLAVE
Columns: NAME, MTU, MAC-ADDRESS, ARP, SWITCH
# NAME MTU MAC-ADDRESS ARP SWITCH
0 R ether1 1500 XX:XX:XX:XX:XX:XX enabled switch1
1 RS ether2 1500 XX:XX:XX:XX:XX:XX enabled switch1
2 S ether3 1500 XX:XX:XX:XX:XX:XX enabled switch1
3 S ether4 1500 XX:XX:XX:XX:XX:XX enabled switch1
4 S ether5 1500 XX:XX:XX:XX:XX:XX enabled switch1
我的入户线接在 ether1 上,所以修改 ether1 的 MAC 地址,编号为 0。
照着开户的时候报的 MAC 地址填下去,全大写。
set 0 mac-address=AA:AA:AA:AA:AA:AA
再看看修改成功没有。
print
Flags: R - RUNNING; S - SLAVE
Columns: NAME, MTU, MAC-ADDRESS, ARP, SWITCH
# NAME MTU MAC-ADDRESS ARP SWITCH
0 R ether1 1500 AA:AA:AA:AA:AA:AA enabled switch1
1 RS ether2 1500 XX:XX:XX:XX:XX:XX enabled switch1
2 S ether3 1500 XX:XX:XX:XX:XX:XX enabled switch1
3 S ether4 1500 XX:XX:XX:XX:XX:XX enabled switch1
4 S ether5 1500 XX:XX:XX:XX:XX:XX enabled switch1
如果其他配置没问题,你就可以看到 IPv6 Client 已经好了,甚至不需要 Disable 再 Enable。
其他运营商有同样问题的话,也可以试试。