什么是 OpenClash
OpenClash 是一款运行在 OpenWrt 软路由系统上的 Clash 客户端插件(OpenWrt 软件包名:luci-app-openclash)。由 vernesong 维护,基于 MetaCubeX/mihomo 内核(原 Dreamacro/clash),提供完整的 LuCI 图形化管理界面,让软路由器直接变成全局代理网关。
一、环境要求
1.1 支持的 OpenWrt 版本
OpenClash 支持以下 OpenWrt 架构与版本:
| 架构 | 说明 |
|---|---|
| ramips (mt7621/mt7628) | 红米 AC2100、小米 R3G 等 MTK 方案路由 |
| rockchip (rk33xx) | Rock Pi S、NanoPi 等 Rockchip 方案 |
| x86 / x86_64 | 迷你主机、工控机安装 OpenWrt |
| mediatek/filogic (mt7981/mt7986) | 红米 AX6000、小米 BE6500 Pro 等新平台 |
| bcm4908 (BCM 有线 2.0G) | 网件 R8000P 等博通方案 |
| Qualcomm IPQ (ipq40xx/ipq60xx) | 小米 AX3600、AX5400 等高通方案 |
| lantiq (vrx358/xrx200) | FritzBox 等 Lantiq/Intel 方案 |
1.2 依赖软件包
安装前需确保以下依赖已安装(OpenClash 会自动检查并提示缺失项):
- luci、luci-base — LuCI 网页管理系统
- iptables — 防火墙规则
- dnsmasq-full — 完整版 DNS 转发
- coreutils、coreutils-nohup — 基础工具链
- bash、curl — 脚本与网络工具
- jsonfilter — JSON 解析
- ca-certificates — 证书校验
- ipset、ip-full — IP 集合与路由
- iptables-mod-tproxy — 透明代理支持
- kmod-tun — TUN/TAP 内核模块(TUN 模式必需)
- iptables-mod-extra — 额外防火墙模块
- luci-compat — LuCI ≤ 19.07 兼容层
- ip6tables-mod-nat — IPv6 NAT的支持
- kmod-inet-diag — 进程级网络诊断(用于 PROCESS-NAME 规则)
- kmod-nft-tproxy — Firewall4 透明代理支持
二、安装 OpenClash
方法一:在线安装(推荐)
如果路由器已连接外网且 LuCI 可访问:
在路由器终端或 SSH 执行:
- OpenWrt ≤ 22.03:
echo 'src/gz openclash https://dl.openclash.org/v892719/snapshots' >> /etc/opkg/customfeeds.conf - OpenWrt ≥ 23.05:
echo 'src/gz openclash https://dl.openclash.org/v892719/snapshots_24.10' >> /etc/opkg/customfeeds.conf - 同步源:
opkg update
opkg install luci-app-openclash- 安装内核:进入 LuCI → 服务 → OpenClash → 版本更新,选择对应内核版本下载
安装完成后刷新 LuCI 页面,在菜单栏找到 服务 → OpenClash 进入插件管理页面。
方法二:离线安装(IPK 文件)
如果路由器无法直接连接 GitHub,可在其他设备下载 IPK 后手动上传安装:
- 前往 Releases 页面下载对应架构的
luci-app-openclash_xxx.ipk。 - 将 IPK 文件上传至路由器的
/tmp目录(通过 SCP / WinSCP / 路由器自带文件管理)。 - SSH 执行
opkg install /tmp/luci-app-openclash_*.ipk。 - 内核需另外下载,解压后上传至
/etc/openclash/core/clash并赋予执行权限:chmod +x /etc/openclash/core/clash。
opkg remove luci-app-openclash 会自动备份配置文件到 /tmp 目录。除非路由器重启,重新安装时会还原你的配置。三、配置订阅与节点
3.1 添加配置文件订阅
在 OpenClash 页面,点击菜单栏的 「配置订阅」标签页。
点击底部的 添加按钮,填写以下信息:
- 配置名称:输入机场或配置的名称(如「MyAirport」)
- 订阅地址:粘贴机场提供的订阅链接(通常以
https://开头) - 自动更新订阅:开启后 OpenClash 会按设定的时间间隔自动拉取最新节点
- 排除节点/规则(可选):可根据关键词排除不需要的节点
点击 保存,然后点击 更新 按钮拉取最新配置。
在「配置管理」页面,从已下载的配置文件列表中勾选需要使用的配置,点击 启用。
3.2 启动代理
- 进入 「运行状态」 页面。
- 确认配置文件已启用,内核状态显示 运行中。
- 点击页面底部的 「启动 OpenClash」 按钮。
- 等待数秒,状态变为「运行中」即表示代理已生效。
四、代理模式与策略组
4.1 三种代理模式
OpenClash 支持 Clash 标准的三种运行模式,可在「运行状态」页面一键切换:
- Rule 模式(推荐):根据规则配置进行智能分流,国内站点直连、国外站点走代理。
- Global 模式:所有流量直接发往代理服务器,适合需要全局代理的场景。
- Direct 模式:所有流量直接连接目的地,不使用代理。
4.2 切换节点
在「运行状态」页面打开 Dashboard 控制面板(支持 yacd 和 zashboard 两种风格),在「代理」菜单的策略组中选择需要的节点:
- 自动选择:根据延迟自动选择最优节点
- 手动选择:点击策略组名称,从下拉列表选择具体节点
- 手动测速:在 Dashboard 中对所有节点批量测速,显示延迟和丢包率
五、内核管理
OpenClash 的代理能力由底层 Clash 内核提供,内核版本直接影响功能和稳定性。内核管理入口:服务 → OpenClash → 版本更新。
- Dev:开发分支,最新功能但不稳定
- Alpha:测试分支,较新但可能有问题
- Beta:稳定测试分支,推荐大多数用户使用
- Stable:稳定分支,最保守但最稳定
推荐普通用户选择 Beta 或 Stable 分支,仅在需要特定功能时才切换 Dev。
六、TUN 模式
TUN 模式通过在操作系统内核层创建虚拟网卡,实现 全系统透明代理,即使不支持代理配置的 App 也会自动走代理。这是国内用户解决「某些 App 不走代理」问题的关键功能。
- 在「运行状态」页面,找到 TUN 模式 开关。
- 确保内核版本支持 TUN 模式(需要
kmod-tun内核模块已加载)。 - 开启 TUN 模式后,OpenClash 会自动配置iptables规则接管所有流量。
- 在「通用设置」中可配置 TUN 模式的相关参数(如 TUN 设备名称、MTU、DNS 模式等)。
七、高级功能
7.1 规则配置
OpenClash 支持 Clash 完整的规则语法,可在「规则设置」中管理:
- RULE — 标准规则列表
- RULE-SET — 引用外部规则集文件
- RULE-PROVIDER — 远程规则集提供商(自动下载更新)
- SCRIPT — 基于 JavaScript 的脚本规则
- PROCESS-NAME — 基于 Linux 进程名的规则匹配(需
kmod-inet-diag)
7.2 DNS 配置
DNS 是 OpenClash 的关键设置之一,直接影响域名解析和分流准确性。在「DNS 设置」中可配置:
- 上游 DNS:支持多个 DNS 服务器,可指定不同国家的服务器
- DNS 模式:Redir-Host / Fake-IP / TUN 等不同模式
- 国内 DNS:用于解析国内域名
- DNS 缓存:减少重复查询
推荐使用 Fake-IP 模式(需要规则库配合),能更好地防止 DNS 污染。
7.3 防火墙模式
根据 OpenWrt 防火墙版本,OpenClash 支持两种模式:
- iptables:传统 OpenWrt 防火墙,兼容性最好
- nftables:OpenWrt 22.03+ 新防火墙,性能更好
7.4 控制面板(Dashboard)
OpenClash 内置两款 Clash 控制面板:
- yacd(Yet Another Clash Dashboard):轻量简洁,加载速度快
- zashboard:界面更现代,功能更丰富
可在「外网设置」中切换面板类型,或在「运行状态」中直接打开。
7.5 IP 黑白名单
OpenClash 支持 IP 黑白名单功能,在「防火墙设置」中添加需要绕过代理或强制走代理的 IP 段,适合精细化控制特定设备的网络行为。
7.6 版本更新
OpenClash 本身和内核都支持在线更新。在「版本更新」页面可以:
- 检查 OpenClash 插件版本更新
- 下载并切换 Clash/Mihomo 内核版本
- 查看各版本的更新日志
八、与 Mihomo 内核的关系
OpenClash 之前使用 Dreamacro 的 Clash 内核,现在已经迁移到 MetaCubeX/mihomo 内核。Mihomo 是 Clash 的社区维护分支,功能更丰富,协议支持更完整。OpenClash 的内核管理页面会同步 Mihomo 的最新开发分支版本。
九、常见问题(FAQ)
dl.openclash.org),不与 OpenWrt 官方源冲突。安装时 opkg 会自动处理依赖关系,不会覆盖官方包。DOMAIN-SUFFIX,lan,DIRECT 或将路由器 IP(如 192.168.1.1/24)加入 IP-CIDR 直连规则。/etc/openclash/core/clash。可自行编译内核或使用第三方编译的内核二进制。/etc/openclash/core/clash 后上传旧版本内核文件并赋予执行权限。