Clash Verge Rev
...大约 4 分钟Clash Verge
提示
开坑之前,想的是使用Electron和Tauri开发一款桌面程序。
然后最近也在研究Clash Meta内核,不过现在改名了,叫Mihamo,作者也挺有趣,和去年Clash For Windows删库事件可能有千丝万缕影响,改成了崩坏。
然后发现Clash-Verge-Rev正好是用Tauri构建的,而且开源,所以正中下怀。
Tel群中也正好看见大家在讨论得物从Electron迁移到Tauri的事情,https://mp.weixin.qq.com/s/UxmJxU4-fv9GeRxl2fzOGw,所以,开扒!
放一个内核文档地址:配置 - Docs (metacubex.one)
先从配置文件开始
# Generated by Clash Verge
# Clash 的混合代理端口,支持 HTTP、HTTPS 和 SOCKS 代理协议的请求。
mixed-port: 7897
# 单独的 SOCKS5 代理端口
socks-port: 7898
# 支持纯 HTTP 和 HTTPS 协议的代理请求
port: 7899
log-level: debug
# 允许局域网设备通过本机的 Clash 代理访问互联网
allow-lan: true
# 流量分流模式
# rule:根据规则(如域名匹配、IP 匹配等)分流。
mode: rule
# 配置外部控制端口,通过这个端口,外部应用(如Clash Dashboard)可以连接并控制 Clash。
# 详细看下面折叠
external-controller: 127.0.0.1:9097
secret: ''
# TUN 模式配置:实现系统级流量代理
tun:
auto-detect-interface: true #自动检测网络接口
auto-route: true #自动路由流量,将TUN模式的流量重定向到代理
device: Mihomo #虚拟TUN网卡的设备名称
dns-hijack: #拦截所有DNS请求(端口 53),强制通过Clash处理
- any:53
mtu: 1500 #设置最大传输单元(MTU),默认1500字节
stack: mixed #协议栈:支持混合(IPv4和IPv6)
strict-route: false #是否强制路由流量
# 跨域控制配置
external-controller-cors:
allow-private-network: true #允许来自私有网络(如局域网)的跨域访问
allow-origins: #定义允许的跨域来源,* 表示允许所有来源
- '*'
unified-delay: true #优化不同节点的测速结果,统一延迟计算
外部控制设置 RESTful API 文档
日志
接口:
/logs
方法:
GET
完整路径:
GET /logs
描述: 获取实时日志
流量
- 接口:
/traffic
方法:
GET
完整路径:
GET /traffic
描述: 获取实时流量数据
版本
- 接口:
/version
方法:
GET
完整路径:
GET /version
描述: 获取 Clash 版本
配置
- 接口:
/configs
- 方法:
GET
- 完整路径:
GET /configs
- 描述: 获取基础配置
- 完整路径:
- 方法:
PUT
- 完整路径:
PUT /configs
- 描述: 重新加载配置文件
- 完整路径:
- 方法:
PATCH
- 完整路径:
PATCH /configs
- 描述: 增量修改配置
- 完整路径:
- 方法:
节点
- 接口:
/proxies
- 方法:
GET
- 完整路径:
GET /proxies
- 描述: 获取所有节点信息
- 完整路径:
- 方法:
/proxies/:name
- 方法:
GET
- 完整路径:
GET /proxies/:name
- 描述: 获取指定节点信息
- 完整路径:
- 方法:
PUT
- 完整路径:
PUT /proxies/:name
- 描述: 切换 Selector 中选中的节点
- 完整路径:
- 方法:
/proxies/:name/delay
- 方法:
GET
- 完整路径:
GET /proxies/:name/delay
- 描述: 获取指定节点的延迟测试信息
- 完整路径:
- 方法:
规则
接口:
/rules
方法:
GET
完整路径:
GET /rules
描述: 获取规则信息
连接
- 接口:
/connections
- 方法:
GET
- 完整路径:
GET /connections
- 描述: 获取连接信息
- 完整路径:
- 方法:
DELETE
- 完整路径:
DELETE /connections
- 描述: 关闭所有连接
- 完整路径:
- 方法:
/connections/:id
- 方法:
DELETE
- 完整路径:
DELETE /connections/:id
- 描述: 关闭指定连接
- 完整路径:
- 方法:
DNS查询
- 接口:
/dns/query
方法:
GET
完整路径:
GET /dns/query?name={name}[&type={type}]
描述: 获取指定域名和类型的 DNS 查询数据
参数:
- name (必填): 要查询的域名
- type (可选): 要查询的 DNS 记录类型 (例如, A, MX, CNAME)。默认为
A
。
示例:
GET /dns/query?name=example.com&type=A