delphij's Chaos

选择chaos这个词是因为~~实在很难找到一个更合适的词来形容这儿了……

09 Jul 2011

一次DNS重大运营事故教训

长久不做 SA,所以有些事情变得没有以前那么敏感。昨天终于还是出事了,不过幸亏不是商业系统,如果是的话,我觉得绝对够得上是重大事故。记一笔,留个教训。

简而言之,我自己的一个有邮件服务的域名,在通过 GoDaddy 的系统修改授权域名服务器的时候出了问题。这个问题应该是 GoDaddy 的 bug 导致的,但结果很严重,那个域名的 glue 记录被全部清空了。事后检查 whois 记录看到的状态如此:


Domain ID:D104XXXXXX-LROR
Domain Name:XXXXXXXXXX
Created On:XX-XX-XXXX XX:XX:XX UTC
Last Updated On:07-Jul-2011 XX:XX:XX UTC
Expiration Date:XX-XXX-XXXX XX:XX:XX UTC
Sponsoring Registrar:GoDaddy.com, Inc. (R91-LROR)
Status:CLIENT DELETE PROHIBITED
Status:CLIENT RENEW PROHIBITED
Status:CLIENT TRANSFER PROHIBITED
Status:CLIENT UPDATE PROHIBITED
Registrant ID:CR29XXXXX
Registrant Name:Xin LI
[...]
Tech FAX:
Tech FAX Ext.:
Tech Email:XXXXXXXXXXXXXXXXXXX
__Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:Name Server:__
DNSSEC:Unsigned

对邮件系统来说,发生这种情况的后果是极其严重的。根据 RFC 5321,邮件系统对于停机问题的容忍时间至少是数个小时,然而当域名解析出现问题时,通常系统有理由立即以 4yz 回应来拒绝未进入邮件队列的邮件。所幸的是这个问题持续的时间不算太久,而且这个域名只是一个备用的邮件域名。

几点教训:

  1. 在修改域名配置之后要仔细检查其结果,对于这个问题,应在确认根 zone 更新之后检查域名的 glue 记录是否正常;
  2. 修改注册商处的域名配置时应确保前一操作已经完成后再进行下一步操作;
  3. 需要对域名服务进行监控。