FEBIRDY BLOG
个人传送门 ↗
瞎折腾系列 更新于 2026-09-18

闲鱼淘到一台 RAX3000M 算力版:用 OpenWrt 和 OpenClash 折腾旁路由

很多年以前,我就想弄一台真正适合折腾 OpenWrt 的路由器。

之前用过几台小米路由器,能开 SSH和root权限,也能照着网上的教程装一些插件,不过定制空间始终有限。真想完整刷机继续折腾时,又发现那两台老机器的配置偏低,内存只有 256 MB,继续投入精力的意义不大。甚至还有一台古老的小米路由器青春版mini,128MB的内存,还给它刷成了Padavan老毛子系统,当时的梯子普遍还在使用shadowsocks协议,也算是终于体会到了路由器翻墙。不过就是很不稳定,毕竟内存太小,而且网速也容易卡。

后来网上查了查发现,其实没必要非要盯着常见的消费级路由器。闲鱼上还有不少运营商定制或者相对小众的型号,价格不高,硬件配置还挺高。

于是我在闲鱼花了 190 元,买了一台中国移动 RAX3000M 算力版。

190 元买到的“离谱配置”

这台算力版有 512 MB 内存和 64 GB 存储。放在普通家用路由器上,这个存储空间多少有点离谱,不过这个空间很多人会用来跑Docker镜像,不过,512运行内存我还真不指望跑多少个docker服务,能给我把OpenClash跑稳当了我就知足了。

至于刷机、救砖各种操作,之前的各种小米路由器上已经被我折腾的差不多了,已经不想体验了,珍惜宝贵的时间搞点新鲜的吧。我甚至回忆起来我第一次把TP-Link路由器玩成板砖还是在2010年😂。扯远了,不回忆了。

所以,2026 年 5 月 29 日,路由器到手时,商家已经刷好了 OpenWrt,并不是我自己从原厂系统开始刷机。所以这篇文章没有记录 RAX3000M 的拆机、救砖和刷机步骤,主要记录我拿到设备以后怎样把它配置成旁路由,以及后来怎样折腾 OpenClash。

OpenWrt 的第一印象就是:灵活是真灵活,界面简陋也是真简陋。

和面向普通消费者的路由器相比,它把大量底层选项直接摆在了界面上。有些页面看起来灰扑扑的,好多参数不去查资料都不知道是干什么的。不过反过来看,这也正是 OpenWrt 好玩的地方——愿意研究的话,几乎每一层都能自己控制,190块钱还要啥自行车呢。

我的梯子服务(截止到2026)

我的梯子是基于Xray的docker镜像自己搭建的,使用Vless协议,针对OpenAI、Gemini这些难伺候的大爷,在服务端配置通过CloudFlare代理发送请求,基本可以满足我的日常所有需求了。云服务使用了国内云服务的海外节点,平时用途主要还是查资料,使用海外服务居多,咱遵纪守法的好公民,身正不怕影子斜,随便审查就好了。基于这个基础上,比之前我用谷歌云或者亚马逊啥的要稳定太多了,自己一个人用的话,几乎从来不会挂掉。👍

PassWall、PassWall2、OpenClash怎么选

一开始我在 OpenClash 和 PassWall 之间犹豫过,最后还是选了 OpenClash。

PassWall是基于防火墙规则的,优点是效率高,性能好,资源占用少一些,不过缺点是配置起来不是很好复用现有的配置,甚至有些DNS相关的分流似乎不太好实现。试用了一阵子PassWall,直接把我本机电脑V2RayN的分流规则转换了一下配上了,倒也可以用,但是多节点分流的话,配置起来总感觉不如clash更清晰,总是需要一来UI界面,也不好备份。其实大部分情况下,确实我只需要一个节点,但是保不齐需要临时搞点事情,换个地区啥的。

PassWall2是相同的作者把PassWall重构了,采用了sniff+fakedns的机制,在很多方面都针对老版有不少提升,但是吧,人们可能还是懒人居多,很多要么就是固守老版本,要么就是用Clash,所以大部分网上的评论都说是PassWall2不稳定,不过我用了一下,没啥不稳定的,效果还是不错的。不过考虑到我的clash配置文件之前也有配置好了的,所以,最终还是走了OpenClash路线,把PassWall2作为了备用配置。而且OpenClash 对域名分流、策略组和 DNS 的控制比较直观,配置文件比较透明。后面遇到某些服务需要单独指定代理方向时,可以直接增加规则,这样我Clash系列的相关配置还可以利用起来。

把自己的配置做成订阅

我的代理配置由自己维护,在一台老macmini设备上运行了一个简单的 Python 服务,对外提供经过访问控制的配置下载地址,OpenClash的订阅管理直接配置这个地址,就可以从这个地址拉取最新配置。

整体链路大概是:

1
2
3
4
5
6
7
本地维护配置
↓
内网 Python 服务提供下载接口
↓
OpenClash 按订阅地址更新
↓
路由器重新加载配置

这样用起来就像维护了一份自己的 Clash 订阅。节点和分流规则只需要在源配置中修改,路由器不必重复手工同步。而配置文件我放在了我的ObsidianVault中,从而实现了多设备随时修改,改完之后就自动同步在订阅源了,路由器可以直接拉取,这样修改配置效率直接起飞。

DNS 不写进订阅配置文件,交给 OpenClash 覆写

这份配置有时还会放到手机等客户端使用,而不同设备对 DNS 的需求并不完全相同。因此,我没有把路由器专用的 DNS 配置直接写死在订阅里,而是放进 OpenClash 的覆写设置。

好处是节点和分流规则仍然可以共用,路由器上的 DNS、Fake-IP 和局域网相关设置则单独维护。订阅更新以后,OpenClash 会继续应用本机覆写。

顺便搞明白了 Fake-IP 是什么

这次配置 DNS 时,我才认真研究了 Fake-IP。

简单来说,在 Fake-IP 模式下,客户端查询域名时,Clash/Mihomo 代理内核会先返回一个保留网段中的“假 IP”,记住这个假 IP 对应的原始域名。后续连接到这个地址时,内核再根据映射关系恢复域名,完成分流和真正的连接。

它的重点是尽量保留域名信息,让代理内核可以更早接管请求。这样既能减少部分 DNS 等待,也有利于按照域名规则分流。不过有些程序会自己检查 DNS 结果,或者不适应假 IP。这种情况下,就需要把对应域名加入 fake-ip-filter,让它继续返回真实解析结果。

下面是我配置的一部分filter黑名单(下面不是yaml文件的写法,而是写在OpenClash的web配置界面中的):

1
2
3
4
5
6
7
8
9
10
11
challenges.cloudflare.com
*.cloudflare.com
*.deepseek.com
wsgh.club
*.wsgh.club
febirdy.com
*.febirdy.com

huggingface.co
us.aws.cdn.hf.co
*.cdn.hf.co

用覆写模块脚本自动整理 AI 专用节点

后来我又给朋友配置了一套 OpenClash,才发现它还可以在订阅更新时执行自定义覆写脚本。

朋友使用的是机场订阅,里面有很多节点,但没有按需求提供“美国优选”之类的策略组。手动选择单个节点虽然能用,却失去了自动测速和故障切换的便利。

要注意,这里使用的覆写模块,不是覆写配置那个标签页,而是运行状态页中的覆写模块入口中,我这也是头一次用这个功能,如有更好的用法,也可以拿出来分享哈。

根据界面的示例要求,脚本应该是要放在路由器的 OpenClash 自定义目录中:

1
/etc/openclash/custom/openclash_custom_overwrite.sh

OpenClash 会把当前配置文件路径作为 $1 传给脚本。这个脚本外层是 Shell,内部嵌了一段 Ruby/YAML 逻辑来读取和修改配置;如果 OpenClash 环境里有自带的 YAML 扩展,就优先使用,否则回退到标准 Ruby YAML。之所以把两种脚本放在一起,是因为 Shell 适合接收配置路径、判断白名单和记录日志,直接用 Shell 处理这种嵌套 YAML 不太方便,也容易改坏格式,Ruby 则负责真正的 YAML 读写。为了避免误处理其他订阅,还给它加了配置文件名白名单:只有文件名匹配时才继续执行,白名单留空或写入 all 才表示处理全部配置。

脚本只处理配置顶层的 proxies: 和 proxy-groups: 数组。如果订阅采用纯 proxy-providers: 方式、没有直接展开节点,脚本会记录日志并跳过,而不是强行改写。

节点筛选并不是简单地把所有美国节点都放进去。为了给美国的ChatGPT、Gemini之类的“大爷”们提供最优质的节点,我自定义的AI 专用组要求节点名称同时包含“美国”和“ai专用”;普通 DIY 组则根据地区关键词筛选,并排除 AI 专用、游戏、BT 下载、2 倍率和 10 倍率等节点。这样可以尽量避免把用途特殊或倍率较高的节点混入日常测速组。

感觉这个功能还挺好的,OpenClash的灵活度感觉又提高了,不会受限于机场的不完善配置了。

在家里上网手机和电脑不用开代理软件了,省内存省电不亦乐乎?

配置稳定以后,家里的使用方式变简单了。

手机和其他设备接入家庭网络后,不再需要一直运行各自的代理客户端。这样既少了一层配置,也能减少手机上的常驻进程、耗电和内存占用。需要调整域名规则或节点策略时,只改旁路由这一处即可。

当然,把这些能力集中到旁路由,也意味着旁路由和配置服务出了问题,会同时影响多台设备。因此配置修改前最好保留上一份可用版本,升级 OpenClash 或更新订阅后也要简单检查 DNS、常用网站和 AI 服务是否正常。

总体来说,这台 190 元的 RAX3000M 算力版算是买爽了。