relay 是一种特殊的代理组:流量按成员顺序依次经过每个节点,形成一条转发链。常见动机:用一台延迟低的“中转机”接力到一台 IP 干净的“落地机”,兼顾速度与出口质量。

配置写法

proxy-groups:
  - name: "中转链"
    type: relay
    proxies:
      - "中转-上海"     # 第一跳:离你近
      - "落地-美国"     # 最后一跳:决定出口 IP

rules:
  - DOMAIN-SUFFIX,target-site.com,中转链

顺序即路径:本机 → 中转-上海 → 落地-美国 → 目标网站。目标网站看到的是“落地-美国”的 IP。

几个事实,帮你决定要不要用

  • 延迟是叠加的:链路延迟≈各跳延迟之和,跳数越多越慢。两跳是常见上限。
  • 稳定性是相乘的:链上任何一跳故障整条链断,relay 组本身不做健康检查与自动切换。
  • 每一跳必须支持转发到下一跳:成员必须是具体节点(不能是 url-test 等自动组);UDP 转发要求链上所有节点都支持 UDP。
  • 服务商订阅里标注“中转/隧道”的节点内部已经做了中转,一般不需要你再手动 relay。手动 relay 更多用于自建节点组合。

典型场景

  1. 落地保护:自建落地机 IP 不直接暴露给本地网络,前面套一层中转。
  2. 线路优化:本地到落地机直连绕路丢包,经中转机的专线反而更快。
  3. 固定出口做业务:需要固定干净 IP 的场景(收发验证码、访问风控严格的服务),前段节点随便换,落地保持不变。

验证链路

启用后访问 IP 查询网站应显示最后一跳的 IP;Connections 页面 Chains 列会显示 中转链。想确认中间跳确实生效,可在中转机上观察连接(自建场景)。

提示:relay 属于“明确知道自己要什么”的功能。日常使用中若只是想要更稳的连接,优先尝试 fallback 组,成本远低于维护一条转发链。