路由器代理教程:OpenClash 配置与全屋设备共用
在 OpenWrt 路由器上安装配置 OpenClash,让家里所有设备共用一个订阅,包含安装、导入订阅、分流设置与常见问题排查。
在路由器上做代理的好处和代价
好处很实际:
- 家里所有设备自动走代理,包括电视、游戏机、智能音箱这些装不了客户端的设备。
- 只占用机场的一个设备连接数。
- 手机电脑不用各自装客户端,连上 Wi-Fi 就能用。
代价也要说清楚:
- 需要一台支持 OpenWrt 的路由器,普通家用路由器多数不支持。
- 配置比装个客户端复杂得多,出问题排查也更麻烦。
- 路由器性能不足时会成为瓶颈,千兆宽带可能跑不满。
- 协议兼容性是个坎。路由器上的插件版本往往比手机客户端旧,对 VLESS、Hysteria2 等较新协议的支持可能不完整。
最后这一点在选机场时就要考虑。如果你确定要走路由器方案,优先选提供 Shadowsocks 或 VMess 的机场,兼容性最稳妥。各家的协议支持情况见 参数对比表。
前置条件
- 一台刷了 OpenWrt 的路由器,建议内存 256MB 以上。
- 路由器能正常上网。
- 知道路由器的管理地址,通常是
192.168.1.1。
如果你的路由器还没刷 OpenWrt,这一步本身就有风险,刷坏了可能变砖。不熟悉的话建议买一台已经预装好的,或者用旧电脑装软路由。
第一步:安装 OpenClash
OpenClash 不在 OpenWrt 的默认软件源里,需要手动安装。
- 到 OpenClash 的 GitHub 发布页下载对应版本的 ipk 文件。
- 登录路由器管理后台,进入「系统 → 软件包」。
- 点「上传软件包」,选择刚下载的 ipk 文件安装。
- 安装可能提示缺少依赖,按提示先装依赖再装 OpenClash。
装完后在「服务」菜单下会出现 OpenClash 入口。
如果你的 OpenWrt 固件本身带了 OpenClash,跳过这一步。
第二步:安装内核
OpenClash 需要内核才能运行。进入 OpenClash 页面,切到「版本更新」标签:
- 选择内核类型,推荐 Meta 内核(也叫 Mihomo),对新协议支持最好。
- 点击下载。如果下载失败,通常是路由器还没法访问 GitHub,需要手动下载内核文件再上传。
内核安装完成后,页面上方会显示内核版本号。
第三步:导入订阅
- 进入「配置订阅」标签。
- 点「添加」,在「订阅地址」填入机场的 Clash 订阅链接。
- 配置文件名随便填。
- 勾选「自动更新」,间隔建议设为一天。
- 点「保存配置」,再点「立即更新配置」。
等待下载完成。如果失败,先确认路由器本身能访问机场域名。
第四步:基础设置并启动
回到「全局设置」标签:
- 运行模式:选「Fake-IP(增强模式)」,兼容性和性能都比较好。
- 启动开关:打开。
点「保存配置」,然后回到插件设置页面点「启动」。
首次启动可能需要一两分钟。启动成功后,页面会显示运行状态为绿色。
第五步:验证
在连接这台路由器的任意设备上:
- 打开一个境外网站,看能不能访问。
- 打开一个国内网站,确认没有走代理(速度正常)。
- 访问路由器地址加
:9090/ui,可以打开控制面板查看节点和连接情况。
分流规则
OpenClash 默认使用机场订阅里自带的规则,多数机场的规则已经够用。
如果需要自定义,常见需求有几个:
让某台设备不走代理:在「局域网访问控制」里,把该设备的 IP 加入绕过列表。适合家里的 NAS、打印机这类设备。
让某个域名强制直连:在「规则附加」里添加规则,格式类似:
DOMAIN-SUFFIX,example.com,DIRECT
让某个域名强制走代理:把上面的 DIRECT 改成代理组的名字。
修改规则后要重启 OpenClash 才生效。
常见问题
启动失败
看日志。OpenClash 页面有「日志」标签,里面会写明失败原因。最常见的是内核没装、配置文件解析失败、端口被占用。
配置文件解析失败
多半是机场订阅里用了 OpenClash 当前内核不支持的协议或字段。换 Meta 内核试试,还不行就说明这家机场的配置和路由器不兼容,只能换机场或者换客户端。
能上网但速度很慢
先看路由器的 CPU 占用。如果跑满了,说明路由器性能不够,代理加解密是很吃 CPU 的。这种情况只能换更强的硬件,或者改用手机电脑上的客户端。
部分设备连不上网
检查「局域网访问控制」里有没有误把设备加入黑名单。另外某些设备的 DNS 设置可能有冲突,尝试在 OpenClash 里开启「劫持 DNS」。
重启路由器后代理失效
在 OpenClash 设置里确认开启了「开机自启」。
订阅更新后节点没变
更新配置后需要重启 OpenClash 才会应用新配置。
更简单的替代方案
如果 OpenClash 对你来说太复杂,有这些选择:
- 在每台设备上装客户端。麻烦但可控,出问题好排查。各平台客户端见 下载页。
- 用支持代理的成品路由器。省事但通常更贵,且可定制性差。
- 用一台旧电脑做旁路由。比刷路由器安全,弄坏了不影响主路由。
下一步
路由器方案对机场的协议兼容性要求高,选之前先看 协议说明,确认目标机场提供的协议你的插件能支持。 各家机场的协议和设备数限制见 参数对比表。
src/consts.ts的GISCUS中填入 giscus.app 生成的配置开启评论。