CF 优选到底能快多少?四台海外服务器的同文件实测

给海外服务器套上 Cloudflare 之后,网页不一定更快。有人说换一个优选域名就能起飞,也有人优选后变得更慢。我想知道的是:对自己的服务器、自己的访问网络,究竟哪条路线有效?

于是做了一个可以自己点、自己测、自己导出结果的 CF 路径实验室。这篇文章讲清楚接入方式、怎样避免假测速,以及当前实际测到了什么。没有把论坛里的速度截图抄成自己的成绩,也没有为本实验购买付费智能路由服务。

一、先分清:我们究竟在优化哪一段

直连:       浏览器 ───────────────────→ 海外源站
CF 默认:    浏览器 → 默认 CF 入口 → CF 网络 → 海外源站
优选入口:   浏览器 → 候选 CF 入口 → CF 网络 → 同一海外源站
缓存命中:   浏览器 → CF 边缘缓存(可能不读取海外源站)

这里的 SaaS + 优选 CNAME,主要改变的是客户端接入 CF 的入口。它不是“指定 CF 一定从香港回源”,也不等于自动购买了内部智能路由。即使两个入口的延迟差不多,吞吐也可能相差很大。

入口、回源、缓存是三件事。静态页面可以在边缘缓存,动态接口往往仍要往返源站。一个文件首次 MISS 和后续 HIT 也不能混在同一个排行榜里。CF 官方缓存状态说明可以用来逐项核对,而不是只看页面有没有“小云朵”。

二、这次拿哪些服务器和路线做对照

源站为 CCS(美国 Buffalo,标称 1 Gbps)、AVA(摩尔多瓦,标称 100 Mbps)、MassiveGRID(德国 Frankfurt,标称 1 Gbps)、七牛云香港(标称 200 Mbps)。这些是端口或产品标称值,不是跨境单连接的保证。已出售的 Breeze、狗云和云途没有重新接入。

每台源站各有六种入口:直连、普通 CF、SaaS 默认对照,以及 SIN、WeTest、CFGO 三个优选候选,共 24 条。SaaS 默认对照用来区分“换了接入方式”与“真的换了更好的入口”。第三方域名的解析可能变化,不能把今天的优选当作永久配置。

三、照着做:先把域名和证书接正确

  1. 在 CF 区域创建独立的代理源站记录,例如 cf-ccs.bismih520.com,指向自己的 CCS。这个记录开启代理。
  2. 为直连单独建立 DNS-only 记录,例如 dl-ccs.bismih520.com,指向同一台机器。直连端点必须有浏览器信任的公开证书,不能拿 CF Origin CA 当普通网站证书。
  3. 在 Cloudflare for SaaS 添加自定义主机名,例如 dl-ccs-sin.bismih.cn,并为它明确指定 custom_origin_server=cf-ccs.bismih520.com。
  4. 外部 DNS 先 CNAME 到自己的正常 CF 目标。等主机名和边缘证书都变为 active,完成 HTTPS 访问,再切换到候选优选 CNAME。
  5. 切换之后重新校验 TLS、源站标识和文件字节。失败就回到正常目标,不靠关闭证书验证、降低 TLS 模式来“修好”。

这里保留原有 NS,也不改账户里其他服务共用的 fallback origin。每个测试域名单独指定自己的源站,避免为了做一次实验影响别的网站。官方自定义源站文档也提醒了 Host 与 SNI 的区别:两者要分别检查,不能看到一个 HTTP 200 就认为全部配置正确。

四、测速文件为什么不能随便找一个

四台服务器使用同一份 100 MiB 高熵固定文件,完整 SHA-256 为 a138724eb6854c277dbaf7a5a6215a78b6aa91418ad5099a4776149c08e7908f。4 MiB、16 MiB 是它的固定前缀。这样不会因为零填充、压缩或不同源站的文件内容不一致而得到虚高速度。

预验收还发现一个实际问题:部分 CF 路线把 no-store 对象的 Range 请求变成了整个对象的响应。于是正式页面改为 /origin/4MiB.bin、/origin/16MiB.bin、/origin/100MiB.bin 这种明确大小的路径,不再用“读一个大文件的小分段”控制流量。

四路模式也不是重复下载四份完整文件:它请求 -p0 到 -p3 四个固定文件视图,拼起来与同总量单路的字节相同。浏览器拒绝错误长度或源站标识;工程测试还会校验实际内容的 SHA-256。四路 HTTP 请求可能共用一条 HTTP/2 连接,所以不能直接称为四条 TCP 线路。

五、怎样在网页上得到有意义的结果

  1. 打开实验室,选择一台源站。默认选直连、CF 默认和 SIN 候选;也可以全选六条。
  2. 先关掉自己的代理或 VPN,并标注运营商和接入方式。Wi-Fi、手机流量、服务器网络不要混为一类。
  3. 用 4 MiB 快速判断连通和短文件体验,再用 16 MiB / 100 MiB 看更长的传输。4 MiB 不能证明线路持续跑满。
  4. 选“每次回源”,交错跑三轮,看完整平均速度的中位数和成功率;不要只挑一秒峰值。
  5. 再选“CDN 缓存”重复测试。真正读到 HIT 才代表缓存命中,MISS 仍属于冷访问。
  6. 导出 JSON 或 CSV。换手机流量、换运营商、换晚高峰时段再测,保留自己的记录。

网页会显示实时 Mbps、曲线、总字节、首字节、完整平均、滑窗峰值、HTTPS 请求耗时、波动、CF 机房、缓存状态。独立的 /probe 始终禁止缓存,所以它测的是小请求的回源耗时;缓存文件自己的边缘响应要看下载首字节,而不是把这个 probe 当成纯边缘延迟。HTTP 请求失败比例不是 ICMP 丢包。浏览器请求会复用连接,而工程脚本使用新 curl 连接;这两类延迟也不应直接混成一个数字。

完整平均 Mbps = 收到的字节数 × 8 ÷ 总耗时毫秒 ÷ 1000
MB/s ≈ Mbps ÷ 8

六、当前实测结果:先看条件,再看数字

测量点为腾讯云上海大陆机房,200 Mbps 峰值;没有把它当成三网家庭宽带。测试期间未停止源站的其他正常业务,因此结果是当时实际可用表现,不是空机端口极限。时间:2026-10-17T08:49:04.680797+00:00 至 2026-10-17T09:45:36.577195+00:00。保留下来的完整样本 116 条,总尝试 148 条;早期并行境外对照期间的 6 条样本已剔除。

下表为 4 MiB、单路、完整平均的中位数。回源列的成功数同时给出分母;失败、超时、文件不完整不会被算作低速“成功”。缓存列只取真实 HIT,样本不足明确显示。工程下载超时上限为 40 秒,这表示超出本实验等待窗口,不表示那条路线在任何设备上永远不可用。

源站 路线 回源 Mbps HTTP 请求 ms 完整成功 / 尝试 缓存 HIT Mbps 回源测试的 CF 机房
ColoCrossing-198 直连 4.77 991 3/3 — (HIT n=0) 直连
ColoCrossing-198 CF 默认 2.42 950 3/3 4.87 (HIT n=2) AMS
ColoCrossing-198 SaaS 默认 2.60 1161 3/3 6.49 (HIT n=2) AMS
ColoCrossing-198 SIN 优选候选 11.44 819 3/3 66.62 (HIT n=2) NRT
ColoCrossing-198 WeTest 优选候选 1.38 2182 3/3 1.18 (HIT n=1) NRT/SIN
ColoCrossing-198 CFGO 优选候选 0.86 2175 3/3 0.87 (HIT n=1) SIN
AVA.HOSTING-217 直连 3.94 1183 3/3 — (HIT n=0) 直连
AVA.HOSTING-217 CF 默认 4.25 864 3/3 9.77 (HIT n=2) AMS
AVA.HOSTING-217 SaaS 默认 7.09 976 3/3 5.18 (HIT n=2) AMS
AVA.HOSTING-217 SIN 优选候选 11.27 1123 3/3 6.97 (HIT n=2) NRT
AVA.HOSTING-217 WeTest 优选候选 1.04 2488 2/3 1.45 (HIT n=2) SIN
AVA.HOSTING-217 CFGO 优选候选 8.50 1584 1/3 1.05 (HIT n=1) AMS/SIN
MassiveGRID-185 直连 2.90 906 3/3 — (HIT n=0) 直连
MassiveGRID-185 CF 默认 3.19 913 3/3 9.21 (HIT n=2) AMS
MassiveGRID-185 SaaS 默认 10.47 721 3/3 9.23 (HIT n=2) AMS
MassiveGRID-185 SIN 优选候选 10.36 876 3/3 26.07 (HIT n=2) NRT
MassiveGRID-185 WeTest 优选候选 — — 0/3 1.59 (HIT n=1) SIN
MassiveGRID-185 CFGO 优选候选 — — 0/3 1.01 (HIT n=1) SIN
七牛云 · 香港 直连 — — 0/3 — (HIT n=0) 直连
七牛云 · 香港 CF 默认 5.98 1339 3/3 9.17 (HIT n=2) AMS
七牛云 · 香港 SaaS 默认 6.20 1224 3/3 11.62 (HIT n=2) AMS
七牛云 · 香港 SIN 优选候选 26.37 383 3/3 57.16 (HIT n=2) NRT
七牛云 · 香港 WeTest 优选候选 1.11 1635 1/3 1.12 (HIT n=1) SIN
七牛云 · 香港 CFGO 优选候选 — — 0/3 1.43 (HIT n=1) SIN
  • ColoCrossing-198:当前短文件样本中,SIN 优选候选 的完整平均中位数为 11.44 Mbps,成功 3/3。相对 CF 默认 2.42 Mbps 为 4.73 倍。直连在同一组条件下为 4.77 Mbps。这不是全网或晚高峰的永久冠军。
  • AVA.HOSTING-217:当前短文件样本中,SIN 优选候选 的完整平均中位数为 11.27 Mbps,成功 3/3。相对 CF 默认 4.25 Mbps 为 2.65 倍。直连在同一组条件下为 3.94 Mbps。这不是全网或晚高峰的永久冠军。
  • MassiveGRID-185:当前短文件样本中,SIN 优选候选 的完整平均中位数为 10.36 Mbps,成功 3/3。相对 CF 默认 3.19 Mbps 为 3.24 倍。直连在同一组条件下为 2.90 Mbps。这不是全网或晚高峰的永久冠军。
  • 七牛云 · 香港:当前短文件样本中,SIN 优选候选 的完整平均中位数为 26.37 Mbps,成功 3/3。相对 CF 默认 5.98 Mbps 为 4.41 倍。这不是全网或晚高峰的永久冠军。

部分默认解析选到了 IPv6,候选域名则可能使用 IPv4,机房也不同。原始记录保留了目标 IP、DNS / TCP / TLS 时间和 HTTP 协议,方便进一步定位。这一层结果说明的是这套 DNS 入口方案在该测量点的效果,不是“同一个 IP、同一种地址族”的纯链路实验。

下载全部公开工程原始记录。网站里的个人测速另存,只能由当前浏览器会话读取,不会把其他人的记录公开出来。

大文件和多连接补测

下面是 100 MiB 长文件,以及同一 CCS / SIN 入口、同为 16 MiB 的单连接与四连接对照。并发试验固定为单连接对照实际使用的同一个边缘 IP,且逐片校验内容。这里每种条件只有一次样本,用来验收流程和观察长传输,不据此宣称长期稳定上限;独立 curl 连接也不能冒充浏览器 HTTP/2 的四个流。

路线 总量 连接方式 状态 完整 Mbps 耗时 说明
七牛云 · 香港 · SIN 优选候选 100 MiB 单连接 完整 95.04 8.8 s 内容校验通过
ColoCrossing-198 · SIN 优选候选 100 MiB 单连接 完整 90.91 9.2 s 内容校验通过
ColoCrossing-198 · SIN 优选候选 16 MiB 单连接 完整 4.58 29.3 s 内容校验通过
ColoCrossing-198 · SIN 优选候选 16 MiB 四个独立 curl TCP 连接(不是浏览器复用) 完整 50.15 2.7 s 内容校验通过

七、再往深一点:固定同一域名,只换目标 IP

浏览器的 fetch 不能像 curl 一样任意设置连接 IP 和 TLS SNI。要验证候选 IP 本身,可以下载 严格 TLS 客户端脚本,或者这样做:

curl --noproxy '*' --resolve cf-ccs.bismih520.com:443:104.18.41.41   --connect-timeout 10 --max-time 45   -D headers.txt -o test.bin   'https://cf-ccs.bismih520.com/origin/4MiB.bin?run=your-test-id'

python3 client-test.py --server ccs --ip 104.18.41.41 --rounds 3

这里 URL、Host、SNI 都保持自己的域名,只改变实际连接 IP。不使用别人的域名伪装,不加 -k,不扫描整个网段。IP 必须来自可信候选并校验归属,下载仍以自己的文件和证书为准。CloudflareSpeedTest可以用自定义 URL 做更系统的候选筛选;只测 CF 自己的测速站,不能证明访问自己的海外源站也快。

八、HowToLiveBetter 的优选试验入口

同一份静态部署也增加了 HowToLiveBetter 优选试验入口。先在 Pages 绑定外部子域并完成证书,再调整 DNS 候选;它不需要额外存一份服务器文件。对照入口仍为 CF Pages 默认版和腾讯云静态版,保留原作者署名、许可证和来源。

这是可回退的实验入口,不是官方保证长期兼容的加速套餐。若候选失效或 Pages 域名状态异常,恢复 CNAME 到正常 Pages 目标即可。访问效果仍以你的实际网络为准。

九、哪些优化值得继续,哪些不该盲目套

优先把可缓存的静态资源正确缓存;动态 API 则要看实际回源的首字节。针对自己的运营商筛少量候选,再做跨时段复测,比不断增加未经验证的“优选域名”更有价值。IPv4 / IPv6、单路 / 四路、短文件 / 长文件要分开看。

后续如果需要运营商分线路 DNS,可以继续研究 cf2dns 和 BestCF。本项目没有把未经审查的全自动脚本拿来修改整域 DNS,也没有安装公共反代、借用无关域名或为实验新增付费服务。Argo 智能路由现也属于 Smart Shield 功能体系;这与免费入口优选并非一回事。原有区域的 Argo 开关未能通过当前 API 读取,因此不据此宣称它已关或已开。三网宽带、手机流量、连续晚高峰的长期稳定性仍是待验证项,不拿一台服务器的结果补成“全国提速”。

十、安全、隐私与资源边界

测试端点只提供固定公开文件,不接受上传、任意 URL 转发或命令执行。第三方候选只用于这些没有账号与私人数据的独立实验域名,浏览器下载明确不携带 Cookie。直连测试会公开源站 IP,这与隐藏源站不是同一个目标。

每源站最多八路同时下载,按请求预留字节计入每小时 10 GiB 上限;达到保护上限返回 429。每台只存 100 MiB 文件,实际传输由固定文件视图提供。记录接口限制请求大小和并发,只保存随机会话的哈希、测速字段与手动网络标签,90 天清理且有总行数上限;应用不保存访问者 IP、UA 或 Cookie。DNS 与 CF 仍有各自的服务商层面连接日志政策。

参考与复核入口

  • XIU2 / CloudflareSpeedTest:用自己的 URL 校验候选边缘 IP;TCP 延迟排名不能代替完整文件的下载排名。仅筛少量现成候选,不做全网段扫描。
  • DustinWin / BestCF:持续汇总运营商 IP 与域名。使用者所在运营商、地区和时段仍需本地复测,不直接采用他人的速度数字。
  • gacjie / cf2dns:支持 DNSPod 等线路化解析、公共 CNAME 与定时更新。当前只取独立候选,不安装全域 DNS 自动修改器,不复制第三方授权或付费配置。
  • PoemMisty / CFData-WEB:可视化筛选的研究候选;本站的测速实现并非该项目,也不声称已经验证了它的所有功能。
  • Cloudflare 官方:自定义源站与 SNI:每个 SaaS 测试域名指定账户内代理域名作为自己的源站。Host 与 SNI 要分别检查,不以关闭证书校验来掩盖接入失败。
  • Cloudflare 官方:域名与证书预验证:先使用正常 CF 目标完成域名与证书激活,再切换第三方优选域名;切换后重测 TLS、固定源站标识、Range 和文件内容。
  • Cloudflare 官方:默认缓存行为:独立 origin/no-store 与 cached/s-maxage 路径。读到真实 HIT 才计作边缘缓存命中,不把浏览器本地缓存当成网络速度。
  • Cloudflare 官方:Argo / Smart Shield:内部智能路由与入口 IP 优选是不同链路。未购买新服务;区域原有 Argo 状态 API 未能读取,不据此断言开关状态,也不宣称锁定内部回源路径。
  • NodeSeek #964530:优选筛选讨论:讨论包含移动网络、HKG 与时段差异,以及 CFData-WEB。用于提出跨时段和跨入口的试验问题,不把网友推测视为官方限速结论。
  • NodeSeek #940069:SaaS 路线讨论:论坛讨论用于提出问题;接入是否有效,仍以当前证书、实际源站标识和文件校验为准,不以网友断言代替验证。
  • NodeSeek #164870:CDN / Pages / Workers 优选:参考 Pages 外部自定义域名完成证书后再调整入口的思路,已用于独立的 HowToLiveBetter 试验域名;不改动两个正常镜像,不照搬旧教程的整域设置。
  • Cloudflare Pages 官方:外部自定义域名:先把域名关联到 Pages 项目,再按要求设置 CNAME 并等待证书。优选属于额外实验,不等于官方对第三方 DNS 候选长期效果的承诺。
  • LibreSpeed / speedtest:适合通用网速测试。本实验更关注指定海外源站、相同文件、缓存分组和具体 CNAME 候选,不把通用测速服务器的成绩移植过来。

结论很朴素:优选可以是一条值得验证的技术路线,但“用了优选”不等于“已经优化成功”。把相同文件、完整字节、真实缓存状态和自己的网络放在一起,数字才有意义。

上一篇
下一篇