域名解析CNAME记录与MX记录冲突的解决办法

李洋博客 2019-11-19 1.08 W阅读 4评论

温馨提示:这篇文章已超过1620天没有更新,请注意相关的内容是否还可用!

很多时候我们在域名解析的过程中会直接解析到服务器的IP地址,但这样做往往会暴露服务器的真是IP地址,容易遭到非法的攻击,但是我可以使用CDN,使用CNAME的解析方式来伪装自己的IP,当然有些虚拟机也是采用CNAME的解析方式来绑定的,但是虚拟机毕竟不如云主机那么灵活。所以今天教大家怎么解决CNAME与MX冲突的办法(阿里云解析演示)。

域名解析CNAME记录与MX记录冲突的解决办法 第1张

记录冲突的原因

在递归进行解析查询时,各记录类型之间是有优先级的,所以在主机记录相同、解析线路相同的情况下,有几种记录类型不能共存使用,否则会给用户造成配置风险,导致业务不可用的情况发生。以下拿CNAME记录和MX记录的冲突来举例:

记录类型主机记录记录值
MX@smtp.qq.com
CNAME@www.liblog.cn

结论:

按照RFC标准协议CNAME优先级最高,所以在解析请求过程中,会优先返回CNAME解析记录结果,这样设置的结果导致用户无法请求到MX记录,直接对客户的邮箱业务造成使用影响。所以对于这类情况,云解析DNS会通过记录冲突的提示方式,来帮助用户避免这种配置风险。

您可以参阅 RFC1034 和 RFC2181 。例如RFC2181中:

域名解析CNAME记录与MX记录冲突的解决办法 第2张

CNAME和MX冲突的解决方法:

建议方案可通过配置主机记录为www的CNAME记录指向CDN产品,再配置主机记录为@的URL转发指向主机记录为www的域名,即可解决主机记录为@的CNAME和MX记录冲突问题。 解析记录配置如下:

解析记录配置如下:

记录类型主机记录解析线路记录值TTL
CNAMEwww默认www.cdncloud.cdn.com10分钟
URL@默认http://www.liblog.cn10分钟
MX@默认smtp.qq.com10分钟
  • 注意: 如果想要实现显性URL转发,最好选择301,并且确定该域名的备案记录在阿里云才行,如果是腾讯云解析,只要是备案域名就行了,无效非得在腾讯云账户下,并且腾讯云的URL只有301,这个很靠谱。

  • PS:因为我的域名没有在阿里云账户备案,所以之前就把域名转入到腾讯云了。

文章版权声明:除非注明,否则均为老李笔记原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (有 4 条评论,10842人围观)
网友昵称:Stilly
Stilly V 铁粉 Google Chrome 93.0.4577.82 Windows 10 x64 椅子
2021-09-24 来自广东 回复
这个解决方案不行,https://domain.com会访问不了,等之后我博客出个解决方案吧
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 7 x64
2021-09-25 来自上海 回复
@Stilly 是的,国内解析不能解析https+域名,但是Cloudflare可以!
网友昵称:你好小姐姐
你好小姐姐 V 铁粉 MIUI Browser 11.10.24 Redmi Note 8 沙发
2020-04-16 来自广东 回复
不错不错呀
网友昵称:李洋博客
李洋博客 V 博主 Sogou Explorer Windows 10 x64
2020-04-16 来自天津 回复
@你好小姐姐 谢谢支持!
取消
微信二维码
微信二维码
支付宝二维码