可托管在cf的免费域名还有是很多的,今天推荐一个后缀为 ip6.arpa 的免费域名和托管过程。

这个免费域名很奇怪,前缀为ipv6地址,如: *.*.*.*.f.0.f.1.0.7.4.0.1.0.0.2.ip6.arpa

这个域名是由 he.net 的免费隧道生成的,这篇先不说如何使用免费的 ipv6 隧道,先说如何申请托管这个域名。

准备条件

  1. 一个公网国外的ipv4
  2. 小众邮箱或域名邮箱
  3. cloudflare账号

申请He.net的隧道

  1. 打开 https://tunnelbroker.net/ 左侧 Register 注册账号,如已有直接登录。

提示:

gmail、outlook、qq、163等均不可注册,建议域名邮箱,或试下小众邮箱。
注册成功的账号在以下是通用的

  • ipv6.he.net/certification
  • tunnelbroker.net
  • dns.he.net
  • math.he.net

注册成功后会收到邮件,打开邮件激活就可以登录账号。

  1. 注册成功后创建隧道

提示:

填入的公网ip,有可能会提示 This network is restricted ,这个时候你换个公网ip再试,建议国外的公网ip。
  1. 进入隧道界面,找到 Routed IPv6 Prefixes下的 Routed.

如果有Routed /48 前缀,你可以使用 Assign /48 试着分配,如果分配成功,你复制出Routed /48的前缀(::/64前面的内容),如果没有你复制出Routed /64的前缀。

托管到cloudflare

  1. 将你复制出的前缀补齐,如 2001:470:01c:10c ,将每段中的不足4位的前位补0,得到 2001:0470:001c:010c
  2. 将得到的ipv6前缀倒序整理成每个字符按点分隔。如 2001:0470:001c:010c 整理成 c.0.1.0.c.1.0.0.0.7.4.0.1.0.0.2
  3. 再加上后缀 ip6.arpa 得到域名 c.0.1.0.c.1.0.0.0.7.4.0.1.0.0.2.ip6.arpa
  4. 找开你的cloudflare,添加域名,选择Free计划,继续下一步托管
  5. 得到刚托管域名的 NS名称服务器 xxx.ns.cloudflare.comyyy.ns.cloudflare.com
  6. 回到 tunnelbroker.net的隧道管理界面,将名称服务器填入 rDNS Delegations ,点 Edit 分别填入NS1和NS2, 再点 Save 保存
  7. 等待 Cloudflare 的激活。

修正边缘证书

  1. 查看 SSL/TLS -> 边缘证书 ,会发现状态为 正在初始化(错误)
  2. 使用api修改证书颁发机构为SSL.com,使用api需要用到 API令牌区域ID(怎么获取这里就不说了)
  3. 使用curl请求更改证书颁发机构,将 {区域ID}{账号邮箱}{API令牌} 分别替换成你的

    curl --location --request PATCH "https://api.cloudflare.com/client/v4/zones/{区域ID}/ssl/universal/settings"  --header 'X-Auth-Email: {账号邮箱}'  --header 'X-Auth-Key: {API令牌}' --header 'Content-Type: application/json' --data-raw '{"enabled":true,"certificate_authority":"ssl_com"}'
  4. 找一个联网的linux或可执行shell的执行下请求,返回成功内容

    {"result":{"enabled":true,"certificate_authority":"ssl_com"},"success":true,"errors":[],"messages":[]}
  5. 重新查看 SSL/TLS -> 边缘证书 ,会发现新的证书正在生成,等待即可(比较久)

最后

现在可以愉快的使用你托管在 cloudflare 的免费域名了。
至于he.net中的隧道怎么用,那还可以给你的没有ipv6的VPS加上ipv6隧道实现出站/入站。