ipset: additional lists

This commit is contained in:
bol-van 2022-03-17 09:55:31 +03:00
parent 9be1551f5d
commit 3536dd45d7
5 changed files with 40 additions and 8 deletions

2
config
View File

@ -9,7 +9,7 @@
# options for ipsets
# maximum number of elements in sets. also used for nft sets
SET_MAXELEM=262144
SET_MAXELEM=522288
# too low hashsize can cause memory allocation errors on low RAM systems , even if RAM is enough
# too large hashsize will waste lots of RAM
IPSET_OPT="hashsize 262144 maxelem $SET_MAXELEM"

View File

@ -157,8 +157,6 @@ NFQUEUE работает без изменений.
Остальные рассматриваемые здесь функции могут быть перенесены на nftables.
Рекомендуется версия nft 1.0.2 или выше.
Относительно старые версии ядра и/или утилиты nft могут вызывать ошибки.
В частности, на ubuntu 18.04 с ядром 4.15 будут проблемы. В 20.04 - работает.
Когда это работать не будет
@ -688,7 +686,7 @@ Cкрипты с названием get_antifilter_* оперируют спис
5) ipset/get_antifilter_ip.sh. получает лист https://antifilter.network/download/ip.lst.
7) 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
количество префиксов измеряется всего лишь десятками тысяч, потому это лучшее решение для роутера с 64 Mb RAM
@ -696,10 +694,18 @@ Cкрипты с названием get_antifilter_* оперируют спис
это суммаризация отдельных адресов из ip.lst по маске /24
количество префиксов измеряется всего лишь десятками тысяч, потому можно использовать на роутерах с 64 Mb RAM
Все варианты рассмотренных скриптов автоматически создают и заполняют ipset.
Варианты 2-7 дополнительно вызывают вариант 1.
8) ipset/get_antifilter_ipresolve.sh. получает лист https://antifilter.download/list/ipresolve.lst.
пре-ресолвленный список, аналогичный получаемый при помощи get_reestr_resolve
сотни тысяч IP, на роутерах с 64 Mb использовать не рекомендуется
8) ipset/get_config.sh. этот скрипт вызывает то, что прописано в переменной GETLIST из файла config
9) ipset/get_antifilter_allyouneed.sh. получает лист https://antifilter.download/list/allyouneed.lst.
Суммарный список префиксов, созданный из ipsum.lst и subnet.lst.
количество префиксов измеряется всего лишь десятками тысяч, потому можно использовать на роутерах с 64 Mb RAM
Все варианты рассмотренных скриптов автоматически создают и заполняют ipset.
Варианты 2-9 дополнительно вызывают вариант 1.
10) ipset/get_config.sh. этот скрипт вызывает то, что прописано в переменной GETLIST из файла config
Если переменная не определена, то ресолвятся лишь листы для ipset nozapret/nozapret6.
Листы РКН все время изменяются. Возникают новые тенденции. Требования к RAM могут меняться.

View File

@ -8,7 +8,7 @@ get_antifilter()
curl --fail --max-time 150 --connect-timeout 20 --max-filesize 41943040 -k -L "$1" | cut_local >"$ZIPLISTTMP" &&
{
dlsize=$(LANG=C wc -c "$ZIPLISTTMP" | xargs | cut -f 1 -d ' ')
if [ $dlsize -lt 204800 ]; then
if [ $dlsize -lt 102400 ]; then
echo list file is too small. can be bad.
exit 2
fi

View File

@ -0,0 +1,13 @@
#!/bin/sh
IPSET_DIR="$(dirname "$0")"
IPSET_DIR="$(cd "$IPSET_DIR"; pwd)"
. "$IPSET_DIR/def.sh"
getuser && {
. "$IPSET_DIR/antifilter.helper"
get_antifilter https://antifilter.download/list/allyouneed.lst "$ZIPLIST"
}
"$IPSET_DIR/create_ipset.sh"

View File

@ -0,0 +1,13 @@
#!/bin/sh
IPSET_DIR="$(dirname "$0")"
IPSET_DIR="$(cd "$IPSET_DIR"; pwd)"
. "$IPSET_DIR/def.sh"
getuser && {
. "$IPSET_DIR/antifilter.helper"
get_antifilter https://antifilter.download/list/ipresolve.lst "$ZIPLIST"
}
"$IPSET_DIR/create_ipset.sh"