这份详细的部署教程将指引您搭建 personal-edge-proxy——一套实用的多入站、多出站个人代理方案。它主要使用 Hysteria2 (HY2) 作为日常主入口,通过 Xray 进行灵活的路由,并可选地将AI流量(如OpenAI、Gemini)通过 Cloudflare WARP 出口,将Claude/Anthropic流量固定到独立的 SOCKS5 出口。

整个方案的核心思路是:将“入口”(如何连接VPS)与“出口”(VPS如何访问目标服务)解耦。这样做的好处是,您可以根据需要独立优化每一层,例如,更换入口协议不影响AI流量的出口IP,反之亦然。

🚀 快速开始:最小可用部署

如果您只是想快速拥有一个可用的代理,部署HY2单入口、直连出口即可。

  1. 准备VPS:一台拥有公网IPv4、开放UDP端口的Linux服务器(推荐Ubuntu 24.04 LTS),并已通过SSH密钥登录(请务必先由人类手动完成SSH密钥配置,再交由AI助手操作)。
  2. 部署HY2服务端:在VPS上安装并配置Hysteria2服务端,监听一个UDP端口(如 24443),并设置强密码。
  3. 配置客户端:在您的设备(如Windows的v2rayN)上,添加一个Hysteria2节点,填入VPS IP、端口和密码。
  4. 验证:连接后,访问 http://ip.sb 检查出口IP是否为VPS IP。做到这一步,您就拥有了一个可用的基础代理。

📈 推荐部署顺序:分步优化

如果您的主要目标是稳定使用AI服务,建议按以下顺序逐步构建,而非一次性部署所有组件。

  1. 第一步:测试VPS线路。购买前,先用 pingtracert 从您的网络测试VPS IP,重点关注延迟和丢包率。稳定的200 Mbps带宽比高峰期严重丢包的“共享1 Gbps”更实用。
  2. 第二步:基础SSH与HY2。按上文“最小可用部署”完成SSH密钥配置和HY2部署,确保客户端能稳定连接VPS。
  3. 第三步:为AI流量添加WARP出口(关键优化)。在VPS上安装并配置Cloudflare WARP(warp-svc),使其在本地 127.0.0.1:40000 开启一个SOCKS5代理。然后,修改Xray的 routing 规则,将发往OpenAI、Gemini等AI服务的流量,路由到WARP出口,其他流量则走VPS直连。这样,AI服务看到的将是Cloudflare的IP,而非VPS机房IP。
  4. 第四步:(可选)为Claude配置固定SOCKS5出口。如果您发现Claude/Anthropic对出口IP变化敏感,可以再添加一个固定的上游SOCKS5代理,并在Xray路由中为 claude.aianthropic.com 等域名专门配置使用此出口。
  5. 第五步:(可选)增加REALITY等备用入口。如果您的网络环境UDP经常被限或丢包严重,可以再配置一个VLESS+REALITY的TCP入口(如端口443)作为备用。注意:这解决的是“如何进入VPS”的问题,不改变出口IP。

⚙️ 关键配置示例

仓库中的 examples/ 目录提供了可直接参考的配置示例。

  • 服务端核心配置 (examples/xray-server.example.jsonc):包含了HY2入站、REALITY入站、WARP出站、固定SOCKS5出站,以及按域名分流的routing规则。
  • v2rayN客户端配置
    • Hysteria2:参考 examples/v2rayn-hysteria2.example.md,使用sing-box核心。
    • REALITY:参考 examples/v2rayn-reality-vision.example.md,使用Xray核心。

💡 重要提示与最佳实践

  • 安全第一切勿将VPS密码、SSH私钥、UUID、Reality密钥等敏感信息提交到公开仓库。项目示例中已使用占位符,请务必替换。
  • Fail Closed策略:对于指定了固定出口(如WARP或SOCKS5)的流量,建议配置为当该出口不可用时请求失败,而非回落到VPS直连,以避免无意中暴露真实IP。
  • 理解各层作用
    • HY2 / REALITY / Cloudflare Tunnel:解决“怎么进入VPS”。
    • WARP / 固定SOCKS5:解决“VPS从哪里出去”。
  • 按需部署:您不必部署所有组件。如果HY2直连已经满足需求,就无需增加REALITY入口。

项目地址:https://github.com/yding-git/personal-edge-proxy