OpenWRT 和校园网 IPv6

前不久中山大学东校区更换了 iNode 客户端的验证方式,部分宿舍的验证方式从异或校验变成了 MD5 校验。sysuh3c 的作者——听说是个已经毕业有些年的大牛校友——没几天就更新了,还有一位在校生大佬也贡献了代码。简直业界良心,膜拜之。

——2016年11月26日


这个学期开始由 SYSU 珠海校区搬迁到了广州大学城校区,上网验证的客户端也从原先的锐捷变成了 iNode(H3C)。原先所使用的锐捷客户端难以在无线路由器上实现拨号,只有淘宝上卖的基于水星洋垃圾的某 link 可以拨号,但是性能低下。于是就用 Mac mini 作为锐捷猫使用,性能虽然还不错,但对 IPv6 的支持很不好,一些局域网应用在这种网络结构下有时候表现不佳。

幸好 H3C 有多种基于 OpenWRT 的第三方拨号插件,比如 YaH3COH3Csysuh3c 等,其中前两者用 Python 实现,后者用 C/C++ 实现。实测前两者在较新版本的 OpenWRT 中稳定性不佳,因此最后采用的是 sysuh3c 来进行拨号认证。采用的路由器是网件 WNDR4300,固件版本是明月新春版,基于 OpenWRT Chaos Calmer 15.05.1 r49208。

首先前往 sysuh3c 的 OpenWRT branch,下载最新的 ar71xx ipk 文件,并 SCP 至路由器的 /root 目录。使用包管理器安装:

安装完毕就可以使用以下命令运行(SSH 或 WebShell):

用自己的 NetID 和密码替换上面的参数即可。还可将上述命令添加进开机启动项(系统—启动项—本地启动脚本)。

然后配置校园网下的 IPv6。

修改对应的配置项为:

保存后重启路由器,应能看到路由器 lan 口获得了与 wan、wan6 相同的 IPv6 地址,电脑等设备也获得了正确的以 2001 开头的 IPv6 地址。此时应该可以通过 IPv6 上网了。

如果在网络状态中显示 IPv4 有 Internet 访问权限而 IPv6 没有,请尝试手动重启 odhcpd 服务(系统—启动项)。

这里可以测试 IPv6 是否配置成功。

关于 Mac mini 外接 USB 3.0 设备干扰蓝牙工作的问题

这两天遇到了一个令人倍感困扰的问题:我的 Mac mini 在外接 USB 3.0 移动硬盘的时候,会极大地影响蓝牙键鼠的工作,严重时甚至会导致蓝牙设备与 Mac 失去连接;直到断开移动硬盘和 Mac 的连接,蓝牙键鼠才能恢复正常工作。

经过各种尝试,最终确定造成干扰的就是移动硬盘,于是向 Apple 售后询问解决的方法。事实上 Apple 方面也没有什么特别好的解决方案,对方工程师回复我说从 2014 年底开始就陆陆续续有类似的反馈,并且给了我以下这篇文章参考:

启用了蓝牙的键盘和鼠标可能无法一直保持配对或连接状态,或者启用了蓝牙的耳机或扬声器中的音频可能会不连贯。如果某些外置 USB 3.0 设备与 Mac 太接近,则会发生此问题。

简言之,由于 USB 3.0 设备在数据传输时会在 2.4GHz 附近频段产生噪音,若干扰源恰好在 Wi-Fi 或蓝牙天线附近,则会对这一频段的无线传输造成干扰。

最简单的解决办法:

  • 使用高品质的外置设备;
  • 使用 USB 2.0 设备暂代;
  • 使用带屏蔽的延长线,将产生干扰的设备放在远离 Mac 的地方。

继续阅读关于 Mac mini 外接 USB 3.0 设备干扰蓝牙工作的问题