OpenWrt IPv6 中继

寝室网络到期,墙上的校园网只有没有 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 的路由上均可成功。要多试试呀~


已发布

分类

作者:

标签

评论

《“OpenWrt IPv6 中继”》 有 9 条评论

  1. Milton 的头像
    Milton

    “ 这里「交换机 VLAN eth0.2 (lan, wan, wan6)」是没有选上的吧?勾选上这个。” 这会把 wan 口跟 lan 口放到一个交换机里, 这样是很危险的吧?

    1. 小金鱼儿 的头像
      小金鱼儿

      但为了能让路由器后面的设备直接获得上游路由器分配下来的 IPv6 地址……我也只好这么做了。
      另外,我是在教育网,只有 IPv6 的教育网,所以担心会少一点。

    2. 直接挂了 的头像
      直接挂了

      『交换机 VLAN: “eth0.2” (wan, wan6) 这一栏勾上直接挂了,网关都进不去』
      遇到和前面的情况一样,这个不能乱点….

    3. Nya Candy 的头像

      是的,会引起类似广播风暴的问题,怀疑是经过 WAN 发包的数据被错当成 LAN 的数据进行二次递送,从而无限循环阻塞向外发送的数据包。
      使用博主的方案我确实成功获取了 IPv6 地址,但是很快就与外界互联网失去了连接;我一开始还以为是光猫的配置问题,后来进入网关关闭这个选项后,网路就恢复正常了,因此怀疑可能就是类似这种重复发包的情况导致了网路的阻塞。这个方法虽然确实能将内网暴露出去,获取 IPv6 地址,提供了一种全新可行的思路,但具体的实现方式与细节也许还有待商榷吧。

  2. 吴 的头像

    DHCPv6 服务只能选择有无状态啊?

  3. 然而并没有 的头像
    然而并没有

    「一般配置-物理设置-接口」这里加了 usb0(使用电信手机 RNDIS) 之后,Windows 7 终于获得了 IPv6 地址,但是弹窗检测到地址冲突,上不了网。还好内网没断,可以在 LUCI 改回去。

  4. Kayro 的头像
    Kayro

    我们校园网是深蓝,通过 pppoe 拨号得到 ipv4 和 ipv6 地址。现在路由器能得到 ipv6 地址但是电脑无法得到,如果我只想让电脑得到 ipv6 地址,无线设备还是 ipv4,该怎么做啊大佬?

  5. dada 的头像
    dada

    交换机 VLAN: “eth0.2” (wan, wan6) 这一栏勾上直接挂了,网关都进不去

  6. YoungWilliam 的头像

    成功了!感谢楼主~

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注