Jump to content

Обсуждаем реализацию на роутере GoodbyeDPI


Recommended Posts

17 часов назад, Михаил Лукьянов сказал:

Checking iptable_raw.ko kernel module iptable_raw.ko loaded Restoring ipset Adding iptables rule Starting anti-zapret: zapret.

Эти строки появились после запуска. Но kinozal.tv перекидываете на заглушку провайдера. 

Link to comment
Share on other sites

17 минут назад, vlad сказал:

Эти строки появились после запуска. Но kinozal.tv перекидываете на заглушку провайдера. 

Тут всё нормально. Начните с заглушки - в скрипте S99zapret в переменной BLACKHOLE пропишите ваш адрес, а не мой. Заглушка прилетает раньше чем легитимный ответ, от неё нужно избавляться в первую очередь. Blockcheck запускается на роутере - следующим постом инструкцию выложу.

Edited by Михаил Лукьянов
Link to comment
Share on other sites

Как запустить проверку blockcheck прямо на роутере:

opkg install python3 python3-pip

curl -L https://github.com/ValdikSS/blockcheck/archive/0.0.9.6.tar.gz -o blockcheck.tar.gz

tar -xvzf ./blockcheck.tar.gz

cd ./blockcheck-0.0.9.6/

python3 -m pip install -r requirements.txt

/opt/etc/init.d/S99zapret stop

python3 blockcheck.py --no-report

 

Link to comment
Share on other sites

13 минуты назад, Михаил Лукьянов сказал:

Blockcheck запускается на роутере - следующим постом инструкцию выложу.

Это будет круто;)

Link to comment
Share on other sites

10 часов назад, Михаил Лукьянов сказал:

Как запустить проверку blockcheck прямо на роутере:

Зачем? Вы будете видеть картину не для транзитного трафика, как она должна выглядеть на клиентах, в для локального трафика роутера. И резолверы и правила прохождения трафика будут отличаться от клиентских.

Link to comment
Share on other sites

2 часа назад, Александр Рыжов сказал:

Зачем? Вы будете видеть картину не для транзитного трафика, как она должна выглядеть на клиентах, в для локального трафика роутера. И резолверы и правила прохождения трафика будут отличаться от клиентских.

Blockcheck - это несколько тестов сугубо прикладного уровня (DNS, HTTP, HTTPS). При соблюдении двух условий: использование DNS серверов провайдера и отключении средств обхода блокировок результат будет примерно одинаков в секции "Тестируем обход DPI" (если вы сами себе конечно в Iptables не закрыли транзитный или локальный трафик до тестируемых хостов). Пруф:

Рабочая станция:

Скрытый текст

mike@asus:~/Загрузки/blockcheck-0.0.9.6$ uname -a
Linux asus 4.15.0-34-generic #37-Ubuntu SMP Mon Aug 27 15:21:15 UTC 2018 i686 i686 i686 GNU/Linux
mike@asus:~/Загрузки/blockcheck-0.0.9.6$ python3 ./blockcheck.py --no-report
BlockCheck v0.0.9.6
Для получения корректных результатов используйте DNS-сервер провайдера и отключите средства обхода блокировок.

Проверка работоспособности IPv6: IPv6 недоступен.
[O] Тестируем IPv4 DNS
    Через системный DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
    Через Google DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
    Через Google API:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
    Несуществующий DNS не вернул адресов (это не ошибка)
[✓] DNS-записи не подменяются
[✓] DNS не перенаправляется

[O] Тестируем HTTP
    Открываем http://pbooru.com/
[✓] Сайт открывается
    Открываем http://pbooru.com/index.php?page=post&s=view&id=303026
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
    Открываем http://furry.booru.org/
[✓] Сайт открывается
    Открываем http://furry.booru.org/index.php?page=post&s=view&id=111173
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
    Открываем http://rutracker.org/forum/index.php
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
    Открываем http://a.putinhuylo.com/
[✓] Сайт открывается

[O] Тестируем HTTPS
    Открываем https://e621.net/
[☠] Сайт не открывается
    Открываем https://rutracker.org/forum/index.php
[☠] Сайт не открывается
    Открываем https://www.dailymotion.com/
[☠] Сайт не открывается
    Открываем https://lolibooru.moe/
[☠] Сайт не открывается

[O] Тестируем обход DPI
    Пробуем способ «дополнительный пробел после GET» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «перенос строки перед GET» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «табуляция в конце домена» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «фрагментирование заголовка» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «точка в конце домена» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «заголовок hoSt вместо Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «заголовок hOSt вместо Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «перенос строки в заголовках в UNIX-стиле» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «необычный порядок заголовков» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «дополнительный пробел после GET» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «перенос строки перед GET» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «табуляция в конце домена» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «точка в конце домена» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «заголовок hoSt вместо Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «заголовок hOSt вместо Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «необычный порядок заголовков» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на pbooru.com
[✓] Сайт открывается

[!] Результат:
[⚠] Ваш провайдер полностью блокирует доступ к HTTPS-сайтам из реестра.
[⚠] У вашего провайдера "обычный" DPI. Вам поможет HTTPS/Socks прокси, VPN или Tor.
 

Роутер:

Скрытый текст

~/blockcheck-0.0.9.6 # uname -a
Linux Keenetic_Viva 3.4.113 #1 Fri Sep 7 23:23:57 MSK 2018 mips GNU/Linux
~/blockcheck-0.0.9.6 # python3 blockcheck.py --no-report
BlockCheck v0.0.9.6
Для получения корректных результатов используйте DNS-сервер провайдера и отключите средства обхода блокировок.

Проверка работоспособности IPv6: IPv6 недоступен.
[O] Тестируем IPv4 DNS
    Через системный DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
    Через Google DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
    Не удалось подключиться к Google API
    Несуществующий DNS не вернул адресов (это не ошибка)
[?] Не удалось связаться с Google API. Проверка DNS сломана.

[O] Тестируем HTTP (по настоящим IP-адресам сайтов)
    Открываем http://pbooru.com/
[✓] Сайт открывается
    Открываем http://pbooru.com/index.php?page=post&s=view&id=303026
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
    Открываем http://furry.booru.org/
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
    Открываем http://furry.booru.org/index.php?page=post&s=view&id=111173
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
    Открываем http://rutracker.org/forum/index.php
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
    Открываем http://a.putinhuylo.com/
[✓] Сайт открывается

[O] Тестируем HTTPS
    Открываем https://e621.net/
[☠] Сайт не открывается
    Открываем https://lolibooru.moe/
[☠] Сайт не открывается
    Открываем https://rutracker.org/forum/index.php
[☠] Сайт не открывается
    Открываем https://www.dailymotion.com/
[☠] Сайт не открывается

[O] Тестируем обход DPI
    Пробуем способ «дополнительный пробел после GET» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «перенос строки перед GET» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «табуляция в конце домена» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «фрагментирование заголовка» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «точка в конце домена» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «заголовок hoSt вместо Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «заголовок hOSt вместо Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «перенос строки в заголовках в UNIX-стиле» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «необычный порядок заголовков» на rutracker.org
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на rutracker.org
[✓] Сайт открывается
    Пробуем способ «дополнительный пробел после GET» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «перенос строки перед GET» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «табуляция в конце домена» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «точка в конце домена» на pbooru.com
[✓] Сайт открывается
    Пробуем способ «заголовок hoSt вместо Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «заголовок hOSt вместо Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «необычный порядок заголовков» на pbooru.com
[☠] Сайт не открывается
    Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на pbooru.com
[✓] Сайт открывается

[!] Результат:
[⚠] Не удалось определить способ блокировки IPv4 DNS.
 Верните настройки DNS провайдера, если вы используете сторонний DNS-сервер. Если вы используете DNS провайдера, возможно, ответы DNS модифицирует вышестоящий провайдер.
 Вам следует использовать шифрованный канал до DNS-серверов, например, через VPN, Tor, HTTPS/Socks прокси или DNSCrypt.
[⚠] Ваш провайдер полностью блокирует доступ к HTTPS-сайтам из реестра.
[⚠] У вашего провайдера "обычный" DPI. Вам поможет HTTPS/Socks прокси, VPN или Tor.
 

 

Link to comment
Share on other sites

Вероятно, поняли меня неправильно.

  • При запуске теста на роутере в среде Entware вы сами того не желая будете использовать нашу libc, в которой намертво приколочены гвоздями резолверы из /etc/resolf/conf, а не серверы, прописанные в dnsmasq, dnscrypt-proxy или другом резолвере, который вы отдельно настроили.
  • Правила netfilter цепочки forward для локального теста не сработают, т.к. трафик порождать будет роутер, а не клиенты.

Отнюдь не подвергаю критике ваши начинания, опираясь на них примем решение о включении пакета zapret в репозиторий. Но тесты блокировок для клиентов необходимо выполнять на клиентах, по вышеперечисленным причинам. Мы же не собираемся сёрфить с роутера?

Link to comment
Share on other sites

Да я то понял) Просто вы пишите общие вещи, я практику свою выкладываю. Поспорю по пунктам:

  • При запуске на роутере у меня в качестве DNS сервера срабатывает ndnproxy у которого в ресолверах автоматом проставились сервера провайдера. Как и у 95% пользователей. Тут не будет разницы между рабочей станцией и роутером (могу выложить дамп трафика). Те кто осилил настройку своего DNS сервера про злодейства ndnproxy знают, как и про волшебную команду opkg dns-override.
  • Мы не тестируем netfilter. Более того мы таблицы в исходное состояние должны вернуть перед запуском теста. Тут достаточно отсутствия прямых запрещающих правил затрагивающих тест.

Прямо скажем я не сторонник питона на роутере, так можно и вижуал студио туда поставить. Но как инструмент blockcheck имеет право там работать (включать в репо на самом деле не нужно, т.к. пока нет бинарника под наши архитектуры). Тем более ситуации бывают разные - кому-то может пригодиться такой вариант.

Link to comment
Share on other sites

В 13.09.2018 в 22:41, Михаил Лукьянов сказал:

Тут всё нормально. Начните с заглушки - в скрипте S99zapret в переменной BLACKHOLE пропишите ваш адрес, а не мой. 

Не совсем понятно где в переменной BLACKHOLE ВАШ адрес, который нужно заменить.

Провайдер РТК..

Link to comment
Share on other sites

7 минут назад, healer2001 сказал:

Не совсем понятно где в переменной BLACKHOLE ВАШ адрес, который нужно заменить.

Провайдер РТК..

blackhole.beeline.ru. Попробуйте сменить на warning.rt.ru .

Link to comment
Share on other sites

Добрый день!
Сделал все по инструкции, увидел:

Quote

Checking iptable_raw.ko kernel module
iptable_raw.ko is already loaded
Restoring ipset
Adding iptables rule
Starting anti-zapret: zapret.

Но ни рутрэкер, ни кинозал не работает (

Сайт rutracker.org не отправил данных.

ERR_EMPTY_RESPONSE

)

Провайдер билайн, роутер Giga II, прошивка 2.13.B.0.0-2

Link to comment
Share on other sites

9 минут назад, Алексей Главацкий сказал:

Добрый день!
Сделал все по инструкции, увидел:

Но ни рутрэкер, ни кинозал не работает (

Сайт rutracker.org не отправил данных.

ERR_EMPTY_RESPONSE

)

Провайдер билайн, роутер Giga II, прошивка 2.13.B.0.0-2

Что говорит

iptables -nvL -t raw

?

Link to comment
Share on other sites

Quote

Chain PREROUTING (policy ACCEPT 3360 packets, 422K bytes)
 pkts bytes target     prot opt in     out     source               destination
    1    48 NFQUEUE    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 flags:0x12/0x12 match-set zapret src NFQUEUE num 200 bypass
    1   430 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 STRING match  "|0d0a4c6f636174696f6e3a20687474703a2f2f626c61636b686f6c652e6265656c696e652e7275|" ALGO name bm FROM 40 TO 200

Chain OUTPUT (policy ACCEPT 363 packets, 47335 bytes)
 pkts bytes target     prot opt in     out     source               destination

 

Link to comment
Share on other sites

8 minutes ago, Михаил Лукьянов said:

nslookup rutracker.org

Ещё можно на всякий случай?
 

Server:    127.0.0.1
Address 1: 127.0.0.1 localhost

Name:      rutracker.org
Address 1: 195.82.146.214 rutracker.org
Address 2: 2a02:4680:22::214

 

6 minutes ago, Михаил Лукьянов said:

И если есть возможность, то результаты blockcheck .

Для получения корректных результатов используйте DNS-сервер провайдера и отключите средства обхода блокировок.

Проверка работоспособности IPv6: IPv6 недоступен.
[O] Тестируем IPv4 DNS
        Через системный DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
        Через Google DNS:        ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
        Не удалось подключиться к Google API
        Несуществующий DNS не вернул адресов (это не ошибка)
[?] Не удалось связаться с Google API. Проверка DNS сломана.

[O] Тестируем HTTP (по настоящим IP-адресам сайтов)
        Открываем  http://pbooru.com/
[✓] Сайт открывается
        Открываем  http://pbooru.com/index.php?page=post&s=view&id=303026
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
        Открываем  http://furry.booru.org/
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
        Открываем  http://furry.booru.org/index.php?page=post&s=view&id=111173
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
        Открываем  http://rutracker.org/forum/index.php
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
        Открываем  http://a.putinhuylo.com/
[✓] Сайт открывается

[O] Тестируем HTTPS
        Открываем  https://rutracker.org/forum/index.php
[☠] Сайт не открывается
        Открываем  https://lolibooru.moe/
[☠] Сайт не открывается
        Открываем  https://www.dailymotion.com/
[☠] Сайт не открывается
        Открываем  https://e621.net/
[☠] Сайт не открывается
        Открываем  https://e621.net/
[☠] Сайт не открывается

[O] Тестируем обход DPI
        Пробуем способ «дополнительный пробел после GET» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «перенос строки перед GET» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «табуляция в конце домена» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «фрагментирование заголовка» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «точка в конце домена» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «заголовок hoSt вместо Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «заголовок hOSt вместо Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «необычный порядок заголовков» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «дополнительный пробел после GET» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «перенос строки перед GET» на pbooru.com
[✓] Сайт открывается
[✓] Сайт открывается
        Пробуем способ «табуляция в конце домена» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «точка в конце домена» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «заголовок hoSt вместо Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «заголовок hOSt вместо Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «необычный порядок заголовков» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на pbooru.com
[✓] Сайт открывается

[!] Результат:
[⚠] Не удалось определить способ блокировки IPv4 DNS.
 Верните настройки DNS провайдера, если вы используете сторонний DNS-сервер. Если вы используете DNS провайдера, возможно, ответы DNS модифицирует вышестоящий провайдер.
 Вам следует использовать шифрованный канал до DNS-серверов, например, через VPN, Tor, HTTPS/Socks прокси или DNSCrypt.
[⚠] Ваш провайдер полностью блокирует доступ к HTTPS-сайтам из реестра.
[⚠] У вашего провайдера "обычный" DPI. Вам поможет HTTPS/Socks прокси, VPN или Tor.

 

Edited by Алексей Главацкий
Link to comment
Share on other sites

28 минут назад, Алексей Главацкий сказал:

-sh: n: not found

 


Для получения корректных результатов используйте DNS-сервер провайдера и отключите средства обхода блокировок.

Проверка работоспособности IPv6: IPv6 недоступен.
[O] Тестируем IPv4 DNS
        Через системный DNS:     ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
        Через Google DNS:        ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100']
        Не удалось подключиться к Google API
        Несуществующий DNS не вернул адресов (это не ошибка)
[?] Не удалось связаться с Google API. Проверка DNS сломана.

[O] Тестируем HTTP (по настоящим IP-адресам сайтов)
        Открываем  http://pbooru.com/
[✓] Сайт открывается
        Открываем  http://pbooru.com/index.php?page=post&s=view&id=303026
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
        Открываем  http://furry.booru.org/
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
        Открываем  http://furry.booru.org/index.php?page=post&s=view&id=111173
[☠] Сайт не открывается, пробуем через прокси
[✓] Сайт открывается через прокси
        Открываем  http://rutracker.org/forum/index.php
[☠] Получен неожиданный ответ, скорее всего, страница-заглушка провайдера. Пробуем через прокси.
[✓] Сайт открывается через прокси
        Открываем  http://a.putinhuylo.com/
[✓] Сайт открывается

[O] Тестируем HTTPS
        Открываем  https://rutracker.org/forum/index.php
[☠] Сайт не открывается
        Открываем  https://lolibooru.moe/
[☠] Сайт не открывается
        Открываем  https://www.dailymotion.com/
[☠] Сайт не открывается
        Открываем  https://e621.net/
[☠] Сайт не открывается
        Открываем  https://e621.net/
[☠] Сайт не открывается

[O] Тестируем обход DPI
        Пробуем способ «дополнительный пробел после GET» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «перенос строки перед GET» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «табуляция в конце домена» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «фрагментирование заголовка» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «точка в конце домена» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «заголовок hoSt вместо Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «заголовок hOSt вместо Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «необычный порядок заголовков» на rutracker.org
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на rutracker.org
[✓] Сайт открывается
        Пробуем способ «дополнительный пробел после GET» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «перенос строки перед GET» на pbooru.com
[✓] Сайт открывается
[✓] Сайт открывается
        Пробуем способ «табуляция в конце домена» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «точка в конце домена» на pbooru.com
[✓] Сайт открывается
        Пробуем способ «заголовок hoSt вместо Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «заголовок hOSt вместо Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «значение Host БОЛЬШИМИ БУКВАМИ» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «отсутствие пробела между двоеточием и значением заголовка Host» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «перенос строки в заголовках в UNIX-стиле» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «необычный порядок заголовков» на pbooru.com
[☠] Сайт не открывается
        Пробуем способ «фрагментирование заголовка, hoSt и отсутствие пробела одновременно» на pbooru.com
[✓] Сайт открывается

[!] Результат:
[⚠] Не удалось определить способ блокировки IPv4 DNS.
 Верните настройки DNS провайдера, если вы используете сторонний DNS-сервер. Если вы используете DNS провайдера, возможно, ответы DNS модифицирует вышестоящий провайдер.
 Вам следует использовать шифрованный канал до DNS-серверов, например, через VPN, Tor, HTTPS/Socks прокси или DNSCrypt.
[⚠] Ваш провайдер полностью блокирует доступ к HTTPS-сайтам из реестра.
[⚠] У вашего провайдера "обычный" DPI. Вам поможет HTTPS/Socks прокси, VPN или Tor.

 

У меня такое было когда стоял размер начального пакета 20, я снизил до 5. Попробуйте в 79 строке файла /opt/etc/init.d/S99zapret

DAEMON_OPTS="--qnum=$QNUM --wsize=5"

Поменять значение wsize в пределах 3-50. После изменения 

/opt/etc/init.d/S99zapret stop ; /opt/etc/init.d/S99zapret start

Хотя у меня сейчас и со значением 20 стало работать. У кинозала IP сменился, его пока нет в реестре, но рутрекер должен работать.

Edited by Михаил Лукьянов
add
Link to comment
Share on other sites

Quote

У меня такое было когда стоял размер начального пакета 20, я снизил до 5. Попробуйте в 79 строке файла /opt/etc/init.d/S99zapret


DAEMON_OPTS="--qnum=$QNUM --wsize=5"

Поменять значение wsize в пределах 3-50. После изменения 


/opt/etc/init.d/S99zapret stop ; /opt/etc/init.d/S99zapret start

Не помогло.

И результат 

nslookup rutracker.org
Quote

Server:    127.0.0.1
Address 1: 127.0.0.1 localhost

Name:      rutracker.org
Address 1: 195.82.146.214 rutracker.org
Address 2: 2a02:4680:22::214

 

Link to comment
Share on other sites

1 час назад, Алексей Главацкий сказал:

Не помогло.

И результат 


nslookup rutracker.org

 

Если есть желание поразбиратся, поставьте tcpdump:

opkg install tcpdump

Покажите вывод команды:

tcpdump  -vi  eth2.2 host 195.82.146.214 | grep "HTTP, length"

где eth2.2 - внешний интерфейс. После этого нужно зайти на рутрекер.

Как выглядит со включенным обходом блокировок:

Цитата

~ # /opt/etc/init.d/S99zapret start
Checking iptable_raw.ko kernel module
iptable_raw.ko is already loaded
Restoring ipset
Adding iptables rule
Starting anti-zapret: zapret.
~ # tcpdump  -vi  eth2.2 host 195.82.146.214 | grep "HTTP, length"
tcpdump: listening on eth2.2, link-type EN10MB (Ethernet), capture size 262144 bytes
    176.15.183.133.58718 > rutracker.org.http: Flags [P.], cksum 0x62bf (correct), seq 1:6, ack 1, win 229, length 5: HTTP, length: 5
    rutracker.org.http > 176.15.183.133.58718: Flags [.], cksum 0xe95a (correct), seq 1:1461, ack 356, win 58, length 1460: HTTP, length: 1460
^C51 packets captured
51 packets received by filter
0 packets dropped by kernel

И с выключенным:

Цитата

~ # /opt/etc/init.d/S99zapret stop
Saving ipset
Deleting iptables rule
Stopping anti-zapret: zapret.
~ # tcpdump  -vi  eth2.2 host 195.82.146.214 | grep "HTTP, length"
tcpdump: listening on eth2.2, link-type EN10MB (Ethernet), capture size 262144 bytes
    176.15.183.133.58826 > rutracker.org.http: Flags [P.], cksum 0xe00b (correct), seq 1:356, ack 1, win 229, length 355: HTTP, length: 355
    rutracker.org.http > 176.15.183.133.58826: Flags [FP.], cksum 0x797d (correct), seq 1:425, ack 356, win 229, length 424: HTTP, length: 424
^C19 packets captured
19 packets received by filter
0 packets dropped by kernel
 


 

Link to comment
Share on other sites

29 minutes ago, Михаил Лукьянов said:

Если есть желание поразбиратся, поставьте tcpdump:


opkg install tcpdump

Покажите вывод команды:


tcpdump  -vi  eth2.2 host 195.82.146.214 | grep "HTTP, length"

где eth2.2 - внешний интерфейс. После этого нужно зайти на рутрекер.

Как выглядит со включенным обходом блокировок:

И с выключенным:


 

Вот результаты с включенным обходом:

Quote

tcpdump: listening on eth2.2, link-type EN10MB (Ethernet), capture size 262144 bytes
    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    rutracker.org.http > 95-24-211-70.broadband.corbina.ru.62848: Flags [FP.], cksum 0x2d94 (correct), seq 1:391, ack 426, win 256, length 390: HTTP, length: 390
    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    95-24-211-70.broadband.corbina.ru.62848 > rutracker.org.http: Flags [P.], cksum 0x9a1f (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425
^C28 packets captured
32 packets received by filter
0 packets dropped by kernel
^C28 packets captured
32 packets received by filter
0 packets dropped by kernel

Вот с выключенным:

Quote

tcpdump: listening on eth2.2, link-type EN10MB (Ethernet), capture size 262144 bytes
    95-24-211-70.broadband.corbina.ru.62875 > rutracker.org.http: Flags [P.], cksum 0xa903 (correct), seq 1:426, ack 1, win 256, length 425: HTTP, length: 425    rutracker.org.http > 95-24-211-70.broadband.corbina.ru.62875: Flags [FP.], cksum 0x3c78 (correct), seq 1:391, ack 426, win 256, length 390: HTTP, length: 390
^C29 packets captured
29 packets received by filter
0 packets dropped by kernel

 

Link to comment
Share on other sites

5 минут назад, Алексей Главацкий сказал:

Вот результаты с включенным обходом:

Вот с выключенным:

 

Ага. Пакеты не фрагментируются. Откуда брался бинарник nfqws? Покажите вывод с включенным обходом блокировок

 

ps | grep nfqws


 

Link to comment
Share on other sites

5 minutes ago, Михаил Лукьянов said:

Ага. Пакеты не фрагментируются. Откуда брался бинарник nfqws? Покажите вывод с включенным обходом блокировок

Я использовал эти команды:

On 9/13/2018 at 9:53 AM, Александр Рыжов said:

или


opkg install http://bin.entware.net/mipselsf-k3.4/archive/libnetfilter-queue_2017-06-27-601abd1c-1_mipsel-3.4.ipk
opkg install http://bin.entware.net/mipselsf-k3.4/archive/zapret_0.19-20180818-1_mipsel-3.4.ipk

для MIPSEL роутеров.

 

7 minutes ago, Михаил Лукьянов said:

ps | grep nfqws

16677 root      4780 S    grep nfqws
Link to comment
Share on other sites

1 минуту назад, Алексей Главацкий сказал:

Я использовал эти команды:

 


16677 root      4780 S    grep nfqws

Оставим на совести мэйнтенеров entware эти команды (тем более что это тестовые пакеты). Судя по выводу ps nfqws не запущен. Поставьте бинарники руками:

cp /opt/zapret/binaries/mips32r1-lsb/nfqws /opt/zapret/nfq/nfqws
chmod +x /opt/zapret/nfq/nfqws
cp /opt/zapret/binaries/mips32r1-lsb/tpws  /opt/zapret/tpws/tpws
chmod +x /opt/zapret/tpws/tpws

Перезапустите S99zapret

Link to comment
Share on other sites

5 minutes ago, Михаил Лукьянов said:

Оставим на совести мэйнтенеров entware эти команды (тем более что это тестовые пакеты). Судя по выводу ps nfqws не запущен. Поставьте бинарники руками:


cp /opt/zapret/binaries/mips32r1-lsb/nfqws /opt/zapret/nfq/nfqws
chmod +x /opt/zapret/nfq/nfqws
cp /opt/zapret/binaries/mips32r1-lsb/tpws  /opt/zapret/tpws/tpws
chmod +x /opt/zapret/tpws/tpws

Перезапустите S99zapret

Все заработало!

Спасибо огромное!

Link to comment
Share on other sites

44 минуты назад, Михаил Лукьянов сказал:

Перезапустите S99zapret

Справочка для проверки "iptable_raw.ko" и облегчения запуска по проще. Так например не чего лишнего и ранее до первой команды не чего не запускалось.

/opt/sbin # lsmod | grep raw
iptable_rawpost          609  0
/opt/sbin # iptables -t raw -I PREROUTING -p tcp --sport 80 -m u32 ......
/opt/sbin # lsmod | grep raw
iptable_raw              881  1
iptable_rawpost          609  0
/opt/sbin # iptables -t raw -nvL
Chain PREROUTING (policy ACCEPT 459 packets, 83515 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 u32 ......
...
/opt/sbin # 

пояснения

/opt/sbin # opkg list-installed | grep kmod_ndms
kmod_ndms - 24-5
/opt/sbin # opkg list | grep kmod_ndms
kmod_ndms - 24-5 - Linux kernel module handling kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.
/opt/sbin #

 

Link to comment
Share on other sites

1 час назад, vasek00 сказал:

Справочка для проверки "iptable_raw.ko" и облегчения запуска по проще. Так например не чего лишнего и ранее до первой команды не чего не запускалось.


/opt/sbin # lsmod | grep raw
iptable_rawpost          609  0
/opt/sbin # iptables -t raw -I PREROUTING -p tcp --sport 80 -m u32 ......
/opt/sbin # lsmod | grep raw
iptable_raw              881  1
iptable_rawpost          609  0
/opt/sbin # iptables -t raw -nvL
Chain PREROUTING (policy ACCEPT 459 packets, 83515 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 u32 ......
...
/opt/sbin # 

пояснения


/opt/sbin # opkg list-installed | grep kmod_ndms
kmod_ndms - 24-5
/opt/sbin # opkg list | grep kmod_ndms
kmod_ndms - 24-5 - Linux kernel module handling kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.
/opt/sbin #

 

kmod_ndms по умолчанию ведь не ставится, сто процентов кто-нибудь не поставит и будет спрашивать почему не работает. Пусть будет проверка - она лишний раз модуль не будет пытаться грузить. Добавил еще в скрипт проверку на вменяемость установки tpws и nfqws, можно перекачать файл с гитхаба.

Link to comment
Share on other sites

В 13.09.2018 в 04:25, Михаил Лукьянов сказал:

Прежде чем ворочать выгрузками из РКН создаём тестовый айписет, в файл  /opt/zapret/ipset/zapret-hosts-user.txt добавляем строчки:


rutracker.org
kinozal.tv

Генерируем пользовательский айписет:


/opt/zapret/ipset/get_user.sh

Делаем пробный запуск:


/opt/etc/init.d/S99zapret start

Если всё хорошо, то в консоли должно быть примерно так:


Checking iptable_raw.ko kernel module
iptable_raw.ko loaded
Restoring ipset
Adding iptables rule
Starting anti-zapret: zapret.

На данном этапе за роутером должны заработать рутрекер и кинозал.

Что-то не работает, kinozal блокируется провайдером. 

iptables -nvL -t raw
Chain PREROUTING (policy ACCEPT 3245K packets, 2061M bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 1478K packets, 1275M bytes)
 pkts bytes target     prot opt in     out     source               destination

Также в S99zapret был SLAVE_ETH=eth0, переделал на br0

tcpdump

root@Keenetic_Giga ~# tcpdump  -vi  eth3 host 104.18.56.134 | grep "HTTP, length"
tcpdump: listening on eth3, link-type EN10MB (Ethernet), capture size 262144 bytes
    2.92.23.196.49909 > 104.18.56.134.http: Flags [P.], cksum 0x443c (correct), seq 1:408, ack 1, win 513, length 407: HTTP, length: 40               7
    104.18.56.134.http > 2.92.23.196.49909: Flags [FP.], cksum 0x713b (correct), seq 1:385, ack 408, win 513, length 384: HTTP, length:                384
^C^C21 packets captured
21 packets received by filter
0 packets dropped by kernel
root@Keenetic_Giga ~# /opt/etc/init.d/S99zapret stop
Saving ipset
Deleting iptables rule
iptables: No chain/target/match by that name.
root@Keenetic_Giga ~# tcpdump  -vi  eth3 host 104.18.56.134 | grep "HTTP, length"
tcpdump: listening on eth3, link-type EN10MB (Ethernet), capture size 262144 bytes
    2.92.23.196.49937 > 104.18.56.134.http: Flags [P.], cksum 0x6e0a (correct), seq 1:427, ack 1, win 513, length 426: HTTP, length: 426
    104.18.56.134.http > 2.92.23.196.49937: Flags [FP.], cksum 0xe773 (correct), seq 1:385, ack 427, win 513, length 384: HTTP, length: 384

Edited by Floppik
Link to comment
Share on other sites

51 минуту назад, Floppik сказал:

Также в S99zapret был SLAVE_ETH=eth0, переделал на br0

Данная переменная влияет только на контроль "sysctl", далее там есть неточности и еще

Скрытый текст

#ISP=mns
ISP=rt
#ISP=beeline
#ISP=domru
#ISP=tiera
#ISP=athome
...
BLACKHOLE=blackhole.beeline.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

 

И все громозко. Примечание при алгоритме когда используется - из таблиц RAW пакеты попадают в очередь NFQUEUE и в систему уже не возвращаются. Да и нагрузка на проверку в таком случае каждый пакет проверить на соответствие списку.

Link to comment
Share on other sites

9 минут назад, vasek00 сказал:

 

  Скрыть содержимое


#ISP=mns
ISP=rt
#ISP=beeline
#ISP=domru
#ISP=tiera
#ISP=athome
...
BLACKHOLE=blackhole.beeline.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

 

Тут на ISP=beeline тоже изменил

 

Link to comment
Share on other sites

3 часа назад, Floppik сказал:

 

 

Оставьте ISP=rt, этот вариант проверенный для РТ и Билайна. С кинозалом проблема следующая - там происходит смена IP чаще чем он попадает в реестр на prostovpn. Помогает ресолв со стороны роутера, например через /opt/zapret/ipset/get_user.sh. Можно в крон добавить и этот скрипт.

3 часа назад, vasek00 сказал:

Данная переменная влияет только на контроль "sysctl", далее там есть неточности и еще

  Скрыть содержимое


#ISP=mns
ISP=rt
#ISP=beeline
#ISP=domru
#ISP=tiera
#ISP=athome
...
BLACKHOLE=blackhole.beeline.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

 

И все громозко. Примечание при алгоритме когда используется - из таблиц RAW пакеты попадают в очередь NFQUEUE и в систему уже не возвращаются. Да и нагрузка на проверку в таком случае каждый пакет проверить на соответствие списку.

Я не кодер, а бывший админ - сам писать не обучен, на досуге могу чужое подправить. Нагрузка минимальна - за день в цепочку NFQUEUE у меня упало 15 пакетов весом 752 байта, хотя на трекерах я сижу, при сёрфинге load average на роутере выше 5% не поднимается. DPI ленивый - вместо полноценного statefull inspection, происходит только анализ SYN,ACK пакетов (т.е. первый пакет во всей TCP сессии) остальное пролетает со свистом без модификации. И это хорошо)

Edited by Михаил Лукьянов
  • Thanks 1
Link to comment
Share on other sites

  • Илья Хрупалов changed the title to Обсуждаем реализацию на роутере GoodbyeDPI

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...