基础负载均衡(轮询)工作机制详解

Shadowrocket 的负载均衡(Load Balance)功能可以将流量分散到多个代理节点,提升连接稳定性和速度,以下是详细设置指南:

基本概念

负载均衡策略类型:

  • 轮询 (round-robin):依次循环使用每个节点
  • 最低延迟 (least ping):自动选择延迟最低的节点
  • 随机 (random):随机选择可用节点
  • 故障转移 (fallback):主节点失效时自动切换(严格说不是负载均衡,但常配合使用)

界面设置步骤(推荐)

创建负载均衡组

  1. 打开 Shadowrocket → 底部「配置」→ 选择当前使用的配置 →「编辑配置
  2. 找到「代理分组」(Groups) → 点击右上角「」
  3. 名称:自定义(如 Auto-Group
  4. 类型:选择「负载均衡」(Load Balance)
  5. 策略:选择算法(轮询/最低延迟/随机)

添加节点

  • 在「代理」列表中勾选要加入负载均衡的节点(建议 3-5 个)
  • 确保节点协议相同(如都是 SS 或都是 VMess)

设置健康检测(关键)

测试 URL: http://www.gstatic.com/generate_204
测试间隔: 600(秒,建议 300-600)
容差: 100(毫秒,延迟差异小于此值不切换)
超时: 5(秒)

应用配置

  • 返回首页,将「全局路由」下的代理选择为你创建的负载均衡组
  • 或在「规则」中指定特定流量走该组

配置文件手动编辑(高级)

如需更精细控制,可编辑 .conf 文件:

[Proxy Group]LoadBalance = load-balance, 节点1, 节点2, 节点3, strategy=round-robin
# 最低延迟模式(推荐)
AutoSelect = load-balance, 香港1, 香港2, 日本1, 新加坡1, url=http://www.gstatic.com/generate_204, interval=300, tolerance=50, strategy=least-ping
# 故障转移+负载均衡混合
FallbackLB = fallback, AutoSelect, 直连, url=http://www.gstatic.com/generate_204, interval=600

关键参数详解

参数 说明 建议值
url 测试链接,用于检测节点可用性和延迟 http://www.gstatic.com/generate_204http://cp.cloudflare.com/generate_204
interval 测试间隔(秒) 300-600,太频繁耗电
tolerance 容差(毫秒) 50-100,避免延迟相近时频繁切换
timeout 超时时间(秒) 3-5

最佳实践建议

节点选择策略

  • 地理位置相近:选择同一地区不同运营商的节点(如香港 CN2、香港 BGP、香港 PCCW)
  • 避免跨区混用:不要同时把香港和美国节点放一组,会导致 IP 频繁跳动触发风控

规则优化

在「配置」→「规则」中:

# 对需要固定 IP 的服务禁用负载均衡
DOMAIN-SUFFIX,netflix.com,美国节点
DOMAIN-SUFFIX,bank.com,香港节点
# 普通流量走负载均衡
GEOIP,CN,DIRECT
FINAL,LoadBalance

与故障转移配合使用

建议采用双层结构:

  1. 第一层:负载均衡组(多个同地区节点)
  2. 第二层:故障转移组(负载均衡组作为首选,备用节点作为 fallback)

注意事项

  • Websocket 连接:某些长连接应用(如 WhatsApp、在线游戏)可能不适合频繁切换节点
  • 支付类 App:银行、支付宝等建议指定固定节点,避免 IP 变动触发风控
  • 流媒体:Netflix、Disney+ 等建议单独分组,因为负载均衡可能导致 IP 频繁变化被封锁

故障排查

问题:节点不自动切换

  • 检查是否开启了「自动测试」(设置 → 延迟测试方法 → 必须选择 CONNECT 或 HTTP)

问题:频繁断流

  • 增大 tolerance 值至 100-200ms
  • 检查节点是否真正可用(手动测试每个节点)

问题:耗电严重

  • 增大 interval 至 600 秒以上
  • 减少组内节点数量(建议不超过 5 个)

设置完成后,Shadowrocket 会根据策略自动分配流量,你可以在首页看到当前使用的节点标识。

您可以还会对下面的文章感兴趣: