Sep 062007
 

今天碰到了一个DNS解析记录总是不生效的troubleshooting案例,故障现象很诡异,有部分解析记录是完全没有问题的,而有部分则完全不生效。通过dig诊断来看就好像根本不存在这几条记录一样,而这几条记录又是确确实实地写在了zone file里。

正在莫名其妙的时候,发现log里在加载这个zone的时候有这样一条日志:loading master file /var/named/xxxxxx.zone: CNAME and other data。

还有一条标明了行号,于是检查,发现在此行配置了一条MX记录,同时下面还有一行是同一子域名配置了一条CNAME记录。于是怀疑对于同一子域名不能同时存在这两种记录,删除其MX,reload发现没有日志出现。再dig,发现先前解析不出来的记录都恢复正常。

然后回顾了一下,认为我这个推断是正确的。因为CNAME本身就是将子域名委派至其他DNS服务器解析管理,此时其自身配置的A与MX应当失效,所以不应该存在此类记录才对。BIND在此应该是拒绝zone file里同时写了同一子域名的CNAME与其他记录。

再想了一下,刚才故障中正常的解析都是位于此条之上的记录,失败的都是位于之下,说明BIND在加载zone的时候是按照配置文件逐条读入,碰到失败则放弃之下的所有内容,所以才有此奇特的故障现象。

后经测试,有CNAME存在时,确实A和MX都不能建立,否则报错,NS倒是可以,但是不起作用。

看来有空还是要好好研读RFC,一些细节方面的东西不能忽视。

  3 Responses to “比较少见的DNS问题”

  1. 这位老大你好.听说你有deamhost?
    能不能分给我呀.或者把你剩下的期限买给我.
    你不是不要了吗
    联系我 youhaohezu gmail

  2. 呃,这个其实我以前因为速度问题曾经推出dreamhost,但是用了一圈之后发觉还是这个顺手,于是就转回来了,现在的空间都是在dreamhost,目前不打算出售.你如果要买,直接去官方订购即可,如果需要折扣价的话我弄个优惠码给你就是了.

  3. 嗯,是di,是di,不出售了,出售的话,我的站就挂了

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>