在校园网环境使用路由器获得高可用IPv6

使用桥接方法让Openwrt下的设备也获得可用的IPv6

博主所在学校的实验室提供的网络环境为内网IPv4(需要锐捷认证)+ IPv6(无PD)。而一个学号只能认证两台设备,对博主这样的多设备用户很苦恼,遂通过软路由Openwrt进行代理认证。但这样只有软路由有可用的IPv6,与博主的家庭宽带PPPOE后得到PD的IPv6不同,连入的设备都只有IPv4能力,非常的不优雅。

经过查阅资料后发现,大部分的教育网都是采用SLAAC来分配地址,不带有PD头,路由不知道自己所分配的子网范围。知道了问题所在以及结合匮乏的计网中IPv6知识,于是有以下的集中解决方案:

  1. 通过nat66将IPv6进行NAT操作

    优点:

    • 可以使用原生的IPv6功能

    • 可以让路由来分配自己的内网IPv6,与IPv4使用方式相同(即端口转发)

    • 配置较为简单,只要路由可以上网就可以保证内网中的设备都可以访问IPv6

    缺点:

    • IPv6所谓的每个设备都有自己的IP地址这一广告词就当放屁了

    • 这nat66性能也。。。令人堪忧啊,毕竟这软路由的配置仅仅是双核四线程的辣鸡Atom

  2. 通过已给出的IPv6地址划出一个更小范围的子网

    优点:

    • 地址分配自己可以控制,方便记忆(比如1919:810:114:514)

    • 可以通过防火墙地址范围规划保护设备

    • 保证设备能拿到自己的公网IPv6,外网访问不用再打洞了

    缺点:

    • 由路由器作转发网关,对于软路由这类没有硬件级IPv6转发的设备来说。。。性能和nat66差不多

    • 安卓设备不支持DHCPv6得到IPv6地址(虽然博主自己没有安卓设备),还需要root后手动添加IPv6地址,很不优雅

    • 有些设备上的防火墙会与路由上的防火墙冲突,导致有地址但不可用(说的是你,Windows)

    • 分配了地址后需要路由向上级交换机报告IPv6地址,若上级交换机过于陈旧就不可用

  1. 通过已经拿到IPv6地址的wan6接口来中继到br-lan的网桥上

    优点:

    • 继续使用学校的SLAAC分配子网内的IPv6地址,不用讨论学校上级交换机的情况

    • 因为是SLAAC分配地址,安卓设备也可以拿到IPv6地址

    • 不再使用路由器做网关,流量与性能问题不用再考虑

    • 类原生的IPv6体验

    缺点:

    • 路由器上看不到已连入设备的IPv6地址(很合理嘛,毕竟不是路由器分配的)

    • 防火墙部分可能会失效

    • 有些学校的IPv6部分也会单独计费等,此时每个连入的设备都需要计费认证后才能使用IPv6功能(但博主所在学校IPv6是免费的)

综上,博主选择了第三种方法。给软路由刷入了Openwrt后,装上锐捷认证(minieapmentohust均可)。而后进入Openwrt的shell,更改其dhcp配置

vim /etc/config/dhcp

其中lan部分

1
2
3
4
5
6
7
8
9
10
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h
#以下内容是需要加入/改动
option ra 'relay'
option ndp 'relay'
option dhcpv6 'relay'
option ra_slaac '1'

wan部分

1
2
3
config dhcp 'wan'                   
option interface 'wan'
option ignore '1'

wan6部分(此处是需要手动添加)

1
2
3
4
5
config dhcp 'wan6'                                             
option ra 'relay'
option ndp 'relay'
option dhcpv6 'relay'
option master '1'

全部修改完成后退出并保存,然后重启dhcp服务

/etc/init.d/odhcp restart

再打开Openwrt的IPv6转发功能

vim /etc/sysctl.conf

其中加入以下配置

1
2
3
4
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

然后就可以发现子网内设备成功拿到了IPv6地址。

但有时又无法ping通阿里云2400:3200::1的DNS服务器,检查一下防火墙。
/etc/config/firewall中的default项加入option disable_ipv6 '1',再重启防火墙即可。


另:

为了确保Openwrt及其子网设备的IPv6的功能是正常的,请确保以下设定是满足的,其包括:

  • 网络——DHCP——高级设置中勾选了“禁止解析 IPv6 DNS 记录”

  • 网络——负载均衡——策略中备用成员是“不可达(拒绝)”而不是“默认(使用主路由表)”

'攻防世界 base64÷4'

base64÷4

下载的附件为txt格式,打开后为

666C61677B45333342374644384133423834314341393639394544444241323442363041417D

由题目隐含意猜想是base16加密

通过在线base16加解密工具得到flag:flag{E33B7FD8A3B841CA9699EDDBA24B60AA}

'关于对寝室校园网速度的一二见解'

硬核方式修复在宿舍的网速仅能达到20Mbps的BUG


之前一直是通过斐讯K2路由器刷入不死Breed和潘多拉固件后通过单线多拨的方式叠加速度,实现方式如下(刷入系统部分省略)

  1. 下载mentohust

  2. mentohust上传到路由器的/bin目录下

  3. 使用ssh软件给mentohust权限

    1
    chmod a+x /bin/mentohust
  4. 此时可以通过输入mentohust查看已经检测到的网卡

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    [root@PandoraBox_D141:/root]#mentohust

    欢迎使用MentoHUST 版本: 0.3.1

    Copyright (C) 2009-2010 HustMoon Studio

    人到华中大,有甜亦有辣。明德厚学地,求是创新家。

    Bug report to http://code.google.com/p/mentohust/issues/list

    ** 网卡[1]: eth0

    ** 网卡[2]: rai0

    ** 网卡[3]: ra0

    ** 网卡[4]: br-lan

    ** 网卡[5]: eth0.1

    ** 网卡[6]: eth0.2

    ** 网卡[7]: nflog

    ** 网卡[8]: nfqueue

    ?? 请选择网卡[1-8]:

    使用方式:

    #mentohust -u学号 -p校园网密码 -a1 -d1 -n你的wan口网卡

    当出现发送心跳包以保持在线...字样时即说明认证成功,此时应测试能否连接到互联网

  5. 此时打开虚拟wan选项,并在接口处把所有的虚拟网卡协议从PPPOE拨号更改为DHCP V4模式

  6. 此时删除pid文件,以让mentohust多进程运行

    #rm /var/run/mentohust.pid -f

  7. 再次运行第4步的操作,但将网卡改为另一张虚拟的wan口

  8. 点开负载均衡页面,查看是否亮绿灯,并跑一次速度测试观察流量走的是否平均即可

因为接入宿舍内部的线路带宽100Mpbs,故最多5个账号速度就已经跑满了,更多的线路也无意义


本就该告一段落的校园网破解进程因为一次校园网服务的升级而无效,校园网由单账号限速改为了单端口限速,故无论单线拨多少速度总是限制为20Mbps,无法忍受。而后便选择了通过多线多拨。宿舍内有一八口百兆交换机,故将路由器的wan口与从lan1到lan3口全部用来拨号,lan4口作为出口接入交换机。

主要思路是通过潘多拉固件中的VLAN功能来实现将5个口分离,并单独作为4个WAN口与一个LAN口。剩余具体步骤与上述单线多拨类似,仅是网卡编号发生变化,故不再赘述。


多线多拨可以实现网速达到了60Mbps左右,但是出口为4个方向,而面对一些仅提供单线程的服务来说过于缓慢。且由于多出口导致网页记住的登陆状态会消失,或QQ等软件会出现在线状态突然切为离线后再次上线,十分不方便。但是偶然缘故某大佬告诉我了宿舍内盒子是一个POE供电的路由器,故猜测该路由器是否为认证端…而经过拆解后发现果然如此,但是接入电脑后获得到的IP地址并非之前宿舍内网段,且校园网认证也无法连接到互联网,于是猜测是否为无出口的内网网段。便不认证PING了校内IP,发现可以PING通,说明已经接入到了内网。且内网下载速率可达到线路带宽的100Mbps,遂萌发了通过VPN拨到校内可联网设备而访问网络。不出意外的VPN拨号连接成功,且速度上下对等,跑满了该线路,故校园网破解路程完结…

2021年9月19日更新:
学校突然良心发现,将每个宿舍内的设备更新为千兆设备+WiFi6的AP,此任务完结。

作者:言临川