What is Clash? | Clash - A rule-based tunnel in Go.
Clash 是一个基于规则的跨平台代理工具,支持多种代理协议和灵活的分流规则。
systemd 服务配置
创建 /etc/systemd/system/clash.service:
[Unit]
Description=Clash daemon, A rule-based proxy in Go.
After=network.target
[Service]
Type=simple
Restart=always
ExecStart=/usr/local/bin/clash -d /home/pi/workspace/clash
[Install]
WantedBy=multi-user.target
基础配置
config.yaml 核心配置:
# 基础设置
mixed-port: 7890 # HTTP/SOCKS5 混合端口
socks-port: 7891 # SOCKS5 端口
mode: rule # 规则模式
log-level: info # 日志级别
# 外部控制器
external-controller: 0.0.0.0:9090
secret: ''
external-ui: ./clash-dashboard
DNS 配置
DNS 分流配置可实现国内外域名解析分离:
dns:
enable: true
ipv6: false
listen: 0.0.0.0:5352
default-nameserver:
- 119.29.29.29
- 223.5.5.5
nameserver:
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
fallback:
- 'https://dns.google/dns-query'
- 'https://1.1.1.1/dns-query'
fallback-filter:
geoip: true
ipcidr:
- 240.0.0.0/4
- 127.0.0.1/8
domain:
- +.google.com
- +.youtube.com
配置说明:
nameserver: 国内 DNS,用于解析国内域名fallback: 国外 DNS,用于解析被污染的域名fallback-filter: 过滤规则,防止 fallback 返回国内 IP
代理提供者
使用文件方式管理代理节点:
proxy-providers:
vhk:
type: file
path: ./proxies/hk.yaml
health-check:
enable: true
interval: 36000
url: http://www.gstatic.com/generate_204
规则提供者
使用远程规则集简化规则管理:
rule-providers:
reject:
type: http
behavior: domain
url: 'https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt'
path: ./ruleset/reject.yaml
interval: 86400
proxy:
type: http
behavior: domain
url: 'https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt'
path: ./ruleset/proxy.yaml
interval: 86400
规则配置
rules:
- RULE-SET,applications,DIRECT
- RULE-SET,private,DIRECT
- RULE-SET,reject,REJECT
- RULE-SET,proxy,PROXY
- GEOIP,CN,DIRECT
- MATCH,PROXY
代理组策略
支持多种策略模式:
proxy-groups:
# 手动选择
- name: PROXY_MU
type: select
proxies:
- vhk
- vus
- DIRECT
# 自动测速选择最快节点
- name: PROXY_AU
type: url-test
proxies:
- vhk
- vsg
- vus
url: 'http://www.gstatic.com/generate_204'
interval: 300
# 负载均衡
- name: PROXY_LB
type: load-balance
proxies:
- vhk
- vsg
url: 'http://www.gstatic.com/generate_204'
interval: 300
# 主代理组
- name: PROXY
type: select
proxies:
- PROXY_MU
- PROXY_AU
- PROXY_LB
策略类型说明:
select: 手动选择节点url-test: 自动选择延迟最低的节点load-balance: 负载均衡,分散流量到多个节点