在 iKuai 爱快软路由上原生运行 OpenWrt 软件包

在 iKuai 爱快软路由上原生运行 OpenWrt 软件包
kikock本教程整理自 奶昔论坛帖子,作者 nyarime(奶昔论坛管理员)。
原理:基于 Naixi 定制固件,在爱快 iKuai 的 ramdisk rootfs 上叠加 OpenWrt 的 musl 运行时,从而实现 opkg 包管理。
一、背景与原理
iKuai 爱快软路由原生不支持 OpenWrt 软件包安装,但通过 Naixi 定制固件,可以在系统的持久化目录 /etc/log/naixi/ 中叠加一套完整的 OpenWrt musl chroot 环境,从而实现:
- 原生运行
nano、htop、vim等 OpenWrt 软件包 - 通过标准
opkg安装任意 OpenWrt 包 - 重启后自动恢复所有已安装的软件(持久化机制)
二、前提条件
| 条件 | 说明 |
|---|---|
| 硬件 | x86_64 平台(爱快支持的软路由设备) |
| 原始固件 | 任意官方爱快 ISO,推荐先安装 3.7.x 版本 |
| Naixi 固件 | v69 定制版(见下方下载链接) |
| SSH 访问 | 需在系统设置中开启远程维护 |
三、快速上手
步骤 1:安装爱快原生固件
安装任意官方爱快 ISO,由于后续会升级,随便安装一个 3.7.x 版本即可。
步骤 2:刷入 Naixi 定制固件
下载并通过爱快 Web 界面升级固件:
| 属性 | 信息 |
|---|---|
| 版本 | Naixi v69 |
| MD5 | 3fd0997a81149c1e4949aaa5e8431f33 |
| 下载地址 | iKuai8_x64_3.7.19_Naixi_v69.bin |
步骤 3:开启 SSH 访问
登录爱快 Web 管理界面,前往:
1 | 系统设置 → 登录管理 → 远程访问 → 远程维护 |
开启后即可通过 SSH 连接到路由器。
步骤 4:初始化 Naixi 兼容环境
SSH 登录后,执行以下命令安装 Naixi 兼容包(OpenWrt musl 运行时):
1 | naixi install https://dl.naixi.net/ikuai-plugin/naixi-compat-x86_64.tar.gz |
该命令会自动下载并解压
naixi-compat-x86_64.tar.gz,完成 OpenWrt 运行时环境的初始化。
安装完成后,访问 LuCI Web 界面:
| 属性 | 说明 |
|---|---|
| 地址 | http://<路由器IP>:9090 |
| 密码 | 与爱快维护密码相同(SSH 密码亦相同) |
提示:LuCI 界面端口为 9090,而非标准的 80 端口,请注意区分。
四、系统目录结构
Naixi 固件在爱快的 ramdisk 系统上叠加了以下目录结构:
1 | iKuai rootfs (ramdisk,重启重置) |
关键设计:
/etc/log/naixi/目录在爱快系统中属于持久化分区,重启不会被清除,这是整个方案的核心。
库搜索路径(LD 路径顺序)
1 | /etc/log/naixi/openwrt-root/lib |
五、软件包管理
5.1 安装 OpenWrt 软件包
使用 opkg 安装时,需指定目标路径为 Naixi 的持久化目录:
1 | opkg --add-dest naixi:/etc/log/naixi/opkg-root install nano |
5.2 opkg 包装脚本(推荐)
为了简化每次都要输入 --add-dest 参数,可以创建一个包装脚本:
1 |
|
5.3 命令 Symlink 建立机制
每次启动时,/sbin/naixi_boot.sh 会自动将已安装包的命令链接到 /usr/bin/:
1 | for f in /etc/log/naixi/opkg-root/usr/bin/*; do |
这样保证重启后所有已安装命令立即可用。
六、进阶:Nyarc 固件逆向工程工具
Nyarc = Nyarime Advanced Reverse-engineering Console
下载地址:Nyarc Pro Beta
Nyarc 是配套的爱快固件逆向分析工具,支持固件检测、解密、修改和重打包。
6.1 固件检测
1 | # 检测固件类型 |
6.2 固件解密
1 | # 解密 rootfs(自动检测 fixed/dynamic key) |
已知加密密钥(固定密钥)
| 密钥 | 说明 |
|---|---|
77b1fa93742cb39d3383553e848a5291 |
Fixed Key(常见版本) |
9be61ec6f06181c3e68de54899c704bb |
Dynamic Key 示例 |
58c0343a82e1447e89f423e39095a090 |
备用密钥 |
ab25f5f19c125f7620d27906de49f256 |
备用密钥 |
6.3 解压 rootfs
1 | # 解密后得到 XZ 压缩的 ext2 镜像 |
6.4 修改 rootfs
解压挂载后可以直接修改 rootfs 内的文件,常见修改包括:
1 | # 1. 设置已知 SSH 密码(省去忘记密码的烦恼) |
6.5 重打包固件
1 | # 卸载 rootfs |
⚠️ 关键约束:XZ 压缩时必须使用
--check=crc32,这是爱快固件格式的硬性要求。
6.6 一键解包与构建(推荐方式)
一键解包
1 | nyarc --ikuai-unpack firmware.bin /tmp/ikuai/ |
一键重打包
1 | nyarc --ikuai-repack /tmp/ikuai/ output.bin |
分步操作(高级用法)
1 | # 1. 解密 rootfs |
6.7 安全扫描
1 | # 扫描 rootfs 中的安全问题 |
七、插件数据库(pmd)
爱快的插件管理使用加密的 pmd 数据库:
1 | 密钥: ikupdat-d~#- |
已知插件密钥
| 密钥 | 备注 |
|---|---|
354a738f7b2756a848f3b8de541ec57 |
插件密钥 A |
354a738f7b2756a848f3b8de541ec58 |
插件密钥 B |
70946f9965a3c140b28e36a82ed148b |
插件密钥 C |
jJ9FzkgwUm6bL3dG |
插件密钥 D |
challstr@holly~ |
插件密钥 E |
八、注意事项
重启重置问题:iKuai 的主 rootfs 是 ramdisk,每次重启会重置。Naixi 方案通过
/etc/log/naixi/持久化目录 + 启动恢复脚本解决此问题。XZ 压缩格式:重打包时必须使用
xz --check=crc32,否则爱快无法识别固件。命令冲突:symlink 机制不会覆盖爱快系统原有命令(
[ -e /usr/bin/$name ] && continue),安全性有保障。固件升级:升级爱快官方固件会覆盖 Naixi 定制内容,需重新刷入 Naixi 固件。
云控阻断:修改
client.sh屏蔽云控 IP 仅供学习研究,请在合规范围内使用。
九、参考资源
| 资源 | 链接 |
|---|---|
| 奶昔论坛原帖 | https://forum.naixi.net/thread-11395-1-1.html |
| 爱快历史固件 | https://lucienshui.github.io/ikuai-firmware/ |
| Naixi 固件下载 | https://dl.naixi.net/ikuai-naixi/ |
| Nyarc 工具下载 | https://dl.naixi.net/nyarc/pro-beta/ |
| 奶昔论坛 | https://forum.naixi.net/ |

