您将采取哪些步骤来发现网站当前使用的所有(或接近全部)IP地址? 如果不打电话给网站pipe理员并要求提供IP地址列表,您将如何尽可能详尽? ;)
NSLOOKUP的作品,但会根据查询的DNS服务器而有所不同。
whois是另一个好工具。
挖,不坏。
以Facebook为例。 我为我们公司的大多数用户封锁了这个网站,但是有一些被批准用于“研究”。 我不能轻易使用OpenDNS,因为我们似乎都来自同一个请求IP地址。 我可以改变,但不想增加比我已经有更多的vlans。
我也可以使用像regex facebook1 "facebook\.com" (我正在运行一个思科防火墙),但这是很容易回避。
所有这一切,我正在问具体寻找一个域的IP地址,而不是其他方法,我可以阻止一个域名。
你不能做到可靠。 像Facebook(或Google等)的大型网站使用Anycast作为他们的DNS服务器,因此,即使您在Whois中查找域以获得权威DNS服务器,响应也可能会从小时变为小时,甚至查询取决于哪个数据中心他们想为你服务。
对于较小的站点,我将在域上执行WHOIS,然后在列出的每个DNS服务器上执行NS查询,以获得该域所有可能的DNS服务器的完整列表。 最后,查询每个DNS服务器的IP列表的FQDN。
在尝试了很多选项后,我发现centralops.net使用他们的“域名档案”为dns提供了一个令人难以置信的广泛的结果集。 无论如何,它给了我所需要的所有facebook Alogging(以及更多)。
感觉像是一个终于回答我自己陈旧的问题的工具。
这样做的一种方式(我承认不是防弹的)将host -ta domain-name一个域名,然后在RIPE / ARIN数据库中为所有这些IP做一个whois,以获得属于某个网站/公司的全部networking范围并阻止所有这些。
(whois或http://cqcounter.com/whois/ )
这可能不是你正在寻找的,但是我发现robtex( http://www.robtex.com/ )可以用于查找使用的ips和范围。
或者你可以尝试http://atsameip.com/
您可以可靠地做到这一点,但是IP地址列表可以随时间而改变,所以您不得不再次重做。
要阻止拥有大量IP地址的公司,首先需要find自己的系统编号。 这相对容易; 它将在任何IP地址的whoislogging中。
这些例子使用GNU jwhois,它通常出现在Linux系统上。 对于其他whois客户端,您可能必须稍微按摩这些命令。
$ host www.facebook.com www.facebook.com is an alias for star.c10r.facebook.com. star.c10r.facebook.com has address 173.252.120.6 star.c10r.facebook.com has IPv6 address 2a03:2880:2130:cf05:face:b00c:0:1 star.c10r.facebook.com mail is handled by 10 msgin.t.facebook.com. $ whois -h whois.radb.net 173.252.120.6 | grep origin origin: AS32934 origin: AS38621
确保它实际上属于Facebook。 如果你阻止了一个没有自己的AS的小型网站,你不想这样做,因为你也会阻止其他人 。 例如,并不是所有上面返回的ASN都是Facebook的。
$ whois -h whois.radb.net AS32934 $ whois -h whois.radb.net AS38621
现在我们知道哪个是Facebook的ASN; 让我们得到他们的IPv4地址范围。
$ whois -h whois.radb.net -- -i origin -T route AS32934 | grep route:
最后是他们的IPv6地址范围。
$ whois -h whois.radb.net -- -i origin -T route6 AS32934 | grep route6:
重复所有的ASN,如果他们真的有不止一个。
这只是一个演示,显示如何轻松获得信息。 您可以在方便的时候将它们写入脚本。 还要注意一些返回的范围可能重叠; 你如何处理这个问题就在你和你的防火墙之间。