让路由器接入校园网

校园网(一种反人类的东西),每次上网都要认证,虽然可以设置开机自动认证,但对于常年不关机只休眠的人很不友好,而且拥有两台电脑时联网就很难受,想联网主机就必须开着,主板开热点还只支持2.4g,两台电脑互传文件极其麻烦(传个几G的文件更是噩梦),学校的iNode for Linux根本就不是人能用的……在饱受校园网的一学期折磨,寒假过后,终于把家里的子路由(放在房间里当交换机)带到学校

一、一切的开始

如何通过路由器进行校园网认证?如何通过校园网的MAC验证?

二、路由器

我的这款路由器是新路由3(Newifi 3 d2),这款路由器当时是在某宝全新入手的,看重的是它带了5个千兆网口(1个WAN口,4个LAN口),1个USB3.0(Gen多少未知),512M内存,32M闪存。当时到手刷入Breed,刷了老毛子Padavan固件,就当交换机使用。本篇文章将使用此路由器进行演示。

三、配置路由器

原先刷入的是老毛子Padavan固件,发现好像啥也干不了,那就刷个固件吧,既然有这种奇怪功能的需求,不用OpenWrt说得过去?找客服要固件,刷上,好像不是我要的。网上找?不安全!OpenWrt不是开源的吗?果断自己编译。

1. 源码

顺着Github找到了Lean的OpenWrt源码仓库
嗯!Readme中文的,简单明了!

2. 环境搭建

1)在虚拟机中安装Ubuntu 18 LTS x64系统,这里选择最小化安装,我在安装完成后拍摄了快照(非必须,这里只是以防环境配置出错需要重新安装系统),安装完配置好sshd.

2)从后面开始所有操作都是通过ssh对虚拟机进行配置,方便复制粘贴和文件传输,这里使用的是Xshell和Xftp.

3)注意:不要用root用户进行编译 国内用户最好准备好科学上网,以防配置时间过久或配置失败

4)在ssh中执行

sudo apt-get update

5)执行

sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync

6)执行完拍摄快照(非必须)

3. 编译源码

1)执行 git clone https://github.com/coolsnowwolf/lede 下载源码 (git设置代理 git config --global http.proxy http://{host}:{port} 清除代理 git config --global --unset http.proxy

2)执行 cd lede 进入目录

3)执行 ./scripts/feeds update -a 更新安装包

4)执行 ./scripts/feeds install -a 安装更新

5)下载 wuliclient (直接在虚拟机中 git clone 更方便)

6)将 wuliclient 解压上传到 lede/package 目录下

7)执行 make menuconfig 进入配置菜单,前面带~号的需要根据路由器型号配置进行选择,选项有两种模式,*为编译在固件中,M为编译为模块,可在路由器管理页面中安装

8)~ Target System 选择 MediaTek Ranlink Mips

9)~ Subtarget 选择 MT7621 Based boards

10)~ Target Profile 选择 Newifi D2

11)~ 设置完毕

12)选择 LuCI

13)选择 Collections

14)选择 luci

15)后退 选择 Applications

16)这些为可选应用,可为路由器添加功能

17)建议将 luci-app-ttyd. LuCI support for ttyd 选择上,方便在路由器管理页面进行控制台操作

18)后退 选择 Themes

19)选择想要的主题,这里我全选上,在路由器管理页面可进行切换主题

20)回到根菜单,选择 Utilities

21)将最主要的 wuliclientBulidl. wuliclientBulidl 选上,这里我选择为M模式,也可以直接选择为*模式,编译在固件中

22)选择 Save 保存

23)选择 Exit 退出

24)执行 make -j8 download V=s 下载dl库(国内请尽量全局科学上网),执行完拍摄快照(拍摄快照非必须)

25)执行 make -j1 V=s (-j 后面是线程数。第一次编译推荐用单线程)开始交叉编译,此过程会极其缓慢(等不及的话可以尝试增加线程数,但可能会出现问题),具体时间受电脑配置影响

26)等待交叉编译完成后,可在 lede/bin/targets/ramips/mt7621/ 目录下找到 openwrt-ramips-mt7621-d-team_newifi-d2-squashfs-sysupgrade.bin ,这就是编译出来的固件

27)如果wuliclient使用M模式进行编译,可在 lede/bin/packages/mipsel_24kc/base 目录下找到 wuliclientBulidl_1.0_all.ipk,这个就是wuliclient安装包

4. 刷入固件,配置wuliclient(此处仅供参考,不同路由器须按实际情况进行操作)

1)刷入固件

① 使用xftp将固件以及wuliclient安装包传输到电脑中

② 取一根网线,将LAN口与电脑相连,拔掉路由器电源,按住Recovery按钮,接上电源,在浏览器地址栏输入 192.168.1.1 进入Breed管理页面,进入固件管理页面,上传固件,刷入,等待路由器重启

③ 路由器重启后,在浏览器地址栏输入 192.168.1.1 进入OpenWrt管理界面,初始用户名 root 初始密码 password

2)安装wuliclient【如果wuliclient采用*模式编译,此步可跳过】(此处仅供参考,不同路由器须按实际情况进行操作)

① 进入 系统->文件传输,选择wuliclient安装包(后缀为.ipk的文件)上传,安装

② 检查是否安装成功

③ 解决Mac认证问题

  • 找学校网管清除MAC绑定(最简单)
  • 重新设置路由器WAN口MAC地址为原电脑MAC地址

3)配置wuliclient

① 打开ttyd,执行 wuliclientBulidl {账号} {密码} $(uci get network.wan.ifname) ,出现 log in success! 表示wuliclient安装成功并且可用

② 在启动项中的本地启动脚本中添加 wuliclientBulidl {账号} {密码} $(uci get network.wan.ifname) ,提交

③ 自动任务添加 00 06 * * 1-5 killall wuliclientBulidl 和 02 06 * * 1-5 wuliclientBulidl {账号} {密码} $(uci get network.wan.ifname) ,提交(这里也可以不用添加,wuliclient会不断尝试认证,但为了保证稳定,在周一至周五的早上6点会将wuliclient重启)
4. 至此,路由器已接入校园网,可以愉快使用了。

四、其他

  • 过程出现问题的可以在评论区提出
  • OpenWrt还有各种奇奇怪怪的功能,自己摸索吧

发表回复

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