如何获得一个特定IP地址的网站列表?

有没有人知道如何以编程方式安静地坐在一个给定的服务器IP地址的网站列表? 顺便说一句,如何防止他人看到你的服务器托pipe的其他网站?

如果它位于interweb DNS中,则不能隐藏站点 – 就像在目录中有一个前目录电话号码一样。

当然,你可以运行一个与DNS中没有关联的服务器。

我不认为有什么办法可以从外面做到这一点。 只要你的服务器configuration是安全的(它应该是无论如何),没有合理的方法来做到这一点。 有人可以总是做一个ip地址查找每个可能的域名,并比较ip地址。 你不可能阻止他们这样做,但这不是很现实。

这不是程序化的,但是这个网站试图回答这个问题。 这里是stackoverflow.com的IP页面

http://onsamehost.com/69.59.196.211/

编辑:也就是说,它试图回答你的第一个问题。

这被称为反向DNS查询 (或简称为rDNS )。

您可以使用host命令在Linux上执行rDNS:

$ host 72.14.179.79 

您可以在Windows / Linux上使用nslookup命令:

 nslookup 72.14.179.79 

大多数networking库提供了一些方法来获取这些信息。 例如,您可以在Java中使用以下内容:

 java.net.InetAddress.getByName("72.14.179.79"); 

但请注意,您可能无法获得指向指定IP地址的所有域名的列表。 例如,上面示例中的IP地址属于我的一个服务器,它有几个指向它的域,但rDNS查找只返回单个logging。 也许进一步调查这种行为可以帮助你弄清楚如何防止你的域名在rDNS查找中出现。

从“外部”或以匿名的方式,没有办法以编程方式请求绑定到特定Web服务器的IP地址的域名列表。 IIS / Apache /内置的股票安全防止发生这样的事情。 能够让一个Web服务器侦听单个IP地址上的多个域名的function被logging到HTTP 1.1的主机头实现中。

http://www.sitedossier.com这样的网站维护一个域名数据库及其各自的“www”DNS Alogging,然后允许我们通过IP地址进行查询。 他们可能通过请求大量的假查询(从字典中直接获取)或者自己实现了一个基本的蜘蛛(这将会更加有效)来取消search引擎的search结果。

使用nmap执行端口扫描并查找Web服务器。

我用过的另一个网站的成果是http://www.sitedossier.com/ip/69.59.196.211