CloudFlare 接入/教程

来自wikiTLO
跳转至: 导航搜索

<- 返回 CloudFlare 接入

此教程中演示域名 tlo.one 使用 CloudXNS 作为 DNS 服务,同时需要使用 Cloudflare 作为 CDN。当然,你也可以使用 Cloudflare NS 接入或者其他优秀的 DNS 提供商

注册与登录

前往 https://cf.tlo.xyz,输入你的 Cloudflare.com 上的登录账号进行登录(很抱歉,现在 Cloudflare 不支持 OAuth,我们所使用的方法也是 Cloudflare 官方唯一提供的 API。我们承诺不保存您的任何信息,并且传输使用全程 HTTPS)。

该网站支持中文和英文,会根据浏览器语言(大多数情况下就是系统语言)来选择语言。如果你想使用中文的,请调整系统语言为中文。

登陆界面

登陆后可以看到已经添加在 Cloudflare 的所有域名。

登陆后界面

你可以:再添加新的使用 CNAME/NS 接入的域名,或者将使用 NS 接入的域名升级为 CNAME/NS 接入。

添加域名

这里以添加域名,通用接入方式为例,你需要点击面板中的 “添加域名”,进入如下页面。输入域名,点击添加:

添加域名

之后进入管理界面,就可以看到这个域名了。

域名管理界面

从 2018-02 开始,新添加的域名已经不需要 SSL 的 CNAME 验证。老域名请继续保持 CNAME 验证记录,以方便证书续签。

至此,新域名添加已经完毕。

配置源站

我们以 CNAME/IP 的接入方式作为演示,源站 IP 为 59.110.190.55 (北京),我们要为 tlo.one 配置 Cloudflare,并对所有用户启用 Cloudflare CDN。

首先点击 “添加记录”

点击添加记录

输入完基本信息后,点击提交更改。注意主机名仅填写子域名即可,不要填写完整域名。另外,根域名请直接填写 @。

添加记录页面

由于我们是根域名添加,所以建议使用 IP 接入。

域名配置

然后,我们将两个 Anycast IPv4 地址添加到 CloudXNS 中,替换原有 IP。想要仅对海外使用请见后文 “分区/智能解析配置”。请注意,每个域名分配到的 IP 地址都是不一样的,这里只是演示用 IP 地址。

CloudXNS 正常 DNS 配置

切换接入模式

你可以选择将已有域名切换为标准通用模式,自动迁移所有 DNS 记录。只有标准通用模式可以申请 Railgun。

SSL 证书签发

升级接入模式的域名不需要进行此操作。证书签发仅针对新添加,且没有使用 NS 接入的域名。标准模式也不需要进行 SSL 验证。

自动签发

你只需要将域名指向 Cloudflare 即可完成验证(使用 NS 接入,或者使用 CNAME、A、AAAA 将域名指向 Cloudflare)。整个证书签发过程通常只需要 1 分钟,最长不到 15 分钟就会自动完成签发。

手动签发

如果你担心自动签发期间客户无法访问,我们建议你使用 HTTP 文件验证,这样可以提前完成签发。首先你需要在我们这里添加记录(这里以 @ 和 www 两个记录为例),一段时间后点击 “立即重新检查 SSL 验证”。此时你还不需要开启 CDN(即指将记录指向 Cloudflare)。之后你可以看到类似如下的内容:

SSL 验证界面

然后你在主机上创建相应目录和文件,并确保文件有对应的内容(仅支持 HTTP 协议,即 80 端口),确认可以访问到对应文件后(建议使用 curl 命令检查),然后点击 “立即重新检查 SSL 验证”,即可对域名完成验证。需要注意的是,如果你完成了一个根域名或者 www 域名的验证,其他域名的 SSL 就可以自动签发,不需要再逐一验证子域名了。

检查签发状态

如果完成了签发,你便可以在 Cloudflare 的 Crypto 菜单下的 Edge Certificates 看到已经签发的证书了。需要注意的是,这里签发的证书不是通配符证书。它会自动给每一个新添加和已有的子域名签发证书并自动续签。

证书状态

IPv6

由于 App Store 要求应用必须支持纯 IPv6 网络,IPv6 已经成为刚需。然而 Hurricane Electric Tunnel Broker 的速度在国内奇慢(国内连接的话香港节点由于绕道 500ms,最快的洛杉矶也 300ms),加上 TCP 的握手延迟实在是不堪设想,且还需要独立 IP 和服务端配置,实在是麻烦。使用本站的 CloudFlare 的 IP 接入可以轻松解决以上难题,且还会自动部署 AnyCast CDN,自动缓存静态内容,节省源站带宽。Tunnel Broker 与 Cloudflare IPv6 的 Ping 值对比:

IPv6 Ping

根域名配置

请格外注意,你需要先完成上一步的 “配置源站”,IPv6 配置才有效,否则会影响 IPv6 的访问。

如果你使用 CNAME,那么 IPv6 会自动生效。但如果你是 IP 接入,那么需要额外添加 Anycast IPv6 地址。

CloudXNS 根域名 IPv6

仅配置 IPv6

你也可以让 IPv4 回源,IPv6 使用 Cloudflare。这样原本的 IPv4 用户不会受到任何影响。你需要使用 IPv6,和上一种方法相同,只不过 A 记录使用源站 IP 即可。

分区/智能解析配置

如果你使用的是 CNAME/IP 接入,那么你可以为域名配置分区解析。可以达到如下一个或几个效果:

  • 国内外分区解析:国内解析到源站/国内 CDN,海外解析到 Cloudflare
  • 备用服务器:源站宕机,自动切换到 Cloudflare

以下均以根域名为例。子域名也可以同根域名一样设置 A 记录,当然也可以换成 CNAME 记录。

CloudXNS 分区解析

添加两组记录即可,国内使用全网默认记录,海外使用海外默认组即可,如图:

根域名 CloudXNS 分区解析

阿里云解析

与 CloudXNS 相似。

阿里云分区解析

Route 53 分区解析

Route 53 的逻辑与上述两者相反,你需要默认 (Default) 配置 Cloudflare 服务器,再单独配置中国源站 (China) 服务器。

默认组使用 Cloudflare 服务器,如图:

Route53 Default

国内组回源,如图:

Route53 国内组

总体设置如下:

Route53 总体配置