VXVX Docs

模式

GFW、CN、全局代理与自定义路由配置

高级 → 模式 列出所有 模式。一个模式由以下部分组成:

  • 路由规则 — 决定每条连接走 代理直连 还是 阻断
  • DNS 规则 — 决定如何应答来自其他应用的 DNS 查询
  • 内部 DNS 服务器 — vx-core 自身需要解析域名时使用(例如拨号出站时)

内置模式

  • GFW(黑名单) (GFW): GFW 列表中的域名与 IP — 代理;其余 — 直连
  • CN(白名单) (CN): 中国大陆域名与 IP — 直连;其他 — 代理
  • Proxy All (Proxy All): 所有非私有流量 — 代理;私有 — 直连
  • RU Blocked (Russia Blocked): 俄罗斯屏蔽列表 — 代理;其余 — 直连
  • RU Blocked (All) (Russia Blocked(All)): 更广的俄罗斯屏蔽列表 — 代理;其余 — 直连

路由决策如何做出

vx-core 处理连接时,路由规则自上而下匹配第一条所有条件均匹配的规则 生效,匹配后不再考虑后续规则。 规则的决策为 直连、节点、选择器或 阻止,这决定流量去向。

  • 直连: 流量直连,不经代理
  • 节点: 流量发往该节点
  • 选择器: 流量发往选择器选中的节点
  • 阻止: 连接被拒绝

若无规则匹配,连接失败

示例:GFW 模式下访问 google

对于来自浏览器、域名为 "www.google.com" 的连接,将从起始规则 "默认代理DNS服务器" 起依次匹配路由规则,直至规则 "GFW模式代理域名" 匹配,因为 www.google.com 属于域名集合 "GFW模式代理域名"。

路由规则及其条件

每条路由规则包含:

  • 名称(用于显示与调试)
  • 出站:直连、节点、选择器或 屏蔽
  • 条件 — 该规则命中需满足的条件
  • 可选 回退

匹配全部

启用 匹配所有 使规则适用于每条连接(通常用于列表底部的兜底「默认代理」或「默认直连」规则)。启用时忽略 conditions 列表。

条件类型

关闭 匹配所有 时,规则在 conditions 列表中任一条件成立时命中(逻辑 OR)。若列表为空,规则永不命中。

单个 Condition 内,每个启用的子条件都必须成立(逻辑 AND)。若某 Condition 未启用任何子条件,则永不成立。

入站

当连接的入站标签属于指定标签之一时匹配。

通常用于匹配由特定入站处理的流量 — 例如, 来自 DNS 服务器的连接会以 DNS 服务器名称作为入站标签,可用此条件匹配来自 DNS 服务器的流量。

域名

当目标域名属于所选 域名集合 之一,或添加的域名条目时匹配。

IP

当目标 IP 属于所选 IP 集合或 CIDR 之一时匹配。

IP 条件可先解析域名。

App

当连接的发起应用属于所选应用集合或应用 之一时匹配。

域名 / IP / 应用

若连接的域名属于指定域名集合之一,或若连接的 IP 属于指定 IP 集合之一,或若连接的应用属于指定应用集合之一匹配

用于减少规则数量。若有名为 "Netflix" 的 IP 集合、域名集合与应用集合, 且希望它们都走同一节点,可添加一条带此条件的规则,而非三条规则。

Fake IP

当目标是 Fake DNS 颁发的假 IP 地址(来自 198.18.0.0/15 池)时匹配

Network

当连接具有指定网络类型时匹配

警告: 除非理解原因,否则避免在同一 Condition 中同时启用 域名IP 子条件: 该 Condition 仅在 两者 均为真时成立,即连接需同时有域名与 IP 信息, 而许多连接只有其中之一。若希望域名 IP 命中,应使用 conditions 中的多个条目。

回退

路由规则可定义 回退。若规则选定的出站失败(例如所选节点不可达), vx-core 按顺序尝试各回退中指定的节点/选择器。每个回退有自己的 conditions 列表与节点/选择器 — 当回退的 任一 条件成立(或启用 匹配所有)时使用该回退。若不匹配,则考虑下一个回退。

例如,GFW 的最后一条规则 "默认直连" 使用两个回退,使直连失败的流量可重试代理。每个 回退有条件,确保仅非 CN 域名或 IP 的连接重试代理,防止国内连接误走代理。

DNS 规则

DNS 规则指定应由哪个 DNS 服务器处理劫持的 DNS 查询。劫持的 DNS 查询是设备上 其他进程 发送、 由 vx-core 拦截到的查询(通过TUN 模式或系统 DNS 指向 vx-core 时)。

劫持 DNS 如何工作

  1. 某进程(例如系统 DNS)发送 DNS 查询(UDP/TCP 端口 53)。
  2. vx-core 拦截并交给 DNS 劫持组件处理。
  3. DNS 规则 自上而下 评估,与路由规则相同。
  4. 第一条匹配的规则 选择 DNS 服务器 处理查询。若无规则匹配,返回空 DNS 响应消息。
  5. vx-core 将 DNS 服务器返回的响应消息返回给源进程。

说明: 若控制抽屉中禁用 Fake DNS,指定 Fake DNS 服务器的规则会被跳过。

DNS 规则条件

DNS 规则在 所有启用的条件均匹配 时匹配,或 无启用条件 时匹配(兜底)。

警告: 这与路由规则不同。路由规则若无条件则永不匹配,但 DNS 规则若无条件则表示「始终匹配」。

  • 域名: 查询名称属于域名集合或域名条目之一
  • DNS 类型: 记录类型为 A、AAAA 等

内部 DNS 服务器

内部 DNS 服务器 为有序的 DNS 服务器列表。主要在 vx-core 拨号 域名目标时使用。当节点地址为域名时,其 IP 由内部 DNS 服务器解析。 它们 用于应答来自其他应用的劫持 DNS 查询。将依次使用,直到 某一服务器返回 IP 答案。

提示: 可双击内部 DNS 服务器将其删除。

如何添加模式

点击右上角添加按钮。可复制现有内置模式或从零创建模式。

相关

  • 集合 — 规则条件引用的域名、IP 与应用列表
  • 选择器 — 处理「代理」规则的节点
  • 路由 DNS — DNS 规则与全局 DNS 策略的区别
  • 简化路由 — 无需调整规则顺序的快速编辑

评论