构建自己的 OpenWrt 路由固件

/ 0评 / 0

最近给宿舍和家里都换了中国移动的 RAX3000M 路由器,更换的原因是,手头的手机、电脑、平板都支持 Wi-Fi 6 了,而我的旧路由还是 Wi-Fi 5 的;同时,最近热门的这款 RAX3000M 既支持 Wi-Fi 6,还有一个少见的 USB 接口(我正好需要通过手机共享网络给路由器),最重要的是,它的价格只需要百来块,所以我前后给宿舍和家中都更换了这款路由器。

开始刷机

到手后,原厂的中国移动的固件比较简陋,而且据说对网络也存在限制,因此我迅速按照大佬们的教程,开启 SSH 并进行刷机(更换固件)
操作方法可以参考这篇帖子,核心就是解压缩配置文件,删除 root 用户密码以及开启 SSH,只不过较新版本的这款路由的配置文件加了密码,因此需要使用下面两条命令解压缩和重新打包

// 解压缩
openssl aes-256-cbc -d -pbkdf2 -k $CmDc#RaX30O0M@\!$ -in cfg_export_config_file.conf -out - | tar -zxvf -
// 重新打包
tar -zcvf - etc | openssl aes-256-cbc -pbkdf2 -k $CmDc#RaX30O0M@\!$ -out cfg_export_config_file_new.conf

选择固件

刷入 uboot 之后就需要刷入新的固件了,这里我首先用了恩山这位坛友定制的固件,顺利刷入之后就能通过 192.168.100.1 以及 passwd 进入后台了。
此前我没有使用过原生 OpenWrt 以及 ImmortalWrt,所以刚开始为了设置 Wi-Fi 以及连接手机共享网络,折腾了很久,好在这个固件还是能够满足我的这些需求。
只不过这个固件的版本号里面带有坛友的 QQ 号,想象一下,每次进入路由器后台,第一眼看到的是别人的 QQ 号,多少有点煞风景,因此我准备定制自己的固件

定制固件

了解一番之后才知道,原来现在已经有 openwrt.ai 这样的在线自助构建固件的工具网站了,只不过该网站在未捐助的情况下能够选择的插件数比较少,且会加上一行该构建网站的广告按钮。
我尝试构建并刷入后,说实话,这个工具网站提供的功能已经非常丰富了,而且上面那位恩山坛友构建的固件的来源也是这里,只不过他是捐助用户,因此可以自定义版本号等细节信息。如果没有特别多的插件需求,其实用这个定制自己的 OpenWrt 固件足够了
OpenWrt.ai 在线构建固件网站
当然,除了该定制固件的方法外,还有相对传统一点的,使用 ImageBuilder 构建自己的固件的方法,详细可参考 官方教程
我是在恩山找教程的时候找到了某位坛友分享的教程,他将内容保存为了 html 网页进行分享,这里实在不好意思,我找不到原帖子了,只能将他的 源文件(提取码1234) 贴上来,供大家参考。
文章中有些地方没有说明白,比如需要首先下载需要的源外插件到 packages 目录中,这里可以配合上述的 OpenWrt.ai 中的插件中文名,以选择自己需要的插件并保存至 packages 目录。
除此之外,配置文件我没有用上,所以在最后的那条最长的构建固件的命令中,不需要加最后的“FILES='files'”部分。
构建完成后,即可在“bin/targets/mediatek/filogic/”目录下获得两个 .bin 后缀的文件,这就是我们需要的固件了,刷入即可。

使用心得

1、使用 OpenWrt.ai 构建的固件能够正常设置 160MHz 的 Wi-Fi,说人话就是,在支持的设备上,连上 Wi-Fi 可以看到协商的最高速度能达到 2400Mbps;而使用上述 ImageBuilder 构建的固件仅能正常使用 80MHz,协商速度最高为 1200Mbps.

2、网络设置项都在“接口”项目中,默认应该是支持 DHCP 的,如果需要使用拨号上网或者 USB 共享网络,可以直接新建一个新的接口,选择 PPPoE 或者 usb0,防火墙规则选择 wan,不开启 DHCP,保存并应用即可生效。

3、如果你有公网 IPv6 地址,可尝试使用 DDNS 做 IP 解析,然后修改防火墙设置开放端口。(话说回来我还没研究明白,等啥时候折腾好了再单独写一篇文章吧)

4、如果你没有公网 IP,可以安装 frpc 插件进行内网穿透。luci-app-frpc 可以替代几乎所有 frp 服务网站自己的客户端,因为他们的客户端也基本都是魔改的。所以推荐你在创建好 frp 隧道后,直接寻找隧道的配置文件信息,然后对着 luci-app-frpc的设置项进行填写即可。只不过,需要注意,下图框出的这个“服务备注名”必须按照 frp 服务网站的配置文件中的隧道备注名(由“[xxx]”标注,那么填写xxx),否则你的隧道无法连上。
frpc 重要设置项目

写在最后

OpenWrt 是一个好东西,我仍记得第一次了解到它,是在小米路由 MiWiFi 上见到的—— MiWiFi 是基于 OpenWrt 深度定制的 ROM. 也确实,之前在用小米路由的时候,虽然偶尔会有一些小 bug,但 MiWiFi 仍然是一个简洁、易用的好固件。
所以,如果你有一颗愿意折腾的心,不妨试试这个可以高度自定义的固件。

声明:本文使用 知识共享署名 4.0 国际许可协议 [CC BY-NC-SA 4.0] 进行授权

发表回复

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