415 lines
46 KiB
Python
Executable File
415 lines
46 KiB
Python
Executable File
#!/usr/bin/python3
|
||
|
||
import re
|
||
import os
|
||
import sys
|
||
import net_tree
|
||
import requests
|
||
|
||
# массив выгружаемых списков
|
||
ip_list = {
|
||
'RU': [
|
||
# Большая часть RU сегмента
|
||
{ 'url': ['https://stat.ripe.net/data/country-resource-list/data.json?resource=RU'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://ipv4.fetus.jp/ru.txt'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://github.com/ipverse/rir-ip/blob/master/country/ru/aggregated.json'], 'ipv4': True, 'ipv6': False },
|
||
# HLL LLC
|
||
{ 'url': ['https://bgp.he.net/AS51115#_prefixes', 'https://ipinfo.io/widget/demo/AS51115?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS51115'], 'ipv4': True, 'ipv6': False },
|
||
# STATIC
|
||
{ 'static4': '188.130.255.0/24', 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'MTS': [
|
||
# AS8359
|
||
{ 'url': ['https://bgp.he.net/AS13055#_prefixes', 'https://ipinfo.io/widget/demo/AS13055?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13055'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS13155#_prefixes', 'https://ipinfo.io/widget/demo/AS13155?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13155'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS13174#_prefixes', 'https://ipinfo.io/widget/demo/AS13174?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13174'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS15640#_prefixes', 'https://ipinfo.io/widget/demo/AS15640?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS15640'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16012#_prefixes', 'https://ipinfo.io/widget/demo/AS16012?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16012'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16256#_prefixes', 'https://ipinfo.io/widget/demo/AS16256?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16256'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS197023#_prefixes', 'https://ipinfo.io/widget/demo/AS197023?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS197023'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS209024#_prefixes', 'https://ipinfo.io/widget/demo/AS209024?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS209024'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21103#_prefixes', 'https://ipinfo.io/widget/demo/AS21103?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21103'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21365#_prefixes', 'https://ipinfo.io/widget/demo/AS21365?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21365'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS28884#_prefixes', 'https://ipinfo.io/widget/demo/AS28884?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS28884'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS29190#_prefixes', 'https://ipinfo.io/widget/demo/AS29190?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS29190'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS29194#_prefixes', 'https://ipinfo.io/widget/demo/AS29194?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS29194'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS29209#_prefixes', 'https://ipinfo.io/widget/demo/AS29209?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS29209'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS29497#_prefixes', 'https://ipinfo.io/widget/demo/AS29497?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS29497'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS30881#_prefixes', 'https://ipinfo.io/widget/demo/AS30881?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS30881'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS30922#_prefixes', 'https://ipinfo.io/widget/demo/AS30922?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS30922'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31558#_prefixes', 'https://ipinfo.io/widget/demo/AS31558?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31558'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS33894#_prefixes', 'https://ipinfo.io/widget/demo/AS33894?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS33894'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34351#_prefixes', 'https://ipinfo.io/widget/demo/AS34351?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34351'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS35473#_prefixes', 'https://ipinfo.io/widget/demo/AS35473?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS35473'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS35728#_prefixes', 'https://ipinfo.io/widget/demo/AS35728?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS35728'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS39001#_prefixes', 'https://ipinfo.io/widget/demo/AS39001?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS39001'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS39811#_prefixes', 'https://ipinfo.io/widget/demo/AS39811?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS39811'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS39858#_prefixes', 'https://ipinfo.io/widget/demo/AS39858?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS39858'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS40993#_prefixes', 'https://ipinfo.io/widget/demo/AS40993?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS40993'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS41209#_prefixes', 'https://ipinfo.io/widget/demo/AS41209?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS41209'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS41822#_prefixes', 'https://ipinfo.io/widget/demo/AS41822?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS41822'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42087#_prefixes', 'https://ipinfo.io/widget/demo/AS42087?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42087'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42115#_prefixes', 'https://ipinfo.io/widget/demo/AS42115?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42115'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42322#_prefixes', 'https://ipinfo.io/widget/demo/AS42322?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42322'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43038#_prefixes', 'https://ipinfo.io/widget/demo/AS43038?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43038'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43148#_prefixes', 'https://ipinfo.io/widget/demo/AS43148?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43148'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS44257#_prefixes', 'https://ipinfo.io/widget/demo/AS44257?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS44257'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS44579#_prefixes', 'https://ipinfo.io/widget/demo/AS44579?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS44579'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS44677#_prefixes', 'https://ipinfo.io/widget/demo/AS44677?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS44677'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS44736#_prefixes', 'https://ipinfo.io/widget/demo/AS44736?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS44736'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS44895#_prefixes', 'https://ipinfo.io/widget/demo/AS44895?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS44895'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS47899#_prefixes', 'https://ipinfo.io/widget/demo/AS47899?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS47899'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48000#_prefixes', 'https://ipinfo.io/widget/demo/AS48000?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48000'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48123#_prefixes', 'https://ipinfo.io/widget/demo/AS48123?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48123'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48124#_prefixes', 'https://ipinfo.io/widget/demo/AS48124?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48124'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48212#_prefixes', 'https://ipinfo.io/widget/demo/AS48212?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48212'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48322#_prefixes', 'https://ipinfo.io/widget/demo/AS48322?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48322'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48400#_prefixes', 'https://ipinfo.io/widget/demo/AS48400?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48400'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48541#_prefixes', 'https://ipinfo.io/widget/demo/AS48541?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48541'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48612#_prefixes', 'https://ipinfo.io/widget/demo/AS48612?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48612'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48796#_prefixes', 'https://ipinfo.io/widget/demo/AS48796?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48796'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS49350#_prefixes', 'https://ipinfo.io/widget/demo/AS49350?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS49350'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS49665#_prefixes', 'https://ipinfo.io/widget/demo/AS49665?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS49665'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS49816#_prefixes', 'https://ipinfo.io/widget/demo/AS49816?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS49816'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS50071#_prefixes', 'https://ipinfo.io/widget/demo/AS50071?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS50071'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS50240#_prefixes', 'https://ipinfo.io/widget/demo/AS50240?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS50240'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS50406#_prefixes', 'https://ipinfo.io/widget/demo/AS50406?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS50406'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS60490#_prefixes', 'https://ipinfo.io/widget/demo/AS60490?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS60490'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS60891#_prefixes', 'https://ipinfo.io/widget/demo/AS60891?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS60891'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS6731#_prefixes', 'https://ipinfo.io/widget/demo/AS6731?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS6731'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8359#_prefixes', 'https://ipinfo.io/widget/demo/AS8359?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8359'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8580#_prefixes', 'https://ipinfo.io/widget/demo/AS8580?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8580'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'VIMPELCOM': [
|
||
# AS3216
|
||
{ 'url': ['https://bgp.he.net/AS12543#_prefixes', 'https://ipinfo.io/widget/demo/AS12543?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS12543'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS13257#_prefixes', 'https://ipinfo.io/widget/demo/AS13257?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13257'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16043#_prefixes', 'https://ipinfo.io/widget/demo/AS16043?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16043'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16345#_prefixes', 'https://ipinfo.io/widget/demo/AS16345?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16345'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS20533#_prefixes', 'https://ipinfo.io/widget/demo/AS20533?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS20533'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS20597#_prefixes', 'https://ipinfo.io/widget/demo/AS20597?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS20597'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21332#_prefixes', 'https://ipinfo.io/widget/demo/AS21332?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21332'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21480#_prefixes', 'https://ipinfo.io/widget/demo/AS21480?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21480'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21483#_prefixes', 'https://ipinfo.io/widget/demo/AS21483?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21483'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS2599#_prefixes', 'https://ipinfo.io/widget/demo/AS2599?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS2599'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS2766#_prefixes', 'https://ipinfo.io/widget/demo/AS2766?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS2766'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS28703#_prefixes', 'https://ipinfo.io/widget/demo/AS28703?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS28703'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS29125#_prefixes', 'https://ipinfo.io/widget/demo/AS29125?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS29125'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31359#_prefixes', 'https://ipinfo.io/widget/demo/AS31359?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31359'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31425#_prefixes', 'https://ipinfo.io/widget/demo/AS31425?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31425'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS3216#_prefixes', 'https://ipinfo.io/widget/demo/AS3216?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS3216'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS3235#_prefixes', 'https://ipinfo.io/widget/demo/AS3235?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS3235'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS3253#_prefixes', 'https://ipinfo.io/widget/demo/AS3253?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS3253'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34038#_prefixes', 'https://ipinfo.io/widget/demo/AS34038?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34038'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34644#_prefixes', 'https://ipinfo.io/widget/demo/AS34644?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34644'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34747#_prefixes', 'https://ipinfo.io/widget/demo/AS34747?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34747'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34894#_prefixes', 'https://ipinfo.io/widget/demo/AS34894?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34894'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42110#_prefixes', 'https://ipinfo.io/widget/demo/AS42110?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42110'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42245#_prefixes', 'https://ipinfo.io/widget/demo/AS42245?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42245'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS42842#_prefixes', 'https://ipinfo.io/widget/demo/AS42842?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS42842'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43275#_prefixes', 'https://ipinfo.io/widget/demo/AS43275?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43275'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43687#_prefixes', 'https://ipinfo.io/widget/demo/AS43687?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43687'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43970#_prefixes', 'https://ipinfo.io/widget/demo/AS43970?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43970'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS49144#_prefixes', 'https://ipinfo.io/widget/demo/AS49144?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS49144'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8350#_prefixes', 'https://ipinfo.io/widget/demo/AS8350?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8350'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8371#_prefixes', 'https://ipinfo.io/widget/demo/AS8371?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8371'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8402#_prefixes', 'https://ipinfo.io/widget/demo/AS8402?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8402'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8755#_prefixes', 'https://ipinfo.io/widget/demo/AS8755?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8755'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS8773#_prefixes', 'https://ipinfo.io/widget/demo/AS8773?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8773'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'CHINA': [
|
||
# Большая часть CH сегмента
|
||
{ 'url': ['https://stat.ripe.net/data/country-resource-list/data.json?resource=CN'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://ipv4.fetus.jp/cn.txt'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://github.com/ipverse/rir-ip/blob/master/country/cn/aggregated.json'], 'ipv4': True, 'ipv6': False },
|
||
# Hong Kong
|
||
{ 'url': ['https://stat.ripe.net/data/country-resource-list/data.json?resource=HK'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://ipv4.fetus.jp/hk.txt'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://github.com/ipverse/rir-ip/blob/master/country/hk/aggregated.json'], 'ipv4': True, 'ipv6': False },
|
||
# Alibaba (US) Technology Co., Ltd.
|
||
{ 'url': ['https://bgp.he.net/AS45102#_prefixes', 'https://ipinfo.io/widget/demo/AS45102?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS45102'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'JAPAN': [
|
||
# Большая часть KR сегмента
|
||
{ 'url': ['https://stat.ripe.net/data/country-resource-list/data.json?resource=JP'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://ipv4.fetus.jp/jp.txt'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://github.com/ipverse/rir-ip/blob/master/country/jp/aggregated.json'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'KOREA': [
|
||
# Большая часть KR сегмента
|
||
{ 'url': ['https://stat.ripe.net/data/country-resource-list/data.json?resource=KR'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://ipv4.fetus.jp/kr.txt'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://github.com/ipverse/rir-ip/blob/master/country/kr/aggregated.json'], 'ipv4': True, 'ipv6': False },
|
||
# LG DACOM Corporation
|
||
{ 'url': ['https://bgp.he.net/AS3786#_prefixes', 'https://ipinfo.io/widget/demo/AS3786?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS3786'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'GOOGLE': [
|
||
# Google LLC
|
||
{ 'url': ['https://bgp.he.net/AS11344#_prefixes', 'https://ipinfo.io/widget/demo/AS11344?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS11344'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS13949#_prefixes', 'https://ipinfo.io/widget/demo/AS13949?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13949'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS15169#_prefixes', 'https://ipinfo.io/widget/demo/AS15169?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS15169'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS15276#_prefixes', 'https://ipinfo.io/widget/demo/AS15276?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS15276'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS19425#_prefixes', 'https://ipinfo.io/widget/demo/AS19425?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS19425'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS22577#_prefixes', 'https://ipinfo.io/widget/demo/AS22577?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS22577'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS26910#_prefixes', 'https://ipinfo.io/widget/demo/AS26910?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS26910'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36040#_prefixes', 'https://ipinfo.io/widget/demo/AS36040?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36040'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36492#_prefixes', 'https://ipinfo.io/widget/demo/AS36492?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36492'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36561#_prefixes', 'https://ipinfo.io/widget/demo/AS36561?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36561'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS394725#_prefixes', 'https://ipinfo.io/widget/demo/AS394725?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS394725'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS40873#_prefixes', 'https://ipinfo.io/widget/demo/AS40873?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS40873'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43515#_prefixes', 'https://ipinfo.io/widget/demo/AS43515?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43515'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS55023#_prefixes', 'https://ipinfo.io/widget/demo/AS55023?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS55023'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS6432#_prefixes', 'https://ipinfo.io/widget/demo/AS6432?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS6432'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS19527#_prefixes', 'https://ipinfo.io/widget/demo/AS19527?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS19527'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS26684#_prefixes', 'https://ipinfo.io/widget/demo/AS26684?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS26684'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS395973#_prefixes', 'https://ipinfo.io/widget/demo/AS395973?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS395973'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36039#_prefixes', 'https://ipinfo.io/widget/demo/AS36039?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36039'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS24424#_prefixes', 'https://ipinfo.io/widget/demo/AS24424?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS24424'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS396982#_prefixes', 'https://ipinfo.io/widget/demo/AS396982?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS396982'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS139070#_prefixes', 'https://ipinfo.io/widget/demo/AS139070?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS139070'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS139190#_prefixes', 'https://ipinfo.io/widget/demo/AS139190?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS139190'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS394699#_prefixes', 'https://ipinfo.io/widget/demo/AS394699?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS394699'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS32381#_prefixes', 'https://ipinfo.io/widget/demo/AS32381?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS32381'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36383#_prefixes', 'https://ipinfo.io/widget/demo/AS36383?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36383'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36411#_prefixes', 'https://ipinfo.io/widget/demo/AS36411?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36411'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36520#_prefixes', 'https://ipinfo.io/widget/demo/AS36520?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36520'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS394089#_prefixes', 'https://ipinfo.io/widget/demo/AS394089?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS394089'], 'ipv4': True, 'ipv6': False },
|
||
# Google IT
|
||
{ 'url': ['https://bgp.he.net/AS36384#_prefixes', 'https://ipinfo.io/widget/demo/AS36384?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36384'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36385#_prefixes', 'https://ipinfo.io/widget/demo/AS36385?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36385'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS41264#_prefixes', 'https://ipinfo.io/widget/demo/AS41264?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS41264'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS45566#_prefixes', 'https://ipinfo.io/widget/demo/AS45566?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS45566'], 'ipv4': True, 'ipv6': False },
|
||
# Skyonline Technosystem Private Limited
|
||
{ 'url': ['https://bgp.he.net/AS137154#_prefixes', 'https://ipinfo.io/widget/demo/AS137154?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS137154'], 'ipv4': True, 'ipv6': False },
|
||
# Ramyaa Network Communication
|
||
{ 'url': ['https://bgp.he.net/AS138756#_prefixes', 'https://ipinfo.io/widget/demo/AS138756?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS138756'], 'ipv4': True, 'ipv6': False },
|
||
# Haash Media
|
||
{ 'url': ['https://bgp.he.net/AS141480#_prefixes', 'https://ipinfo.io/widget/demo/AS141480?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS141480'], 'ipv4': True, 'ipv6': False },
|
||
# FAB FIVE NETWORK PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151690#_prefixes', 'https://ipinfo.io/widget/demo/AS151690?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151690'], 'ipv4': True, 'ipv6': False },
|
||
# AMITEL INDIA PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151691#_prefixes', 'https://ipinfo.io/widget/demo/AS151691?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151691'], 'ipv4': True, 'ipv6': False },
|
||
# SMALL INDUSTRIES DEVELOPMENT BANK OF INDIA
|
||
{ 'url': ['https://bgp.he.net/AS151692#_prefixes', 'https://ipinfo.io/widget/demo/AS151692?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151692'], 'ipv4': True, 'ipv6': False },
|
||
# WIRED2COMMUNICATION PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151693#_prefixes', 'https://ipinfo.io/widget/demo/AS151693?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151693'], 'ipv4': True, 'ipv6': False },
|
||
# SWS NETWORK PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151694#_prefixes', 'https://ipinfo.io/widget/demo/AS151694?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151694'], 'ipv4': True, 'ipv6': False },
|
||
# KARNET COMMUNICATIONS LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151695#_prefixes', 'https://ipinfo.io/widget/demo/AS151695?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151695'], 'ipv4': True, 'ipv6': False },
|
||
# GREEN WEB SOFTWARE DEVELOPMENT PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151698#_prefixes', 'https://ipinfo.io/widget/demo/AS151698?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151698'], 'ipv4': True, 'ipv6': False },
|
||
# FASTTECH NET PRIVATE LIMITED
|
||
{ 'url': ['https://bgp.he.net/AS151699#_prefixes', 'https://ipinfo.io/widget/demo/AS151699?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS151699'], 'ipv4': True, 'ipv6': False },
|
||
# Digivision Entertainment Private Limited
|
||
{ 'url': ['https://bgp.he.net/AS45148#_prefixes', 'https://ipinfo.io/widget/demo/AS45148?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS45148'], 'ipv4': True, 'ipv6': False },
|
||
# MTS, TTK, Megafon
|
||
{ 'static4': '212.188.0.0/17,188.43.0.0/16,178.176.0.0/14', 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'RKN': [
|
||
{ 'url': ['https://reestr.rublacklist.net/api/v3/ips/', 'https://antifilter.network/download/ip.lst'], 'ipv4': 32, 'ipv6': False },
|
||
],
|
||
'MSFT': [
|
||
{ 'url': ['https://bgp.he.net/AS8075#_prefixes', 'https://ipinfo.io/widget/demo/AS8075?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS8075'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'VALVE': [
|
||
{ 'url': ['https://bgp.he.net/AS32590#_prefixes', 'https://ipinfo.io/widget/demo/AS32590?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS32590'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'AMAZONE': [
|
||
{ 'url': ['https://bgp.he.net/AS16509#_prefixes', 'https://ipinfo.io/widget/demo/AS16509?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16509'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'DISCORD': [
|
||
# i3D.net
|
||
{ 'url': ['https://bgp.he.net/AS49544#_prefixes', 'https://ipinfo.io/widget/demo/AS49544?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS49544'], 'ipv4': True, 'ipv6': False },
|
||
# STATIC
|
||
{ 'static4': '23.227.0.0/16,104.17.0.0/16,104.18.0.0/16,104.21.0.0/16,142.250.0.0/16,162.159.0.0/16,172.217.0.0/16,172.67.0.0/16,204.11.0.0/16,216.58.0.0/16', 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'CLOUDFLARE': [
|
||
{ 'url': ['https://bgp.he.net/AS13335#_prefixes', 'https://ipinfo.io/widget/demo/AS13335?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS13335'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS14789#_prefixes', 'https://ipinfo.io/widget/demo/AS14789?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS14789'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS132892#_prefixes', 'https://ipinfo.io/widget/demo/AS132892?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS132892'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS133877#_prefixes', 'https://ipinfo.io/widget/demo/AS133877?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS133877'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS202623#_prefixes', 'https://ipinfo.io/widget/demo/AS202623?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS202623'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS209242#_prefixes', 'https://ipinfo.io/widget/demo/AS209242?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS209242'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS394536#_prefixes', 'https://ipinfo.io/widget/demo/AS394536?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS394536'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'AKAMAI': [
|
||
{ 'url': ['https://bgp.he.net/AS12222#_prefixes', 'https://ipinfo.io/widget/demo/AS12222?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS12222'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16702#_prefixes', 'https://ipinfo.io/widget/demo/AS16702?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16702'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS20940#_prefixes', 'https://ipinfo.io/widget/demo/AS20940?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS20940'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21342#_prefixes', 'https://ipinfo.io/widget/demo/AS21342?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21342'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31107#_prefixes', 'https://ipinfo.io/widget/demo/AS31107?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31107'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31108#_prefixes', 'https://ipinfo.io/widget/demo/AS31108?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31108'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31109#_prefixes', 'https://ipinfo.io/widget/demo/AS31109?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31109'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31110#_prefixes', 'https://ipinfo.io/widget/demo/AS31110?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31110'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31377#_prefixes', 'https://ipinfo.io/widget/demo/AS31377?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31377'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS35993#_prefixes', 'https://ipinfo.io/widget/demo/AS35993?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS35993'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS39836#_prefixes', 'https://ipinfo.io/widget/demo/AS39836?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS39836'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21357#_prefixes', 'https://ipinfo.io/widget/demo/AS21357?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21357'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS21399#_prefixes', 'https://ipinfo.io/widget/demo/AS21399?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS21399'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS23903#_prefixes', 'https://ipinfo.io/widget/demo/AS23903?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS23903'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS24319#_prefixes', 'https://ipinfo.io/widget/demo/AS24319?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS24319'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS33905#_prefixes', 'https://ipinfo.io/widget/demo/AS33905?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS33905'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34164#_prefixes', 'https://ipinfo.io/widget/demo/AS34164?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34164'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS34850#_prefixes', 'https://ipinfo.io/widget/demo/AS34850?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS34850'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS35204#_prefixes', 'https://ipinfo.io/widget/demo/AS35204?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS35204'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS18680#_prefixes', 'https://ipinfo.io/widget/demo/AS18680?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS18680'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS18717#_prefixes', 'https://ipinfo.io/widget/demo/AS18717?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS18717'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS20189#_prefixes', 'https://ipinfo.io/widget/demo/AS20189?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS20189'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS35994#_prefixes', 'https://ipinfo.io/widget/demo/AS35994?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS35994'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS23454#_prefixes', 'https://ipinfo.io/widget/demo/AS23454?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS23454'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS22207#_prefixes', 'https://ipinfo.io/widget/demo/AS22207?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS22207'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS23455#_prefixes', 'https://ipinfo.io/widget/demo/AS23455?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS23455'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS43639#_prefixes', 'https://ipinfo.io/widget/demo/AS43639?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS43639'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS16625#_prefixes', 'https://ipinfo.io/widget/demo/AS16625?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS16625'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS36183#_prefixes', 'https://ipinfo.io/widget/demo/AS36183?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS36183'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS31984#_prefixes', 'https://ipinfo.io/widget/demo/AS31984?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS31984'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS200005#_prefixes', 'https://ipinfo.io/widget/demo/AS200005?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS200005'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS393560#_prefixes', 'https://ipinfo.io/widget/demo/AS393560?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS3935605'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS32787#_prefixes', 'https://ipinfo.io/widget/demo/AS32787?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS32787'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS63949#_prefixes', 'https://ipinfo.io/widget/demo/AS63949?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS63949'], 'ipv4': True, 'ipv6': False },
|
||
{ 'url': ['https://bgp.he.net/AS48337#_prefixes', 'https://ipinfo.io/widget/demo/AS48337?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS48337'], 'ipv4': True, 'ipv6': False },
|
||
],
|
||
'IQWEB': [
|
||
{ 'url': ['https://bgp.he.net/AS59692#_prefixes', 'https://ipinfo.io/widget/demo/AS59692?dataset=asn', 'https://api.hackertarget.com/aslookup/?q=AS59692'], 'ipv4': True, 'ipv6': False },
|
||
]
|
||
}
|
||
|
||
# компилируем регулярку поиска ipv4 адреса
|
||
ipv4_find_str=re.compile(r"[^0-9.]?(25[0-5]|2[0-4][0-9]|1?[0-9][0-9]|[1-9])\.(25[0-5]|2[0-4][0-9]|1?[0-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1?[0-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1?[0-9][0-9]|[0-9])(/([0-9]{1}[0-9]*))?[^0-9.]?")
|
||
|
||
# метод сбора словаря ip адресов ipv4 из текста
|
||
def ipv4_find(strip:str, size:int):
|
||
"""
|
||
Метод сбора словаря ip адресов ipv4 из текста
|
||
возвращает словарь ip
|
||
где:
|
||
ключ - имя сети
|
||
значение - [адрес в int формате, размер сети]
|
||
"""
|
||
listip=dict()
|
||
for c in ipv4_find_str.finditer(strip):
|
||
ip:int=0
|
||
key:str=""
|
||
# 4 элемента кортежа, содержащие актеты адреса
|
||
for i in range(1, 5):
|
||
key+=str(c.group(i))+"."
|
||
ip = ip * 256 + int(c.group(i))
|
||
# элемент кортежа, содержащий размер сети
|
||
if c.group(6) and int(c.group(6))<=size:
|
||
listip[key[:-1]+"/"+str(c.group(6))]=[ip,int(c.group(6))]
|
||
# элемент кортежа, с размером сети, отсутствует
|
||
elif size==32:
|
||
listip[f"{key[:-1]}/32"]=[ip,32]
|
||
return listip
|
||
|
||
# метод сбора словаря ip адресов ipv4 из текста
|
||
def ipv6_find(strip:str, size:int):
|
||
"""
|
||
Метод сбора словаря ip адресов ipv4 из текста
|
||
возвращает словарь ip
|
||
где:
|
||
ключ - имя сети
|
||
значение - [адрес в int формате, размер сети]
|
||
"""
|
||
return dict()
|
||
|
||
# метод получения списка ip адресов
|
||
def list_ip(c_dict: dict = []):
|
||
"""
|
||
Метод получения списка ip адресов
|
||
возвращает кортеж из 2-х списков: ipv4 и ipv6
|
||
"""
|
||
try:
|
||
ipv4_list=dict()
|
||
ipv6_list=dict()
|
||
# пробегаем словарь выгрузки
|
||
for c_list in c_dict:
|
||
# какие типы обрабытываем, от какого размера
|
||
ipv4 = False if 'ipv4' not in list(c_list) or not c_list['ipv4'] else (c_list['ipv4'] if type(c_list['ipv4']) is int else 24)
|
||
ipv6 = False if 'ipv6' not in list(c_list) or not c_list['ipv6'] else (c_list['ipv6'] if type(c_list['ipv6']) is int else 32)
|
||
# если есть источник ссылка
|
||
if 'url' in list(c_list):
|
||
# бежим весь список ссылок пока не код 200
|
||
for c_url in c_list['url']:
|
||
if (result:=requests.get(c_url)) and result.status_code == 200 and result.text:
|
||
print(f"URL: {c_url}")
|
||
# пополняем словарь ipv4_list
|
||
if ipv4: ipv4_list.update(ipv4_find(result.text,ipv4))
|
||
# пополняем словарь ipv6_list
|
||
if ipv6: ipv6_list.update(ipv6_find(result.text,ipv6))
|
||
break
|
||
print("Ошибка соединения")
|
||
# если есть статичные записи ipv4
|
||
if ipv4 and 'static4' in list(c_list):
|
||
print(f"STATIC: IPv4")
|
||
# пополняем словарь ipv4_list
|
||
ipv4_list.update(ipv4_find(str(c_list['static4']),ipv4))
|
||
# если есть статичные записи ipv6
|
||
if ipv6 and 'static6' in list(c_list):
|
||
print(f"STATIC: IPv6")
|
||
# пополняем словарь ipv6_list
|
||
ipv6_list.update(ipv6_find(str(c_list['static6']),ipv6))
|
||
|
||
# сжимаем подсети ipv4
|
||
if ipv4_list:
|
||
# строим дерево
|
||
Root = net_tree.Node(net_tree.Net(0,0), 0)
|
||
# пробегаем в цикле
|
||
for c in ipv4_list.values():
|
||
# добавляем запись в дерево
|
||
Root.addSubnet(net_tree.Node(net_tree.Net(c[0], c[1]), 1))
|
||
Root.finishTreeFirst()
|
||
# жесткое сжатие в размер 30000 записей
|
||
#Root.collapseRoot(Root.real_ip_records_count - 30000)
|
||
# более мягкое сжатие
|
||
Root.collapse(1,Root.real_ip_records_count)
|
||
# возвращаем результат
|
||
ipv4_list:str=Root.returnCollapsedTree('route {addr}/{masklen} blackhole;')
|
||
else:
|
||
ipv4_list:bool=False
|
||
|
||
# сжимаем подсети ipv6
|
||
if ipv6_list:
|
||
None
|
||
else:
|
||
ipv6_list:bool=False
|
||
|
||
# возвращаем 2 списка маршрутов
|
||
return ipv4_list, ipv6_list
|
||
except Exception as e:
|
||
# исключение
|
||
print(f"Ошибка: {e}")
|
||
return False, False
|
||
|
||
# главная фукция
|
||
if __name__ == "__main__":
|
||
# создаем дерриктори. для сохранения
|
||
outdir=os.path.join(os.path.dirname(os.path.realpath(__file__)), 'unloading')
|
||
if not os.path.exists(outdir):
|
||
os.makedirs(outdir,exist_ok=True)
|
||
# обходим массив списков для выкрузки
|
||
for clist in ip_list:
|
||
# имена выходых файлов
|
||
ipv4_out_file=f"{outdir}/{clist.lower()}_v4.txt"
|
||
ipv6_out_file=f"{outdir}/{clist.lower()}_v6.txt"
|
||
# вычисляем кол-во записей прошлой выгрузки
|
||
ipv4_count_old = sum(1 for line in open(ipv4_out_file)) if os.path.isfile(ipv4_out_file) else 0
|
||
ipv6_count_old = sum(1 for line in open(ipv6_out_file)) if os.path.isfile(ipv6_out_file) else 0
|
||
# выполняем выгрузку
|
||
print(f"Выгружаю список IP: {clist}")
|
||
ipv4_list, ipv6_list=list_ip(ip_list[clist])
|
||
# сохраняем ipv4
|
||
if ipv4_list and len(ipv4_list.splitlines()) >= ipv4_count_old * 0.7:
|
||
# сохраняем в файл
|
||
with open(ipv4_out_file, "w") as file:
|
||
file.write(ipv4_list)
|
||
print(f"Файл {ipv4_out_file} сохранён")
|
||
# сохраняем ipv6
|
||
if ipv6_list and len(ipv6_list.splitlines()) >= ipv6_count_old * 0.7:
|
||
# сохраняем в файл
|
||
with open(ipv6_out_file, "w") as file:
|
||
file.write(ipv6_list)
|
||
print(f"Файл {ipv6_out_file} сохранён")
|
||
print("")
|