进阶配置

Clash YAML 配置文件完全指南

Clash YAML 配置文件是整个代理系统的核心,掌握其结构与字段规范是进阶使用的必经之路。订阅链接提供的配置往往是通用模板,并不针对具体场景优化。本文为 Clash 官方配置文件完整说明,系统讲解每个核心字段的定义与官方推荐的最佳实践写法。

配置文件整体结构

一份完整的 Clash 配置文件由六个主要部分组成:全局参数、DNS 配置、代理节点(proxies)、策略组(proxy-groups)、规则(rules)以及可选的 TUN 配置。这六个部分共同决定了 Clash 如何处理你的每一条网络请求。

port: 7890
socks-port: 7891
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090

dns:
  enable: true
  enhanced-mode: fake-ip
  nameserver: [223.5.5.5, 119.29.29.29]

proxies: [ ... ]
proxy-groups: [ ... ]
rules: [ ... ]

全局参数详解

全局参数控制 Clash 的基本运行行为,以下是最常用的几个字段:

  • portsocks-port:分别是 HTTP 代理和 SOCKS5 代理的监听端口,默认 7890/7891。也可以用 mixed-port: 7890 合并为一个端口同时支持两种协议。
  • allow-lan:设为 true 后,局域网内的其他设备也可以将 Clash 作为代理服务器,适合路由器级别的共享代理场景。
  • mode:全局代理模式,可选 rule(智能分流)、global(全部走代理)、direct(全部直连)。
  • external-controller:开放 RESTful API 的地址和端口,各类 Dashboard(如 Yacd、MetaCubeXD)通过此接口与 Clash 通信,实现图形化控制。

proxies:代理节点配置

proxies 数组中的每个对象代表一个代理服务器节点。不同协议的必填字段不同,但 nametypeserverport 是所有协议通用的必填项。

Clash(Mihomo 内核)支持 Shadowsocks、VMess、VLESS、Trojan、Hysteria2、TUIC 等二十余种协议。以下是三种最常见协议的示例配置:

proxies:
  - name: "🇭🇰 香港-01"
    type: ss
    server: hk.example.com
    port: 8388
    cipher: chacha20-ietf-poly1305
    password: "your-password"
    udp: true

  - name: "🇺🇸 美国-01"
    type: vmess
    server: us.example.com
    port: 443
    uuid: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    alterId: 0
    cipher: auto
    tls: true
    network: ws
    ws-opts:
      path: /ray
      headers:
        Host: us.example.com

  - name: "🇯🇵 日本-01"
    type: trojan
    server: jp.example.com
    port: 443
    password: "your-password"
    sni: jp.example.com
    udp: true

proxy-groups:策略组

策略组是 Clash 区别于其他代理工具的核心优势。它将多个节点组合成一个逻辑代理单元,支持手动选择、自动测速、故障转移、负载均衡四种工作方式,并且策略组之间可以相互嵌套引用,构建出灵活的分层代理架构。

proxy-groups:
  - name: "🚀 节点选择"
    type: select
    proxies: ["♻️ 自动选择", "🇭🇰 香港-01", "🇺🇸 美国-01", DIRECT]

  - name: "♻️ 自动选择"
    type: url-test
    url: http://www.gstatic.com/generate_204
    interval: 300
    tolerance: 50
    proxies: ["🇭🇰 香港-01", "🇯🇵 日本-01", "🇺🇸 美国-01"]

  - name: "🎬 流媒体"
    type: select
    proxies: ["🇺🇸 美国-01", "🇯🇵 日本-01"]

上面的配置构建了一个两层结构:「节点选择」策略组作为对外暴露的入口,用户可以在这里手动选择具体节点或选择「自动选择」策略组;「自动选择」策略组会在后台持续测速,自动切换到延迟最低的节点。

rules:分流规则

规则列表按从上到下的顺序逐条匹配,一旦某条规则命中,立即执行对应动作并停止继续匹配。规则格式为 类型,匹配值,策略,最后一条必须是 MATCH 兜底规则。

rules:
  - DOMAIN,google.com,🚀 节点选择
  - DOMAIN-SUFFIX,youtube.com,🎬 流媒体
  - DOMAIN-KEYWORD,facebook,🚀 节点选择
  - GEOIP,CN,DIRECT
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - MATCH,🚀 节点选择
手动维护规则列表费时费力,推荐使用 RULE-SET 引用社区维护的规则集,如 Loyalsoldier/clash-rules,包含了精心整理的国内直连域名和代理域名列表,开箱即用且定期更新。

配置最佳实践

在实际使用中,有几个配置建议可以显著提升体验:第一,将常用的流媒体平台(Netflix、Disney+、YouTube)单独设置策略组,方便根据需要解锁不同地区的内容;第二,为 url-test 策略组设置合理的 tolerance(容差值),避免延迟差异很小时频繁切换节点;第三,使用 external-controller 配合 Yacd 或 MetaCubeXD 等 Dashboard,可以在浏览器中实时监控连接状态和流量,大大方便排查问题。

Clash
准备好使用 Clash 了吗?
免费下载,支持 Windows、macOS、Linux、Android 全平台。
立即下载
文章导航
相关文章
Clash
立即下载 Clash
全平台客户端,免费使用
前往下载页