让路由器接入校园网
校园网(一种反人类的东西),每次上网都要认证,虽然可以设置开机自动认证,但对于常年不关机只休眠的人很不友好,而且拥有两台电脑时联网就很难受,想联网主机就必须开着,主板开热点还只支持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重启)
四、其他
- 过程出现问题的可以在评论区提出
- OpenWrt还有各种奇奇怪怪的功能,自己摸索吧
近期评论