使用 Cloudflare 优选为 OpenBMCLAPI 助力
转载前请务必事先联系并取得本人授权,同时需保留原文链接及明确的转载声明。未经许可,不得擅自用于商业用途。
Copyright © 2024-2025 SALTWOOD. All rights reserved.
此篇文章含有较多的图片,因此不适合在移动网络环境或卡顿的网络环境下阅读。
优选 IP 违反 Cloudflare 的协议,使用优选 IP 可能导致域名被列入黑名单,无法使用 Cloudflare 提供的服务。
按照本文的教程操作导致域名被封禁与本人无关,本文仅对优选 IP 的原理进行技术性记述,本人不鼓励使用优选 IP。
作者并不实际拥有 example.comexample.top,因此文中的图片经过浏览器开发工具修改,仅作演示

0. 前言

众所周知,Cloudflare 被称为“赛博大善人”,因其提供许多好用的免费功能,其中就包括“小黄云”。
但是,由于 Cloudflare 大多数节点位于国外,其对国内访问的速度也并不友好。于是,就有神人想到了“优选 IP”这一个骚操作。
这篇文章旨在介绍优选 IP 的原理以及通过优选 IP 部署 OpenBMCLAPI 节点。

1. 申请节点

本篇文章不再赘述,请参见本人的其他文章。

2. Cloudflare 配置

在节点申请成功、同步完所有文件之后,按照以下步骤操作:

2.1. 购买、绑定域名

你一共需要两个域名来完成此操作。这里我使用 example.comexample.top 代称这两个域名。

你也可以选择在 Cloudflare 购买 example.com,但是必须有另一个不由 Cloudflare 管理的域名(此例是 example.top
如果你在 Cloudflare 购买了一个域名,你可以跳过此步。

首先,先将 example.com 添加至 Cloudflare。在 https://dash.cloudflare.com/ 注册你的账号,然后点击添加域

此时你会看到这样一个这样的界面,输入 example.com,点击继续。

此处有四个计划,分别是 Pro, Business, Enterprise, Free。如果你是富哥可以选别的,但是 Free 在我们的需求下就够用了。

配置完成后,会显示如下的页面:

此处,Cloudflare 提供给我们两个 DNS 服务器,我这里是 brenna.ns.cloudflare.comcraig.ns.cloudflare.com。将这两个 DNS 服务器替换到你的域名购买处,如图:

很棒!现在,example.com 成功地被你托管到了 Cloudflare 上,接下来还需要一个 example.top,但由于它不需要(也不能)托管到 Cloudflare 上,所以你随便在阿里云或者别的地方买一个就行了。

2.2. 配置自定义主机名

自定义主机名(SaaS)可以将另一个域名“映射”到你的域名(回退源)。配置自定义主机名之后,访问自定义主机名域名实际访问的是回退源域名。与 CNAME 不同的是,自定义主机名经过 Cloudflare 代理流量,Cloudflare 会为客户自动处理 SSL 证书,不需要自己部署两个证书。

简单来说就是一个映射。为啥要这么干呢?我也不知道捏。

首先,先新建一个 DNS 解析,指向你的源站。我这里新建了 origin.example.comexample.com 的解析。记得开小黄云!你在新建解析的时候右侧有个“代理状态”开关,把它点成这个样子就是开了。

由于我也不知道什么原因,开启 SaaS 需要绑定付款方式,即使后面可以选择 Free 计划……
付款方式要银行卡或者 PayPal,没有的可以走了,记得回退更改。

然后,进入 example.com 的管理界面,依次点击 SSL/TLS自定义主机名,然后设置回退源为 origin.example.com

接下来,点击上方的添加自定义主机名按钮,输入你那个不由 Cloudflare 管理的域名的一个子域。我这里使用 example.top,其他配置按照默认,如图这样。

接下来,转到 example.top 的解析管理页面,添加如下解析:

_acme-challenge.example.top CNAME example.top.0000000000000000.dcv.cloudflare.com

你也可以选择使用 TXT 记录,但是 DCV 委派方便且无需担心到期。

添加之后,等待自定义主机名生效。

2.3. 配置辅助域名

上面我们已经成功地将 example.top 作为一个自定义主机名添加到了 Cloudflare,接下来我们需要配置辅助域名,使其解析至优选 IP。这边我再叠一次甲

优选 IP 违反 Cloudflare 的协议,使用优选 IP 可能导致域名被列入黑名单,无法使用 Cloudflare 提供的服务。
按照本文的教程操作导致域名被封禁与本人无关,本文仅对优选 IP 的原理进行技术性记述,本人不鼓励使用优选 IP。

好,让我们转到 example.top。添加如图所示的解析:

这样子,访问 example.top 的时候,会被 CNAME 到优选过的 Cloudflare 代理节点,然后经过前文配置的自定义主机名,就会最终回到源站。

此时我们访问 example.top,应该会看到类似这样的页面:

看到这两个页面的其中一个,就说明你配置正确了,接下来需要配置 Origin RulesCache Rules

如果你的节点本来的访问地址就是 443 端口,不需要加端口号就能访问的话,可以只配置 Cache Rules

2.4. 配置 Origin Rules 和 Cache Rules

接下来,转到 example.com 的管理页面,点击规则,找到 Origin RulesCache Rules,分别按如下添加:

Origin Rules

选择自定义筛选表达式,然后点击编辑表达式,输入如下内容:

(http.host wildcard "example.top")

然后滑到下面,选择目标端口 => 重写到…,输入你的 OpenBMCLAPI 节点的外部访问端口,保存规则,启用。

Cache Rules

选择自定义筛选表达式,然后点击编辑表达式,输入如下内容:

(http.request.full_uri wildcard "https://example.top/download/*")

缓存资格符合缓存条件

边缘 TTL:”忽略缓存控制标头,使用此 TTL“,然后选择一年(随你便,但反正都是基于哈希的请求路径,所以不用担心更新文件导致错乱)

浏览器 TTL:”替代源服务器,使用此 TTL“,然后也是一年

缓存密钥:打开”忽略查询字符串“,很重要!不打开会缓存不上!

3. 配置 OpenBMCLAPI 节点

帅!配置完 Origin RulesCache Rules 之后,我们成功地搞定了优选 IP 的部分,接下来就是配置我们的节点了。

这是我的节点配置,你可以参考:

CLUSTER_ID=xxxxxxxxxxxxxxxxxxxxxxxx
CLUSTER_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
CLUSTER_PORT=4001 #此处是你在 Origin Rules 中设置的重写端口
CLUSTER_PUBLIC_PORT=443
CLUSTER_IP=example.top
CLUSTER_BYOC=true
SSL_CERT=/path/to/your/cert/cert.pem
SSL_KEY=/path/to/your/cert/key.pem # 此处证书是你设置的源站的,也就是 example.com,上文开启小黄云的那个解析的解析目标
DISABLE_ACCESS_LOG=true

然后,启动节点,等待一段时间,Cloudflare 将文件缓存得差不多了之后(表现为云耀斑仪表盘显示的请求很多,但每次 Keep-Alive 才上报几个兆的流量和不超过两位数的请求,具体凭个人感觉),就可以找 bangbang93 将你的节点标记为 CDN 了。

4. 成果展示

大概就是这样的效果,当然你别拿晚上的和高峰期的比。

5. 友情鸣谢

Cloudflare 优选部署指南 - 零狼 の 小窝 —— 要是没看到这篇文章我都想不起来要写这玩意(

暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇