浅谈cName

cName是一种域名的解析记录,中文可以翻译为别名或者规范名字,很多站长搞不清楚这个解析记录到底是做什么的,本文就根据我的一些经验来讲下我的理解。

cName的作用:当你为一个域名(以www.idcspy.org为例)设置cname记录为zzbaike.com 之后,那么当你查询www.idcspy.org 的解析的时候,DNS首先会查到zzbaike.com,然后查询zzbaike.com对应的记录,将zzbaike.com的记录返回给你。这里的记录不只是A记录,也可以是MX记录,TXT记录

关于cName的误解:
很多站长认为将一个域名(sub.domain1.com)cname到另外一个域名(domain2.com)之后就可以实现:访问sub.domain1.com得到domain2.com的内容.这个混淆了解析和绑定的区别,把cName和转向功能混为一谈了。cName只能保证sub.domain1.com的解析和domain2.com同步起来,如果是共享ip的主机,不绑定还是访问不到网站内容。

cName使用规范及滥用:
设置了cName的域名不能设置其他任何解析记录(所以只有子域名才能设置cName);MX记录不能指向一个cName记录。

在使用的时候,发现很多站长都喜欢用cName,例如我给idcspy.org设置一个A记录,然后设置www.idcspy.org的cName记录为idcspy.org。这样设置有什么好处?修改ip的时候改一个地方就可以了。坏处呢?看本文的第二段就知道了,一个cName要执行两次查询,会增加DNS服务器的负担,也会轻微影响查询速度。使用何种方式站长自己确定,我的建议是都用A记录,不会增加多少麻烦。

什么地方cName必不可少呢?
大部分文章提到cName的好处都是方便云云,除非你设置几十个子域名的cName,要么还真看不出方便在什么地方(真要设置这么多还不如用泛解析)。但是有些地方少了cName还不行,例如你要用一个第三方平台或者是CDN,经常需要设置cName,为什么呢?因为这些网站一般采用了CDN,采取智能解析,不同地区解析的IP是不一样的,这个时候就非cName莫属了。