我如何找到像Facebook的IP地址这样的公司。我试图阻止Facebook在工作中,并且在HTTP和URL阻止方面遇到一些困难。每当我阻止一个facebook IP时,似乎就会弹出更多。

是否有任何简便的方法来找出Facebook,Myspace,Snapchat等使用的所有IP?

评论

我完全同意塞巴斯蒂安关于阻止URL而不是IP地址阻止的方法。还有许多客户端软件可用于阻止社交网站的URL。我个人使用Mcaffee来做到这一点,它的工作原理就像一种魅力。

#1 楼


是否有任何简便的方法来找出Facebook,Myspace,Snapchat等使用的所有IP?


以Facebook为例...我们直接在我们的ASA上将带宽限制到我们总带宽的一小部分(因为该公司中的另一个小组拥有网络代理)。

我通常查找公司的ASN(Facebook为32934),然后转到http://as.robtex.com/as32934.html#bgp并找到其前缀。

从该列表中,我建立了一个Cisco ASA对象组,我可以使用它来对流量进行分类...这就是我现在正在使用的... Facebook占用了少量带宽...效果很好。

,您必须返回并检查robtex AS-info,以查看它们是否添加或删除了前缀。我通常会尝试使用它们拥有的最大聚合块,即使它们只是从较大的聚合中宣布较小的块也是如此。

列表很简单...

object-group AS32934_Facebook
 network-object 31.13.24.0 255.255.248.0
 network-object 31.13.64.0 255.255.192.0
 network-object 66.220.144.0 255.255.240.0
 network-object 69.63.176.0 255.255.240.0
 network-object 69.171.224.0 255.255.224.0
 network-object 74.119.76.0 255.255.252.0
 network-object 103.4.96.0 255.255.252.0
 network-object 173.252.64.0 255.255.192.0
 network-object 204.15.20.0 255.255.252.0


代码假定您将所有前缀都放在一个名为“ facebook_nets.txt”的文本文件中,每行一个前缀...

from ipaddr import IPv4Network, CollapseAddrList

fb_nets = list()
with open('facebook_nets.txt') as fh:
    for line in fh:
        net = IPv4Network(line.strip())
        fb_nets.append(net)

print "object-group AS32934_Facebook"
for net in sorted(CollapseAddrList(fb_nets)):
    print " network-object %s %s" % (net.network, net.netmask)


实际上,我的脚本每周都会自动对信息进行网上抓取,但这是一个简化的版本。

#2 楼

有几种方法可以找到主要组织(例如Facebook)的IP范围。其中最基本的方法是打开您选择的终端/命令行并发出命令:nslookup facebook.com

这为您提供了与该DNS名称相关的IP地址;在这种情况下,173.252.110.27是来自我的DNS服务器的答案。您的命令行):whois 173.252.110.27

在这种情况下,相关输出为: ,因此只需在ACL中使用该范围即可。像Facebook这样规模的组织将不断增加新的IP空间,这将超出过滤范围。好。

如果您的HTTPS和URL阻止遇到特定问题,则取决于设备,您可以在另一个问题中寻求有关这些特定问题的帮助。答案可能会更好地帮助您阻止对这些网站的访问。

评论


感谢您的回复,此列表准确吗? bgp.he.net/AS32934#_prefixes

– pjf
2013年9月4日4:36



一目了然,@ pjf似乎是准确的。在我发现的几个范围内,whois查找确实将Facebook列为分配的组织。以我的经验,HE的BGP工具包在提供准确信息方面做得很好。

–布雷特·莱金斯(Brett Lykins)
13年4月4日在5:03

#3 楼

要阻止不可接受的网站,通常可以使用代理服务器或Web过滤防火墙。通过强迫所有人使用代理并阻止对Web的正常访问,或者使用防火墙并阻止有问题的URL。对于网站而言,使用IP地址永远不是一个好选择,因为对于大型站点(当它们切换到CDN或从CDN切换,当它们添加更靠近您的位置的其他群集等)时,这些地址可能经常更改。

要找出大型网站使用的所有IP地址,对于Facebook和Google这样的大型公司来说都是非常困难的。另外,即使您阻止了IP,也有许多服务可以用作访问这些站点的代理。

#4 楼

我一直在使用NBAR来限制Facebook,但您可以对其进行调整以阻止它。这仅适用于纯文本HTTP请求,该请求会在重定向到HTTPS之前有效阻止某人在浏览器中输入地址。 FB的SSL(TLS)书签将会丢失。

您还可以查看应该能够处理此问题的新ASA-X CX(上下文感知安全性),尽管我尚未部署此文件

class-map match-any facebook-not4you
 match protocol http host "*facebook.com"  
 match protocol http host "*fbcdn.net" 
!
policy-map badfacebookbad
  class facebook-not4you
    drop
!
interface Gi0/1
  service-policy output badfacebookbad


#5 楼

在您的地方,如果我有机会花钱,我会在您的网关和您的LAN之间放置一个具有UTM功能的盒子。 (就像以太网桥一样工作)并删除所有发往“社交网络”网站类别的Web请求。