换域名喽

缘起

我博客有相当一段时间，一直是使用默认的域名。而且我其实并不太想去修改，原因是我博客使用的是 Github Page。我想信：背靠着微软，GitHub 所提供的这项服务的可靠性会比我私人所申请的域名要可靠得多。而我一直秉持着这样一个观点：一个博客的死亡并不是其不再更新，而是无法访问。也就是说，我认为博客的持续性是要优先于其他很多方面的。

但今天意外发现邮箱里有封邮件，通知我说申请的域名通过了。十分惊喜，因为我已经忘了这件事了。既然手头上有一个域名，上学期也学了相关的知识，干脆就试一试，在此次梳理下相应的步骤。

步骤

申请 / 购买域名

我使用的是EU.org。好处是免费，但所需时间很长。我在 5 月 27 日申请的，直到昨天（8 月 16 日）才通过。

选择域名解析服务商

我选择的是hostry, 原因是免费。

Navigate to your DNS provider and create either an ALIAS, ANAME, or A record.

以下是我设置中的一部分：

SUBDOMAIN | TYPE | VALUE | TTL, SEC
@ | A | 185.199.108.153 | 86400
@ | AAAA | 2606:50c0:8000::153 | 86400
www | CNAME | euds63.github.io | 86400

在 Claude 的帮助下，我知道：

A 记录 (Address Record): 将域名直接映射到一个 IPv4 地址。它是最基本的域名记录类型。GitHub 提供了 4 个 IP 地址，而不是一个 IP, 主要出于负载均衡和容错的考虑

AAAA 记录 (Quad-A record): 用于将域名映射到 IPv6 地址。

CNAME 记录 (Canonical Name Record): 将域名映射到另一个域名，实现域名别名的作用

值得注意的是www CNAME euds63.github.io 86400，我看到其他的教程有的是将 SUBDOMAIN 设置为@, 但我的情况下会报错Existing record 'SOA' conflicts with the code you are trying to create Cname should not have the same name as other records

Github 配置

Under "Custom domain", type your custom domain, then click Save.

勾选 Enforce HTTPS

很明显，这里 Github 帮我们简化了许多操作。包括哪些呢？

由Securing your GitHub Pages site with HTTPS可知，当 set or change your custom domain in the Pages setting 后，GitHub

begin an automatic DNS check . This check determines if your DNS settings are configured to allow GitHub to obtain a certificate automatically.

If the check is successful, GitHub queues a job to request a TLS certificate from Let's Encrypt.

On receiving a valid certificate, GitHub automatically uploads it to the servers that handle TLS termination for Pages. When this process completes successfully, a check mark is displayed beside your custom domain name.

但如果不是用的 Github Page，要怎么做呢？

验证

Copy
$ ping ds63.eu.org
正在 Ping ds63.eu.org [185.199.108.153] 具有 32 字节的数据:
来自 185.199.108.153 的回复: 字节=32 时间=77ms TTL=54
来自 185.199.108.153 的回复: 字节=32 时间=103ms TTL=54
来自 185.199.108.153 的回复: 字节=32 时间=76ms TTL=54
来自 185.199.108.153 的回复: 字节=32 时间=77ms TTL=54

185.199.108.153 的 Ping 统计信息:
数据包: 已发送 = 4，已接收 = 4，丢失 = 0 (0% 丢失)，
往返行程的估计时间(以毫秒为单位):
最短 = 76ms，最长 = 103ms，平均 = 83ms

$ ping -6 ds63.eu.org

正在 Ping ds63.eu.org [2606:50c0:8001::153] 具有 32 字节的数据:
来自 2606:50c0:8001::153 的回复: 时间=74ms
来自 2606:50c0:8001::153 的回复: 时间=81ms
来自 2606:50c0:8001::153 的回复: 时间=74ms
来自 2606:50c0:8001::153 的回复: 时间=72ms

2606:50c0:8001::153 的 Ping 统计信息:
数据包: 已发送 = 4，已接收 = 4，丢失 = 0 (0% 丢失)，
往返行程的估计时间(以毫秒为单位):
最短 = 72ms，最长 = 81ms，平均 = 75ms

参考资料

Managing a custom domain for your GitHub Pages site

GitHub Pages 绑定个人域名并启用 https

Securing your GitHub Pages site with HTTPS