今天研究了下cloudflare 的IP优选 来实现给discourse国内和国外分开加速

问题

我的服务器在国外,discourse部署在这个国外服务器上,域名通过修改NS托管在cloudflare。

这样的话,国外访问很快,但是国内访问直接是减速,主要原因还是cloudflare的国内加速线路不好。

解决方案

通过不断问claude,还是claude 4.8,然后claude给了我下面的答案:

方法一:使用 Cloudflare 中国接入(最佳但有门槛)
需要 Cloudflare 企业版(Enterprise) 套餐
通过其与百度合作的中国 CDN 节点加速
缺点:费用极高(每月数千美元起),不适合个人论坛
方法二:更换 Cloudflare 的优选 IP(推荐,免费)
Cloudflare 默认分配的 IP 在国内访问质量参差不齐,可手动指定优质 IP。

步骤:

下载优选 IP 工具 CloudflareSpeedTest
地址:github.com/XIU2/CloudflareSpeedTest
运行工具,测出对你网络延迟最低的 Cloudflare IP
在域名解析处(见下方说明)将解析指向该优选 IP
关键操作:

由于你开了小橙云,DNS 解析被 Cloudflare 接管,无法直接指定 IP
解决办法:将 DNS 解析迁回西部数码或使用 DNSPod,然后用 CNAME 或 A 记录指向优选 IP,回源到你的 VPS
方法三:DNS 分流(性价比最高,推荐)
让国内用户走优选线路,国外用户走 Cloudflare。

步骤:

将域名 NS 从 Cloudflare 改回西部数码,或使用 DNSPod(腾讯云)
在 DNSPod 设置分线路解析:
国内线路(默认/境内):A 记录指向 Cloudflare 优选 IP(或你的 VPS IP)
境外线路:CNAME 指向你的 Cloudflare 域名
这样国内国外走不同线路,各自最优
方法四:调整 Cloudflare 现有设置(立即可做)
在保持现状下做以下优化:

开启 Tiered Cache(分层缓存)
Caching → Tiered Cache → 打开 Smart Tiered Caching
开启 Argo Smart Routing(智能路由,付费 $5/月)
Traffic → Argo → 开启
可显著优化跨境线路,对国内提速明显
设置缓存规则,提高静态资源缓存命中
Caching → Cache Rules → 缓存图片、CSS、JS
各方案对比
方案	费用	国内提速	难度
Enterprise 中国接入	极高	★★★★★	高
优选 IP + DNS迁出	免费	★★★	中
DNSPod 分线路	免费	★★★★	中
Argo 智能路由	$5/月	★★★★	低

claude给我的答案出现了个新名词DNS分流,说实话,对这个词我是比较陌生的,然后就继续追问AI,了解为啥要这么做,如何做,最后通过谷歌搜索找了一篇教程,照着配置,配置完,发现确实有点效果。

我直接把教程贴上来:https://www.nodeseek.com/post-42661-1

我目前配置还有些小问题,目前正在摸索中。

Cloudflare 本来是做安全防护和 DDoS 攻击配置的。

现在慢慢的还成为了基础网络架构服务商,主要的原因还是因为他们的数据和流量给的很慷慨。

哪怕是域名注册,也比其他的一些老牌域名注册商便宜,我们的现在很多基础架构也慢慢的迁移到C Cloudflare 上面来,以前在S3存储的时候,觉得亚马逊已经做得非常好了,没有必要再单独找一个其他的存储。

后来发现单存储的数量越来越多,价格也会越来越高,S3 的月费用基本上是属于只增不减,像我们这个网站也就那么几个G,也不到几十个G的存储在亚马逊上面也差不多10多块钱了,想着也希望可Discourse 最终使用 R2 来存储。

至于流量和访问优化,大部分就是用的 Cloudflare 的默认设置。

有时候感觉这种配置没有那么明显的访问速度加快,但是至少也不慢吧,有比没有好,反正也是免费的。

在一些特定的情况下,直接访问服务器的 IP 地址比通过 Cloudflare 的加速还要快。

我们就使用了默认,什么都没改,凑合用吧。

1 Like

我用的这个教程配置成功了: 网站用上CloudFlare SaaS回源优选教程-腾讯云开发者社区-腾讯云

国内测速最终优化效果:

For a Discourse site, DNS splitting is generally the best compromise. It uses different routes for Chinese and overseas users, speeding up access without only depending on Cloudflare optimised IPs.

Also see Cloudflare documentation on Argo Smart Routeing: Overview · Cloudflare Argo Smart Routing docs