以下内容为我开发期间记录的内容 已经过时 详情可以去NodeSeek技术区看或者转到另外一篇文章查看完整体验
https://blog.darklotus.cn/tutorials/hkcdn.html
速度测试网站
https://i.darklotus.cn 这个用的IP数量多的那个fastcdn.kisskiss.store
我的chevereto图床 源站在国外服务器 其实你都用国外服务器了 用cf官方IP 速度就嘎嘎快到飞起了 用优选反代IP 有一点好处吧 速度也是根据水管来看 延迟低了并发很差 如果水管大的香港阿里云 体验确实是比官方的IP要好很多的 而且晚上高峰期的丢包 更加显而易见 总之有点好处 但不多 我研究的目的 其实是就是图个好玩 在我有国内cdn的情况下 这些耍法意义都不是很大
https://gallery.darklotus.cn 这个用的dnspod解析的两个延迟最低的fast.darklotus.cn
这个源站是在vercel上 然后套了cf 然后再用的优选反代IP 全国平均速度达到了0.2s 有多恐怖我不多说
(这跟hugo的轻量和性能也有关系 以及我超强的优化思路 我觉得我这套流程真的无敌 反正我是没看到别人这样玩)
CNAME地址
fastcdn.kisskiss.store
在cloudflare解析 所有阿里云腾讯云线路 最高50个IP 稳定性不好说 速度也不如下面的两个IP的
更新频率1.5小时一次
fast.darklotus.cn
在dnspod解析 最多两个IP 优点是从独立数据库里获取延迟最低 测试通过率最高的IP进行更换
更新频率15分钟一次
IP测试脚本为1小时一次(所有反代IP的测试)
当前为测试阶段 不保证稳定性 别依赖我 别指望我 我只想加速我自己的网站 不想你寄生白嫖我还要因为我没做好挨骂
日志更新
选择优选IP的逻辑从最低延迟改为成功通过次数 这样自动选取的同时 我还能手动踢出去效果不好的 测试IP保留IP的逻辑已由脚本自行挑选出来 新加坡 香港阿里云 或者腾讯云 韩国等亚太节点 具体啥效果 还需测试一段时间。
缺点
因为是套了两层 即使是nginx设置了
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
获取到的客户端真实IP也依旧是优选反代IP
目前我不知道咋解决这个问题
如果你只是套了一层官方的CDN是可以通过这个设置获取到客户端真实IP的
然而cf反代IP大多数都是nginx或者其他程序反代转发的 多了一层 我暂时也想不到怎么解决这个问题
iptables端口转发的方式应该是类似csgo.com的做法 csgo的IP明显不像cf的官方IP
我cname获取到csgo的域名上 都不会出现获取不到真实IP的情况 日志都是正常获取客户端真实IP
但如果优选反代IP是通过nginx反代 或者其他啥面板做到的 那么就很难说清楚 具体我没试过 我也不是很清楚
拿来加速图床没啥问题 如果是别的网站 黑客打你更方便了 你的源站防火墙都介入不了。。。
cloudflare日志里全是优选反代IP的请求记录 压根就获取不到客户端真实IP 意味着你不能根据IP进行相关操作
是我太天真了 难怪优选反代IP死得很快。。。像我这样网站经常挨打的 祈祷一下你的源站性能够强 顶得住cc的炮火吧
不过我测试了是可以正常启动cf的质询和速率等规则等 只是获取不到客户端真实IP你无法针对性的处理了而已 开启质询就好了
因为真的要来打你网站的 IP信息知道了又能起多大的作用呢?你都套cf了 还怕啥?结论就是放心用 开质询 所有攻击全部老实
还有就是 可以拿来加速在pages和vercel套cf的网站 实测效果好到棒 无需担心源站问题 想分析客户端用统计系统就好了
我还要说
调试了两天 修复了大量Bug 各种情况我都测试了一遍 我要多用一段时间再考虑是否开源 如果稳定就开源了(想了很久还是决定不开源 不道德 而且我承担不起这个责任) 如果不稳定直接胎死腹中 就不发出来丢人现眼了 脚本逻辑全是我自己思考完成的 但获取优秀的反代IP则是从别的大佬的数据获取的 然后我再多重筛选了一遍 如果我用华为云 再增加线路判定 那么我确实可以做出来全国每个地区都快到飞起的线路 但我发现是没有必要的 因为阿里云香港有些大水管 全国速度都已经快到飞起了 其实我只需要找到水管最大 稳定性最好 速度最快的IP就好了 cf的制裁已经来了 终于利好我们这些建站的了 其实官方的速度也已经很OK了 都有大佬做相应的优选Cname 而且跟他们接触下来 此方面我确实技不如人 但是我可以提供大量想法进行优化 目前我已经看到官方优选IP的极限在哪里了 甚至我自己做了一个全国延迟最低的cname 但因为维护太累了 我就给放弃了 当时我还不会自动化 写脚本对我来说太困难了 能看懂都不错了 现在我尝试写脚本 我最擅长的就是调试测试找bug 以及思考如何解决bug 技术水平我是很差的 但好在现在有了Ai 真的是多亏了Ai 我才能把我的想法很快就变为现实 多谢GPT大人(虽然他变蠢的时候没少冲他发火)。
47开头阿里云小水管没法用 已经被我踢掉了 那种全球测速都顶不住的 延迟在地也没用 我测试了一下我的图床 半天打不开!要你何用?目前只搞8开头的阿里云
为什么要搞?
加速网站 玩玩 信不过别人 自己搞丰衣足食 没想到我上我也行 加速我的破网站 黑客堆着我的IP打是吧 其实根本就不是我的IP 你慢慢打吧
具体玩法
没用华为云 节点多了维护太麻烦了 用的dnspod 且只有两个节点 国外线路走的csgo.com 速度嘎嘎快 节点已经经过筛选 只有阿里云香港 或者腾讯云的香港 很少情况会出现韩国新加坡节点 加速效果不好说 因为写的脚本bug太多了 我是技术水平达不到想法 越写bug越多 所以大量功能被我砍掉了 你们也清楚 延迟低 带宽小 并发非常拉胯 所以我还在测试当中 但是检测功能做到了 每15分钟进行一次更新 监测到当前解析的IP ping不通 或者 curl测试返回状态码不是200 就从我的数据库里去找最优选IP进行替换
我的想法
因为我很清楚这种反代IP的时效性很差 很容易寄 所以我做了好几层筛选 先筛选IP段 确认是最快的几个大厂和地区 然后进行全天检测ping和curl测试 一个ip测试完毕 就会写入数据库记录一次成功和延迟 我ddns到dnspod的检测方式是 每十五分钟 就去查询一次 当前解析的两个IP是否还符合ping通和curl返回200状态吗 一旦有一个失效 就判定为失效ip 并记录一次错误到数据库
然后脚本就会去数据库里找最低延迟记录 且没用标记错误的IP 找到了拿出来 再测一遍ping和curl测试 通过后就会拿去替换 通不过 则继续找下一个符合条件的进行更新 这样我的cname就会一直找延迟最低的 (因为中途bug太多 不敢继续加判定规则了 怕又出错)目前各个情况我都测试完毕 勉强可以跑起来 结果我也还算满意
已知的一些问题
已知8开头的阿里云香港IP段 并发嘎嘎好 但是47开头的就非常拉胯了 但是47延迟又要低一些 家宽能达到30 腾讯云服务器去ping甚至只有10ms 所以很伤脑筋呀
先测试吧 我的博客图床和画廊已经用上了 用香港阿里云腾讯云的IP 又不怕投毒 感兴趣的可以一起玩玩
cf+反代优选IP建站 简直完美 小小脚本小子来打我网站 我根本不在乎 你不打我才觉得无聊
自己搞nginx反代cloudflare的IP 不让别人搭车也学会了 没意思
4 条评论
试了下,晚上也到2秒以上了。cf优选ip本身相对vercel来说就有些差距,主要是图片加载慢很多。单独一个vercel优选速度就不错,不过解决不了你说的被d问题。
你用的哪个线路?我用Vercel快两年了 白天速度确实不错 晚上一样炸 不过后来接触到Vercel也有优选IP 图片加载确实是慢得离谱 我才想到再套一层cf来解决被d被刷流量的问题 同时cf的防火墙比vercel强多了
我现在vercel+cf+cf 第三方优选IP hkcdn.kisskiss.store 全是阿里云香港的线路之后速度直接起飞了 这篇博文是我开发的时候记录的 还没来得及更新 而fastcdn.kisskiss.store其实是我的实验品 因为我是根据延迟和通过次数来优选的 所以速度我是没法保证的 但这个问题被我用另外的方式解决了
刚测了下,你这个已经关了CF是吧,itdog已经平均到四五秒了。ip有香港阿里云+广州腾讯云。
没关 只是在实验 我i这个图床是在国外服务器上 套了国内cdn反而减速 准备撤了 而gallery源站在vercel 速度就很快 我现在在尝试融合 不影响我部署好的cname啊 因为我发现除了香港阿里云禾搬瓦工的腾讯云香港的 如果源站在国内 速度一样慢 绕全球 所以我很纠结为了稳定又把国内cdn加上了 速度没有那么快 但是双重保障 而我又发现了vercel流量不会被耍了 但是容易请求量超标 我又在寻找新的玩法了 可以看我主站darklotus.cn 源站在vercel 同时构建打包了静态文件到国内服务器和国外服务器 速度已经达到最快了 而这个i的图床 我自己是很少用的 我现在都用oss了 我最快的优化已经给到oss了 图床源站在国外 其实就套我这个做的香港cname就很快了 套国内cdn会减速的 我主要是测的静态图片链接的速度 你测的主站要回源肯定要四五秒 马上就去撤掉i图床的国内cdn