CNAME拉平

CNAME拉平是一种DNS解析技术,允许您在根域名(例如example.com)上使用CNAME记录,而不是传统的A/AAAA记录。正常情况下,CNAME记录不能直接用于根域名,因为DNS规范不允许在根级别的CNAME记录。CNAME拉平通过自动解析CNAME指向的目标IP地址,并将其返回给请求者,从而绕过了这一限制。

前提条件

CNAME拉平只会对代理状态为“仅DNS”的DNS记录生效,对于代理状态为“代理加速”的记录将不会生效(因为代理加速的CNAME拉平会暴露您的源站IP地址)。

image.png

功能原理

CNAME拉平前

image
  1. 当终端用户向www.example.com发起请求时,首先向Local DNS(本地DNS服务器)发起请求解析域名www.example.com

  2. 本地DNS服务器向权威DNS服务器请求解析域名www.example.com

  3. 权威DNS返回域名的CNAME记录值www.example.com.ialicdn.com

  4. 本地DNS服务器向阿里云ESA的DNS调度系统请求解析域名www.example.com.ialicdn.com,DNS调度系统将为其分配ESA最佳节点IP地址。

  5. 本地DNS服务器获取到DNS调度系统返回的ESA最佳节点IP地址。

  6. 本地DNS服务器将最佳节点IP地址返回给客户端,用户向最佳节点IP地址发起访问请求。

CNAME拉平后

image
  1. 当终端用户向www.example.com发起请求时,首先向Local DNS(本地DNS服务器)发起请求解析域名www.example.com

  2. 本地DNS服务器向权威DNS服务器请求解析域名www.example.com

  3. 权威DNS服务器直接返回ESA的IP地址。

  4. 本地DNS服务器将最佳节点IP地址返回给客户端,用户向最佳节点IP地址发起访问请求。

功能区别

CNAME拉平可以提高DNS解析速度,减少客户端的等待时间。

  • DNS查询次数:CNAME拉平前需要多次DNS查询,而拉平后只需一次查询就能得到最终IP。

  • 响应速度:CNAME拉平后,由于减少了DNS查询次数,整体解析速度更快。

操作步骤

  1. 登录ESA控制台

  2. 站点管理页面,单击目标站点名称,或对应站点操作列的详情

  3. 在左侧导航栏,选择DNS > 设置

  4. CNAME拉平区域,单击配置

    new.jpg

    CNAME拉平参数

    说明

    拉平顶级的CNAME

    只对顶级域名example.com生效,子域名不受影响。

    说明

    举例:假设您有一个顶级域名(例如 example.com),还有一个子域名(例如 app.example.com)。

    设置为拉平顶级的CNAME后,example.com这个域名会通过CNAME记录指向另一个域名(比如target.com),但子域名app.example.com不受影响,可能指向另一个IP地址或域名。

    拉平所有的CNAME

    对顶级域名和所有的子域名都生效,所有的域名记录都会指向同一个目标域名。

    说明

    举例:假设您有一个顶级域名(例如 example.com),还有一个子域名(例如 app.example.com)。

    设置为拉平所有的CNAME后,example.com会自动指向target.com,子域名app.example.com也会自动指向target.com,任何自定义的子域名(如shop.example.comblog.example.com)都会统一指向target.com

  5. 单击确定