2022-12-11 14:17:21 +05:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
IPSET_DIR="$(dirname "$0")"
|
|
|
|
IPSET_DIR="$(cd "$IPSET_DIR"; pwd)"
|
|
|
|
|
|
|
|
. "$IPSET_DIR/def.sh"
|
|
|
|
|
2023-11-26 16:31:37 +05:00
|
|
|
TMPLIST="$TMPDIR/list.txt"
|
2023-11-21 01:14:43 +05:00
|
|
|
|
2023-11-21 17:43:36 +05:00
|
|
|
BASEURL="https://raw.githubusercontent.com/bol-van/rulist/main"
|
|
|
|
URL4="$BASEURL/reestr_resolved4.txt"
|
|
|
|
URL6="$BASEURL/reestr_resolved6.txt"
|
2023-11-26 16:31:37 +05:00
|
|
|
IPB4="$BASEURL/reestr_ipban4.txt"
|
|
|
|
IPB6="$BASEURL/reestr_ipban6.txt"
|
2022-12-11 14:17:21 +05:00
|
|
|
|
2022-12-14 15:35:59 +05:00
|
|
|
dl()
|
|
|
|
{
|
|
|
|
# $1 - url
|
|
|
|
# $2 - file
|
2023-11-26 16:31:37 +05:00
|
|
|
# $3 - minsize
|
|
|
|
# $4 - maxsize
|
2024-06-19 11:03:15 +05:00
|
|
|
curl -H "Accept-Encoding: gzip" -k --fail --max-time 120 --connect-timeout 10 --retry 4 --max-filesize $4 -o "$TMPLIST" "$1" ||
|
2022-12-11 14:17:21 +05:00
|
|
|
{
|
2022-12-14 15:35:59 +05:00
|
|
|
echo list download failed : $1
|
2022-12-11 14:17:21 +05:00
|
|
|
exit 2
|
|
|
|
}
|
|
|
|
dlsize=$(LANG=C wc -c "$TMPLIST" | xargs | cut -f 1 -d ' ')
|
2023-11-26 16:31:37 +05:00
|
|
|
if test $dlsize -lt $3; then
|
2022-12-14 15:35:59 +05:00
|
|
|
echo list is too small : $dlsize bytes. can be bad.
|
2022-12-11 14:17:21 +05:00
|
|
|
exit 2
|
|
|
|
fi
|
2024-06-19 11:03:15 +05:00
|
|
|
zzcat "$TMPLIST" | zz "$2"
|
2022-12-11 14:17:21 +05:00
|
|
|
rm -f "$TMPLIST"
|
2022-12-14 15:35:59 +05:00
|
|
|
}
|
|
|
|
|
|
|
|
getuser && {
|
2023-11-26 16:31:37 +05:00
|
|
|
[ "$DISABLE_IPV4" != "1" ] && {
|
|
|
|
dl "$URL4" "$ZIPLIST" 32768 4194304
|
|
|
|
dl "$IPB4" "$ZIPLIST_IPBAN" 8192 1048576
|
|
|
|
}
|
|
|
|
[ "$DISABLE_IPV6" != "1" ] && {
|
|
|
|
dl "$URL6" "$ZIPLIST6" 8192 4194304
|
|
|
|
dl "$IPB6" "$ZIPLIST_IPBAN6" 128 1048576
|
|
|
|
}
|
2022-12-11 14:17:21 +05:00
|
|
|
}
|
|
|
|
|
|
|
|
"$IPSET_DIR/create_ipset.sh"
|