为什么要优选IP

优选 IP 可以显著优化使用 Cloudflare CDN 的网站速度,提高 Cloudflare CDN 的质量和服务的稳定性。

例如,我之前撰写的 Cloudflare Workers 部署 VLESS 节点代码,通过 CF 优选 IP,不仅能够降低延迟、提升节点速度,还能有效解决节点 IP 乱跳的问题。

本文将主要介绍优选 IP 的原理及其实现方法,下一次将讨论如何修改路由以应用优选出的 IP。

优选IP的原理

首先我们要理解什么是CDN CDN

这是一个展示 CDN(内容分发网络)原理的示意图。理论上,当 CDN 收到用户的内容请求时,会优先从距离最近的边缘服务器(edge server)获取数据并回复用户。然而,由于现实网络的复杂性,实际的响应可能并非来自最优服务器。

优先 IP 的过程就是用户通过工具筛选出最优服务器,并相应地修改路由确保实际的响应来自最优服务器。

如何优选

CloudflareSpeedTest:https://github.com/XIU2/CloudflareSpeedTest

GitHub 上有一个非常好用的工具可以非常简单、快速的筛选出最快的 10 个 IP

示例:

IP 地址           已发送  已接收  丢包率  平均延迟  下载速度 (MB/s)
104.27.200.69     4       4       0.00    146.23    28.64
172.67.60.78      4       4       0.00    139.82    15.02
104.25.140.153    4       4       0.00    146.49    14.90
104.27.192.65     4       4       0.00    140.28    14.07
172.67.62.214     4       4       0.00    139.29    12.71
104.27.207.5      4       4       0.00    145.92    11.95
172.67.54.193     4       4       0.00    146.71    11.55
104.22.66.8       4       4       0.00    147.42    11.11
104.27.197.63     4       4       0.00    131.29    10.26
172.67.58.91      4       4       0.00    140.19    9.14
...

# 如果平均延迟非常低(如 0.xx),则说明 CloudflareST 测速时走了代理,请先关闭代理软件后再测速。
# 如果在路由器上运行,请先关闭路由器内的代理(或将其排除),否则测速结果可能会不准确/无法使用。

# 因为每次测速都是在每个 IP 段中随机 IP,所以每次的测速结果都不可能相同,这是正常的!

# 注意!我发现电脑开机后第一次测速延迟会明显偏高(手动 TCPing 也一样),后续测速都正常
# 因此建议大家开机后第一次正式测速前,先随便测几个 IP(无需等待延迟测速完成,只要进度条动了就可以直接关了)

# 软件在 默认参数 下的整个流程大概步骤:
# 1. 延迟测速(默认 TCPing 模式,HTTPing 模式需要手动加上参数)
# 2. 延迟排序(延迟 从低到高 排序并按条件过滤,不同丢包率会分开排序,因此可能会有一些延迟低但丢包的 IP 排到后面)
# 3. 下载测速(从延迟最低的 IP 开始依次下载测速,默认测够 10 个就会停止)
# 4. 速度排序(速度从高到低排序)
# 5. 输出结果(通过参数控制是否输出到命令行(-p 0)或输出到文件(-o ""))

# 注意:输出的结果文件 result.csv 通过微软 Excel 表格打开会中文乱码,这是正常的,其他表格软件/记事本都显示正常
文章目录