mirror of
https://github.com/vel21ripn/nDPI.git
synced 2026-04-28 06:59:40 +00:00
Add specific protocol ids for Copilot, GitHub Actions and GitHub Packages. There is some overlapping between the addresses in the Github list and in the Azure one. Not sure about the best action here: add a (temporary?) workaround to avoid collisions. Close #2976 --------- Co-authored-by: Ivan Nardi <nardi.ivan@gmail.com>
223 lines
8.4 KiB
Bash
Executable file
223 lines
8.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
FAILED_ASN=0
|
|
TOTAL_ASN=0
|
|
|
|
function processing_list() {
|
|
local LIST_MERGED="/tmp/list_m"
|
|
local LIST6_MERGED="/tmp/list6_m"
|
|
|
|
echo "(2) Processing IP addresses..."
|
|
./mergeipaddrlist.py "$1" > $LIST_MERGED
|
|
./mergeipaddrlist.py "$2" > $LIST6_MERGED
|
|
./ipaddr2list.py "$LIST_MERGED" "$3" "$LIST6_MERGED" > "$4"
|
|
rm -f $LIST_MERGED $LIST6_MERGED
|
|
}
|
|
|
|
function create_list() {
|
|
LIST=/tmp/list
|
|
LIST6=/tmp/list6
|
|
|
|
for i in "${@:4}"; do
|
|
TOTAL_ASN=$(( TOTAL_ASN + 1 ))
|
|
if ! ./get_routes_by_asn.sh "$i" >> $LIST; then
|
|
echo "Could not fetch route for ${i} (${1})"
|
|
FAILED_ASN=$(( FAILED_ASN + 1 ))
|
|
fi
|
|
if ! ./get_routes6_by_asn.sh "$i" >> $LIST6; then
|
|
echo "Could not fetch route6 for ${i} (${1})"
|
|
FAILED_ASN=$(( FAILED_ASN + 1 ))
|
|
fi
|
|
done
|
|
|
|
#TODO: ipv6 addresses
|
|
if [ ! -z "$3" ]; then
|
|
# Split comma separated list of additional networks to add
|
|
echo "$3" | tr "," "\n" >> $LIST
|
|
fi
|
|
|
|
processing_list "$LIST" "$LIST6" "$1" "$2"
|
|
rm -f $LIST $LIST6
|
|
}
|
|
|
|
cd "$(dirname "${0}")" || exit 1
|
|
. ./common.sh || exit 1
|
|
|
|
echo "(1) Downloading Apple routes..."
|
|
DEST="../src/lib/inc_generated/ndpi_asn_apple.c.inc"
|
|
create_list NDPI_PROTOCOL_APPLE $DEST "" "AS714" "AS6185" "AS2709"
|
|
echo "(3) Apple IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Facebook routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_facebook.c.inc
|
|
create_list NDPI_PROTOCOL_FACEBOOK $DEST "" "AS63293" "AS54115" "AS34825" "AS32934"
|
|
echo "(3) Facebook IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Netflix routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_netflix.c.inc
|
|
create_list NDPI_PROTOCOL_NETFLIX $DEST "" "AS55095" "AS40027" "AS394406" "AS2906"
|
|
echo "(3) Netflix IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Teamviewer routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_teamviewer.c.inc
|
|
create_list NDPI_PROTOCOL_TEAMVIEWER $DEST "" "AS43304" "AS212710" "AS208187" "AS208175"
|
|
echo "(3) Teamviewer IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Telegram routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_telegram.c.inc
|
|
create_list NDPI_PROTOCOL_TELEGRAM $DEST "" "AS62041" "AS62014" "AS59930" "AS44907" "AS211157"
|
|
echo "(3) Telegram IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Twitter routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_twitter.c.inc
|
|
create_list NDPI_PROTOCOL_TWITTER $DEST "" "AS63179" "AS54888" "AS35995" "AS13414"
|
|
echo "(3) Twitter IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Webex routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_webex.c.inc
|
|
create_list NDPI_PROTOCOL_WEBEX $DEST "" "AS6577" "AS399937" "AS16472" "AS13445"
|
|
echo "(3) Webex IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Tencent routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_tencent.c.inc
|
|
create_list NDPI_PROTOCOL_TENCENT $DEST "" "AS45090" "AS137876" "AS133478" "AS132591" "AS132203" "AS139341"
|
|
echo "(3) Tencent IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading OpenDNS routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_opendns.c.inc
|
|
create_list NDPI_PROTOCOL_OPENDNS $DEST "" "AS36692" "AS30607"
|
|
echo "(3) OpenDNS IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Dropbox routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_dropbox.c.inc
|
|
create_list NDPI_PROTOCOL_DROPBOX $DEST "" "AS62190" "AS54372" "AS393874" "AS203719" "AS200499" "AS19679"
|
|
echo "(3) Dropbox IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Blizzard routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_blizzard.c.inc
|
|
create_list NDPI_PROTOCOL_BLIZZARD $DEST "" "AS57976" "AS32163"
|
|
echo "(3) Blizzard IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Canonical routes..." #Canonical
|
|
DEST=../src/lib/inc_generated/ndpi_asn_canonical.c.inc
|
|
create_list NDPI_PROTOCOL_CANONICAL $DEST "" "AS41231" "AS11210"
|
|
echo "(3) Canonical IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Twitch routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_twitch.c.inc
|
|
create_list NDPI_PROTOCOL_TWITCH $DEST "" "AS46489" "AS397153"
|
|
echo "(3) Twitch IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Hotspot Shield routes..." #AnchorFree
|
|
DEST=../src/lib/inc_generated/ndpi_asn_hotspotshield.c.inc
|
|
create_list NDPI_PROTOCOL_HOTSPOT_SHIELD $DEST "" "AS26642"
|
|
echo "(3) Hotspot Shield IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Steam routes..." #Valve
|
|
DEST=../src/lib/inc_generated/ndpi_asn_steam.c.inc
|
|
create_list NDPI_PROTOCOL_STEAM $DEST "" "AS32590"
|
|
echo "(3) Steam IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Bloomberg routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_bloomberg.c.inc
|
|
create_list NDPI_PROTOCOL_BLOOMBERG $DEST "" "AS8188" "AS58850" "AS33220" "AS33181" "AS199559" "AS17063" "AS13908" "AS10361"
|
|
echo "(3) Bloomberg IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Edgecast routes..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_edgecast.c.inc
|
|
create_list NDPI_PROTOCOL_EDGECAST $DEST "" "AS15133"
|
|
echo "(3) Edgecast IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading LogMeIn/GoTo..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_goto.c.inc
|
|
create_list NDPI_PROTOCOL_GOTO $DEST "" "AS395424" "AS21866" "AS213380" "AS20104" "AS16815"
|
|
echo "(3) LogMeIn/GoTo IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading RiotGames..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_riotgames.c.inc
|
|
create_list NDPI_PROTOCOL_RIOTGAMES $DEST "" "AS6507"
|
|
echo "(3) RiotGames IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Threema..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_threema.c.inc
|
|
create_list NDPI_PROTOCOL_THREEMA $DEST "" "AS29691" "AS15576"
|
|
echo "(3) Threema IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading AliBaba..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_alibaba.c.inc
|
|
create_list NDPI_PROTOCOL_ALIBABA $DEST "" "AS59055" "AS59054" "AS59053" "AS59052" "AS59051" "AS59028" "AS45104" "AS45103" "AS45102" "AS37963" "AS34947" "AS211914" "AS134963"
|
|
echo "(3) AliBaba IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading AVAST..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_avast.c.inc
|
|
create_list NDPI_PROTOCOL_AVAST $DEST "" "AS198605"
|
|
echo "(3) AVAST IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Discord..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_discord.c.inc
|
|
create_list NDPI_PROTOCOL_DISCORD $DEST "" "AS49544"
|
|
echo "(3) Discord IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading LINE..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_line.c.inc
|
|
create_list NDPI_PROTOCOL_LINE $DEST "125.209.252.0/24" "AS38631"
|
|
echo "(3) Line IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading VK..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_vk.c.inc
|
|
# https://bgpview.io/search/vkontakte
|
|
create_list NDPI_PROTOCOL_VK $DEST "" "AS47541" "AS207581" "AS28709" "AS47542" "AS62243" "AS47764"
|
|
echo "(3) VK IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Yandex..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_yandex.c.inc
|
|
create_list NDPI_PROTOCOL_YANDEX $DEST "" "AS44534" "AS207207" "AS202611" "AS13238"
|
|
echo "(3) Yandex IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Yandex Cloud..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_yandex_cloud.c.inc
|
|
create_list NDPI_PROTOCOL_YANDEX_CLOUD $DEST "" "AS210656" "AS200350"
|
|
echo "(3) Yandex Cloud IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Disney+..." #Only "Disney Streaming Services"
|
|
DEST=../src/lib/inc_generated/ndpi_asn_disney_plus.c.inc
|
|
create_list NDPI_PROTOCOL_DISNEYPLUS $DEST "" "AS400805" "AS398849" "AS22604" "AS11251"
|
|
echo "(3) Disney+ IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Hulu..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_hulu.c.inc
|
|
create_list NDPI_PROTOCOL_HULU $DEST "" "AS23286"
|
|
echo "(3) Hulu IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading EpicGames.."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_epicgames.c.inc
|
|
create_list NDPI_PROTOCOL_EPICGAMES $DEST "" "AS4356" "AS397645" "AS395701" "AS393326"
|
|
echo "(3) EpicGames IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Nvidia..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_nvidia.c.inc
|
|
create_list NDPI_PROTOCOL_NVIDIA $DEST "" "AS60977" "AS50889" "AS20347" "AS11414"
|
|
echo "(3) Nvidia IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Roblox..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_roblox.c.inc
|
|
create_list NDPI_PROTOCOL_ROBLOX $DEST "" "AS22697"
|
|
echo "(3) Roblox IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading Badoo..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_badoo.c.inc
|
|
create_list NDPI_PROTOCOL_BADOO $DEST "" "AS12678"
|
|
echo "(3) Badoo IPs are available in $DEST"
|
|
|
|
echo "(1) Downloading IMO..."
|
|
DEST=../src/lib/inc_generated/ndpi_asn_imo.c.inc
|
|
create_list NDPI_PROTOCOL_IMO $DEST "" "AS36131" "AS212879"
|
|
echo "(3) IMO IPs are available in $DEST"
|
|
|
|
if [ ${TOTAL_ASN} -eq 0 ] || [ ${TOTAL_ASN} -eq ${FAILED_ASN} ]; then
|
|
printf '%s: %s\n' "${0}" "All download(s) failed, ./get_routes_by_asn.sh broken?"
|
|
exit 1
|
|
else
|
|
exit 0
|
|
fi
|