首页 >PC >正文

校园网环境下Openwrt配置ipv6教程——以nat6为例

去年的时候我在闲鱼上淘了一个j4105处理器的四网口软路由,专门用于用于安装openwrt,提高局域网的网络性能,实现外网访问去广告,UU加速器,transmission下载(不推荐) webdav挂载等多样性的功能。

网络环境

我自己是学生,所以这台大部分的时候是在校园网环境下使用,配合我的黑群晖主机,Xbox等使用。在东大的时候,学校的网络主要是教育网,也就是能够下发2001开头的ipv6网址,在南科这边虽然主要有线网络主要供应商是电信,但是也能够下发教育网ipv6网址。

当初在东大,因为ipv4流量是收费,ipv6流量不计费,在这种规定下,大家会利用有线网络分配的ipv6从六维空间等pt站下载资源实现免流。

校园网环境下Openwrt配置ipv6教程——以nat6为例

但是教育网ipv6不同于常见的公网ipv6,在公网中,很多家庭宽带下发的是56位前缀的地址,剩下的部分可以由支持ipv6的下级设备自动分发(DHCPv6-PD地址委派),让内网的所有设备都具有公网ipv6地址

校园网环境下Openwrt配置ipv6教程——以nat6为例

但是教育网很多是下发128位前缀的IPV6地址,如图上,换句话说,这个前缀的子网大小为1,只能够一台设备使用,所以实际只有这个地址只是分配给了我们路由器本身,下级设备是没有的。

在实际使用中,好像很多硬路由在这方面的功能是正常的,能够正常下发ipv6地址,偏偏Openwrt在这方面不太行,导致我不能直接使用ipv6,六维空间免流下载或者6-4隧道实现全部免流就GG了。

解决方法


我在ipv6配置上卡了很久没有迟迟没有实现,主要还是上述的教育网ipv6的特殊性,这里算是踩了大坑了,网上各种家庭宽带的方法来了校园网都没用,。

前段时间看了一下校内同学@ntdgy和恩山无线论坛@伤心的笔的关于这方面配置的教程,结合@嘉哥的脚本解决了这方面的问题,两个方向的实现的基本过程是基本上一致的,都是基于NAT6实现,大同小异。

南方科技大学ipv6设置教程 - 戴郭轶的个人博客 (ntdgy.top)

再说 OpenWRT 校园网 IPv6 NAT6 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)

【转载】 通过openwrt的NAT6转发,使后端设备获得ipv6网络 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)

因为帖子是2021年甚至更早,而且大家使用的openwrt编译版本可能有差别,还有帖子提到的一些比较实际的问题,我对这些打算做一个整合,方便大家使用。

关于Openwrt不同版本,会稍微影响我们的ipv6的设置过程

网络上大致有这么几个获得途径,

恩山无线论坛那边自用或者合作编译的版本。


Esir编译的高大全或者精品小包之类的,也是很常见的。自己动手编译的原版或者DIY,可能就更熟悉一点。我大致安装了前两种,然后对比了一下,发现Esir编译的版本和恩山的在ipv6设置上还是存在出入,比如在全局ULA前缀,ipv6默认打开还是关闭。这些问题本来在家庭网络环境中可能是影响不大的,但是在校园网ipv6环境下就可能会造成困扰。如果可以,在校园网环境下,建议使用自行编译或者恩山那边公开发布的固件,少折腾,记得关掉你的代理工具

实现过程

第一步:让我们的openwrt路由本身能够访问教育网ipv6,后面再实现nat6。


这个步骤和家庭宽带设置ipv6教程差不多,只是没了光猫桥接过程,很多设置有没有不影响的。


当你刷好了路由器的openwrt配置好了wan和lan基本上设置,插上wan口网线,打开接口→WAN高级设置中,如图设置,去掉使用内置的IPV6管理

校园网环境下Openwrt配置ipv6教程——以nat6为例

去掉,使用内置的ipv6


然后换到WAN6设置,基本设置中,协议是选择DHCPV6客户端,请求ipv6地址设置为force,请求指定长度的ipv6前缀设定为停用

校园网环境下Openwrt配置ipv6教程——以nat6为例

切换到wan6高级设置,去掉使用内置的ipv6管理,选上使用默认网关

校园网环境下Openwrt配置ipv6教程——以nat6为例

然后来到LAN口设置,注意,我们需要将ipv6分配长度设定为64,在默认状态是停用的。

校园网环境下Openwrt配置ipv6教程——以nat6为例

切换到lan口设置,上面的高级设置,去掉使用内置的ipv6管理。

校园网环境下Openwrt配置ipv6教程——以nat6为例

下面的高级设置,动态DHCP,以及强制,这个是正常配置


校园网环境下Openwrt配置ipv6教程——以nat6为例

再来到lan口下面的ipv6设置,如图,路由通告服务和DHCPv6服务选择选择服务器模式,NDP代理选择停用,DHCPv6模式选择无状态的+有状态的,选上总是总是通告默认路由。

校园网环境下Openwrt配置ipv6教程——以nat6为例

打开防火墙,基本设置和区域中,打开转发


校园网环境下Openwrt配置ipv6教程——以nat6为例

校园网环境下Openwrt配置ipv6教程——以nat6为例

DHCP和DNS中,取消勾选,禁止解析ipv6 DNS记录(恩山固件默认是去掉的,esir的不是)

校园网环境下Openwrt配置ipv6教程——以nat6为例

测试

经过如上的一番瞎折腾,我们路由器的本身应该能获取到ipv6地址,也能够访问ipv6了。打开看看地址


校园网环境下Openwrt配置ipv6教程——以nat6为例

校园网环境下Openwrt配置ipv6教程——以nat6为例

校园网环境下Openwrt配置ipv6教程——以nat6为例

内网设置都有分配地址这里为了方便检测,我们可以打开openwrt的网络工具检查,网络 →网络诊断看ipv6是否正常。

校园网环境下Openwrt配置ipv6教程——以nat6为例

左边的ping或者中间的traceroute工具都行,点击箭头选择ipv6,让我们ping一下openwrt的服务器在路由器本身ipv6配置成功的情况下,左边ping工具正常应该返回如下的结果,traceroute正常也会返回一个多级的追踪结果。

校园网环境下Openwrt配置ipv6教程——以nat6为例

如果路由器本身没问题,可以进入下一步,如果不正常,返回bad address之类,说明你可能需要检查前面的步骤是否正确操作,并且你关闭了代理工具,上级没有其他不支持ipv6的路由器,或者你所处环境没有ipv6,可以通过电脑直接插网线接口,稍等检查有无ipv6地址排查。第二步,关于内网nat6的配置。在路由器自身能够访问ipv6后,我们要解决因为地址不足造成内网设置无法访问ipv6的问题。重点:让我们在网络→接口下面的全局网络选项中,为路由器添加一个自定义的内网前缀


比如我使用就是一个fd34开头的前缀,可以自己设定一个,比如:fd34:fe56:7891:2f3a::/64 ,任意。之所以要强调这点,是因为网络上部分固件中删掉了这个设置选项,比如esir的固件,恩山论坛上有反馈过这一点。在 网络-接口 界面下方没有全局网络选项,导致我没办法删除ULA前缀,去年初我装的一个老版本的高大全是有的。想问下诸位大佬们,这个可以通过其他方式,比如命令之类的删除ULA前缀吗相应的解决问题,这里涉及使用ssh登录openwrt后台使用vim,小白的可以参考后面写的。新版的ESIR,默认没有 ULA,要显示全局网络选项的话,可以修改路由里的这个文件 /etc/config/network


文件里添加一行 config globals 'globals'打开ula设置选项,添加ula后,设置完之后是这样的,

校园网环境下Openwrt配置ipv6教程——以nat6为例

本来在家庭网络设置ipv6的教程中,是应该删除掉ula前缀的,这个善意省事之举,在教育网环境下反而成了麻烦的绊脚石。如果你使用lean原版固件编译的,或者恩山那边编译的,就不会存在这个问题。绕过上面的小插曲后,我们开始安装NAT6插件和脚本。这里主要参考恩山那边的教程,和上面luci图形操作重合的我就跳过了。请先下载好这里准备的1.安装ip6tables和nat6 modopkg update


opkg install ip6tables


opkg install kmod-ipt-nat6这里的话,就是安装两个组件,ip6tables现在很多op都有的,nat6 kmod 在luci 应用那边也有2.创建一个/etc/init.d/nat6文件,修改对应内容这里记得下载我从恩山@嘉哥那边转载来的一个脚本,文件放在阿里云盘里面,使用之前请使用工具(比如window的记事本),根据你的网络情况修改其中的两个选项。脚本链接


这里实际上原始脚本本身可以正常获取这两个接口的,但是由于教育网的网关有时候官网变成了fe80开头的,让脚本无法执行,所以我们可以实际进行修改,偷个懒。第一个是注释下面不远的"WAN6_INTERFACE=eth2",其中的eth2请根据你的wan口对应的设备名修改

校园网环境下Openwrt配置ipv6教程——以nat6为例

这里我的wan对应设备是eth2,你根据情况修改即可。

校园网环境下Openwrt配置ipv6教程——以nat6为例

同理,第二个修改,是中间出现的一段定义"WAN6_GATEWAY="2001:da8:xxxx:xxxx::1"这里面对应的是你的ipv6网关,我们可以在前面提到的traceroute工具或者命令行里面,ipv6 追踪一下

校园网环境下Openwrt配置ipv6教程——以nat6为例

第一行就是我们ipv6的网关了,按这个修改脚本内容。


实际上我们的ipv6的网关应该是我们上面获取到那个,但是部分校园网,不知道什么原因变成了fe80开头的网关,希望有人能解答一下(当然论坛有人反馈其实直接填这个fe80开头网关也可以正常进行)

校园网环境下Openwrt配置ipv6教程——以nat6为例

修改完文件后,直接保存,我们登录openwrt直接创建一个nat6文件> /etc/init.d/nat6用vim工具复制整个内容到我们的脚本中,然后:wq保存。当然你可以直接用winscp或者op的文件传输把修改完的文件复制到op对应目录中。3.设置权限让nat6脚本开机运行chmod +x /etc/init.d/nat6/etc/init.d/nat6 enable4.修改 /etc/sysctl.conf文件,添加以下内容。net.ipv6.conf.default.forwarding=2


net.ipv6.conf.all.forwarding=2


net.ipv6.conf.default.accept_ra=2


net.ipv6.conf.all.accept_ra=2保存好。5.修改防火墙添加以下内容iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53ip6tables -t nat -A POSTROUTING -o eth2 -j MASQUERADE前面两行,其实很多openwrt都自带的,就不需要再加了第三行中的eth2请和前面修改wan6_interface一样,修改成你对应的设备名。修改完后,我们重启路由器,应该内网就能访问ipv6了我们可以打开test ipv6检测ipv6的连通性,正常是满分的。http://www.test-ipv6.com



校园网环境下Openwrt配置ipv6教程——以nat6为例

校园网环境下Openwrt配置ipv6教程——以nat6为例

如果可以,我们再打开东北大学纯ipv6测速站测速一下,这个网站只有v4是打不开的,测的是纯粹的ipv6速度

使用很方便。

http://speed.neu6.edu.cn/


可以看到基本接近v4的带宽上限

校园网环境下Openwrt配置ipv6教程——以nat6为例

接着我们再打开一下常见的PT站,也就是我们这个教程的目的之一,以六维空间pt站为例


六维空间也是纯教育网ipv6站,必须是教育网ipv6环境才能访问。

http://bt.neu6.edu.cn


打开网站,主站可以正常访问

校园网环境下Openwrt配置ipv6教程——以nat6为例

校园网环境下Openwrt配置ipv6教程——以nat6为例

qbittorrent也是可以正常连接到六维服务器的

最后


缺点:

好像有时候变成了纯v6访问,速度好像变慢了一点


不知道是这边网络本身问题还是nat6和openwrt的问题,没有我以前时那么连通性好,上传量偏低,没有真正的ipv6直接快

到此为止,关于教育网下openwrt配置ipv6 nat6的教程就到此为止了。


说实话,我之前没有看到恩山和这边的帖子,被openwrt这个问题卡了很久了,一直都只能使用ipv4站,而没有公网ip的大内网又导致v4基本上没有速度,下载和做种都很困难,现在终于解决了这个问题。

为了防止使用教育网的同学们踩坑,我决定把上面三个教程结合起来,根据我的实际使用简化一下步骤。

如果是家庭宽带遇到类似的问题也可以尝试一下这个nat6的方法,此外,因为路由器本身有ipv6连通性,也可以在openwrt上直接部署transmission以及其他需要ipv6的组件,算是一个曲线救国的方法。

希望大家使用ipv6快乐。

Reference:

南方科技大学ipv6设置教程 - 戴郭轶的个人博客 (ntdgy.top)


【转载】 通过openwrt的NAT6转发,使后端设备获得ipv6网络 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)


再说 OpenWRT 校园网 IPv6 NAT6 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)


【求助】关于ESIR高大全固件的IPV6设置问题 - 软路由,x86系统,openwrt(x86),Router OS 等 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)


作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

网友评论

验证码 换一张
取 消
暂无评论...
三日内热门评论文章
为您推荐
  • 相关阅读
  • 业界资讯
  • 手机通讯
  • 电脑办公
  • 新奇数码
  • 软件游戏
  • 科学探索