由于不可抗力因素, 使用了 Cloudflare 开启小黄云在国内的访问速度十分堪忧, 间歇性抽风

在之前我们可以使用 cloudflare partner 来使访问回源到一个优选过后的 IP

但是在去年这个方法已经行不通了, 那么我们这些白嫖玩家又不想对接国内备案实名 CDN, 同时想要保证国内的高速访问

我们应该怎么做呢?

这就是我们这期要讲的主要内容,Cloudflare SaaS 回源

什么是 SaaS 回源? 🤔

SaaS 回源主要分为两个部分

  1. 自定义主机名 (Custom Hostnames)
    • 你可以设置一个自定义主机名, 来作为你的访问域名
  2. 回源 (Origin Server)
    • 当用户请求特定的主机名(如客户自己的域名)时,请求会被转发到 SaaS 提供商的原始服务器(或称为回源服务器)。

SaaS 回源有什么用? 🧐

  • 可能看到现在大家还是一头雾水, 不过没关系, 我会给大家根据实例来通俗易懂的解释一下

  • 我们可以使用支持分流的 DNS 解析服务(例如腾讯的 DNSPOD),

    将我们需要访问的域名例如 image.dooo.ng 通过 CNAME 解析到任意一个 Cloudflare 的节点,

    例如csgo.comvisa.com, 而这些域名解析到的 CF 的 IP 通常是经过大陆特殊优化的

    有些是优选线路, 有些的百度云合作的 IP 地址

  • 将我们的 image.dooo.ng CNAME 解析到 csgo.com 之后, 我们访问 image.dooo.ng 的请求实则是被发送到了

    经过优选后线路较好的 Cloudflare IP上 这个步骤达到了我们优选 IP 的目的

  • 此时 Cloudflare 的 IP 收到了我们的访问请求, 会匹配我们访问的域名 image.dooo.ng 在 Cloudflare 中是否有匹配的 自定义主机名  如果有, 它会将我们回源到我们设置的  回源服务器 上

  • 这里我绘制了一个序列图来帮助大家理解

    通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

使用 Cloudflare 的 SaaS 回源

  • 我们可以设置自定义域名(例如 image.dooo.ng)。
  • 并通过 CNAME 记录将其解析到另一个域名(例如 csgo.com)。
  • 这样设置是为了利用 Cloudflare 的安全和性能特性,如 DDoS 防护、SSL/TLS 加密、CDN 加速等。

CNAME 解析过程

  • 访问 image.dooo.ng 时,DNS 查询会根据 CNAME 记录找到它实际指向的 csgo.com
  • 由于 csgo.com 已接入 Cloudflare CDN,用户的请求会被路由到 Cloudflare 的边缘节点。

Cloudflare 边缘节点处理

  • Cloudflare 的边缘节点处理请求,包括应用安全规则、进行缓存等。
  • 如果请求需要回源(即获取原始内容),Cloudflare 会将请求转发到原始的回源服务器。

访问过程的理解

  • 用户访问 image.dooo.ng 实际上是在访问 Cloudflare 的节点。
  • 然后,根据需要,Cloudflare 会从原始的回源服务器获取内容。
  • 这个过程对用户透明,用户只知道他们访问的是 image.dooo.ng,但实际上得到的内容可能是直接来自 Cloudflare 的缓存,或者是经过 Cloudflare 优化处理后的来自原始服务器的内容。

实际操作 🛠️

准备域名 🌐

  • 在了解了 SaaS 回源的相关原理之后, 我们可以进行实操了!

  • 首先我们需要准备两个域名

    1. tongyi.tw.cn <– 作为 我们的访问域名, 也就是自定义主机名, 稍后我们访问此域名来访问网站

    2. fallback.tech <– 作为 我们的回源域名, 也就是当我们访问 tongyi.tw.cn 时,cloudflare 在内部回源的域名

    3. 我将tongyi.tw.cn 解析在腾讯的 DNSPOD 上, 而fallback.tech 解析在 Cloudflare 上

      • 前者不是必须的, 你可以都解析在 Cloudflare 上, 我选择 DNSPOD 是因为它有免费的分流服务

        可以将境内境外解析到不同的 cname 上

      • 而后者则是必须的! 因为只有解析在 cloudflare 上的域名才可以启用 SaaS 回源

设置回源域名 🔄

添加 DNS 解析 🧩

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 首先我们先来添加一个 DNS 解析
  • 解析到我们的真实服务器 IP 地址, 正如上面所说的, 这是一个回源的域名, 也就是说, 服务器的 IP 到底是什么
    只有这台回源域名知道, 它的工作也只是起到回源的作用
  • 这里你可以随意填写一级域名或二级域名, 我推荐填写二级域名 也就是 origin.fallback.tech 可以随意起名
  • 因为填写二级域名, 你还可以在 DNS 中正常解析一级域名, 仅将二级域名作为回退源

添加回退源 🔄

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 进入到 Cloudflare 域名管理界面 -> SSL/TLS -> 自定义主机名 -> 添加一个回退源
  • 回退源地址即为我们刚才解析的二级域名

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

检查回退源是否有效 ✔️

  • 回退源状态: 有效 即代表回退源添加成功, 现在访问 origin.fallback.tech 你应该会看到如下界面

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 这是因为虽然设置了回退源, 但是我们并没有设置自定义主机名, 也就是回退源并不知道要将哪个主机名回源到我们的服务器 IP

设置自定义主机名 🏠

添加自定义主机名 🌐

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

设置主机名信息 🛠️

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 自定义主机名: 填写你要解析的域名, 可以为一级或者二级均可, 这里我填写 tongyi.tw.cn

  • TLS 版本默认填写 1.0 即可

  • 证书验证方法填写 TXT 验证

验证域名所有权 📋

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 这里我们需要验证我们域名的所有权和证书验证

  • 去到你的 DNS 解析面板添加这两个 TXT 解析

  • 值得注意的是你的两个 TXT 验证名称应该不包含主域名,
    例如直接复制下来是 _acme-challenge.tongyi.tw.cn 你应该删去 tongyi.tw.cn 即为 _acme-challenge
    因为它给你的是验证的完整地址, 你的解析已经包括tongyi.tw.cn

  • 二级域名同理, 例如 _acme-challenge.1.tongyi.tw.cn 你应该改为 _acme-challenge.1

  • 添加好之后稍等片刻, 等待 CF 服务器去验证

设置优选 IP 🚀

经过我们一番折腾, 最好玩的部分来了

设置分流 🛣️

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 添加两个二级域名记录, 一个 线路 选择 境内 , 另一个选择 境外

  • 境外我们直接解析到 1.0.0.5

  • 境内我们 CNAME 解析到 csgo.com
    你还可以选择很多, 只要是国内访问速度不错, 使用 Cloudflare CDN 的, 你都可以 cname 解析上去

    可使用的 CNAME 优选域名参考 🌐

    Qatar2022(SAN JOSE IP) : 
    www.qatar2022.qa
    
    IP 查询 : 
    ip.skk.moe
    ping.pe
    
    政府网站:
    乌克兰🇺🇦政府
    www.gov.ua
    
    泰国🇹🇭政府
    www.thaigov.go.th
    
    卡塔尔🇶🇦政府
    www.gco.gov.qa
    
    瑞典🇸🇪政府
    www.gov.se
    
    美国🇺🇸FBI:
    FBI.GOV
    
    商业网站:CSGO 官方网站
    (Cloudflare LONDON ASN):CSGO.COM
    
    DigitalOcean
    digitalocean.com
    
    VISA 官方网站:(格式:VISA. 国家顶级域名)
    VISA.COM
    VISA.CN
    VISA.FI
    VISA.HK
    
    伪 AMEX:
    AMEX.COM
    
    SHOPIFY(推荐):
    SHOPIFY.COM
    
    域名注册商:Dynadot.COM
    
    其它网站:SINGAPORE.COM
    JAPAN.COM
    BRAZIL.COM
    MALAYSIA.COM
    RUSSIA.COM
    

添加解析 🧩

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 再将我们要访问的域名,CNAME 解析到我们的 CDN 记录上即可,

排查错误 🔍

  • 注意如果要访问, 我们的站点必须开启 SSL 证书和 HTTPS 访问, 不然会直接 404, 因为回源只回源到 443 端口

  • 现在我们打开网站测试下能否正常访问

重定向次数过多

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

提示我们重定向过多, 这是因为 HTTPS 加密的问题, 我们进入 Cloudflare 后台 -> SSL/TLS -> 概述

​ 通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

将 SSL/TLS 加密模式改为 “ 完全 ” 再次尝试访问

Invalid SSL Certificate

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 出现此问题是因为我们的回源域名 fallback.tech 在进行回源时, 访问的是 tongyi.tw.cn
  • 虽然我们在验证所有权时申请了一个证书, 但那个证书是用于回源之后呈现给用户端的, 在回源过程中不会生效
  • 所以我们需要给 tongyi.tw.cn 申请一个证书, 可以通过宝塔面板,NPM 等等方式, 只要申请一个证书并配置即可解决此问题

结果测试 🧪

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

网站访问成功! 我们去 itdog Ping 一下试试看

Ping 测试

通过 CloudFlare+SaaS 回源优选 IP 使国内用户高速访问网站

  • 可以看到我们的网址是经过 csgo.com 同款的 Cloudflare ASN 进行解析的
  • 海外是通过 1.0.0.5 进行解析的

总结

通过这种方法, 我们可以实现几乎国内全绿
Cloudflare + SaaS 还有很多玩法, 自建 Cloudflare 节点等等