一、Clash 配置文件是什么?
Clash 配置文件通常使用 .yaml 格式,将其保存 .yaml 然后导入到 Clash中,用来描述本地监听端口、代理节点、策略组和分流规则。Mihomo、Clash Verge Rev 等客户端会读取这些字段,并按照配置建立连接。
本文中的服务器地址全部使用文档专用 IP 网段或 example.com 示例域名;UUID、密码、公钥和令牌也都是演示值,不对应真实节点,不能直接用于联网。
二、完整配置由哪些部分组成?
| 顶层字段 | 主要用途 | 注意事项 |
|---|---|---|
| mixed-port | 同时提供 HTTP 与 SOCKS 代理入口。 | 示例使用 7890,也可以换成未被占用的本地端口。 |
| proxies | 保存 VMess、VLESS、Trojan 等具体节点。 | 每个节点名称必须唯一;一个节点只能填写一个 server。 |
| proxy-groups | 手动选择、自动测速或故障切换节点。 | 引用的节点名称必须与 proxies 中完全一致。 |
| rules | 决定哪些流量直连、拒绝或使用策略组。 | 规则由上到下匹配,最后通常使用 MATCH 收尾。 |
三、VMess TCP(无 TLS)
适合服务端明确使用 VMess、TCP 传输且未开启 TLS 的情况。TCP 节点不要添加 ws-opts。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · VMess TCP"
type: vmess
# 示例服务器地址:192.0.2.0/24 是文档专用网段,不代表真实节点
server: 192.0.2.10
# 示例服务端端口;实际使用时必须与服务端保持一致
port: 10001
# VMess 用户 ID;必须是完整的 8-4-4-4-12 UUID
uuid: "11111111-1111-4111-8111-111111111111"
# 新版 VMess 通常使用 0;非 0 会启用旧版 AlterID 机制
alterId: 0
# VMess 加密方式;auto 是常用兼容写法
cipher: auto
# 是否允许该节点转发 UDP 流量
udp: true
# 不填写 ws/http/h2/grpc 时为 TCP;这里显式写出便于阅读
network: tcp
# 此示例不启用 TLS,因此不需要 servername、SNI 或证书选项
tls: false
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · VMess TCP"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
四、VMess WebSocket + TLS
适合通过域名、CDN 或反向代理接入的 VMess 节点。Host、路径和 SNI 必须与服务端一致。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · VMess WS TLS"
type: vmess
# 示例入口域名;example.com 系列域名仅用于文档演示
server: edge.example.com
port: 443
# VMess 用户 UUID;这里只是格式示例
uuid: "11111111-1111-4111-8111-111111111112"
alterId: 0
cipher: auto
udp: true
# WebSocket 传输必须写 ws
network: ws
# 开启 TLS
tls: true
# TLS 握手时使用的服务器名称,必须与服务端证书匹配
servername: edge.example.com
# false 表示校验证书;生产环境通常建议保持 false
skip-cert-verify: false
# 模拟常见浏览器 TLS 指纹;需由当前 Mihomo 内核支持
client-fingerprint: chrome
# WebSocket 专用参数
ws-opts:
# WebSocket 请求路径,必须与服务端配置完全一致
path: "/vmess-demo"
# WebSocket 请求头
headers:
# Host 必须是合法域名,不能填写 YOUR_HOST 这类占位文字
Host: edge.example.com
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · VMess WS TLS"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
五、VLESS TCP + TLS
VLESS 使用 UUID,但不需要 VMess 的 alterId 与 cipher。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · VLESS TLS"
type: vless
# 示例域名,不对应真实代理服务
server: vless.example.com
port: 443
# VLESS 用户 UUID;VLESS 不使用 alterId 和 cipher
uuid: "22222222-2222-4222-8222-222222222221"
# 允许 UDP 转发
udp: true
# 普通 VLESS 加密字段通常保持空字符串
encryption: ""
# 使用原生 TCP 传输
network: tcp
# 开启 TLS
tls: true
# TLS 服务器名称,需与证书和服务端配置一致
servername: vless.example.com
# 浏览器 TLS 指纹示例
client-fingerprint: chrome
# false 表示不跳过证书校验
skip-cert-verify: false
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · VLESS TLS"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
六、VLESS Reality
Reality 需要 UUID、SNI、公钥、Short ID,并常与 Vision 流控搭配。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · VLESS Reality"
type: vless
# 198.51.100.0/24 是文档专用网段,仅用于展示格式
server: 198.51.100.20
port: 443
# VLESS 用户 UUID 示例
uuid: "22222222-2222-4222-8222-222222222222"
udp: true
encryption: ""
network: tcp
# Reality 节点仍通过 TLS 配置入口
tls: true
# 服务端指定的伪装目标名称;必须与服务端保持一致
servername: www.example.com
# Reality + Vision 常见流控值
flow: xtls-rprx-vision
# Reality 通常需要指定客户端指纹
client-fingerprint: chrome
# Reality 专用参数
reality-opts:
# 示例公钥,仅用于说明字段位置,不对应真实服务端
public-key: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
# Short ID 通常是十六进制字符串,必须与服务端一致
short-id: "0123456789abcdef"
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · VLESS Reality"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
七、Trojan TCP + TLS
Trojan 使用密码认证,常见部署基于 TLS。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · Trojan TLS"
type: trojan
# 示例域名
server: trojan.example.com
port: 443
# Trojan 使用密码认证,不使用 UUID
password: "example-trojan-password"
# 是否允许 UDP
udp: true
# Trojan 默认基于 TLS;SNI 必须与服务端证书设置一致
sni: trojan.example.com
# 建议校验证书
skip-cert-verify: false
# 客户端 TLS 指纹示例
client-fingerprint: chrome
# 未使用 ws 或 grpc 时为 TCP
network: tcp
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · Trojan TLS"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
八、Shadowsocks
Shadowsocks 的加密方式和密码必须与服务端完全一致。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · Shadowsocks"
type: ss
# 203.0.113.0/24 是文档专用网段
server: 203.0.113.30
port: 8388
# 加密方式必须与服务端完全相同
cipher: chacha20-ietf-poly1305
# Shadowsocks 认证密码示例
password: "example-shadowsocks-password"
# 开启 UDP 转发
udp: true
# 是否通过 TCP 承载 UDP;普通服务端通常保持 false
udp-over-tcp: false
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · Shadowsocks"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
九、SOCKS5
SOCKS5 可以无认证,也可以使用用户名和密码。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · SOCKS5"
type: socks5
# 示例 SOCKS5 服务地址
server: 192.0.2.40
port: 1080
# 服务端没有认证时,应删除 username 和 password 两行
username: "example-user"
password: "example-password"
# 只有服务端支持 SOCKS5 UDP 时才能开启
udp: true
# 此示例为普通 SOCKS5,不启用 TLS
tls: false
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · SOCKS5"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十、HTTPS 代理
Mihomo 中 HTTP 与 HTTPS 出站都使用 type: http,通过 tls: true 区分 HTTPS。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · HTTPS Proxy"
type: http
# Mihomo 中 HTTP 与 HTTPS 出站都使用 type: http
server: proxy.example.com
port: 443
# 代理认证示例;无认证服务端应删除这两行
username: "example-user"
password: "example-password"
# true 表示客户端到代理服务器之间使用 TLS,即 HTTPS 代理
tls: true
# TLS SNI,通常填写代理服务器证书中的域名
sni: proxy.example.com
# false 表示正常验证 TLS 证书
skip-cert-verify: false
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · HTTPS Proxy"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十一、Hysteria2
Hysteria2 基于 QUIC,通常需要密码、SNI、证书校验和带宽提示参数。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · Hysteria2"
type: hysteria2
# 示例域名
server: hy2.example.com
port: 443
# Hysteria2 认证密码
password: "example-hysteria2-password"
# 上传与下载带宽提示值;应按真实网络和服务端要求调整
up: "20 Mbps"
down: "100 Mbps"
# TLS SNI
sni: hy2.example.com
# false 表示验证证书
skip-cert-verify: false
# Hysteria2 基于 QUIC,常见 ALPN 为 h3
alpn:
- h3
# 未使用混淆时不要填写 obfs 与 obfs-password
# obfs: salamander
# obfs-password: "example-obfs-password"
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · Hysteria2"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十二、TUIC v5
TUIC v5 使用 UUID 和密码,不能同时填写 v4 的 token。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · TUIC v5"
type: tuic
# 示例 TUIC 服务域名
server: tuic.example.com
port: 443
# TUIC v5 使用 UUID + password
uuid: "44444444-4444-4444-8444-444444444444"
password: "example-tuic-v5-password"
# TLS SNI
sni: tuic.example.com
# false 表示验证证书
skip-cert-verify: false
# UDP 中继模式:native 或 quic;必须符合服务端与内核支持
udp-relay-mode: native
# QUIC 拥塞控制算法示例
congestion-controller: bbr
# 是否启用 QUIC 0-RTT;启用可降低握手延迟
reduce-rtt: true
# 建立请求的超时时间,单位毫秒
request-timeout: 8000
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · TUIC v5"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十三、TUIC v4
TUIC v4 使用 token,不能同时填写 v5 的 UUID 和密码。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · TUIC v4"
type: tuic
# 示例 TUIC v4 服务域名
server: tuic-v4.example.com
port: 443
# TUIC v4 使用 token;不能与 v5 的 uuid/password 同时填写
token: "example-tuic-v4-token"
# TLS SNI
sni: tuic-v4.example.com
skip-cert-verify: false
# UDP 中继模式
udp-relay-mode: native
# QUIC 拥塞控制算法
congestion-controller: bbr
# 请求超时,单位毫秒
request-timeout: 8000
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · TUIC v4"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十四、WireGuard
WireGuard 需要客户端私钥、服务端公钥、隧道内部地址和允许网段。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · WireGuard"
type: wireguard
# 示例服务端地址
server: 203.0.113.50
port: 51820
# 客户端在 WireGuard 隧道内使用的示例 IPv4 地址
ip: 10.66.66.2
# 示例客户端私钥,仅用于展示字段格式,不应投入真实使用
private-key: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
# 示例服务端公钥,仅用于展示字段格式
public-key: "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB="
# 允许通过隧道访问的目标网段
allowed-ips:
- "0.0.0.0/0"
# 允许 UDP
udp: true
# 最大传输单元示例;线路异常时可按实际环境调整
mtu: 1408
# 服务端要求预共享密钥时再取消注释并替换
# pre-shared-key: "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC="
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · WireGuard"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十五、SSH
SSH 出站可以使用密码或私钥认证。本例展示密码认证。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · SSH"
type: ssh
# 示例 SSH 服务地址
server: 192.0.2.60
port: 22
# SSH 登录账户
username: "example-user"
# 密码认证示例;使用私钥认证时应删除 password
password: "example-ssh-password"
# 可选:固定服务端主机公钥,减少连接到错误主机的风险
# host-key:
# - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIExampleOnly"
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · SSH"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十六、AnyTLS
AnyTLS 使用密码和 TLS 参数,并提供空闲会话管理选项。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:每个列表项代表一个独立代理节点
proxies:
- name: "🇺🇸 示例 · AnyTLS"
type: anytls
# 示例域名
server: anytls.example.com
port: 443
# AnyTLS 认证密码
password: "example-anytls-password"
# 是否允许 UDP
udp: true
# TLS SNI
sni: anytls.example.com
# 浏览器 TLS 指纹示例
client-fingerprint: chrome
# false 表示验证证书
skip-cert-verify: false
# TLS 应用层协议协商列表
alpn:
- h2
- http/1.1
# 空闲会话检查间隔,单位秒
idle-session-check-interval: 30
# 空闲会话超时时间,单位秒
idle-session-timeout: 30
# 至少保留的空闲会话数量
min-idle-session: 0
# 代理策略组:用于在 Clash 客户端中选择节点或直连
proxy-groups:
- name: "PROXY"
# select 表示由用户手动选择当前使用的节点
type: select
# 这里引用的名称必须与上方 proxies 中的 name 完全一致
proxies:
- "🇺🇸 示例 · AnyTLS"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其余未命中的流量交给 PROXY 策略组
- MATCH,PROXY
十七、多个 IP、多个协议和自动测速
多个 IP 不能同时写进同一个 server。每个 IP 都要建立一个独立节点,再把节点名称加入同一个策略组。不同协议也可以放在同一个 proxies 列表中。
# 本地混合代理端口:同时提供 HTTP 与 SOCKS5 入站
mixed-port: 7890
# 是否允许局域网设备连接本机代理;false 表示仅允许本机使用
allow-lan: false
# 运行模式:rule 表示按照下方 rules 规则从上到下分流
mode: rule
# 日志级别:info 适合日常使用;排查问题时可临时改为 debug
log-level: info
# 是否启用 IPv6;当前网络没有 IPv6 时建议保持 false
ipv6: false
# 代理节点列表:多个 IP 或多个协议都必须分别写成独立节点
proxies:
# ----------------------------------------------------------
# 节点 1:VMess + TCP + 无 TLS 示例
# ----------------------------------------------------------
- name: "🇺🇸 示例 · VMess 01"
# 节点协议类型
type: vmess
# 文档专用示例 IP,不对应真实服务器
server: 192.0.2.11
# 示例服务端端口,实际值必须由节点服务端提供
port: 10001
# 示例 VMess UUID,仅用于展示字段格式
uuid: "11111111-1111-4111-8111-111111111121"
# 新版 VMess 通常使用 0
alterId: 0
# VMess 加密方式示例
cipher: auto
# 是否允许 UDP 流量
udp: true
# 使用原生 TCP 传输
network: tcp
# 此示例未启用 TLS
tls: false
# ----------------------------------------------------------
# 节点 2:同一组认证参数、不同示例 IP
# 每个 server 必须单独建立一个节点,不能在同一行写多个 IP
# ----------------------------------------------------------
- name: "🇺🇸 示例 · VMess 02"
type: vmess
server: 192.0.2.12
port: 10001
uuid: "11111111-1111-4111-8111-111111111121"
alterId: 0
cipher: auto
udp: true
network: tcp
tls: false
# ----------------------------------------------------------
# 节点 3:Trojan + TCP + TLS 示例
# 同一个 proxies 列表可以同时保存不同协议的节点
# ----------------------------------------------------------
- name: "🇯🇵 示例 · Trojan"
# 节点协议类型
type: trojan
# example.com 子域名仅用于文档演示
server: trojan.example.com
# TLS 服务常见端口示例
port: 443
# Trojan 认证密码示例,不对应真实账户
password: "example-trojan-password"
# 是否允许 UDP 流量
udp: true
# TLS 握手使用的 SNI,必须与真实服务端证书一致
sni: trojan.example.com
# false 表示验证服务端证书
skip-cert-verify: false
# 使用 TCP 传输
network: tcp
# 代理策略组:可同时定义自动测速组与总入口选择组
proxy-groups:
# 自动测速组:定期检测列表中的节点并选择延迟较低者
- name: "AUTO"
# url-test 表示自动测速选择
type: url-test
# 参与测速的节点名称必须与 proxies 中完全一致
proxies:
- "🇺🇸 示例 · VMess 01"
- "🇺🇸 示例 · VMess 02"
- "🇯🇵 示例 · Trojan"
# 示例检测地址;实际使用时换成稳定且可访问的 204 检测地址
url: "https://health-check.example.com/generate_204"
# 测速间隔,单位为秒;300 表示每 5 分钟测试一次
interval: 300
# 延迟差在 50 毫秒以内时尽量保持当前节点,减少频繁切换
tolerance: 50
# 总入口策略组:在客户端中手动选择自动组、单个节点或直连
- name: "PROXY"
# select 表示手动选择
type: select
# AUTO 是上方的自动测速组,其他条目是具体节点名称
proxies:
- "AUTO"
- "🇺🇸 示例 · VMess 01"
- "🇺🇸 示例 · VMess 02"
- "🇯🇵 示例 · Trojan"
- DIRECT
# 分流规则:按从上到下的顺序匹配,命中后不再继续匹配
rules:
# 本机回环地址直接连接
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 局域网 IPv4 地址直接连接
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
# 本机 IPv6 回环地址直接连接
- IP-CIDR6,::1/128,DIRECT,no-resolve
# 其他流量全部交给 PROXY 策略组
- MATCH,PROXY
十八、导入前检查清单
- 名称:每个节点的 name 必须唯一,策略组中的名称必须逐字一致。
- 地址:一个 server 只能填写一个 IP 或域名;多个 IP 必须拆成多个节点。
- 认证:UUID、密码、token、公钥和私钥必须来自对应服务端,不能混用。
- 传输:TCP 节点不要填写 ws-opts;WebSocket 节点必须检查 path 与 Host。
- TLS:开启 TLS 后,需要确认 SNI/servername、证书和是否跳过校验。
- 缩进:YAML 使用空格缩进,不能用 Tab;同一级字段应保持相同缩进。
十九、常见问题
节点名称可以包含中文、空格和国旗吗?
可以。建议给包含中文、空格或 emoji 的名称加双引号,并确保策略组中的引用完全一致。
为什么会出现 ws-opts.headers[Host] invalid?
通常是因为 Host 不是合法域名,或者 TCP 节点错误地保留了 WebSocket 参数。TCP 节点应删除整个 ws-opts。
这些示例可以直接连接吗?
不能。本文使用的是文档专用地址和演示认证数据,只用于理解和测试 YAML 结构。
需要检查 Clash 配置?
导入失败时,建议先检查 YAML 缩进,再核对节点协议、认证参数、传输层和 TLS 字段。