利用 OpenWrt 实现 THU IPv6 + 宽带叠加完美双 WAN

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用 OpenWrt 实现 THU IPv6 + 宽带叠加完美双 WAN相关的知识,希望对你有一定的参考价值。

参考技术A 经常玩 PT 的同学很可能也遇到过下面这个令人头疼的问题:目前大多数路由器并不支持 IPv6 的局域网转发,虽然可以利用 Lan 口互相是桥接的原理强行把路由器接成交换机模式实现校园网的 AP 接入,但是这样也同时失去了同一路由器下多设备的局域网互联,这给平时多设备的数据传输带来了很大的不便。为此,我们需要一台 OpenWrt 的路由器解决这个问题。

我的网络环境为:

设备环境为:

理想实现的效果:

路由器配置的最难点在于对 IPv6 的支持上,尽管 OpenWrt 三四年前的版本就已经可以转发 IPv6 流量了,但是依旧不完善,尤其是图形化界面的操作大不如 IPv4。

我通过整理一些大神的技术博客流传下来的资料,了解到现在 IPv6 转发有以下三种方式:

这是最早用的一种模式,即用路由器作为中继,路由器获得 IPv6 公网地址,获得数据后,转发给后面所有连接到路由器的局域网设备。

实现中继模式有以下两种方法:

众所周知,在 IPv4 网络下路由器是用 NAT 进公网到局域网地址转换的,NAT6 即为 IPv6 编写的 NAT 服务。网上也能搜到很多有关 NAT6 配置的方法,事实上,这种模式现在非常稳定,使用过程中完全察觉不到,和普通的 IPv4 路由没有什么区别。

不过 NAT6 模式下还是有个小问题,就是由于后面的设备都是局域网 IPv6 地址,加上 OpenWrt 可能对端口转发之类的支持不太好,所以挂 PT 时,utorrent 的连接性很差。

目前来看,对于教育网 IPv6 环境,这可能是最适合的一种转发方式。事实上,它和我们平时用到的反插网线强行交换机模式的原理很相似,通过设置将 IPv6 网线接口与 LAN 口桥接,这样 LAN 口相当于 AP 接入校园网 IPv6 环境;与此同时我们再叠加一个 IPv4 的宽带即可。这样的方式下,路由器本身没有 IPv6 地址,但是后端所有设备都有公网 IPv6,非常适合拿来刷 PT。不过由于路由器没有公网 IP,所以想用路由器挂 PT 的可能要考虑上述两种方式了。

对于用路由器做主力 NAS 的情况
: 首选 NAT6

对于每个设备都需要公网 IP 的情况
: 首选桥接

WNDR3800 上只有一个原生 WAN 口,我们首先要先通过 luci 界面的 交换机 设置 VLAN,把一个 LAN 口用作 WAN6 。

设置方式为:

CPU 接口: 所有 VLAN 均需与之 已标记(Tagged)

VLAN 连接的接口: 设置为 未标记(Untagged)

未与 VLAN 连接的接口: 设置为 关闭(Closed)

设置完后的 VLAN 如下

这样,连接在 LAN 1 的网口 VLAN 2 就可以用作一个新的 WAN 口。

在 luci 中找到 接口 ,比较新的 OpenWrt 中应该都自带添加了 WAN 和 WAN6 两个接口,如果没有的话,手动添加一个接口并命名为 WAN6 。

对于 WAN 口,正常设置即可,比较重要的一点是,因为我不想用移动宽带的 IPv6,要在 接口 - 高级设置 - 获取 IPv6 地址 设置为 已禁用 。

对于 WAN6 口,找到 物理设置 ,选择接口为 VLAN 'eth0.2' (默认 IPv6 插在了刚刚设置的 LAN 1,宽带插在 WAN)。

之后就是重头戏,我们要设置 IPv6 的桥接。网上教程中提到需要安装 ebtables 去转发即将设置桥接的 WAN 口的 IPv4 数据,但是显然在我们这个双 WAN 的操作中是用不到的,因为校园网 IPv4 计流量而宽带不限量,故忽略这一步。

直接在 接口 - LAN - 物理设置 ,会看到已经有了一个桥接,这个是把 2 个 WLAN 接口及 LAN(eth0.1 即交换机设置中原有的 VLAN1)桥接在一起,使得 LAN 下的设备彼此互联。我们在这个已有的桥接中添加勾选 VLAN 'eth0.2' 即把 WAN6 和全部 LAN 桥接在一起。

虽然原理讲起来非常复杂,但实际操作我们只需这样简单的一个操作,就完成了 IPv6 的桥接穿透。

当然,根据网上教程最后还需要在 启动项 中禁用 odhcp,以免它反复报错。

由于开机过程比较缓慢,在路由器刚启动时,DHCP 还没有来得及给设备分 IP,这时由于桥接,设备已经获取到了校园网的 IPv4 地址,这显然是我们不希望的。这个现象目前我的解决办法就是开机先让路由器缓一会儿再连网,还没有找到更好的办法。

理论上来说,通过 ip6tables 可以设置 IPv6 的端口转发,不过囧于 luci 没有很好地适配 ip6tables,所以需要在命令行操作,加之我自己没有需要,就懒得研究了,以后有空了没准会研究一下。

以上是关于利用 OpenWrt 实现 THU IPv6 + 宽带叠加完美双 WAN的主要内容,如果未能解决你的问题,请参考以下文章

使用OpenWrt实现IPv6 DDNS

openwrt搭建v2ray免流

OpenWRT配置IPV6

免费好用的IPv6之DDNS服务-Openwrt上dynv6的使用介绍

openwrt旁路由的扩容及设置ipv6

4-Openwrt ipv6之NAT6