Skip to content

DNS别名(Alias Record),也称为CNAME记录(Canonical Name Record),是域名系统(DNS)中的一种记录类型,用于将一个域名映射到另一个域名(即规范名称)。它允许一个域名“指向”另一个域名,而不是直接解析到IP地址。

工作原理

  • CNAME记录将一个子域名(例如www.example.com)映射到另一个域名(例如example.comserver1.host.com)。
  • 当DNS解析查询到CNAME记录时,会继续解析目标域名,直到找到最终的A记录(IP地址)或其他记录类型。
  • 例如:如果www.example.com的CNAME记录指向example.com,而example.com的A记录指向192.0.2.1,那么访问www.example.com最终会解析到192.0.2.1

特点

  1. 灵活性:CNAME允许你将多个子域名指向同一个目标域名,方便管理。如果目标域名的IP地址发生变化,只需更新目标域名的A记录,所有CNAME指向它的子域名都会自动更新。
  2. 不能用于根域名:CNAME记录不能直接用于根域名(例如example.com),因为根域名通常需要A记录或其他记录类型。
  3. 链式解析:CNAME记录可以指向另一个CNAME,但应避免过多的CNAME链以减少解析延迟。

使用场景

  • 子域名重定向:将www.example.com指向example.com,确保两者访问相同的网站。
  • CDN服务:将子域名指向内容分发网络(CDN)的域名,例如cdn.provider.com
  • 简化管理:当多个服务共享同一服务器时,使用CNAME统一指向主域名,减少维护成本。

示例

假设你有以下DNS设置:

www.example.com.  CNAME  example.com.
example.com.      A      192.0.2.1

当用户访问www.example.com时:

  1. DNS查询发现www.example.com是CNAME,指向example.com
  2. 继续查询example.com,找到A记录对应的IP地址192.0.2.1
  3. 最终返回192.0.2.1给客户端。