使用通配符解析程序检查域有效性

时间:2012-03-08 03:55:30

标签: php dns

我有一个网站,用于记录用户提供的网页的链接。如果它们有效,我只想记录它们。

我使用checkdnsrr($domain, 'A')来检查域名有效性,我发现这总是返回true。我在共享托管(所以我不能改变任何东西)。我向服务器管理员报告了一个错误,他回答说:

  

我们在服务器上使用OpenDNS作为解析器。他们的解析器将返回IP / DNS记录,即使对于无效域也是如此,因为他们设置了通配符以将任何无效域指向默认IP。因此,您输入的所有域都将显示为具有A记录。

好的。

我想避免在无效域上使用cURL,因为这会浪费,但实际上存在更大的问题。我相信这个解析器返回某种错误页面,如“此域不存在”,并发出200或其他一些据称有效的返回状态。我使用此状态确认页面确实有效,因此现在任何无效域都将被我的网站记录为有效。

(幽默地,一个有效网域的网址无效,导致网页发出404或其他一些错误状态,会被记录下来。

无论如何,还有其他方法来检查域名有效性吗?我不介意使用某些第三方网站。

1 个答案:

答案 0 :(得分:0)

OpenDNS(以及执行此操作的其他人)通常会为应该出现NXDOMAIN的所有域返回相同的IP(无效)。如果您的检查结果是该IP,请将其视为无效。这是一个额外的检查,但它应该是一个有效的解决方法。