我想知道是否有办法构建一个自动脚本(无论是perl,bash还是php)都无法找出某个ip上托管的域名.
我正在尝试像yougetsignal.com上的反向IP域检查.
我的一个朋友帮助了我,但它没有找到托管域给出服务器地址列表; 相反,它只是获取IP地址的主机.
这是我编写的PHP代码
<?php
$file = fopen("71", "r");
$ip_file = fopen('iphosts', 'w');
$ip_add = fopen('ip_add', 'w');
$i = 1;
while ( ! feof($file) ) {
$host = fgets($file);
$host = rtrim($host);
echo "\n";
echo "Connecting..." . $host;
echo "\n";
$host_name = gethostbyaddr( $host );
if ( !empty( $host_name ) && $host != $host_name ) {
fwrite($ip_file, $host_name."\n");
} else {
fwrite($ip_add, $host_name."\n");
}
echo " Done \n";
$i++;
}
fclose($file);
fclose($ip_file);
fclose($ip_add);
exit(0);
Run Code Online (Sandbox Code Playgroud)
这通常是不可能的.托管虚拟域的网站通常不提供反向DNS,列出它们托管的所有域.反向DNS只指向其服务器名称.
您链接到的网站可能通过像搜索引擎一样抓取网络来获取其信息.但它不是对页面中的所有单词进行索引,而是简单地记录它找到的所有名称到地址的映射,然后创建一个反向索引,返回映射到同一地址的所有名称.