因为我手里需要联网的设备太多,但是校园网只允许同时 2 个设备在线,所以入坑了 openwrt,为了一些插件和校园网的需求。新购入了红米 AC2100,使用体验真香。
首先声明,现在普通路由器也可以完成我校的校园网多设备使用,我这么做是为了实现校园网自动登录和使用一些插件的需要
买来的路由器连上校园网的网线之后,一般会自动弹出验证窗口,在连接路由器的任意一台设备上登陆校园网账号即可让该路由器下的所有设备上网,也只会占用一个连接数
但使用网页验证可能具有时效性,晚上回到寝室又得重新登陆,我需要让校园网的认证无感知。
初探 AC2100 刷 openwrt
本文主要记录了使用的插件和刷机的过程,想看感兴趣可以点击跳转。
背景
看着一些群友陆陆续续上了软路由,一些插件和脚本还是挺让人眼馋,想想也算刚需了吧。去年在供需群购入了一个大佬帮忙刷好的斐讯 k2 路由器,为了解决校园网最多只能连接两个设备数的问题。
这次购入红米 AC2100 后自己刷入 openwrt,刷入的固件中有更多自带的插件,淘汰掉了之前的斐讯 k2,还购入了一个小米 WiFi 智能插座,来解决经常去实验室前忘记关掉路由器的问题(因为路由器需要占用一个连接数)。于是我的校园网使用体验变成了这样。
在外出之后通过手机关闭 WiFi 智能插座来达到关闭路由器的目的(减少校园网设备数占用),回到寝室按一下开关打开路由器等待加载完成各个设备即可立即使用。
使用体验
为啥要刷路由器,当然是有需求的,由于主要使用三个插件
- 锐捷插件(支持校园网多设备)
- 网易云插件(解锁灰色歌曲)
- 广告屏蔽大师 Plus+(屏蔽广告)
网易云插件和广告屏蔽插件都是大佬编译的固件里面自带的,就不过多赘述了。
锐捷插件直接找了一个 github 编译好的 mentohust 执行程序,具体使用方法在刷机流程的 mentohust 部分介绍。
在使用过程中也有一些缺点:
- 开机时间略长。大概需要 1 分钟左右,感觉可能是插件比较多,第一次加载时间有点长。
- 红米 AC2100 颜值相对较低,6 根天线展开有种盘根错节之感,相比小米 AC2100 有些差距,两者固件挺多通用,硬件配置基本一致(可能有少许差异),小米颜值价格更高,红米在性价比略胜一筹。
- 网易云批量下载歌曲会有问题(更新固件后来好像解决了),可以在线播放,试听缓存完成下载的勾勾就会亮,也可以离线播放了,不过有时候加载时间可能稍长(几秒到十几秒)。
下面是小米官网价格,一般领券还能便宜 10 元。
刷机流程
由于有“丰富”的重装系统和安卓刷机的经验,在给路由器刷机的时候也是轻车熟路(当然感谢大佬们无偿提供编译好的固件和详细的教程帖子,照着做就完事),基本没有啥坑点。如果有坑,大佬帖子里面也写得很详细,主要参考 日更 自编译 Lean 小米/红米 AC2100-Openwrt 固件-160mhz-插件全-出国-去广告-多拨附教程,简单记录一下过程和帖子可能没有说得太明白的地方,具体流程还请看大佬写的帖子。
我使用的是 MacBook Pro,开虚拟机后将扩展坞的网线连入 Windows 虚拟机即可。
开启 Telnet 与刷入 breed
这一步的作用是打开路由器的 Telnet 功能,为后续可以刷入固件做准备。首先在网络链接中把自动获取 ip 地址,改成手动并且设置为 192.168.31.177
,然后设置子网掩码和网关。
参考 [AC2100(RM2100)] 红米/小米 AC2100 刷入 r3g breed 以及恢复官方 boot 详细教程(更新查坏块方法、pb-boot)。
刷入 openwrt
在前面刷写好 breed 之后,使用电脑连接路由器的一个 LAN 口,选择自动分配 ip 地址。
浏览器输入 192.168.1.1
进入 breed 后台,增加环境变量 xiaomi.r3g.bootfw
,值为 2
。
其他步骤照着帖子来就行,没啥坑,刷完之后就可以成功进入 openwrt 的界面
参考 小米/红米 AC2100 固件。
mentohust
在刷完了 openwrt 后,路由器直链网线,在连接路由器的一个设备上打开网页会弹出登陆界面,登陆之后所有连接路由器的设备均可使用。但是这样会有一个问题,如果路由器关闭时间过长,每次都需要重新登陆,体验较为糟糕。
我的目的是想只输入一次账号密码,下一次打开路由器直接连接即可上网,而且我使用了智能 WiFi 插座,可以随时随地远程地关掉路由器,不会有多占设备数的烦恼。
简单参考了一下 锐捷(Ruijie)——OpenWrt 安装 MentoHUST(校园网锐捷(Ruijie)认证路由限制解决方案),下载 mentohust 中的可执行程序,通过 openwrt 上传文件到 /tmp/upload
,执行之后放到 /etc/init.d
1 | $ cd /tmp/upload |
云音乐插件
在固件中集成了两个版本的云音乐插件,Golang 版本和 nodejs 版本,但是因为没有 nodejs 环境(路由器 ROM 太小,像电视盒子这种可以自行安装 nodejs 环境),所以只能使用 golang 版本,golang 版本集成的项目是 https://github.com/cnsilvan/UnblockNeteaseMusic。
其程序执行文件在 /usr/bin/UnblockNeteaseMusic
,我尝试了一下只替换可执行文件到新版本,不过偶尔还是有一些 bug,有时候解析其他音源的歌曲不太稳定,体验有待改进。
2020.11.2 更新之后比之前更稳定了
1 | // 登陆到路由器,也可以在 系统 -> tty 终端中打开 |
开机启动
在使用的过程中发现有时候插件并不会开机启动,为了开机启动,在管理后台选择,系统 -> 启动项。在最下面的脚本中写入下面的内容即可。
1 | # Put your custom commands here that should be executed once |
注:如果没有 mentohust 脚本,插件只要设置了启动,那么在下次路由器启动时会自动打开。
系统版本
刷完之后想知道一下系统版本,通过下面的命令看到 OPENWRT_ARCH="mipsel_24kc"
,查询之后这是一个 32 位 mipsel 架构的系统。
我们可以在 go 里面写了一个 Hello World
交叉编译之后直接扔到路由器就能跑,非常容易,go 语言太强大了。
写完代码后,使用交叉编译的命令使用的是 $ GOOS=linux GOARCH=mipsle go build main.go
。
1 | root@OpenWrt:/# uname -a |
系统更新
在运行了几个月之后,可能你想要更新一下路由器的系统,按照一下步骤即可
- 断开电源
- 按住复位键不放,插上电源,等黄灯闪烁之后,变成白灯闪烁时放开复位键。
- 此时进入 breed 控制台,刷入临时固件
- 按照以前的方式刷入新的
openwrt-ramips-mt7621-xiaomi_mi-router-ac2100-squashfs-sysupgrade.bin
资料下载
首先推荐去参考资料中下载,如果链接不可用,或者不方便下载,可以去我的资源页面进行下载。
后记更新
在使用了一段时间之后,也安利了几个朋友买了小米 AC2100(我真的是安利小能手)。朋友刷到了更好用的固件,我后续也更新了下面这个帖子中的固件,最方便的点是可以直接在系统中更新系统版本和插件版本,不用重新刷新版固件。
更新方法如系统更新部分一样,先刷入临时固件,再刷新的系统固件即可。
1 | 【0310更新】红米&小米AC2100多功能|精简|AP版下载 |
参考资料
- 日更 自编译 Lean 小米/红米 AC2100-Openwrt 固件-160mhz-插件全-出国-去广告-多拨附教程
- [AC2100(RM2100)] 红米/小米 AC2100 刷入 r3g breed 以及恢复官方 boot 详细教程(更新查坏块方法、pb-boot)
- [AC2100(RM2100)] [2020-08-29 更新] 教程:小米和红米 AC2100 用 breed 刷 openwrt
- 小米/红米 AC2100 固件
- 锐捷(Ruijie)——OpenWrt 安装 MentoHUST(校园网锐捷(Ruijie)认证路由限制解决方案)
- mentohust
如果这篇文章有侵犯到您的权益,请尽快与我联系,cugxuan@gmail.com