01 · OVERVIEW
文档能帮你做什么
教程页负责「怎么装、怎么连」;文档页负责「配置项是什么意思、怎么改」。两者配合使用效率最高。
适合谁看
已经导入过订阅、想自己改规则、调 DNS、开 TUN,或排查策略不生效的用户。
配置文件在哪
图形客户端通常在「配置 / Profiles」里编辑;命令行内核默认读取工作目录下的 config.yaml。
内核说明
本站文档以 mihomo(Clash Meta) 语法为主,兼容常见 Clash 配置写法。
改配置前先备份
手动修改 YAML 后请检查缩进与冒号空格;语法错误会导致内核无法启动。
还不熟悉导入订阅?请先阅读 使用教程,再回来查阅本页字段说明。
02 · CONFIG
配置结构一览
一份完整的配置通常由「基础端口 → 代理列表 → 策略组 → 规则 → DNS」几大块组成。下面是最小可读骨架:
# config.yaml — minimal skeleton
port: 7890
socks-port: 7891
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
proxies:
- name: "示例节点"
type: ss
server: example.com
port: 8388
cipher: aes-128-gcm
password: "password"
proxy-groups:
- name: "PROXY"
type: select
proxies:
- "示例节点"
- DIRECT
rules:
- DOMAIN-SUFFIX,cn,DIRECT
- MATCH,PROXY
常用基础字段
| 字段 | 类型 | 说明 |
| port | number | HTTP 代理端口,浏览器 / 系统代理常用 |
| socks-port | number | SOCKS5 端口 |
| mixed-port | number | HTTP 与 SOCKS 混合端口(二选一即可) |
| allow-lan | bool | 是否允许局域网设备接入本机代理 |
| mode | string | rule / global / direct |
| log-level | string | silent / error / warning / info / debug |
| ipv6 | bool | 是否启用 IPv6 |
开启 allow-lan: true 时,请同时设置 secret 保护外部控制接口,避免局域网他人随意改配置。
03 · PROXIES
代理节点(proxies)
每个节点是一个出站通道。订阅导入后通常会自动生成这一段;手动添加时需保证 name 在配置内唯一。
ss
ssr
vmess
vless
trojan
hysteria2
tuic
wireguard
http
socks5
通用字段
| 字段 | 类型 | 说明 |
| name | string | 显示名称,策略组与规则会引用它 |
| type | string | 协议类型,如 ss、vmess |
| server | string | 服务器域名或 IP |
| port | number | 服务器端口 |
| udp | bool | 是否允许 UDP 转发(默认视协议而定) |
Shadowsocks 示例
- name: "HK-SS"
type: ss
server: hk.example.com
port: 8388
cipher: aes-128-gcm
password: "your-password"
udp: true
不同协议还有各自的专有字段(如 VMess 的 uuid、alterId,Trojan 的 password、sni)。以服务商提供的配置为准,勿随意删改。
04 · PROXY-GROUPS
策略组(proxy-groups)
策略组把多个节点归为一类,并决定「怎么选」。规则里通常引用策略组名,而不是直接写某个节点。
select
手动选择。适合「香港 / 日本 / 美国」这类地区分组。
url-test
按延迟自动选最快节点,可设 interval 与 tolerance。
fallback
按列表顺序尝试,当前节点失败则切换到下一个。
load-balance
在可用节点间负载均衡,适合多线路分流。
url-test 示例
- name: "自动选择"
type: url-test
proxies:
- "HK-01"
- "JP-01"
- "US-01"
url: http://www.gstatic.com/generate_204
interval: 300
tolerance: 50
05 · RULES
规则语法(rules)
规则自上而下匹配,命中第一条即停止。最后通常以 MATCH 兜底,避免漏网流量。
常用匹配类型
| 类型 | 示例 | 说明 |
| DOMAIN | DOMAIN,api.example.com,PROXY | 精确域名 |
| DOMAIN-SUFFIX | DOMAIN-SUFFIX,google.com,PROXY | 后缀匹配 |
| DOMAIN-KEYWORD | DOMAIN-KEYWORD,ads,REJECT | 关键字匹配 |
| IP-CIDR | IP-CIDR,192.168.0.0/16,DIRECT | IPv4 段 |
| GEOIP | GEOIP,CN,DIRECT | 按国家/地区 |
| MATCH | MATCH,PROXY | 最终兜底规则 |
书写示例
rules:
- DOMAIN-SUFFIX,local,DIRECT
- IP-CIDR,127.0.0.0/8,DIRECT
- DOMAIN-KEYWORD,ad,REJECT
- GEOIP,CN,DIRECT
- MATCH,PROXY
自定义规则请放在较靠前的位置;若放在 GEOIP,CN 或宽泛规则之后,可能永远匹配不到。
06 · DNS
DNS 配置
DNS 决定域名如何解析。合理配置可以减少污染、配合分流规则更准确,也是排查「能连节点但打不开站」的关键一步。
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
nameserver:
- https://dns.alidns.com/dns-query
- https://doh.pub/dns-query
fallback:
- tls://1.1.1.1
- tls://8.8.8.8
fallback-filter:
geoip: true
geoip-code: CN
模式说明
- redir-host:真实 IP 解析,兼容性好,适合部分需要真实地址的应用。
- fake-ip:返回虚拟 IP,解析更快,配合规则分流更常见;个别游戏 / 内网应用可能需加入
fake-ip-filter。
07 · TUN
TUN 模式
系统代理只能覆盖「遵守系统代理设置」的应用;TUN 通过虚拟网卡接管流量,让更多应用(含不支持代理的)也能走规则。
tun:
enable: true
stack: system # system / gvisor / mixed
dns-hijack:
- any:53
auto-route: true
auto-detect-interface: true
- Windows:通常需要管理员权限启动客户端。
- macOS:首次开启会请求安装网络扩展,需在系统设置中允许。
- 与系统代理:日常二选一即可;同时开启可能造成重复代理或异常。
服务器 / 无图形环境优先用命令行内核 + 环境变量代理;桌面端需要「全局接管」时再开 TUN。
08 · API
外部控制 API
通过 external-controller 暴露 REST 接口后,面板与脚本可以切换节点、查看连接、热重载配置。
| 字段 | 类型 | 说明 |
| external-controller | string | 监听地址,如 127.0.0.1:9090 |
| secret | string | 访问口令,请求头 Authorization: Bearer <secret> |
| external-ui | string | 可选,外置面板静态资源目录 |
常用接口(示意)
# 查看当前配置版本 / 状态
GET http://127.0.0.1:9090/version
# 切换策略组选中节点
PUT http://127.0.0.1:9090/proxies/{group}
Body { "name": "HK-01" }
# 重新加载配置
PUT http://127.0.0.1:9090/configs?force=true
生产或公网环境务必设置 secret,且尽量只监听 127.0.0.1,不要把控制端口暴露到公网。
装好了,再把配置调顺
下载客户端、跟着教程连上网络后,回来用这篇文档定制规则与 DNS,会顺手很多。