CNAME记录是域名系统(DNS)中的一种别名记录,用于把一个域名指向另一个域名,让多个域名共用同一目标地址。理解CNAME记录有助于配置网站、CDN加速和第三方服务的域名解析。

| 类型 | DNS资源记录 |
| 全称 | Canonical Name Record(规范名称记录) |
| 所属体系 | 域名系统(DNS) |
| 制定组织 | IETF |
| 典型用途 | CDN接入、多域名指向同一服务 |
CNAME记录(Canonical Name Record,规范名称记录)是域名系统(DNS)中的一种资源记录,作用是把一个域名作为别名,指向另一个被称为「真实名称」的目标域名。
在DNS体系中,最常见的A记录直接把域名对应到一个IP地址,而CNAME记录对应的不是IP,而是另一个域名。当解析服务器在查询过程中遇到CNAME记录时,会以它指向的目标域名为起点重新发起查询,直到最终得到IP地址为止。对访问者来说,这个跳转过程是完全透明的。
CNAME记录最大的价值在于「集中管理」。如果多个域名都通过CNAME指向同一个目标域名,那么当目标服务器的IP发生变化时,只需要修改目标域名的A记录,所有别名域名都会自动跟随更新,而不必逐一修改。
如今CNAME记录被广泛用于接入CDN加速、对象存储、企业邮箱、建站平台等第三方服务:服务商通常会提供一个专属域名,用户只需为自己的域名添加一条CNAME记录指向它即可完成绑定。
根域名(如 example.com 本身)通常不建议设置CNAME,因为它必须携带邮件、域名服务器等其他记录,与CNAME的排他性冲突;实践中一般在子域名(如 www)上使用CNAME。部分DNS服务商为此提供了「CNAME拉平」或ALIAS等变通方案。此外,别名链条过长会增加解析耗时,配置时应尽量避免多层嵌套指向。
问:CNAME记录和A记录有什么区别?答:A记录把域名直接指向IP地址,CNAME记录把域名指向另一个域名,由后者再最终解析出IP。前者路径更短,后者更便于统一管理。
问:为什么接入CDN时要设置CNAME?答:CDN节点的IP会根据网络状况动态调度,服务商通过让用户CNAME到其调度域名,可以随时把访问引导到最合适的节点。
问:一个域名可以同时设置CNAME和其他记录吗?答:按标准不可以,同一域名上的CNAME会与其他记录冲突,这也是根域名慎用CNAME的主要原因。

| 类型 | DNS资源记录 |
| 全称 | Canonical Name Record(规范名称记录) |
| 所属体系 | 域名系统(DNS) |
| 制定组织 | IETF |
| 典型用途 | CDN接入、多域名指向同一服务 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧