ipset: remove obsolete get_reestr_ip and get_reestr_combined

This commit is contained in:
bol-van 2022-12-14 11:13:55 +03:00
parent fa236ecc2c
commit f669b47896
4 changed files with 10 additions and 158 deletions

View File

@ -696,37 +696,32 @@ Cкрипты с названием get_reestr_* оперируют дампом
от IP адреса. Поэтому скрипт ресолвит все сам, хотя это и занимает много времени. от IP адреса. Поэтому скрипт ресолвит все сам, хотя это и занимает много времени.
Используется мультипоточный ресолвер mdig (собственная разработка). Используется мультипоточный ресолвер mdig (собственная разработка).
3) ipset/get_reestr_ip.sh 3) ipset/get_reestr_preresolved.sh. то же самое, что и 2), только берется уже заресолвленый список
взять все IP адреса из реестра и загнать в ipset zapret/zapret6
4) ipset/get_reestr_combined.sh. для провайдеров, которые блокируют по IP https, а остальное по DPI.
5) ipset/get_reestr_preresolved.sh. то же самое, что и 2), только берется уже заресолвленый список
со стороннего ресурса. со стороннего ресурса.
6) ipset/get_reestr_preresolved_smart.sh. то же самое, что и 5), с добавлением всего диапазона некоторых 4) ipset/get_reestr_preresolved_smart.sh. то же самое, что и 5), с добавлением всего диапазона некоторых
автономных систем (прыгающие IP адреса из cloudflare, facebook, ...) и некоторых поддоменов блокируемых сайтов автономных систем (прыгающие IP адреса из cloudflare, facebook, ...) и некоторых поддоменов блокируемых сайтов
рипты с названием get_antifilter_* оперируют списками адресов и масок подсетей с сайтов antifilter.network и antifilter.download : рипты с названием get_antifilter_* оперируют списками адресов и масок подсетей с сайтов antifilter.network и antifilter.download :
7) ipset/get_antifilter_ip.sh. получает лист https://antifilter.download/list/ip.lst. 5) ipset/get_antifilter_ip.sh. получает лист https://antifilter.download/list/ip.lst.
8) ipset/get_antifilter_ipsmart.sh. получает лист https://antifilter.network/download/ipsmart.lst. 6) ipset/get_antifilter_ipsmart.sh. получает лист https://antifilter.network/download/ipsmart.lst.
умная суммаризация отдельных адресов из ip.lst по маскам от /32 до /22 умная суммаризация отдельных адресов из ip.lst по маскам от /32 до /22
9) ipset/get_antifilter_ipsum.sh. получает лист https://antifilter.download/list/ipsum.lst. 7) ipset/get_antifilter_ipsum.sh. получает лист https://antifilter.download/list/ipsum.lst.
суммаризация отдельных адресов из ip.lst по маске /24 суммаризация отдельных адресов из ip.lst по маске /24
10) ipset/get_antifilter_ipresolve.sh. получает лист https://antifilter.download/list/ipresolve.lst. 8) ipset/get_antifilter_ipresolve.sh. получает лист https://antifilter.download/list/ipresolve.lst.
пре-ресолвленный список, аналогичный получаемый при помощи get_reestr_resolve. только ipv4. пре-ресолвленный список, аналогичный получаемый при помощи get_reestr_resolve. только ipv4.
11) ipset/get_antifilter_allyouneed.sh. получает лист https://antifilter.download/list/allyouneed.lst. 9) ipset/get_antifilter_allyouneed.sh. получает лист https://antifilter.download/list/allyouneed.lst.
Суммарный список префиксов, созданный из ipsum.lst и subnet.lst. Суммарный список префиксов, созданный из ipsum.lst и subnet.lst.
Все варианты рассмотренных скриптов автоматически создают и заполняют ipset. Все варианты рассмотренных скриптов автоматически создают и заполняют ipset.
Варианты 2-11 дополнительно вызывают вариант 1. Варианты 2-9 дополнительно вызывают вариант 1.
12) ipset/get_config.sh. этот скрипт вызывает то, что прописано в переменной GETLIST из файла config 10) ipset/get_config.sh. этот скрипт вызывает то, что прописано в переменной GETLIST из файла config
Если переменная не определена, то ресолвятся лишь листы для ipset nozapret/nozapret6. Если переменная не определена, то ресолвятся лишь листы для ipset nozapret/nozapret6.
Листы РКН все время изменяются. Возникают новые тенденции. Требования к RAM могут меняться. Листы РКН все время изменяются. Возникают новые тенденции. Требования к RAM могут меняться.

View File

@ -244,7 +244,7 @@ select_getlist()
GETLISTS="get_antizapret_domains.sh get_reestr_hostlist.sh" GETLISTS="get_antizapret_domains.sh get_reestr_hostlist.sh"
GETLIST_DEF="get_antizapret_domains.sh" GETLIST_DEF="get_antizapret_domains.sh"
else else
GETLISTS="get_user.sh get_antifilter_ip.sh get_antifilter_ipsmart.sh get_antifilter_ipsum.sh get_antifilter_ipresolve.sh get_antifilter_allyouneed.sh get_reestr_ip.sh get_reestr_combined.sh get_reestr_resolve.sh get_reestr_preresolved.sh get_reestr_preresolved_smart.sh" GETLISTS="get_user.sh get_antifilter_ip.sh get_antifilter_ipsmart.sh get_antifilter_ipsum.sh get_antifilter_ipresolve.sh get_antifilter_allyouneed.sh get_reestr_resolve.sh get_reestr_preresolved.sh get_reestr_preresolved_smart.sh"
GETLIST_DEF="get_antifilter_allyouneed.sh" GETLIST_DEF="get_antifilter_allyouneed.sh"
fi fi
ask_list GETLIST "$GETLISTS" "$GETLIST_DEF" && write_config_var GETLIST ask_list GETLIST "$GETLISTS" "$GETLIST_DEF" && write_config_var GETLIST
@ -822,23 +822,6 @@ check_prerequisites_openwrt()
opkg install --force-overwrite coreutils-sort opkg install --force-overwrite coreutils-sort
fi fi
} }
is_linked_to_busybox grep && {
echo
echo your system uses default busybox grep. its damn infinite slow with -f option
echo get_combined.sh will be severely impacted
echo installer can install GNU grep but it requires about 0.5 Mb space
if ask_yes_no N "do you want to install GNU grep"; then
[ "$UPD" = "0" ] && {
opkg update
UPD=1
}
opkg install --force-overwrite grep
# someone reported device partially fail if /bin/grep is absent
# grep package deletes /bin/grep
[ -f /bin/grep ] || ln -s busybox /bin/grep
fi
}
} }
deoffload_openwrt_firewall() deoffload_openwrt_firewall()

View File

@ -1,70 +0,0 @@
#!/bin/sh
IPSET_DIR="$(dirname "$0")"
IPSET_DIR="$(cd "$IPSET_DIR"; pwd)"
. "$IPSET_DIR/def.sh"
ZREESTR="$TMPDIR/reestr.txt"
#ZURL_REESTR=https://reestr.rublacklist.net/api/current
ZURL_REESTR=https://raw.githubusercontent.com/zapret-info/z-i/master/dump.csv
awkgrep()
{
# $1 - pattern
LANG=C nice -n 5 $AWK "{while ( match(\$0,/$1[ |;]/) ) { print substr(\$0,RSTART,RLENGTH-1); \$0=substr(\$0,RSTART+RLENGTH) } }"
}
dig_reestr()
{
# $1 - grep ipmask
# $2 - iplist
# $3 - ipban list
# $4 - ip version : 4,6
local DOMMASK='^.*;[^ ;:/]+\.[^ ;:/]+;'
local TMP="$TMPDIR/tmp.txt"
echo processing reestr lists $2 $3
# find entries with https or without domain name - they should be banned by IP
# 2971-18 is TELEGRAM. lots of proxy IPs banned, list grows very large
(nice -n 5 $GREP -avE "$DOMMASK" "$ZREESTR" ; $GREP -a "https://" "$ZREESTR") |
awkgrep "$1" | cut_local | sort -u >$TMP
ip2net$4 <"$TMP" | zz "$3"
# other IPs go to regular zapret list
tail -n +2 "$ZREESTR" | awkgrep "$1" | cut_local | nice -n 5 $GREP -xvFf "$TMP" | ip2net$4 | zz "$2"
rm -f "$TMP"
}
getuser && {
curl -H "Accept-Encoding: gzip" -k --fail --max-time 600 --connect-timeout 5 --retry 3 --max-filesize 251658240 "$ZURL_REESTR" | gunzip - >"$ZREESTR" ||
{
echo reestr list download failed
exit 2
}
dlsize=$(LANG=C wc -c "$ZREESTR" | xargs | cut -f 1 -d ' ')
if test $dlsize -lt 1048576; then
echo reestr ip list is too small. can be bad.
exit 2
fi
#sed -i 's/\\n/\r\n/g' $ZREESTR
get_ip_regex
[ "$DISABLE_IPV4" != "1" ] && {
dig_reestr "$REG_IPV4" "$ZIPLIST" "$ZIPLIST_IPBAN" 4
}
[ "$DISABLE_IPV6" != "1" ] && {
dig_reestr "$REG_IPV6" "$ZIPLIST6" "$ZIPLIST_IPBAN6" 6
}
rm -f "$ZREESTR"
}
"$IPSET_DIR/create_ipset.sh"

View File

@ -1,56 +0,0 @@
#!/bin/sh
IPSET_DIR="$(dirname "$0")"
IPSET_DIR="$(cd "$IPSET_DIR"; pwd)"
. "$IPSET_DIR/def.sh"
ZREESTR="$TMPDIR/reestr.txt"
#ZURL_REESTR=https://reestr.rublacklist.net/api/current
ZURL_REESTR=https://raw.githubusercontent.com/zapret-info/z-i/master/dump.csv
awkgrep()
{
# $1 - pattern
LANG=C nice -n 5 $AWK "{while ( match(\$0,/$1[ |;]/) ) { print substr(\$0,RSTART,RLENGTH-1); \$0=substr(\$0,RSTART+RLENGTH) } }"
}
dig_reestr()
{
# $1 - grep ipmask
# $2 - iplist
# $3 - ip version : 4,6
echo processing reestr list $2
tail -n +2 "$ZREESTR" | awkgrep "$1" | cut_local | ip2net$3 | zz "$2"
}
getuser && {
curl -H "Accept-Encoding: gzip" -k --fail --max-time 600 --connect-timeout 5 --retry 3 --max-filesize 251658240 "$ZURL_REESTR" | gunzip - >"$ZREESTR" ||
{
echo reestr list download failed
exit 2
}
dlsize=$(LANG=C wc -c "$ZREESTR" | xargs | cut -f 1 -d ' ')
if test $dlsize -lt 1048576; then
echo reestr ip list is too small. can be bad.
exit 2
fi
#sed -i 's/\\n/\r\n/g' $ZREESTR
get_ip_regex
[ "$DISABLE_IPV4" != "1" ] && {
dig_reestr "$REG_IPV4" "$ZIPLIST" 4
}
[ "$DISABLE_IPV6" != "1" ] && {
dig_reestr "$REG_IPV6" "$ZIPLIST6" 6
}
rm -f "$ZREESTR"
}
"$IPSET_DIR/create_ipset.sh"