gSpotx2f / ruantiblock_openwrt

Обход блокировок в OpenWrt с помощью Tor или VPN
GNU General Public License v3.0
204 stars 19 forks source link

Автоматическое получение списка подсетей по ASN? #68

Closed flurmind closed 5 months ago

flurmind commented 5 months ago

Здравствуйте. Давно пользуюсь, все хорошо работает, но не могу автоматизировать процесс получения подсетей, на примере instagram.com (по доменному имени он не работает).

Нашел скрипт для linux через whois.radb.net (добавляю в asn_hosts.txt: AS32934) `#!/bin/sh

TEMP3="/tmp/tmp_asn_ip.lst" RES3="/script/asn_ip.lst" ASN="/script/asn_hosts.txt"

cat /dev/null > $TEMP3 cat /dev/null > $RES3

while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue whois -h whois.radb.net -- '-i origin '$line | grep ^route | grep -Eo '([0-9]{1,3}.){3}[0-9]{1,3}/[0-9]{1,2}' >> $TEMP3 done < $ASN

sort -t '.' -k1,1n -k2,2n -k3,3n $TEMP3 >> $RES3`

На выходе получаю файл с диапазоном IP, вставляю все в Записи пользователя и при обновлении - ошибка: ruantiblock: Error! Ipset wasn't updated. asn_ip.lst.txt

Что интересно, вот сокращенный список подсетей (человек собрал вручную с сайта 2ip.ru) и он работает: https://treeone.ru/diapazon-ip-adres-facebook-instagram-mikrotik/#page-content

Прошу помочь разобраться, т.к. хотелось бы автоматизировать это дело, на случай смены каких-то IP у instagram.

gSpotx2f commented 5 months ago

не могу автоматизировать процесс получения подсетей

Берите отсюда все суммированные подсети фейсбука сразу...

На выходе получаю файл с диапазоном IP, вставляю все в Записи пользователя и при обновлении - ошибка: ruantiblock: Error! Ipset wasn't updated.

Возможно в списке присутствуют ip, которые уже есть в сете. Ipset не любит такого и при попытке добавить уже существующий ip в сет выдаёт ошибку. Всё что добавляется в записи пользователя исключительно на совести самого пользователя. Например, nftables в таких ситуациях ведёт себя более мягко и просто игнорирует повторный адрес не выбрасывая ошибку. Вообще, старая версия ruantiblock под iptables давным-давно устарела и больше не поддерживается.

flurmind commented 5 months ago

Спасибо! Обновил до 23.05 и соответственно вашу программу. Заработало корректно и с моими списками, а также спасибо за ссылку, там получше скрипт, ищет вообще в разных базах. Еще вопрос, в новой версии появилась опция URL удалённых файлов записей пользователя. Как правильно пользоваться? Ссылку на свое облако с ТХТ файлом пойдет? Т.к. добавил ссылку на _https://github.com/lord-alfred/ipranges/blob/main/facebook/ipv4_merged.txt_, но при обновлении не берет оттуда ничего.

Wed May 29 10:26:09 2024 user.notice ruantiblock: update... Wed May 29 10:26:11 2024 user.notice ruantiblock: User entries (local): CIDR: 0, IP: 0, FQDN: 23 Wed May 29 10:26:11 2024 user.notice ruantiblock: User entries (https://github.com/lord-alfred/ipranges/blob/main/facebook/ipv4_merged.txt): CIDR: 0, IP: 0, FQDN: 0 Wed May 29 10:26:11 2024 user.notice ruantiblock: User entries (https://github.com/lord-alfred/ipranges/blob/main/twitter/ipv4_merged.txt): CIDR: 0, IP: 0, FQDN: 0 Wed May 29 10:26:11 2024 user.notice ruantiblock: Blacklist updated

gSpotx2f commented 5 months ago

Т.к. добавил ссылку на https://github.com/lord-alfred/ipranges/blob/main/facebook/ipv4_merged.txt, но при обновлении не берет оттуда ничего.

Если открыть эту ссылку, то не трудно заметить, что она ведёт на веб-страницу гитхаба, а не на сам файл. URL файла выглядит так: https://raw.githubusercontent.com/lord-alfred/ipranges/main/facebook/ipv4_merged.txt (кнопка Raw сверху).

Как правильно пользоваться?

Задать прямую ссылку на файл (без редиректов 30x и пр.). Формат текстового файла должен соответствовать формату файла user_entries, который описан в вики и в вебморде ruantiblock. Также, кодировка вашего файла не должна быть сюрпризом для OpenWrt (лучше UTF-8 или ASCII) и символы окончания строки должны быть в unix-формате: \n (а не \r\n как в Windows). Ну и далее, как обычно, при обновлении блэклиста вместе с локальными записями пользователя будут добавляться и удалённые.

flurmind commented 5 months ago

Спасибо! Работает как часы!