我有这个脚本
<?php
function get_reverse_dns($Ip)
{
$result = exec("nslookup -n ".escapeshellarg($Ip)." | grep 'name = '");
if(strpos($result,"name =") === false)
{
return "NO REVERSE";
}
else
{
$result = trim($result);
$ExplodedResult = explode("name =",$result);
$ExplodedResult[1] = trim($ExplodedResult[1]);
$ReverseDns = trim($ExplodedResult[1],".");
return $ReverseDns;
}
}
?>
这给了我反向dns,现在的问题是,有时,一个IP可能会有很长的延迟,我希望这个脚本检查一下,IP可以"查找",如果5秒过去了,但没有发生这种情况,那么return false
我该怎么做?
我已经在linux中尝试过
nslookup --timeout 5 1.1.1.1 | grep 'name = '
timeout 5 nslookup 1.1.1.1 | grep 'name = '
谢谢。
我会使用dig:dig-x${ip}+时间=5次+尝试=1次+重试=0次+短
此命令将只返回IP地址,因此它将简化您的解析位。
您想要检查man nslookup
,它会告诉您命令应该是:
nslookup -timeout 5 1.1.1.1 | grep 'name = '
您的太多了