策略组
策略组被应用于规则的策略中,可包含多个代理服务器或者其他策率组,策率组支持的类型:select(手动选择)、auto_test(延迟测试)、fallback(可用测试)、load_balance(负载均衡)、和external(外部资源,用来引用本地或者远程文件)。此外 Egern 也支持两种默认策略:DIRECT(直连) 和 REJECT(拒绝连接)。
(Select) 手动选择策略组
手动选择策略组允许用户手动选择一个子策略。
| 字段名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| name | string | 是 | 策略名称 |
| policies | string 数组 | 是 | 子策略名称或代理服务器名称 |
(Auto Test) 延迟测试策略
延迟测试策略会自动选择延迟最低的子策略。
| 字段名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| name | string | 是 | 策略名称 |
| policies | string 数组 | 是 | 子策略名称或代理服务器名称 |
| interval | integer | 否 | 延迟测试的间隔,默认为10分钟 |
| tolerance | integer | 否 | 延迟测试的差值变更范围,默认为100毫秒 |
| timeout | integer | 否 | 延迟测试超时时间,默认为5秒 |
(Fallback) 可用测试策略
可用测试策略会自动选择能够访问的第一个子策略或代理。
| 字段名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| name | string | 是 | 策略名称 |
| policies | string 数组 | 是 | 子策略名称或代理服务器名称 |
| interval | integer | 否 | 可用性测试的间隔,默认为10分钟 |
| timeout | integer | 否 | 可用性测试超时时间,默认为5秒 |
(Load Balance) 负载均衡策略
负载均衡策略尽可能将流量平均分配给所有子策略或代理。
| 字段名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| name | string | 是 | 策略名称 |
| policies | string 数组 | 是 | 子策略名称或代理服务器名称 |
(External) 外部资源策略
此策略使用本地或远程的策略组。
| 字段名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| name | string | 是 | 策略名称 |
| type | string | 是 | 代理集合的类型,可选值为 select,auto_test,fallback,load_balance |
| urls | string 数组 | 是 | 代理服务器的地址(本地路径或远程代理链接),兼容 Surge 和 v2ray 的格式 |
| interval | integer | 否 | 延迟测试的间隔,默认为10分钟 |
| tolerance | integer | 否 | 延迟测试的差值变更范围,默认为100毫秒 |
| timeout | integer | 否 | 延迟测试超时时间,默认为5秒 |
| update_interval | integer | 否 | 更新间隔,默认为一天 |
本地或远程内容应为一组代理服务器。
yaml
proxies:
- socks5:
name: Socks5
server: 127.0.0.1
port: 1080
username: user
password: pass
- vmess:
name: Vmess
server: example.com
port: 443
uuid: uuid
alter_id: 0
cipher: auto
tls: true
sni: example.com
network: ws
ws_opts:
path: /path配置示例
yaml
policy_groups:
- select:
name: "手动选择"
policies:
- US
- JP
- auto_test:
name: "延迟测试"
policies:
- US
- JP
interval: 600
tolerance: 100
timeout: 5000
- fallback:
name: "可用测试"
policies:
- US
- JP
interval: 600
timeout: 5000
- load_balance:
name: "负载均衡"
policies:
- US
- JP
- external:
name: "外部资源"
type: select
urls:
- "https://example.com/proxies.yaml"
update_interval: 86400在此配置中,我们设置了几种策略,包括手动选择、延迟测试、可用测试、负载均衡以及外部资源。每个策略都有自己的名称,并且列出了可以用于该策略的代理服务器(US 和 JP)。在外部资源策略中,我们设置了一个远程代理的 URL。