# 前言
事情起因是家里的小米路由器 4A 千兆版,一天到晚老是在断流,打个 LOL 时不时的就掉线。
上网一搜,全是骂这款路由器的。于是购置了新的路由器替换它。本着废物利用的想法,于是把它刷成 openwrt 软路由。
刷好后,发现这个不需要切网络就能科学上网的功能太特么的香了,于是把它并入到主网络中,把它当作主路由来用,新买的 TPLinkXDR3010 作 AP,发射 wifi 信号。用了一段时间,断流现象是没了,但问题是太垃了,overlay 才 3.2M,连个像样的插件都装不上。而且设备多点,直接负载拉满,开始卡顿。最终还是打算自己买硬件来刷一个 openwrt,最终我选择的是 J1900。
# 小米路由器 4A 千兆版装 openwrt
这里我路由器具体型号是:小米路由器 4A 千兆版
其实刷起来不难。主要是网上太多老教程混淆视听了,如果找不到正确的资料就比较麻烦。
老教程针对的小米固件版本普遍是 2.30 以下的,它们使用的 POC 其实是利用了 2.28 版本的漏洞,而现在的小米固件已经到 2.30 了。
我尝试过使用各种办法尝试降级固件,比如官方恢复救砖工具刷机,但始终无法降级。
就在我快放弃的时候,还是在恩山上找到了解决方法。
小米 R4A 千兆版新硬件 2.30.x 刷 openwrt 成功!!- 小米无线路由器以及小米无线相关的设备 - 恩山无线论坛 (right.com.cn)
# J1900 刷 openwrt
在购置之前,先明确自己的组网方案,我原本的方案是:J1900 刷的 openwrt 做主路由 + TPLink 硬路由有线中继做 AP
但我在购买的时候买到的是个单网口的,因此方案只能变更为:TPLink 硬路由做主路由 + openwrt 做旁路网关了。
(花了 240,我也不知道亏不亏 = =)
# 刷机准备
在刷之前,准备好一些材料:
①openwrt 固件(我用的是原始的,没各种奇奇怪怪的插件)
https://github.com/coolsnowwolf/lede/releases/
②然后就是看你想怎么刷固件进去了。
可从外部存储启动 | 不可从外部存储启动 | |
---|---|---|
没有内部存储 | 直接将固件写入存储设备 | (不存在这样的机器) |
内部存储可拆卸 | 拆下内部存储,直接将固件写入 | 拆下内部存储,直接将固件写入 |
内部存储不可拆卸 | 通过外部存储启动,再将固件写入内部存储 | 通过原厂系统刷入 factory 固件转换,或其它刷机方式 |
这里我用的是通过外部存储启动,再将固件写入内部存储的方式(我只有 M2 接口的读卡器,这个 mstata 接口的并没有)。
因此用到的工具如下:U 盘 PE 装机技巧系列(一):用 U 盘制作自己的 PE 工具箱 - 知乎 (zhihu.com)
最后只需要把固件和 physdiskwrite copy 到 U 盘的数据存放区就可以了。
③显示器(hdmi 或 vga 都可)、键鼠。
# 开始刷机
ok,接着就是连接电源,运行我们的主机了。这里我的主机没有电源开关,是通过短接来开机的。
很快,我就遇到了第一个问题。无论是 VGA 还是 hdmi,开机后,显示器都是无信号,去恩山发帖问了下,大佬给出了解决方案。
(就是这个坑爹的问题害我亏了 10R 买了根 vga 线)
后面断电,抠电池 + 重新插拔内存就成功了!插入 U 盘、键鼠开机。
(PS:我这块板子需要短接开关针脚开机。)
要听到很大一声的滴并且灯亮了才成功开机,如果没有滴一声只是单纯灯亮的话不是开机。
开机后按 F11 选择引导盘,选择 U 盘 PE 启动,成功进入我们的 U 盘 PE 系统。
先用桌面上的 DiskGenus 把物理硬盘分区清空。
再用 physdiskwrite 把固件写到硬盘上。
此时其实 openwrt 就已经装好了,但先别急着重启,因为默认的系统分区只有 400M,我们的硬盘有 30 多个 G,这样太浪费了。所以我们再次打开 DiskGenus 把空闲分区全分配给它。(没图,点两下的事)
此时重启机器,拔出 U 盘,就会自动选择 openwrt 系统了。
默认访问地址是 192.168.1.1.
# 主题修改 & 插件安装
这里其实就是对 openwrt 的一些个性化插件安装和配置了
# 单网口的板子连网
第一步就是连网,但我们是个单网口的主机,让它连网,我们就没法连 PC 直接访问它。
这怎么整呢?
这里有两个解决方案:
①修改其 Lan 网卡配置,让其和路由器直连。然后我们通过 wifi 访问它。
②它和 PC 直连,PC 通过网络共享把网络共享给这张网卡。
我这里用的是第二个方案:
PS:这个方法是一个网络运维大佬帮我实现的。他的操作我没看懂,他在没修改 Lan 口配置的情况下给 openwrt 又加了一个 ip 地址,反正不知道怎么的就成功了。我后面因为某种原因重刷了系统,大佬的配置没了。因此我只能通过修改 Lan 口 IP 来实现同样的功能。
打开网络控制面板,找到有网的网卡,然后设置共享,目标网络适配器为 openwrt 的那个。
此时,再次查看 ip,你会发现,以太网 2 的 ip 变了,我的是变成了 192.168.137.1/24。
记住 ip 地址段,把共享取消掉。访问 Openwrt,把 Lan 口地址的 ipv4 改成 192.168.137.2。
然后 dhcp 功能关掉,应用。
再次设置网络共享,此时我们访问 192.168.137.2 就能再次访问到 openwrt,并且它现在就有网了。
# 配置 opkg 自定义源下载自定义插件
接着我们找到一些大佬的自定义源,下载我们的 passwall 等师夷长技以制夷工具和 argon 主题。
在软件包配置中把 check_signature 删掉,同时在下面把大佬的自定义源给加上。
PS:下面两个选一个。我建议用第一个,第二个装插件的时候老是有点问题。
src/gz openwrt_kiddin9 https://op.dllkids.xyz/packages/x86_64/
src/gz openwrt_kiddin9 https://op.supes.top/packages/x86_64