月度归档: 2022 年 8 月

线路节点加速终极方案

之前用 time.cloudflare.com 作为固定 CF 加速节点,已经获得了比较稳定的连接,现在又发现了更有意思的玩法。

最近发现有个名为 ip-scanner/cloudflare 的项目,收集了许多非官方 CF IP。除非是做公益,这些节点无非就是配置不严谨的反代(或者蜜罐)

这些 IP 能用的并不多(比例上),不过通过 glider 的 check,10 秒不到即可在上千个 IP 中快速筛选出所有能用的 IP。我测试了一下能连通的比例大概是 15%。

真正有趣的地方不在这里,我很好奇这些 IP 的来源,于是翻了下 issue。有一条回复提到:有一些 ip 是对所有的域名都进行代理

我跑了一遍所有的 IP,没想到这样的万能 IP 还不少,大约有几十个,有些甚至是整个段都可以用(包括 bot 漏扫的)。把代理的 IP 直接换掉即可加速线路,这样连 Cloudeflare 中转都省掉了。当然,443 端口 + websocket 是必须的。

具体流程是:

  1. 抓取所有项目内的 IP

可以直接下载,也可以通过另一个 dogefy/CloudflareIP-AutoCollector 项目来抓取,需在同目录下自建 key.txt 并写入关键字才能顺利抓取(写 - 即可抓取全部)。

  1. 测试所选的 IP

可先通过 glider 排除不可用的 IP,测试会快一些。
以下是一段批量测试 demo,这里用百度下拉关键字接口作为目标。ip_result.txt 是上一步默认生成的。

import subprocess

ip = open("ip.txt", "w")

for line in open("ip_result.txt"):
    try:
        result = subprocess.check_output('curl -m 5 "https://www.baidu.com/sugrec" --resolve www.baidu.com:443:'+line, shell=True)
        if "queryid" in str(result):
            ip.write(line)
    except:
        pass

ip.close()
  1. 测速

CloudflareSpeedTest 测速。上一步默认生成到 ip.txt,直接运行 CloudflareST -dn 999

  1. 安全

尽管蜜罐的可能性很低,但毕竟这些 IP 来历不明,最好不要用 Trojan-Go 和 VLESS,SS AEAD 和 VMESS 是比较好的选择。

至此,关于代理和加速已经没什么可探究了,再烂的线路都能起飞。

后话:这些 IP 还有个用途,可以写入 HOSTS 实现部分裸连。当然,这种做法不太安全,适用面窄,也容易被封。

issue 中似乎有人担心这个项目会被滥用,我觉得大可不必。这些 IP 轮换非常快,想用来建站是不可能的。作为代理加速,也必须是自建线路,同时筛选测试有一定门槛,即使知道原理,愿意用的人也不多。对于小白和白嫖用户来说,使用现成的工具订阅免费源依然最便捷的方式。

[已寄]一条特别的Cloudflare线路

g最近换了联通宽带,所以把 Cloudflare 段重新测了一遍,测试过程中发现有个 IP 被自动反解成了域名,并且是之前扫描没见过的:time.cloudflare.com,并且支持套 cdn。

搜了一下得知,这个是 Cloudflare 的时间校对服务,还有个 roughtime.cloudflare.com,这两个域名被分配到同一个段的两个固定 IP 上,于是跑了一下对比测试。

可以看到,这条线路相比其他 Cloudflare 自动分配的域名要好出很多,ping 丢包率即使在最差的情况下也在 3% 以内。

之后又 tcping 了整个段。

从筛选结果上看,0~20 区段最稳定,之后的情况比较随机。因为软件本身的问题,有时候会整体卡壳,实际 Failed 没那么高。

我用 Excel 选取了其中 tcping 和丢包最低的几十个 IP,交给 glider 自己 lha 模式匹配。手机上就用 time 子域名,比较好记。


更新:

要获得大量可用 IP,最好的办法还是让 CloudFlare 自己挑选,例如使用这份 sites-using-cloudflare。在里面二次筛选低延迟的 IP 将更加省力,偶尔还能获得非 172/104 开头的宝藏 IP。