Clash 配置规则完全指南

目录

  1. 什么是 Clash?
  2. Clash 配置规则概述
  3. 配置规则语法及常用规则
  4. 配置文件示例及解析
  5. 配置文件优化技巧
  6. FAQ – 常见问题解答

什么是 Clash?

Clash 是一款开源的跨平台代理客户端软件,支持多种代理协议,包括 Shadowsocks、Vmess、Trojan 等,广受科学上网用户的喜爱。与传统的代理软件不同,Clash 采用规则匹配的方式进行流量转发,用户可以根据自己的需求灵活配置代理规则。

Clash 配置规则概述

Clash 的配置文件采用 YAML 格式,主要包含以下几个部分:

  • Proxy: 定义代理节点信息
  • Proxy Group: 定义代理组,支持负载均衡、按延迟选择等策略
  • Rule: 定义流量匹配规则,决定流量如何转发

其中,Rule 部分是 Clash 最核心的配置,它决定了流量如何在不同的代理节点或直连之间进行转发。用户可以根据自己的需求,灵活地配置各种规则。

配置规则语法及常用规则

规则语法

Clash 的规则语法采用简单直观的格式,每条规则由 4 个部分组成:

  • 规则类型
  • 匹配条件
  • 代理组
  • 注释

一条完整的规则示例如下:

  • DOMAIN-SUFFIX,google.com,PROXY,谷歌相关

其中:

  • DOMAIN-SUFFIX 是规则类型
  • google.com 是匹配条件
  • PROXY 是代理组名称
  • 谷歌相关 是注释

常用规则类型

Clash 支持多种规则类型,常用的有:

  • DOMAIN: 匹配域名
  • DOMAIN-SUFFIX: 匹配域名后缀
  • DOMAIN-KEYWORD: 匹配域名关键字
  • IP-CIDR: 匹配 IP 段
  • SRC-PORT: 匹配源端口
  • DST-PORT: 匹配目标端口
  • GEOIP: 匹配地理位置
  • MATCH: 默认规则,匹配剩余流量

配置文件示例及解析

以下是一个典型的 Clash 配置文件示例:

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

proxies:

  • name: 节点1 type: ss server: 192.168.1.1 port: 8388 password: password cipher: aes-256-cfb

proxy-groups:

  • name: PROXY type: select proxies:
    • 节点1
    • DIRECT

rules:

  • DOMAIN-SUFFIX,google.com,PROXY,谷歌相关
  • DOMAIN-SUFFIX,youtube.com,PROXY,YouTube相关
  • GEOIP,CN,DIRECT,中国大陆直连
  • MATCH,PROXY,其他流量代理

上述配置文件包含了 Clash 的基本设置、代理节点定义、代理组定义以及流量规则配置。其中:

  • proxies 部分定义了 SS 类型的代理节点
  • proxy-groups 部分定义了一个名为 PROXY 的代理组,包含了上述的节点1
  • rules 部分定义了 4 条流量规则:
    1. 匹配 google.com 域名后缀的流量走 PROXY 代理组
    2. 匹配 youtube.com 域名后缀的流量走 PROXY 代理组
    3. 匹配来自中国大陆的流量直连
    4. 其他流量走 PROXY 代理组

通过这样的配置,用户可以实现对不同类型流量的精细化控制。

配置文件优化技巧

  1. 合理使用通配符: 使用 DOMAIN-SUFFIXDOMAIN-KEYWORD 可以减少规则数量,提高匹配效率。
  2. 分类管理规则: 将相似的规则归类到同一个代理组,方便后续维护和调整。
  3. 利用 GEOIP 规则: 根据地理位置直连国内流量,可以有效减轻代理服务器负载。
  4. 动态更新节点: 可以结合第三方服务定期更新节点信息,保证代理质量。
  5. 测试并优化配置: 定期测试配置文件,调整规则顺序和代理组设置,以获得最佳性能。

FAQ – 常见问题解答

Q1: Clash 支持哪些代理协议?

A1: Clash 支持多种代理协议,包括 Shadowsocks、Vmess、Trojan、Snell 等。用户可以根据自身需求选择合适的协议。

Q2: 如何添加新的代理节点?

A2: 在 proxies 部分添加新的节点配置即可,包括节点名称、类型、服务器地址、端口、密码等信息。

Q3: 如何创建代理组并设置负载均衡?

A3: 在 proxy-groups 部分定义代理组,将多个节点加入同一个组,并设置 type: load-balance 即可实现负载均衡。

Q4: 如何实现国内外流量分流?

A4: 可以使用 GEOIP 规则匹配来自中国大陆的流量,并将其直连。其他流量则走代理。

Q5: Clash 的日志级别如何设置?

A5: 在 log-level 项中设置日志级别,可选值包括 infowarningerror 等,用于排查问题。

希望以上内容对您有所帮助。如果还有其他问题,欢迎随时询问!

正文完