Clash配置文件格式详解

目录

什么是Clash配置文件?

Clash是一款优秀的开源代理客户端软件,它支持多种代理协议,包括Shadowsocks、VMess、Trojan等。Clash的强大功能得益于其灵活的配置文件格式,通过编辑配置文件可以轻松定制各种代理规则和设置。

Clash配置文件的结构

Clash配置文件采用YAML格式,由多个顶级字段组成,每个字段都有特定的用途和含义。下面我们来介绍一下常见的几个重要字段:

常用字段解释

proxy

该字段用于定义代理服务器,包括服务器地址、端口、协议类型等信息。可以定义多个代理服务器,供代理组引用。

proxy-group

该字段用于定义代理组,代理组可以包含一个或多个代理服务器,并配置负载均衡、延迟测试等策略。

rule

该字段用于定义路由规则,根据不同的规则将流量导向不同的代理组。规则支持丰富的匹配条件,如域名、IP、关键词等。

dns

该字段用于配置DNS服务器,可以设置主DNS和备用DNS,以及一些其他的DNS相关设置。

port

该字段用于设置Clash的HTTP代理端口。

socks-port

该字段用于设置Clash的SOCKS5代理端口。

redir-port

该字段用于设置Clash的透明代理端口。

mixed-port

该字段用于设置Clash的混合代理端口。

allow-lan

该字段用于设置是否允许局域网内其他设备访问Clash。

log-level

该字段用于设置Clash的日志级别,可选值有”debug”、”info”、”warn”、”error”。

external-controller

该字段用于开启Clash的外部控制功能,可以通过API对Clash进行远程管理。

secret

该字段用于设置Clash的访问密钥,用于外部控制时的身份验证。

完整的配置文件示例

以下是一个完整的Clash配置文件示例:

yaml

proxies:

  • name: “ss-server-1” type: ss server: 192.168.1.100 port: 8388 cipher: aes-256-cfb password: “password” – name: “vmess-server-1” type: vmess server: 192.168.1.101 port: 10086 uuid: “23ad6b82-488d-4a79-a7f9-2a8428964b5b” alterId: 64 cipher: auto

proxy-groups:

  • name: “Proxy” type: select proxies:
    • ss-server-1
    • vmess-server-1

rules:

  • DOMAIN-SUFFIX,google.com,Proxy
  • DOMAIN-KEYWORD,facebook,Proxy
  • IP-CIDR,192.168.1.0/24,DIRECT

dns: enable: true nameserver: – 8.8.8.8 – 1.1.1.1 fallback: – https://dns.google/dns-query – https://cloudflare-dns.com/dns-query

port: 7890 socks-port: 7891 redir-port: 7892 mixed-port: 7893

allow-lan: true log-level: info external-controller: 0.0.0.0:9090 secret: “password”

Clash配置文件常见问题解答

如何添加代理服务器?

proxies字段下添加新的代理服务器信息,包括服务器地址、端口、协议类型、密码等。

如何配置代理组?

proxy-groups字段下添加新的代理组,并在proxies字段中引用已定义的代理服务器。可以设置负载均衡、延迟测试等策略。

如何编写规则?

rules字段下添加新的路由规则,支持根据域名、IP、关键词等条件匹配,并将流量导向对应的代理组。

如何设置DNS服务器?

dns字段下配置主DNS和备用DNS服务器,还可以设置fallback DNS服务器。

如何开启局域网访问?

allow-lan字段设置为true即可开启局域网访问功能。

如何设置日志级别?

log-level字段设置日志级别,可选值有”debug”、”info”、”warn”、”error”。

如何开启外部控制?

external-controller字段设置外部控制的监听地址,并在secret字段设置访问密钥。

如何设置密钥?

secret字段设置访问Clash的密钥,用于外部控制时的身份验证。

正文完