域名解析(DNS实现原理)的
CNAME和MX记录是冲突,本文介绍如何实现CNAME和MX记录共存
CNAME和MX冲突的解决方法
示例
预期是将主机记录为@的域名xiexianbin.cn配置CNAME记录指向CDN产品,但是xiexianbin.cn域名下已有主机记录为@的MX记录:
| 记录类型 | 主机记录 | 记录值 |
|---|---|---|
| MX | @ | mx1.hichina.com |
结论: 如继续配置主机记录为@的CNAME记录,则无法添加会提示记录冲突。
建议方案
ALIAS记录(推荐)
ALIAS记录,又称 CNAME Flattening 记录,是一种CNAME记录的替代型记录。它和CNAME记录效果完全一样,且ALIAS记录不会与其他记录发生冲突。
URL转发
可通过配置主机记录为www的CNAME记录指向CDN产品,再配置主机记录为@的URL转发指向主机记录为www的域名,即可解决主机记录为@的CNAME和MX记录冲突问题。
解析记录配置如下:
| 记录类型 | 主机记录 | 解析线路 | 记录值 | TTL |
|---|---|---|---|---|
| CNAME | www | 默认 | www.xiexianbin.cn.w.kunlunca.com | 10分钟 |
| URL | @ | 默认 | https://www.xiexianbin.cn | 10分钟 |
| MX | @ | 默认 | mx1.hichina.com | 10分钟 |
记录冲突的规则
在主机记录相同、解析线路相同的情况下,在几种不同类型的解析中不能共存
- 冲突:在相同的主机记录情况下,同一条解析线路下,该两种类型的解析记录不允许共存。如:已经设置了
www.xiexianbin.cn的 A 记录,则不允许再设置www.xiexianbin.cn的 CNAME 记录; - 不冲突:在相同的主机记录情况下,同一条解析线路下,该两种类型的解析记录可以共存。如:已经设置了
www.xiexianbin.cn的 A 记录,则还可以再设置www.xiexianbin.cn的 MX 记录; - 可重复:指在同一类型下,同一条线路下,可设置相同的多条记录值。如:已经设置了
www.xiexianbin.cn的 A 记录,还可以继续再设置www.xiexianbin.cn的 A 记录。
| NS | CNAME | A | URL | MX | TXT | AAAA | SRV | CAA |
|---|---|---|---|---|---|---|---|---|
| NS | 可重复 | 冲突 | 冲突 | 冲突 | 冲突 | 冲突 | 冲突 | 冲突 |
| CNAME | 冲突 | 可重复 | 冲突 | 冲突 | 冲突 | 冲突 | 冲突 | 冲突 |
| A | 冲突 | 冲突 | 可重复 | 冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 |
| URL | 冲突 | 冲突 | 冲突 | 冲突 | 不冲突 | 不冲突 | 冲突 | 不冲突 |
| MX | 冲突 | 冲突 | 不冲突 | 不冲突 | 可重复 | 不冲突 | 不冲突 | 不冲突 |
| TXT | 冲突 | 冲突 | 不冲突 | 不冲突 | 不冲突 | 可重复 | 不冲突 | 不冲突 |
| CAA | 冲突 | 冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 |
| AAAA | 冲突 | 冲突 | 不冲突 | 冲突 | 不冲突 | 不冲突 | 可重复 | 不冲突 |
| SRV | 冲突 | 冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 | 不冲突 | 可重复 |
说明:
- SRV(Service record) 记录用来标识某台服务器使用了某个服务,常见于微软系统的目录管理,包括IP和端口等