0%

Cloudflare WARP 出口代理学习笔记


🧠 项目名称:Cloudflare WARP 出口代理方案学习笔记


🧩 一、应用场景描述

  • 操作系统:Linux
  • 出口工具:Cloudflare warp-cli / warp-go / wgcf
  • 搭配面板:3x-ui(Xray)
  • 应用目标:
    • 为特定网站流量提供 WARP 代理出口
    • 切换出口 IP 以绕封锁或解除限速
    • 实现按地区出站(如日本/美国)
    • 避免 DNS 泄漏、增强隐私

🔧 二、方案架构与组件职责

1
[客户端] → [Xray 3x-ui 入站] → [出站策略选择] → [WARP 本地监听端口 (40000)] → [Cloudflare Anycast IP 出口]
组件 功能描述 备注
warp-cli / warp-go 本地透明代理出口 建议用 warp-go 控制更多
3x-ui 出站 管理所有流量出口策略 可绑定到特定域名/IP规则
3x-ui 路由规则 流量匹配判断(按域名/IP/端口) 规则顺序决定优先级
入站设置 定义哪些客户端请求进入 Xray 配合透明代理、SOCKS、端口映射等

🔄 三、常用操作记录

1. 更换 WARP IP(warp-cli)
1
2
warp-cli disconnect && warp-cli connect
curl ipinfo.io
2. warp-go 启动监听端口(替代 warp-cli)
1
2
./warp-go --mode=proxy --proxy-port=40000
# 可加 --gateway= 指定地区入口,如:162.159.192.1 (美国)
3. 配合 3x-ui 添加出站配置:
  • 类型:SOCKS / HTTP
  • 地址:127.0.0.1
  • 端口:40000
  • 可选:开启 UDP 支持

🌐 四、推荐 Cloudflare 接入点 IP(用于控制地区偏向)

地区 接入 IP 示例
美国 162.159.192.1
日本 162.159.193.1
香港 162.159.195.1
台湾 162.159.196.1

这些可用于 warp-go 的 --gateway 参数


📈 五、验证出口 IP 方法

1
2
curl https://www.cloudflare.com/cdn-cgi/trace
curl ipinfo.io

🧪 六、已发现问题及解决记录

问题描述 原因分析 解决方式
WARP IP 切换后不立即生效 可能是 Xray 出站连接复用、DNS 缓存未更新 重启 Xray 核心或断开重连
WARP 对指定站点不生效 出站规则未匹配成功 / 顺序不对 检查路由顺序和优先级,提升规则匹配顺位
DNS 泄漏问题 系统 DNS 未跟随代理 使用 DNS-over-HTTPS 或 TUN 模式解决

🧰 七、后续探索方向

  • 配合 iptables 透明代理全部系统流量
  • warp-go + 自动换 IP 脚本
  • 建立多出口策略:部分走 WARP,部分走直连/VPS
  • 引入 GeoIP、ASN 策略匹配优化

🧾 第二部分:3x-ui 中路由规则与出站优先级解析


📘 1. 路由规则作用顺序(从上往下,先匹配先执行)

在 Xray 的路由系统中(3x-ui 图形化封装):

  • 路由规则按 配置顺序 匹配执行
  • 一旦某条规则匹配成功,不会继续匹配下一个

✅ 例如:

1
2
规则1:域名包含 youtube.com → 出站:WARP
规则2:IP 属于 CN → 出站:直连

如果访问 www.youtube.com,会走第一条 WARP,不会再判断是否是中国 IP。


📘 2. 出站策略规则优先级建议

  • 需要特殊代理的站点(如被封锁的国际服务)放在前面
  • 默认直连或大多数站点走的出口 放在最后(作为兜底)

📘 3. DNS 与路由匹配的联动逻辑

  • 如果你的域名解析走的是系统 DNS(非 Xray 处理),则:
    • 有可能 先匹配 IP,再决定出站
    • 这样会出现 DNS 泄漏 或 路由不生效

🔧 建议:

  • 启用 Xray 内置 DNS(如使用 DoH)
  • 在 3x-ui 面板中开启 DNS 分流配置
  • 设置 DNS 查询优先走 WARP 出站,避免泄漏

📘 4. 为什么 WARP 二级代理生效延迟明显?

常见原因:

原因 说明 建议
出站连接复用 Xray 默认复用连接,可能仍在使用旧 IP 重启 WARP 或切换节点
DNS 缓存 域名解析未及时刷新,仍走旧出口 使用 xray 内置 DNS 配置强制刷新
规则未生效 路由顺序未正确命中 提升对应规则顺位或写精确规则(如 full domain)
代理协议缓冲延迟 比如 HTTP vs SOCKS vs TUN 模式差异 使用 warp-go 的 TUN 代理可提升反应