本教材仅展示了基本配置,如需详细了解请参考官方wiki,如使用Meta内核也可参考Meta Wiki
# Tproxy模式必须开启,该模式赖以工作的条件
tproxy-port: 7893
# HTTP 代理端口, 选择开启,用不上就别开,用的核电池当我没说
port: 7890
# SOCKS5 代理端口 选择开启,用不上就别开
socks-port: 7891
# 是否允许局域网的连接,如关闭会导致热点没用网络
allow-lan: false
# 工作模式 rule(根据规则分流) global(直接走GLOBAL分组) direct(直连,不通过代理)
mode: rule
# 日志显示级别 debug info warning error silent
log-level: warning
# 如无必要不建议启用IPV6
ipv6: false
# 网页面板监听地址,没事别改
external-controller: 0.0.0.0:9090
# 本地网页面板的的相对路径(相对/data/clash)
external-ui: yacd
# 网页面板的密码
secret: 'clash'
tun:
enable: false # 启用TUN模式,优先级高于Tproxy
stack: system # system/gvisor二选一,system性能更好,但兼容性较差
dns-hijack:
- 0.0.0.0:53 # 推荐值
auto-route: true # 必须为true或者不写
dns:
# Tproxy模式下必须为true
enable: true
# 不要改变端口,若allow-lan为true则必须为0.0.0.0:1053,如果用TUN可以注释掉
listen: 0.0.0.0:1053
# 如无必要不建议启用IPV6
ipv6: false
# 字面意思
default-nameserver:
- 114.114.114.114
- 223.5.5.5
# 两种 fake-ip redir-host,若要修改先阅读教程
enhanced-mode: redir-host
# 如果是fake-ip模式,则哪些url不走fake-ip
fake-ip-filter:
- localhost.ptlogin2.qq.com
# 国内的dns解析服务
nameserver:
- https://rubyfish.cn/dns-query
- https://dns.alidns.com/dns-query
- https://doh.pub/dns-query
# 国外的dns解析服务
fallback:
- https://doh.opendns.com/dns-query#Proxy
- https://doh.dns.sb/dns-query#Proxy
- https://dns64.dns.google/dns-query#Proxy
- https://dns.google/dns-query#Proxy
#
# 特别说明,上面的#Proxy不是注释,yaml语法,注释#前必须为空格或换行符
# Proxy是下方代理组的名字,意思是这些DNS查询也走这个代理组
#
# 即使不用也要保留,模块合并文件时的锚点
proxies:
# 在这配置订阅
proxy-providers:
# 随便的机场名字
SpeederOne:
# 订阅类型 file http;用订阅链接的用http,本地文件用file
type: http
# 机场订阅链接
url: "机场订阅链接"
# 下载好的文件的存储相对位置(相对/data/clash)
path: ./proxy_providers/SpeederOne.yaml
# 自动更新订阅间隔,秒为单位
interval: 3600
# 健康检查:检查节点可用性
health-check:
# 开启健康检查
enable: true
# 健康检查用的网址
url: http://www.gstatic.com/generate_204
# 定时健康检查
interval: 300
# 过滤部分节点,请自行学习正则表达式
filter: "香港|美国|HK|US"
BaiPiao:
# 此处用的file类型,
type: file
path: ./proxy_providers/BaiPiao.yaml
health-check:
enable: true
url: http://www.gstatic.com/generate_204
interval: 300
# 设置代理分组,
proxy-groups:
-
# 组名
name: Proxy
# 行为,有多种,具体看教程,如自动选延迟低的、负载均衡啥的
type: select
use:
# 把前面的机场节点放到组里面 前面proxy-providers下的机场名字
- SpeederOne
- BaiPiao
# 过滤部分节点,请自行学习正则表达式
filter: "香港|美国|HK|US"
-
# 国内流量分组
name: Domestic
type: select
use:
# 同上 机场得放在use下
- BaiPiao
proxies:
# 可以引用其他的组,但是得放在proxies下
# DIRECT(直连)为自带的分组
- DIRECT
# 引用上一个分组
- Proxy
-
name: Google
type: select
proxies:
- Domestic
- Proxy
use:
- SpeederOne
-
name: Others
type: select
proxies:
- Proxy
- Domestic
# 规则配置
rule-providers:
# 规则名
Ad:
# 规则类型 file为文件保存在本地,要更新得手动, http是在网上的规则
type: file
# 行为看文档
behavior: classical
# 规则保存的相对位置
path: ./rule_providers/Ad.yaml
#这里是http类型的,必须有网页地址 即url
GoogleDrive:
type: http
behavior: classical
# 规则的链接
url: "https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Clash/GoogleDrive/GoogleDrive.yaml"
# 下载下来存哪儿
path: ./rule_providers/GoogleDrive.yaml
# 分流规则 使用规则,按顺序匹配
#
# 重点(敲黑板)
# 规则从上往下顺序匹配,前面匹配了就不会继续向后匹配
#
rules:
# 防止回环
- IP-CIDR,127.0.0.1/32,REJECT,no-resolve
# RULE-SET使用上面的rule-providers的规则
# 语法:RULE-SET,规则名,匹配后的行为
# 此处行为为拒绝,即没网
- RULE-SET,Ad,REJECT
# 此处行为为使用Google分组(proxy-groups)
- RULE-SET,GoogleDrive,Google
# 匹配国内的流量,此处为直连,不走代理
- GEOIP,CN,Domestic
# MATCH为全匹配,意思就是其他没匹配到的走Others分组(proxy-groups)
- MATCH,Others