Esiste un modo semplice per scoprire tutti gli IP utilizzati da Facebook, Myspace, Snapchat ecc.?
Usando Facebook come esempio ... Controlliamo la loro larghezza di banda ad una piccola parte del nostro totale direttamente sul nostro ASA (perché un altro gruppo dell'azienda possiede il proxy web).
Di solito cerco l'ASN dell'azienda (Facebook è 32934), quindi vado a http://as.robtex.com/as32934.html#bgp
trovare i loro prefissi.
Da quell'elenco, creo un gruppo di oggetti Cisco ASA, che posso usare per classificare il traffico ... Questo è quello che sto usando ora ... Facebook viene limitato a una piccola quantità di larghezza di banda ... Funziona molto bene.
Di tanto in tanto, dovrai tornare indietro e controllare robtex AS-info per vedere se hanno aggiunto o rimosso prefissi. Di solito cerco di prendere il blocco aggregato più grande che hanno, anche se stanno solo annunciando blocchi più piccoli da quell'aggregato più grande.
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
Il codice Python che uso per generare l'elenco è banale ...
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)
Il codice presuppone che tu abbia inserito tutti i loro prefissi in un file di testo chiamato "facebook_nets.txt", con un prefisso per riga ...
(py26_dfl)[mpenning@Bucksnort ~]$ head facebook_nets.txt
31.13.24.0/21
31.13.64.0/18
31.13.64.0/19
31.13.64.0/24
31.13.65.0/24
31.13.66.0/24
31.13.67.0/24
31.13.68.0/24
31.13.69.0/24
31.13.70.0/24
(py26_dfl)[mpenning@Bucksnort ~]$
In realtà il mio copione automaticamente elimina le informazioni ogni settimana, ma questa è una versione semplificata.