常见问题
在 Egern 中规则、代理与策略组的关系
1. 规则决定策略
- 规则 是用于匹配网络请求的条件。当网络请求发出时,Egern 会根据规则的顺序逐一匹配。
- 每条规则都指定了一个 策略(policy),这个策略可以是一个 代理名称、策略组名称 或者
DIRECT
和REJECT
。
2. 策略
- 策略 可以是单个 代理,也可以是一个 策略组。
- 当规则匹配后,如果策略是一个代理名称,流量将通过指定的代理服务器转发。
- 如果策略是一个策略组名称,Egern 将根据策略组的类型和配置,选择合适的代理服务器。
3. 策略组的子策略
- 策略组 可以包含多个 代理 或 其他策略组,形成一个层级结构。
- 例如,策略组
手动选择
包含VmessProxy
和ShadowsocksProxy
,用户可以手动选择使用哪个代理。 - 在嵌套的策略组中,规则匹配的策略可能需要经过多个策略组的选择,最终确定具体的代理服务器。
4. 流量处理流程
- 请求发出:用户的网络请求需要被处理。
- 规则匹配:Egern 从上到下匹配配置的规则,找到第一个符合条件的规则。
- 确定策略:根据匹配规则的
policy
,确定使用的策略。 - 策略解析:
- 如果策略是
DIRECT
,直接连接,不使用代理。 - 如果策略是
REJECT
,阻止连接。 - 如果策略是一个代理名称,使用该代理服务器。
- 如果策略是一个策略组,按照策略组的类型和配置,选择具体的代理服务器。
- 如果策略是
- 请求转发:根据确定的代理服务器,处理并转发网络请求。
如何添加规则集
Egern 当前支持 Surge 的规则集,在 工具 -> 规则 -> + -> 类型选择 rule-set, 添加 Surge 的规则集 URL。
如何添加模块
Egern 当前支持 Surge 模块,在 工具 -> 模块 中添加 Surge 的模块 URL。