mihomo 内核
Proxy engine / mihomomihomo 是 Clash 生态中的代理内核,负责配置解析、规则匹配、DNS 处理与连接转发。内核不是图形界面;判断配置是否可用,需要检查实际内核及其支持的字段。客户端名称相同,也不能据此推定不同安装环境中的内核能力完全一致。
mode: rule
CLASH / CONFIGURATION GLOSSARY
内核、规则、DNS 与端口。按配置所在环节查词,再对照实际生效值。
本页收录 24 个常用术语。每条保留独立锚点,可复制地址用于定位说明。首次配置先看入门指南;已有报错转到疑难手册,按症状排查。
先区分执行连接的内核、操作界面与连接参数。
mihomo 是 Clash 生态中的代理内核,负责配置解析、规则匹配、DNS 处理与连接转发。内核不是图形界面;判断配置是否可用,需要检查实际内核及其支持的字段。客户端名称相同,也不能据此推定不同安装环境中的内核能力完全一致。
mode: rule
图形客户端提供订阅管理、策略选择、日志查看及系统代理开关。界面设置可能生成或覆盖内核配置,排查时应查看实际生效配置,而不只查看导入的原文件。选型时先核对平台与架构,再确认所需功能的入口,参见客户端对比。
代理节点是一组用于建立远端连接的参数,通常包含服务器地址、端口、协议和认证信息。节点显示在列表中只代表配置已被识别,能否连接仍取决于参数、网络与服务器状态。节点名称只是便于识别的标签,不能证明实际出口地区或协议类型。
proxies:
客户端常通过节点访问指定测试地址来测量响应耗时,并不等同于 ICMP ping。测试结果受目标地址、握手过程与网络路径影响,不能直接代表下载速度或所有网站的可用性。出现 timeout 时先确认测试地址可达,再按疑难手册检查本机网络与节点连接。
type: url-test
协议名称决定参数结构,传输层与认证字段需要同时对应。
Shadowsocks 是一种加密代理协议,配置需要匹配服务端地址、端口、加密方法与密码。订阅导入成功后若连接失败,应先核对加密方法及附加插件要求,不能用其他协议字段替代。是否能转发 UDP 还取决于节点配置与服务端支持,不由名称中的 SS 单独决定。
type: ss
VMess 是需要客户端与服务端配套配置的代理协议,常见身份字段为 UUID。使用 WebSocket 或 TLS 时还要核对传输路径、主机名及证书设置,只有 UUID 正确仍不足以保证连接。若日志出现认证或握手错误,也应确认系统时间准确,再继续检查传输参数。
type: vmess
VLESS 是轻量代理协议,本身不提供与 TLS 等同的传输加密。是否使用 TLS 或 REALITY、是否设置 flow,都应以服务端配置为准,不能仅修改协议名称完成节点转换。导入前还应确认当前内核支持所需组合,避免把字段不兼容误判成服务器故障。
type: vless
Trojan 通常通过 TLS 承载代理连接,并使用密码认证。排查时除地址和密码外,还需检查服务器名称与证书验证结果,不应把跳过证书验证作为默认修复方式。若服务端另设 WebSocket 等传输方式,客户端也必须提供对应参数,不能只填写一个服务器端口。
type: trojan
规则决定交给谁处理,策略组决定使用哪条连接路径。
规则模式按 rules 列表从上到下匹配连接,命中后交给指定策略处理。调整规则时应把具体条件放在宽泛条件之前,并查看连接记录中的命中规则,确认修改确实生效。末尾常用 MATCH 承接此前未命中的连接;使用全局模式时,不能按规则模式的预期判断出口。
DOMAIN-SUFFIX,example.com,DIRECT
策略组把多个节点或其他策略组织成一个可被规则引用的名称。select 用于手动选择,url-test 按测试结果选择;组内选择不改变规则顺序,也不意味着所有应用都会使用该组。遇到“换节点但出口未变”,先检查连接命中了哪个组,再确认修改的是该组的有效选项。
proxy-groups:
DIRECT 表示连接不经代理节点而直接访问目标,REJECT 表示拒绝匹配的连接。两者是内置策略,PROXY 则常被用作自定义策略组名称,使用前需要确认配置中确实存在对应名称。直连不代表绕过所有本机路由设置,拒绝规则也需要结合命中记录判断是否误拦。
DOMAIN-SUFFIX,example.com,REJECT
GeoIP 根据 IP 数据库中的地区归属匹配目标地址,匹配结果不代表内容所属地区或运营主体所在地。CDN 与地址变更可能影响匹配结果;规则中的 no-resolve 可避免为该规则主动触发域名解析。若要稳定匹配明确的域名集合,应优先考虑域名规则,而不是仅依赖地址所属地区。
GEOIP,CN,DIRECT,no-resolve
先查域名如何解析,再查流量如何进入内核。
DNS 解析把域名转换为连接所需的地址,解析路径和最终连接路径是两个不同环节。启用内核 DNS 后仍需确认应用请求确实进入该解析器,浏览器安全 DNS 或系统设置可能使用其他路径。出现域名打不开而 IP 可连接时,应检查解析响应、缓存与实际使用的解析服务。
dns:
Fake-IP 为 DNS 请求返回合成地址,并在内核中保留域名映射,便于后续按域名处理连接。出现特定应用兼容问题时,可检查 fake-ip-filter;切换模式后还应清理旧 DNS 缓存并重建连接。解析结果出现合成地址并不直接表示错误,关键是后续流量能否进入持有映射的内核。
enhanced-mode: fake-ip
TUN 通过虚拟网络接口接收 IP 层流量,可覆盖部分不读取系统代理设置的应用。它依赖权限、路由与 DNS 配合,不等于启用后所有流量必然接管;排查时应先确认虚拟接口和路由是否建立。与其他 VPN 同时运行可能产生路由冲突,测试时应逐一停用以缩小范围。
auto-route: true
DNS 泄漏指域名查询偏离预期解析路径,暴露给不希望使用的解析服务。检测时应核对系统、浏览器和客户端设置,并区分本机查询出口与递归解析器出口,不能只凭一个地区标签下结论。使用加密 DNS 只能说明相应查询链路被加密,不能单独证明查询经过了预期代理。
区分配置来源、文件结构与独立更新的资源。
订阅链接是获取节点列表或完整配置的远程地址,并不等同于客户端软件本身。更新失败时先检查返回内容与兼容格式;链接可能包含访问凭据,提交日志或截图前应隐藏完整地址。返回网页、登录提示或错误信息时,不能通过改文件后缀把它变成可用的 YAML 配置。
查看订阅导入步骤YAML 用缩进表示数据层级,Clash 配置常以 config.yaml 文件保存。编辑时使用空格而不是 Tab,保持同级缩进一致;通过语法解析仅说明结构合法,字段是否受支持还要由内核判断。出错行附近的上一层缩进也应一起检查,避免只修改报错行却保留结构问题。
config.yaml
Proxy Provider 将一组节点作为可独立加载、更新的资源,再由策略组引用。资源加载成功后还需通过 use 等配置接入策略组;只定义 provider 而没有引用,不会自动形成完整的分流方案。排查节点为空时,应分别检查资源获取、内容解析和策略组引用,避免混成一个问题。
proxy-providers:
Rule Provider 用于独立维护一组规则匹配条件,再通过 RULE-SET 指向处理策略。资源格式需要与 behavior 和 format 设置对应,规则集被引用的位置仍然参与从上到下的匹配顺序。更新规则资源不会自动调整策略组,命中后使用的出口仍由引用该规则集的那条规则指定。
rule-providers:
本地监听、应用设置与局域网访问分别检查。
系统代理把代理地址写入操作系统相关设置,供遵循该设置的应用使用。它不是全局流量接管;若浏览器可用而其他应用不可用,应先确认应用是否读取系统代理,而不是立即更换节点。关闭客户端后若仍无法访问网络,还应检查系统是否残留指向已停止监听端口的代理设置。
mixed-port 让同一个本地端口同时接受 HTTP 代理和 SOCKS 代理请求。应用填写的地址与端口必须对应实际监听值;端口占用会导致监听失败,配置中的示例数字不代表客户端当前必然使用该端口。以下 7890 仅作字段示例,实际值以客户端设置及启动日志为准。
mixed-port: 7890
127.0.0.1 与 IPv6 的 ::1 都指向本机,常用于应用连接本地代理。部分 Windows UWP 应用受沙箱回环限制,需要按应用检查回环豁免;启用局域网访问不能替代这一权限设置。其他设备填写 127.0.0.1 会连接它们自己,而不是运行 Clash 的电脑。
127.0.0.1 / ::1
allow-lan 控制是否允许其他设备访问内核的代理监听服务,还需配合监听地址与防火墙。仅在可信网络按需开启,并设置访问限制;代理端口与控制接口用途不同,不应一并暴露到公网。其他设备连接时需填写运行客户端设备的局域网地址,并确认设备之间可以互访。
allow-lan: true