原贴:⭐[Dooongの教程] 通过CloudFlare+SaaS回源优选IP使国内用户高速访问网站 (nodeseek.com)
分流教程地址:使用cloudflare的saas回源后的国内分流设置_木木の自留地 (mmcool.site)
视频教程
白嫖Cloudflare最优CDN给自己网站加速,尽情享受CF的免费服务 – Youtube
基于1panel,宝塔类似
特别说明
使用CloudFlare的SaaS服务是需要绑定信用卡并验卡的,并不会实际扣费。
SaaS服务有100个自定义主机域名额度,回源域名1个域名只能添加1次。
什么是SaaS回源?
SaaS回源主要分为两个部分
- 自定义主机名 (Custom Hostnames)
- 你可以设置一个自定义主机名,来作为你的访问域名
- 回源 (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优化处理后的来自原始服务器的内容。
实际操作
准备域名
- 首先我们需要准备两个域名
tongyi.tw.cn
<– 作为 我们的访问域名,也就是自定义主机名,稍后我们访问此域名来访问网站fallback.tech
<– 作为 我们的回源域名,也就是当我们访问tongyi.tw.cn
时,cloudflare在内部回源的域名- 我将
tongyi.tw.cn
解析在腾讯的DNSPOD上,而fallback.tech
解析在Cloudflare上- 前者不是必须的,你可以都解析在Cloudflare上,我选择DNSPOD是因为它有免费的分流服务,可以将境内境外解析到不同的cname上
- 而后者则是必须的! 因为只有解析在cloudflare上的域名才可以启用SaaS回源
设置回源域名
添加DNS解析
- 首先我们先来添加一个DNS解析
- 解析到我们的真实服务器IP地址,正如上面所说的,这是一个回源的域名,也就是说,服务器的IP到底是什么,只有这台回源域名知道,它的工作也只是起到回源的作用
- 这里你可以随意填写一级域名或二级域名,我推荐填写二级域名,也就是
origin.fallback.tech
可以随意起名 - 因为填写二级域名,你还可以在DNS中正常解析一级域名,仅将二级域名作为回退源
添加回退源
- 进入到Cloudflare域名管理界面 -> SSL/TLS -> 自定义主机名 -> 添加一个回退源
- 回退源地址即为我们刚才解析的二级域名
检查回退源是否有效
- 回退源状态:
有效
即代表回退源添加成功,现在访问origin.fallback.tech
你应该会看到如下界面
- 这是因为虽然设置了回退源,但是我们并没有设置自定义主机名,也就是回退源并不知道要将哪个主机名回源到我们的服务器IP
设置自定义主机名
添加自定义主机名
设置主机名信息
- 自定义主机名: 填写你要解析的域名,可以为一级或者二级均可,这里我填写
tongyi.tw.cn
- TLS版本默认填写1.0即可
- 证书验证方法填写TXT验证
验证域名所有权
- 这里我们需要验证我们域名的所有权和证书验证
- 去到你的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
经过我们一番折腾,最好玩的部分来了
设置分流
- 添加两个二级域名记录,一个
线路
选择境内
,另一个选择境外
- 境外我们直接解析到
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
添加解析
- 再将我们要访问的域名,CNAME解析到我们的CDN记录上即可
排查错误
- 注意如果要访问,我们的站点必须开启SSL证书和HTTPS访问,不然会直接404,因为回源只回源到443端口
- 现在我们打开网站测试下能否正常访问
重定向次数过多
提示我们重定向过多,这是因为HTTPS加密的问题,我们进入Cloudflare后台 -> SSL/TLS -> 概述
将SSL/TLS加密模式改为 “完全” 再次尝试访问
Invalid SSL Certificate
- 出现此问题是因为我们的回源域名
fallback.tech
在进行回源时,访问的是tongyi.tw.cn
- 虽然我们在验证所有权时申请了一个证书,但那个证书是用于回源之后呈现给用户端的,在回源过程中不会生效
- 所以我们需要给
tongyi.tw.cn
申请一个证书,可以通过宝塔面板,1panel等等方式,只要申请一个证书并配置即可解决此问题,网站要打开https,域名也要相应添加好。
结果测试
网站访问成功!我们去itdog Ping一下试试看
Ping 测试
- 可以看到我们的网址是经过
csgo.com
同款的Cloudflare ASN进行解析的 - 海外是通过
1.0.0.5
进行解析的
总结
通过这种方法,我们可以实现几乎国内全绿
Cloudflare + SaaS还有很多玩法,比如自建Cloudflare节点等,喜欢折腾的可以去尝试
发布者:木木,转载请注明出处:https://blog.mmcool.site/4379.html