网络

使用 QUIC 代理路由 HTTPS 与 HTTP/3

了解 BotBrowser 154 的认证 QUIC 代理路由,以及 HTTPS 隧道和兼容 HTTP/3 流量。

文档中心

想直接进入 网络 文档吗?

这篇文章属于博客内容库。若你要步骤化配置、参考说明和持续更新,请直接进入对应 docs 分区。

为现代网页流量选择明确的路由

许多部署仍然只把代理理解为 TCP 设置,但 HTTP/3 通过 UDP 上的 QUIC 工作。BotBrowser 154 新增认证的 quic:// 代理路由,通过标准 --proxy-server 配置 HTTPS 隧道,并在代理支持时通过 MASQUE CONNECT-UDP 承载兼容的 HTTP/3 流量。

这是一项浏览器级网络能力,不需要页面脚本或额外的应用隧道。代理服务仍必须提供所需的操作。URL 本身不会让普通服务自动变成 QUIC 代理。

QUIC 代理路由浏览器通过一个认证的 QUIC 代理路由分别承载 HTTPS 和兼容的 HTTP/3 流量。浏览器一套策略QUIC 代理认证路由HTTPS / HTTP/3CONNECT / CONNECT-UDP同一配置下的不同传输处理。

快速启动

使用与 BotBrowser major version 匹配的 Profile 包。当前公开入口从 BotBrowser 154.0.8037.17 开始:

chromium-browser \
  --bot-profile="/path/to/profile.enc" \
  --proxy-server="quic://user:pass@proxy.example.com:443"

真实凭据应放在受控的 secret 系统中。用户名或密码包含 @# 等保留字符时,先进行 URL 编码。不要把生产凭据写入公开脚本或提交记录。

QUIC 代理需要支持标准 CONNECT。兼容的 HTTP/3 流量还需要 MASQUE CONNECT-UDP。代理只支持前者时,HTTPS 仍可用,但不能据此宣称 HTTP/3 一定可用。

Per-context 路由

ENT Tier3 工作流可以为单独的 BrowserContext 设置路由。必须在创建页面和开始导航前发送设置命令:

await client.send("BotBrowser.setBrowserContextFlags", {
  browserContextId: context._contextId,
  botbrowserFlags: [
    "--bot-profile=/path/to/profile.enc",
    "--proxy-server=quic://user:pass@proxy.example.com:443",
  ],
});

不同上下文可以使用不同的已批准路由。这个设置只选择已有权限的代理策略,不会授予新的套餐、区域或服务权限。

HTTP/3 与失败策略

HTTP/3 是否使用取决于目标站点、浏览器策略和代理能力。一个站点可能使用 HTTP/3,另一个站点可能使用 HTTP/2,这属于正常的协议选择。需要 HTTP/3 的工作流应记录预期结果和代理不可用时的恢复动作。

QUIC 代理不可用时,BotBrowser 不会静默回落到直连。这能避免页面继续加载,却绕过组织批准的网络边界。运维人员应选择受批准的备用路由、重试,或停止工作流等待检查,而不是默认允许直连。

与 SOCKS5 UDP 的区别

SOCKS5 UDP 使用 UDP ASSOCIATE,quic:// 使用 QUIC 代理和 MASQUE 操作。两者都可能承载 HTTP/3,但配置语法、服务能力和提供商合同不同。不能仅把 SOCKS5 地址改成 quic:// 就获得 QUIC 代理能力。

上线检查

  • 使用 154.0.8037.17 或更新版本,以及匹配的 Profile。
  • 确认服务支持 QUIC、CONNECT 和所需的 CONNECT-UDP。
  • 在受控 secret 路径保存凭据。
  • 在第一个页面创建前完成 per-context 设置。
  • 记录 HTTP/3 预期结果和不直连的恢复策略。

详细参数请查看 QUIC Proxy Routing 文档。已有 SOCKS5 UDP 部署请查看 UDP over SOCKS5 文档

#QUIC#Http3#代理#Masque#网络#隐私

让 BotBrowser 从研究走向生产

先用这些指南理解模型,再进入跨平台验证、隔离上下文和面向规模化的浏览器部署。