Cloudflare另类自选IP实现方式(无需信用卡)

249 2

Cloudflare自选IP

我们的老朋友Cloudflare作为世界上为数不多的愿意向用户提供免费CDN的内容交付网络平台,一直是个人站长使用CDN防护(减速)、缓存加速、静态网页托管与边缘云计算的首选(它怎么这么多功能)。对于它的创新式使用(白嫖)也一直是大家津津乐道的话题。

由于众所周知的原因,Cloudflare的边缘节点虽然在非大陆地区访问速度很快,但在大陆的网络环境之下连通性与速度就一言难尽了。网上也有一些广为流传的Cloudflare自选节点IP以加速访问的方法,如Cloudflare Partners与SaaS(贴一篇文章CloudFlare for SaaS 官方免费CNAME接入/自定义节点(CF自选IP)教程)。但它们一个已经成为历史,一个麻烦且需要多个域名与信用卡验证,并不方便。本文为大家分享一种基于Cloudflare Workers的另类且轻量化的Cloudflare自选IP方式。

需要?

当然是cf账号,还有一个绑定到Cloudflare的域名

在本文中,这个服务原本的主机名称为A<example.com>(例如blog.pages.dev),你实际上想要暴露的域名称为B<example.mmoe.work>(例如blog.mmoe.work),这个域名需要接入到Cloudflare。

操作

创建Workers

登入Cloudflare控制台,来到”Workers与Pages”,点击”创建应用程序”

创建一个”Hello World”Worker并取名保存,代码不用管(一会可以改)

然后”编辑代码”,向其中填入以下内容并点击部署:

export default {
    async fetch(request, env) {
      let url = new URL(request.url);
      if (url.pathname.startsWith('/')) {
        url.hostname="example.com"; /*改为你需要加速的主机名A(非Cloudlfare服务的域名也可以)*/
        let new_request=new Request(url,request);
        return fetch(new_request);
      }
      return env.ASSETS.fetch(request);
    }
  };


绑定Worekrs路由

在Workers管理面板打开”设置->触发器->路由”添加一个路由,填入”<域名B>/*”(/*不能掉!),再选择你cf绑定的区域以添加


添加DNS记录

在对应的域面板的DNS记录设置里添加一条A记录解析,名称是你实际想要给这个服务使用的域名,IP就填你得到的Cloudflare优选IP(我推荐使用CloudflareST获取),注意关掉CDN,保存。

如果你有动态的优选IP域名,就使用CNAME记录,比如我在用的”*.cloudflare.182682.xyz”,这是一个使用泛域名解析的cname,可以使用任意前缀,更多优选域名参见这篇文章CloudFlare公共优选Cname域名地址,值得一提的是,本文中的这个域名也是由这个站长维护的。

如果一切正常,现在这个域名应该被加速了

原理

Cloudflare Workers路由接受到对应域名的请求后,会接管请求到Workers,由于Workers会在离源服务器最近的位置上处理请求,那么它自然会在我们选择的IP上工作,上面的代码其实就是一个js反代。

速度

在没有用上这奇技淫巧之前,我的Alist的cf代理下载文件只有几十kb的速度,使用后直接跑满我家宽带,效果还是很可观的。

 

原文:Cloudflare另类自选IP实现方式(无需信用卡)

我的主页 求求你们看看吧
最新回复 ( 2 )
  • 2
    0
    666
  • 3
    0
    域名直接在原注册位置ns到cf让cf验证通过,再把ns调回去,趁cf反应不过来,它还会帮你回源,代价是cf的dns无法解析,但只要你设置的都还能回源,自己部署saas瞎试出来的,这样本质上cf就相当于一个nginx的stream(ÒωÓ)
  • 游客
    4

    您需要登录后才可以回帖

    登录 注册

发新帖