寝室网络到期,墙上的校园网只有没有 IPv4 DHCP,只有 IPv6 DHCP 可以获取 2001:da8:: /64
的全球单播地址。但是经过一层路由器后就不行了。经过一些波折,终于能以中继的方式让路由器后面的设备获取 2001 开头的地址。
网上其他教程好像都不太适用于比较新的 OpenWrt 18.06 版本。相比于老版本,新版本配置更加简单。
路由器刷 OpenWrt
这个不多讲吧?网上教程一把一把的。如果敢于作死(比如,我),可以不刷 breed/uboot。
刷好后默认没有 Wi-Fi,需要用网线连路由器进行设置。当然,还是推荐找个有网的地方来玩,遇到问题找资料会方便一些。
安装 IPv6 相关软件包
其实 OpenWrt 默认已经安装了 IPv6 的很多包了。这一步完全可以跳过。
首先更新软件源
,然后搜索 ipv6
,看着是内核扩展(kext)和防火墙相关(iptables)的我都安掉了。另外我还安了 traceroute
以备不时之需。
大致如下
ip6tables
kmod-ipv6
kmod-ipt-nat6
kmod-ip6tables
kmod-ip6tables-extra
luci-proto-ipv6
网络接口设置
WAN6
协议选择 DHCPv6 客户端
,请求 IPv6 地址选 try
(不能选 force
),其他保持默认。——其实这就是默认啦。
LAN
两行都是重点。
先看最下方的「DHCP 服务器-IPv6 设置」,将「路由通告服务」、「DHCPv6 服务」和「NDP 代理」都选成混合(Mixed)模式
或者中继(relay)模式
,推荐选「混合模式」。
看上面「一般配置-物理设置」,找到「接口」,点击最右边的小三角,弹出下拉菜单。默认这里「交换机 VLAN eth0.2 (lan, wan, wan6)
」是没有选上的吧?勾选上这个。为啥选这个呢?因为它有 wan6
哇~
保存并应用。
(之后,如果出了问题,比如不能上网了啥的,改这个「接口」就好了,多试试)
Wi-Fi 设置
开启 Wi-Fi,改名字,设置密码。话说默认不开 Wi-Fi 真的很不方便啊!Mac 没有 RJ45 口啊!
这样就成了
连上 Wi-Fi,看一下有没有 2001 开头的 V6 地址了呢?如果没有的话,等十几秒,或者重启一下路由器试试。
所以你就不要问我只有 IPv6 的情况下是怎么上网的啦~我会告诉你我是拿实验室树莓派做中继的么?
和其他教程的不同
Emmm,不好说,但是按照其他教程我没有成功。
其他教程里面会说,ssh 上路由器,改/etc/config/odhcpd
文件吧啦吧啦。其实这些东西在 LuCI 界面里面都可以做。
其他教程里面最关键的是将 wan6 设为 master
什么的。但是自己尝试无效。无效的表现为,能偶然成功一次,但是断电后重新上电,路由后面的设备就再也没有成功获取过 2001
开头的 V6 地址了。
其他教程里面还说需要改另一个配置文件并重启某个服务——其实在 LuCI 里面也可以配置,不必亲自动手。
在死马当活马医的时候,发现直接改「物理设置-接口」就行了,十分简单。
最后说一下「中继模式」和「混合模式」的区别。使用「混合模式」的话,路由器也会获得一个 IPv6 地址,但是使用「中继模式」的话,路由器就没有了这个地址。
另外这句话写在最后:虽然我在小米路由 Mini、小米路由 Mini 青春版、极路由 3 上面都成功了,但是不保证其他刷了 OpenWRT 的路由上均可成功。要多试试呀~
发表回复