由于错误,BIND – 区域未加载

从Ubuntu 8.04升级到10.04后,我的DNS不能正常工作了。

当我运行named-checkzone example.com /var/cache/bind/example.com.zone.db时,我一直收到这个错误

zone example.com/IN: NS 'mx002a.example.com' has no address records (A or AAAA) zone example.com/IN: not loaded due to errors. 

在/var/cached/bind/example.com.db中

 $TTL 3D @ IN SOA mx002a.example.com. chantra.example.com. ( 200608081 ; serial, todays date + todays serial # 8H ; refresh, seconds 2H ; retry, seconds 4W ; expire, seconds 1D ) ; minimum, seconds ; ; mx002a.example.com IN A 192.168.85.19 example.com. IN NS mx002a.example.com. mx001 60 IN A 192.168.85.17 mx001 60 IN A 192.168.85.18 

您必须指定区域文件中所有内容的FQDN,或设置$ ORIGIN。 另外,如果您指定FQDN,则必须使用尾点来指定它(这就是为什么它看不到mx002a.example.com的Alogging)。

要解决这个问题:

 $TTL 3D $ORIGIN example.com. @ IN SOA mx002a.example.com. chantra.example.com. ( 200608081 ; serial, todays date + todays serial # 8H ; refresh, seconds 2H ; retry, seconds 4W ; expire, seconds 1D ) ; minimum, seconds ; ; @ IN NS mx002a.example.com. mx002a IN A 192.168.85.19 mx001 60 IN A 192.168.85.17 mx001 60 IN A 192.168.85.18 

@是仅仅是起源的捷径。