岗位

DNS CNAME记录是DNS区域中的一种记录类型,它指定了一个域名的标准名称,它可以是另一个域名的别名,也可以是主域名的一个子域名。 当你开始了解DNS时,CNAME记录是你首先会遇到的东西之一。

无论你是一个刚刚深入了解DNS的复杂性的新手,还是一个希望更好地了解特定类型的DNS记录的经验丰富的专业人士,本文将带你了解什么是CNAME记录,为什么它很重要,以及如何为你的域名创建一个。

什么是DNS CNAME记录?

一个DNS CNAME记录将一个主机名映射到另一个。这意味着你可以有多个具有相同IP地址的主机,但每个主机都有一个不同的名字。

例如,www.mydomain.com 可能被映射到www1.mydomain.com和www2.mydomain.com,以便它们都解析到同一个IP地址。

子域,如 邮件www可以有自己的DNS记录,称为CNAME,将它们与托管内容的父域联系在一起。

例如,CNAME记录可以将别名地址www.mydomain.com 映射到规范地址mydomain.com--在这里,访问者的去向没有任何改变:他们仍然被引导到mydomain.com的实际A记录所指定的任何目的地(必须保持最新)。

规范名称(CNAME)记录也被称为 "真实名称 "或 "规范名称"。这是因为CNAME记录将一个别名映射到其 真名, 准则性的对应的名称。

创建CNAME记录的分步指南

要为你的域名创建一个CNAME记录,请遵循以下步骤。

  1. 转到DNS管理控制台。
  2. 点击 "A记录",然后从出现的记录列表中选择 "CNAME"。
  3. 输入你要创建CNAME记录的域名。
  4. 输入将被视为子域的主机名。
  5. 输入TTL(生存时间),这是你的记录在请求它的系统的缓存中停留的时间。
  6. 对于拥有静态IP地址的系统,建议TTL为1800或更高。对于动态IP地址,使用1800或更少的TTL。
  7. 在填写完所有字段后,从屏幕的右下角选择 "创建",以保存更改并创建新记录。

如果你已经在你的DNS上发布了一个CNAME记录,你可以使用我们免费的 CNAME检查器工具进行检查。

DNS CNAME记录是如何工作的?

一个CNAME记录指向它的规范名称(域名的真实名称)。因此,当你为你的博客设置一个CNAME记录时,它将通过其A记录返回你的博客(mydomain.com)的IP地址。

当你创建一个子域如www.blog.mydomain.com,并将其设置为根域名的别名,那么像www.blog.mydomain.com 这样的子域将有一个CNAME记录,指向根域名mydomain.com

当DNS服务器使用其A记录查询www.blog.mydomain.com,它将使用CNAME触发另一次查询,因为这是mydomain.com的一个子域。这将使用规范名称重新启动查询,并通过其A记录返回mydomain.com的IP地址。

*注意。如果一个主机的IP地址发生变化,只需要更新根域的DNS A记录。所有的CNAME记录,包括别名或子域的记录,在根域发生变化时将自动改变。请参考下面的表格,以便更好地理解。

(子)域名/主机名 记录类型 目标/目的地
淘宝网 A 333.444.555.111
www.blog.mydomain.com CNAME 淘宝网
ftp.mydomain.com CNAME 淘宝网
mail.mydomain.com CNAME 淘宝网

DNS CNAME记录的主要用途

CNAME记录是DNS记录的一种类型,有两个字段,即规范名称和别名。它被用来。

  • 将同一实体或组织所拥有的一组网站引向该实体的主网站
  • 为不同的网络服务如电子邮件或(FTP)映射多个主机名,每个主机名都指向父域
  • 在供应商的域名上为每个客户创建一个子域(自助服务),并使用CNAME记录将这些子域指向客户的根域。
  • 将每个国家的网站版本指向主域
  • 设置内容交付网络(CDN),将CDN的地址作为你的网站起源服务器的CNAME记录,从而确保试图访问服务器上的资源的用户被重定向到CDN,而后者又从你的CDN加载资源。

CNAME记录的DNS处理过程

考虑示例域名PowerDMARC.com:如果这是我们的根,www.powerdmarc.com 将映射到一个名为 "PowerDMARC.com "的CNAME记录。下面是DNS处理过程将如何工作。

命名 类型 价值
www.powerdmarc.com CNAME powerdmarc.com
powerdmarc.com A 172.66.43.156
  1. 一个DNS客户端请求www.powerdmarc.com,在此过程中创建一个DNS请求。
  2. 当提出这一请求时,DNS解析器会查找哪个权威名称服务器持有powerdmarc.com的区域文件,并从该文件中检索任何匹配记录。
  3. DNS客户端会返回一个CNAME记录。
  4. DNS客户端意识到www.powerdmarc.com 是一个别名,它对根域powerdmarc.com发出了新的DNS查询。
  5. DNS解析器返回powerdmarc.com的A记录,其中包含其IP地址。
  6. DNS客户端通过其IP地址成功连接到powerdmarc.com。

CNAME记录 vs A记录 vs 别名记录

A记录、CNAME记录和别名记录是DNS基础设施中使用的三种DNS记录。这些记录中的每一个都有其功能和目的。了解这三种记录之间的差异很重要,这样你就可以有效地使用它们。让我们来看看每一个记录是如何工作的。

➜ CNAME 记录将一个主机名映射到另一个主机名,但不允许同一主机名上的其他 DNS 记录(如 MX 记录)。

➜ 别名记录与 CNAME 记录类似,它将一个主机名映射到另一个主机名--但它确实允许同一主机名上的其他 DNS 记录。由于这一补充,不可能在顶点DNS区域层面应用ALIASES。

➜ A 记录是一个主机名和一个或多个 IP 地址之间的单一标签映射。A记录将一个单一的主机名(标签)映射到一个或多个IP地址(值)。

DKIM CNAME记录

一些电子邮件供应商可能要求你发布一个 DKIMCNAME记录,以达到源头对齐的目的。

这方面的一个例子是,当你想启用 office 365 DKIM记录。

CNAME记录和301/302重定向。它们是一样的吗?

CNAME记录和301重定向都是由网络浏览器用来将用户从一个域名通过一个中介域名引导到另一个域名。然而,这两者之间有很大的区别。

CNAME记录将一个现有的主机名映射到同一FQDN中的另一个主机名,而301重定向则将请求发送到托管你网站的服务器。

换句话说,CNAME记录将你网站的域名或子域指向目标主机名的IP地址,这意味着它不是重定向,它只是指向。