Rust 重铸路由:Nikki RS 与 clash-rs 的 OpenWrt 社区实践
剥离传统 Go 依赖,率先将 Rust 内存安全代理内核引入嵌入式路由系统
第一幕 · 嵌入式路由的内存瓶颈
第二幕 · 架构换血与 Rust 内核移植
2026 年 8 月 10 日,开发者 CHKayanami 开启了一场大刀阔斧的代码换血工程。他在社区成熟客户端 OpenWrt-nikki 的基础上正式建立独立分叉,提交了标志性的重构提交(Commit `fee274c`)。
他将原本与 Go Mihomo 绑定的编译流程全盘移除,精心重写了 `clash-rs/Makefile`,并针对嵌入式平台的特殊架构设计了动态二进制抓取与解包校验流程;同时全面改写 ucode 模板逻辑,使原本针对旧核心的配置转换管道能够精确生成符合 clash-rs 规范的运行时规则。
随后几天内,他连续精简交叉编译架构、剔除冗余依赖,并于 8 月 14 日推出了里程碑式的首个稳定版本 1.0.0,为 OpenWrt 玩家带来了首个开箱即用的 Rust 路由代理集成包。[3][4][5]
第三幕 · 特性补全与轻量演进
步入 1.0.x 阶段后,CHKayanami 紧跟路由玩家的使用反馈持续进化:快速引入了基于 mmdb、geosite 与 ASN 的 Geo 数据混入管理能力(Commit `d46b42c`),扩展了 TUN 虚拟网卡 TCP 代理支持,并增设开机自启选项。
2026 年 8 月 27 日,他进一步统合了 eBPF 分流配置与透明代理端口,并修复了架构构建中的共享库链接标记,正式发布了打磨成熟的 v1.0.5 版本。
Nikki RS 的成功落地,不仅验证了 Rust 网络引擎在资源受限嵌入式环境下的极致效能与极低静态常驻,更为 OpenWrt 社区探索去 Go 化、迈向更高稳定性边界树立了生动范例。[6][7][8]