链式代理配置详解

1. 客户端 dialer-proxy 语法(推荐)

修改配置文件实现。需要在落地节点配置中加上:dialer-proxy: 用于中转的线路节点。同时还要在代理组中加上一个中转代理组。以我的流量 --> 日本线路机1 --> 美国家宽2 --> Google 为例:

proxies:
  - name: "美国家宽2"
    dialer-proxy: dialer
    # ... 美国家宽2 的其余字段

  - name: "日本线路机1"
    # ... 日本线路机1 的其余字段

proxy-groups:
  - name: 用于中转的线路节点
    type: select
    proxies:
      - 日本线路机1

或者直接在 SubBoost 通过 UI 界面配置(欢迎反馈 BUG)

评价

  • 配置稍复杂,但更灵活。
  • 很多软件目前不支持,如 Loon,Stash。
  • 这是官方推荐的链式语法。
  • 很多人会搞反 “谁是中转 / 谁是落地”,导致链路表现与预期相反。
  • 新增的中转代理组是用来选择线路节点的,在其它任意分流代理组选择落地节点,能连上就是链式成功了。

2. 客户端 relay 语法

修改配置文件实现。直接通过代理组进行配置,以我的流量 --> 日本线路机1 --> 美国线路机2 --> 美国家宽3 --> Google 为例:

proxy-groups:
  - name: "链式3连跳"
    type: relay
    proxies:
      - 日本线路机1
      - 美国线路机2
      - 美国家宽3

评价

  • 配置简单,但不够灵活,无法切换中转节点。
  • 兼容性好,Loon,Stash 等软件也支持。
  • 一般不支持中转 UDP 流量。
  • 处于快被弃用的状态,官方建议迁移到 dialer-proxy。

3. 中转机做端口转发到落地机(推荐)

修改中转机配置实现。

3.1 获得落地节点

通过自建等方式获得一个 Vless 协议落地节点。(不要用低安全性协议)

3.2 配置中转机

以 S-UI 为例,中转机入站规则中增加:

3.2 修改落地节点

将落地节点的 IP 和端口改为中转机的 IP 和端口。

评价

  • 配置非常简单。
  • 中转看不到数据内容,落地机看不到源 IP,安全
  • 开销小,不会在中转机解密和加密,理论上最稳定,性能最好。
  • 无法在中转机分流。
  • 是否能转发 UDP 看情况。

4. 中转机配置出站 + 路由,连接到落地机

修改中转机配置实现。

4.1 获得落地节点

通过自建等方式获得一个任意协议落地节点。(可以用低安全性协议)

4.2 配置中转机

以 ss 协议落地节点为例,在中转机出站规则中增加:

再在中转机路由列表中增加规则:

最后将这条规则拖到第一个,然后点保存。这样使用中转机的节点,出口却是落地机的。

评价