2011-04-18 40 views
1

当使用checkdnsrr()函数时,它有时会说没有记录存在,当它清楚地显示。checkdnsrr false negative

例如

$domain = 'ns1.huubknops.com.'; 
var_dump(checkdnsrr($domain, 'ANY')); 

返回布尔(假),这表明没有DNS记录被发现。但是,如果我做的:

print_r(dns_get_record($domain)); 

在同一个域,将返回A和AAAA记录:

Array 
(
[0] => Array 
    (
     [host] => ns1.huubknops.com 
     [type] => AAAA 
     [ipv6] => 2001:888:1cf8::1 
     [class] => IN 
     [ttl] => 42450 
    ) 

[1] => Array 
    (
     [host] => ns1.huubknops.com 
     [type] => A 
     [ip] => 83.160.95.99 
     [class] => IN 
     [ttl] => 42450 
    ) 

) 

这不会发生的所有域,只有一些。有没有什么理由或解决这个问题?

+0

看起来像,除非您指定第二个参数,它默认情况下搜索MX记录。试试'checkdnsrr('ns1.huubknops.com。','A')'或'checkdnsrr('ns1.huubknops.com。','ANY')' – 2011-04-18 22:21:24

+0

就是这样。现在感到愚蠢! – diarmuid 2011-05-04 11:09:37

回答