← 返回 WUXX Network Acceleration - 无限制畅享全球网络加速,获取与全球数百内容供应商互联的网 首页

OpenWrt Mihomo 订阅怎么配置?从导入到生效的完整步骤

更新于 2026-10-23 · wuxx.online

简答:OpenWrt 配置 Mihomo 订阅,建议先确认路由器架构与网络角色,再使用 LuCI 插件导入 Clash/Mihomo 订阅,完成配置校验后启用透明代理,最后按日志、DNS、网关和节点连通性逐项验证。

定义:OpenWrt Mihomo 订阅配置,是在路由器上运行 Mihomo 核心,并通过订阅链接获取代理节点与策略配置,再将局域网流量交给透明代理处理。

先选配置路线:新手优先使用 LuCI 插件

如果你的目标是“在 OpenWrt 上导入一条订阅并让局域网设备使用”,不建议一开始同时安装多个代理插件。本文主线采用 Nikki 这类 OpenWrt LuCI 管理方案:它负责安装 Mihomo、下载订阅、检查配置并生成透明代理相关规则。Nikki 项目公开说明的前提包括 OpenWrt 24.10 或更高版本、Linux Kernel 5.13 或更高版本以及 firewall4,实际能否安装仍应以你的固件架构和项目发布包为准。可先查看其官方仓库说明。

OpenWrt 上常见 Mihomo 配置路线
路线适合谁主要优点注意事项
Nikki + LuCI希望通过网页导入订阅的新手订阅、配置文件和服务状态集中管理需要匹配 OpenWrt 版本、架构和 firewall4
OpenClash + Mihomo已经使用 OpenClash 的用户支持订阅管理、配置切换和多种透明代理模式菜单和字段由 OpenClash 管理,不能与另一套透明代理插件同时接管
原生 Mihomo熟悉 SSH、YAML 和防火墙规则的用户配置自由,便于自行维护需要自行处理服务、自启动、订阅更新和透明代理规则

OpenClash 的项目说明将其定义为运行在 OpenWrt 上、用于管理 Mihomo 内核的 LuCI 插件,并提供订阅导入和透明代理相关功能;如果你已经安装 OpenClash,优先沿用原有方案,不要为了本文重复安装 Nikki。参见OpenClash 官方仓库说明。

选择判定:只有一套代理插件、希望网页操作,选 LuCI 插件路线;已经有稳定的 OpenClash 配置,继续使用 OpenClash;需要自己写配置和防火墙规则,才考虑原生部署。

配置前检查:订阅链接、架构和网络角色

  1. 确认 OpenWrt 可以正常联网。先在 LuCI 中确认 WAN 已取得地址,或通过 SSH 执行以下命令。预期能看到 HTTP 响应头;如果路由器本身不能联网,订阅下载和核心安装都会失败。
    curl -I --connect-timeout 10 https://example.com
    判定标准:命令返回 HTTP 响应,而不是 DNS 解析失败、连接超时或无路由。
  2. 确认 CPU 架构。执行 ubus call system board,记录 board_name、release 和架构信息;下载插件或核心时必须选择匹配架构的文件。OpenWrt 官方建议安装前确认设备的精确型号和固件兼容性,可参考OpenWrt Quick Start Guide。
  3. 确认订阅链接是完整的。从订阅服务后台复制“Clash”或“Mihomo”格式的订阅链接,不要手动删掉查询参数。订阅链接通常带有 Token,建议只粘贴到路由器后台的订阅字段,不要发到群聊、截图或公开 Issue;如果已经泄露,应在服务后台重新生成或撤销。
  4. 确认网络角色。主路由模式下,OpenWrt 直接负责拨号、DHCP 或默认网关,局域网设备通常无需单独改网关。旁路由模式下,主路由仍负责拨号和 DHCP,客户端需要把默认网关或 DNS 指向 OpenWrt;若 DHCP 仍由主路由发放,必须避免两个设备同时向客户端下发冲突的网关。
主路由与旁路由的配置判定
项目主路由旁路由
默认网关通常指向 OpenWrt需要让目标客户端指向 OpenWrt
DHCP通常由 OpenWrt 提供通常继续由主路由提供,但需确认下发的网关和 DNS
故障风险代理配置错误可能影响整个家庭网络只影响指向旁路由的设备,便于回滚
推荐起步方式先备份网络配置,再启用代理先只让一台测试设备使用旁路由

通过 LuCI 导入 Mihomo 订阅并启用服务

  1. 安装与固件匹配的插件包。可以从项目发布页下载对应 OpenWrt 版本和架构的安装包,再通过 LuCI 的“系统 → 软件包”上传安装;Nikki 官方仓库也提供 Feed 和安装脚本方式。不要混装不同版本的核心、插件和内核模块,OpenWrt 官方提醒,面向不同内核或不同版本的包可能出现依赖无法满足。
  2. 进入插件页面。安装成功后刷新 LuCI,在服务菜单中找到对应的 Mihomo 管理页面。不同插件的菜单名称可能不同,本文以 Nikki 的字段为例;入口以当前版本界面为准。
  3. 添加订阅。在“配置文件 → 订阅”区域新建订阅,填写不重复的“订阅名称”和“订阅链接”。如果服务商要求特定 User-Agent,再填写“用户代理(UA)”;没有明确要求时保持默认。Nikki 文档将订阅链接、用户代理、远程/本地优先级和手动更新列为订阅管理字段,可查看其官方 Wiki 配置说明。
  4. 点击更新并检查结果。更新只负责下载并缓存本地订阅文件,不一定会自动重载或重启核心。订阅下载成功后,插件会检查 YAML 格式,并要求内容包含 proxies 或 proxy-providers;不满足条件时不会保存为可用订阅。预期结果是订阅状态显示更新成功,并能看到节点或代理提供者。
  5. 选择配置文件并启用服务。在插件配置区域选择刚下载的订阅,勾选“启用”,再保存并重载或重启服务。不要把“更新订阅成功”误认为“代理已生效”:前者只代表文件下载和格式检查通过,后者还需要核心启动、透明代理规则和客户端网关都正确。
  6. 先用一台设备验证。如果是旁路由,不要立即修改全家设备。先将一台测试设备的默认网关或 DNS 临时指向 OpenWrt,访问普通网页并测试域名解析。确认正常后,再扩大到其他客户端。

如果插件页面提供“配置检查”,先执行检查再启动。预期结果是没有 YAML 语法错误、未识别字段或缺少必要字段;若检查失败,先回到订阅原文确认返回的确实是 YAML,而不是登录页、JSON 错误信息、HTML 提示页或过期页面。

透明代理、DNS 和 IPv4/IPv6 怎么选

TProxy 与 TUN 不要同时盲目开启。在 OpenWrt 路由器上,优先使用插件已经集成的 Redirect 或 TProxy 方案,并按插件界面提供的依赖和防火墙设置操作;TUN 更适合需要网络层接管的场景,但会增加路由、内核模块和 DNS 劫持的排查变量。Mihomo 官方文档说明,TUN 配置包含 stack、auto-route、auto-redirect、auto-detect-interface 和 DNS 劫持等字段,具体能力还取决于运行平台与插件集成方式,参见Mihomo TUN 官方文档。

模式选择速查
场景建议判定标准
只想让局域网设备透明代理先用插件的 TProxy 或 Redirect测试设备无需手动设置 HTTP/SOCKS 代理即可访问目标站点
需要网络层捕获更多流量再评估 TUN插件明确提供所需内核模块、路由和防火墙支持
启用 IPv6 后出现部分网站异常先临时关闭 IPv6 代理或 IPv6 DNS 劫持做单变量对照关闭后恢复,说明问题集中在 IPv6 路径或规则
网页能开但域名分流错误检查 DNS 模式、劫持范围和 fake-ip 设置同一域名在直连与代理规则下得到预期结果

DNS 排查不要一开始同时更换上游 DNS、切换 fake-ip、修改 IPv6 和更换节点。一次只改一个变量:先保持节点不变,检查路由器能否解析域名;再检查客户端是否实际使用 OpenWrt 作为 DNS;最后才调整 DNS 模式或 fake-ip 例外。对大陆版域名使用直连规则时,应只写对应的大陆版域名;国际版域名按当地直连或订阅规则处理,不能用一个模糊的泛域名替代全部规则。

启动后验证:日志、网关和节点连通性

  1. 看服务状态。在插件状态页确认服务为运行状态;如果页面显示已启用但核心未运行,查看插件日志和核心日志。预期能看到配置加载、核心启动和代理规则应用等连续记录。
  2. 看配置是否真的被使用。确认当前选择的是刚更新的订阅,而不是旧的本地文件。Nikki 文档说明,远程优先会在启动时重新下载订阅,本地优先则在本地文件存在时继续使用缓存文件;因此订阅更新后还要确认当前配置已重载。
  3. 看网关和 DNS。在测试设备上检查默认网关是否为预期的 OpenWrt 地址,DNS 是否仍被主路由或运营商地址覆盖。旁路由场景尤其要检查 DHCP 下发结果,而不是只看设备能否打开 LuCI。
  4. 看节点连通性。先在 Mihomo 面板或插件页面测试节点,再测试网页。若节点测试失败,问题集中在订阅、节点或路由器出站;若节点测试成功但网页失败,优先检查透明代理规则、DNS 劫持和客户端网关。

验证时可使用以下三种对照,避免把代理端口和透明代理混为一谈。端口号全文示例统一使用 7890,实际端口以客户端设置页为准。

三种测试方式
测试命令用途结果判定
基线curl -4I --connect-timeout 10 https://example.com关闭透明代理时测试普通出站能返回 HTTP 响应,说明基础网络可用
代理端口curl -x http://127.0.0.1:7890 -I --connect-timeout 10 https://example.com明确通过 HTTP 代理端口测试成功说明代理端口可接收请求,不等于透明代理已接管
透明代理curl -I --connect-timeout 10 https://example.com开启透明代理后不指定 -x 测试成功且日志有对应连接,才支持透明代理已生效的判断

注意:经过 HTTP 代理时,命令中的 -4 或 -6 不能单独证明代理出口的地址族;它主要影响客户端到代理的连接方式。不要只凭“看到某个虚拟网卡”判断透明代理已接管,必须结合服务日志、测试设备网关和不带 -x 的实际请求综合判断。

常见故障按顺序排查

订阅与连接故障排查表
现象优先检查处理动作判定标准
订阅下载失败路由器出站、DNS、链接完整性先执行 curl -I,再确认 Token、UA 和证书时间能取得响应且不是登录页或错误页
下载成功但配置校验失败返回内容格式保存返回内容的前几行,确认是 YAML,并包含 proxies 或 proxy-providers插件配置检查通过
服务启动失败插件日志、核心日志和配置路径检查核心是否匹配架构、配置文件是否存在、字段是否被当前核心支持服务状态变为运行
能解析域名但网页打不开透明代理规则、DNS 劫持和网关先固定节点,只检查一台设备的网关和 DNS不设置手动代理也能完成请求
安装多个插件后断网端口、TProxy、TUN 和防火墙规则冲突停用其他代理插件,恢复备份,再只启用一套方案基础网络先恢复,再逐项启用
更新订阅后仍使用旧节点本地/远程优先级和核心重载手动重载或重启服务,并确认当前配置文件已切换节点列表和日志时间与本次更新对应

如果改动后无法访问 LuCI,先从测试设备撤销旁路由网关或 DNS 设置;如果是主路由,准备好此前的网络配置备份和本地管理入口。不要在断网状态下连续修改多个开关,否则很难判断是哪一项造成问题。

原生 Mihomo 的基础订阅写法(进阶用户)

原生部署不依赖 LuCI 插件,需要自行准备 Mihomo 二进制、工作目录、服务脚本和防火墙规则。Mihomo 官方文档的 proxy-providers 支持 http、file 和 inline 类型;HTTP 类型需要填写 url,并可设置 path、interval 和健康检查。以下只是“订阅提供者”的基础配置示例,不等于完整的 OpenWrt 透明代理方案;写入前请先备份原配置。

mixed-port: 7890
mode: rule
log-level: info
external-controller: 127.0.0.1:9090

proxy-providers:
  subscription:
    type: http
    url: "YOUR_SUBSCRIPTION_URL"
    path: ./providers/subscription.yaml
    interval: 3600
    health-check:
      enable: true
      interval: 600
      url: https://cp.cloudflare.com/generate_204

proxy-groups:
  - name: Proxy
    type: select
    use:
      - subscription
    proxies:
      - DIRECT

rules:
  - MATCH,Proxy

将 YOUR_SUBSCRIPTION_URL 替换为你自己的订阅链接,不要把真实 Token 发布到文章、截图或公开仓库。配置文件中的 path 必须位于 Mihomo 工作目录允许访问的位置;官方文档还说明,安全路径限制与启动目录有关,具体以当前核心版本为准。保存后先执行核心提供的配置校验命令,再启动服务;如果你没有为 OpenWrt 编写对应的 procd、nftables 或路由规则,不要把“核心能启动”当成“局域网透明代理已完成”。

需要查看提供者字段时,可参考Mihomo proxy-providers 官方文档;需要编写代理组时,可参考Mihomo 配置示例。

结论:先让一台设备稳定,再扩展到全网

OpenWrt Mihomo 订阅配置最稳妥的顺序是:确认固件和架构,选择一套管理方案,导入并校验订阅,启用一种透明代理模式,再用一台设备完成网关、DNS、节点和网页请求验证。遇到问题时按“订阅下载 → YAML 校验 → 核心日志 → DNS → 防火墙与网关 → 节点连通性”的顺序排查,通常比反复更换节点或同时切换 TUN、TProxy、fake-ip 更容易定位原因。

如果你准备把这套配置用于真实家庭网络,建议先导出 OpenWrt 配置备份,并记录修改前的 DHCP、DNS、默认网关和防火墙状态。插件菜单、字段和核心版本可能变化,涉及版本兼容时应以项目当前发布页和 OpenWrt 当前固件说明为准。

常见问题

OpenWrt Mihomo 订阅应该选 OpenClash 还是 Nikki?

如果已有稳定的 OpenClash 配置,优先继续使用它;如果刚开始配置、希望通过 LuCI 管理订阅和服务,可以选择一套支持当前固件的方案。不要同时让多个代理插件接管透明代理、DNS 或同一端口。

订阅链接下载成功,为什么仍然提示配置无效?

下载成功只说明 HTTP 请求完成,不代表返回内容是可用的 Mihomo YAML。检查返回内容是否为登录页、错误页或 JSON 提示,并确认其中包含 proxies 或 proxy-providers;同时检查订阅格式是否确实支持 Clash/Mihomo。

旁路由配置后能打开管理页面,但网页打不开,先查什么?

先查测试设备的默认网关和 DNS 是否指向预期的 OpenWrt 地址,再看插件和核心日志。若节点测试失败,优先查订阅和路由器出站;若节点测试成功但网页失败,优先查透明代理规则、DNS 劫持和防火墙。

配置 TUN 后要不要继续开启 TProxy?

不要默认同时开启。先按插件文档选择一种透明代理路径;只有在确认当前插件、内核模块、路由和防火墙支持 TUN 的前提下,再单独测试 TUN。一次只改一个模式,便于回滚和定位。

订阅更新后节点列表没有变化怎么办?

先确认更新按钮是否只更新了本地缓存,再确认配置选择和远程/本地优先级,最后手动重载或重启服务。日志中的更新时间、当前配置文件和节点列表应能对应本次更新。

常见问题

OpenWrt Mihomo 订阅应该选 OpenClash 还是 Nikki?

如果已有稳定的 OpenClash 配置,优先继续使用它;如果刚开始配置、希望通过 LuCI 管理订阅和服务,可以选择一套支持当前固件的方案。不要同时让多个代理插件接管透明代理、DNS 或同一端口。

订阅链接下载成功,为什么仍然提示配置无效?

下载成功只说明 HTTP 请求完成,不代表返回内容是可用的 Mihomo YAML。检查返回内容是否为登录页、错误页或 JSON 提示,并确认其中包含 proxies 或 proxy-providers。

旁路由配置后能打开管理页面,但网页打不开,先查什么?

先查测试设备的默认网关和 DNS 是否指向预期的 OpenWrt 地址,再看插件和核心日志。若节点测试失败,优先查订阅和路由器出站;若节点测试成功但网页失败,优先查透明代理规则、DNS 劫持和防火墙。

配置 TUN 后要不要继续开启 TProxy?

不要默认同时开启。先按插件文档选择一种透明代理路径;只有在确认当前插件、内核模块、路由和防火墙支持 TUN 的前提下,再单独测试 TUN。

订阅更新后节点列表没有变化怎么办?

先确认更新按钮是否只更新了本地缓存,再确认配置选择和远程/本地优先级,最后手动重载或重启服务。日志中的更新时间、当前配置文件和节点列表应能对应本次更新。

相关阅读

参考资料

  1. OpenWrt-nikki 官方仓库
  2. OpenWrt-nikki 官方 Wiki
  3. OpenClash 官方仓库 README
  4. OpenWrt Quick Start Guide(openwrt.org)
  5. OpenWrt 安装后软件包说明(openwrt.org)
  6. Mihomo TUN 官方文档
  7. Mihomo proxy-providers 官方文档
  8. Mihomo 官方配置示例