一、本文缘由

本文目的:国内访问走自定优化线路,国外ip走CF CDN 线路

我的博客搭建在 NETCUP VPS 1000 维也纳,但是在使用的过程种,非优化线路国内访问总有些许缺点,架设到优秀的线路鸡配置又不够,若能做到国内外分流访问,将为网站访问速度带来显著提升。

本文参考文章

CloudFlare SAAS(cname) 接入网站域名

CloudFlare SAAS+DNSPOD对网站分流 - 国内走优化路线,国外走CF CDN

以下字条解释来自⭐[教程] 通过CloudFlare+SaaS回源优选IP使国内用户高速访问网站

但本文不涉及优选 IP

字条解释开始

二、SaaS 回源

SaaS回源主要分为两个部分

  1. 自定义主机名 (Custom Hostnames)

    • 你可以设置一个自定义主机名,来作为你的访问域名

  2. 回源 (Origin Server)

    • 当用户请求特定的主机名(如客户自己的域名)时,请求会被转发到SaaS提供商的原始服务器(或称为回源服务器)。

SaaS回源有什么用? 🧐

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

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

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

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

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

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

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

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

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

使用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. 自定义主机名 (Custom Hostnames)

    • 你可以设置一个自定义主机名,来作为你的访问域名

  2. 回源 (Origin Server)

    • 当用户请求特定的主机名(如客户自己的域名)时,请求会被转发到SaaS提供商的原始服务器(或称为回源服务器)。

什么是SaaS回源?

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

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

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

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

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

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

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

字条解释结束

三、准备工具

  • 需分流优化的主域名:以我的im.su1xiao.com为例,购买于spaceship。因cloudflare 不支持分流,请托管在Dnspod、华为云、阿里云等(支持分路线解析);

  • 备胎域名:以我的wxnm.de为例(弄个便宜的即可),托管在CloudFlare,用于SAAS;

  • 主服务器:本文以NC VPS1000翻倍 为例(4C8G512G),性能强劲但国内访问较慢,用来搭建网站、服务;

  • 优化线路 IP:以HK 4837 或DMIT 美西CN2GIA为例,国内访问快,配置底的线路🐔;我所使用的为HK 三网 cmi2线路🐔。

  • PayPal或信用卡:CloudFlare SAAS 功能需要绑定,实际只用免费套餐

踩坑点

我同时将 dns 由域名购买网站托管到 cf、腾讯,这中间出现了很多问题,建议只托管到腾讯,或由 cf 转到Dnspod(腾讯)。

四、正文开始

本文主域名使用腾讯 dns 解析,地址:https://console.cloud.tencent.com/cns/detail

腾讯 dns 解析.jpg

备胎域名解析操作(国外访问CF CDN 线路)

工具域名 wxnm.de,A解析1个二级域名到主服务器的ip​,并且开启CF CDN(小黄云),作为回源域名

输入后点击保存即可。

找到 SSL/TLS 加密 默认为灵活,点击配置​设置为 完全​ 或 完全(严格)​

点击保存,可以避免重新定向次数过多等问题。

接下来添加回退源,首次使用自定义主机名需要绑定付款方式,绑定后我们选择免费套餐,填写账单的过程就不发了。

这里以刚才填的备胎域名

前面绑定完付款方式后再次点击自定义主机名

本文重点添加后点击展开查看需要记录的 TXT 值,报错不用管,一会解析完就交了

方式一:主域名的DNS添加两条上图解析,图为示例

解析完成,生效不是即时的,需要等几十分钟。

方式二:添加DCV 委派验证记录

我的主域名为im.su1xiao.com。
主机名为_acme-challenge.im值为im.su1xiao.com.ee2483.....dcv.cloudflare.com
如果配置的网站为su1xiao.com。
主机名为_acme-challenge值为su1xiao.com.ee2483.....dcv.cloudflare.com
如果配置的网站为www.su1xiao.com。
主机名为_acme-challenge.www值为su1xiao.com.ee2483.....dcv.cloudflare.com
上述仅用于演示,请自行替换为自己的dcv信息。

以下是解析成功示意:

证书状态有效.jpg

方式一与方式二我都可以成功解析,并且方式二解析速度比较快,可以尝试。

一个备胎域名只能绑定一个主服务器记录,但可以绑定多个域名,步骤一致。

国外访问ip 部分配置结束

此时可正常配置网站,但是只能国外 ip 访问,通过 1panel 一键部署halo 过程非常简单,不在赘述。

1panel 官网地址:1panel

halo 官网地址:halo

五、配置国内访问优化

打开域名托管服务商 dns 解析

我这里是腾讯,主机记录、A 类型按需配置,线路类型选择:境内,记录值填:你优化线路的 ip,别填成主服务器的 ip!!!

打开优化线路 vps 1panel 面板

添加反向代理

通过 dns 账户验证申请 ssl证书

可以单独申请你想要的的二级域名,但是因为我没有别的用处,直接申请的泛域名,完成后即可进行 https 相关设置。

DNS认证的方式,完成证书申请:证书.jpg

腾讯云/Dnspod 的访问密钥生成地址:https://console.cloud.tencent.com/cam/capi

六、验证

打开 itdog

可以看到,我的域名国内解析出优化线路的 ip,国外走的是 cf 线路,我没有选择 cf优化,反正也没有外国人看。

七、致谢

由于个人的技术水平及能力所限,文章难免存在不足或疏漏之处,还望各位读者海涵、斧正。

如果您觉得这篇文章对您有帮助,可以点击下方个人资料微信小图标对我进行打赏,这将有助于我更快更好的产出文章,谢谢。