Zapret: what's new

Где-то месяца два назад пробовал смотреть почему не работает приложение youtube TV.
Оно использует GQUIC, который zapret не опознает и не реагирует на него.
Думал уже надо делать поддержку GQUIC.
Но поставив свежую версию с apkmirror обнаружил, что GQUIC больше нет, есть IETF QUIC, и все и так работает.
Следовательно страждующим - обновляйте приложение.

У меня заработало вот это
com.google.android.youtube.tv_5.21.300-521300320_minAPI24(armeabi-v7a)(nodpi)_apkmirror.com.apk

На эмуляторе genymotion под образом android 12 версия для x64 не работает, но не из-за блокировки, а по причине отсутствия чего-то в системе. Возможно, кодеков. На реальном устройстве заработало без проблем

Делаю вывод, что тратить силы на поддержку GQUIC не имеет смысла, тк протокол устаревший, и используется только в старых версиях отдельных приложений. И есть обновление, которое отказалось от использования этого протокола

Приложение Android TV завелось на чистом Android 9 (не сток) без установленных gapps. Официальные требования - Android 7.0+. Следовательно, могу предположить, что требования не очень мощные, и должно пойти на достаточном количестве устройств. Но должно быть какие-то старые телики и приставки обломаются, поскольку нельзя на них обновить версию приложения.
Android 5.0 поддерживают только старые версии приложения 2.x

Для владельцев старых девайсов можно сделать дурение всего UDP на 443 без листов
--filter-udp=443 --dpi-desync=fake --dpi-desync-any-protocol --dpi-desync-cutoff=d2 --dpi-desync-repeats=СКОЛЬКО_НАДО
Хуже не будет

Или отдельно для quic через `–filter-udp=443 --filter-l7=quic", затем вышеописанное

В блокчеке 2 нововведения

  1. Переменная PARALLEL=1 включает параллельные попытки тестирования стратегий. По умолчанию не включается из-за опасности обидеть сайт дятло-долбежкой и получить неверный результат.

  2. Возможность задать ответы на диалоговые вопросы через переменные и убрать тем самым эти вопросы. Чтобы сразу запускался процесс и не было вопросов на что-нибудь нажать или что-нибудь ввести.
    CURL_MAX_TIME=1 CURL_MAX_TIME_QUIC=2 SKIP_DNSCHECK=1 DOMAINS=nnmclub.to IPVS=46 ENABLE_HTTP=1 ENABLE_HTTPS_TLS12=1 ENABLE_HTTPS_TLS13=1 ENABLE_HTTP3=1 REPEATS=8 PARALLEL=1 SCANLEVEL=standard BATCH=1 ./blockcheck.sh

Для использования с релизом достаточно заменить файл blockcheck.sh из git.

v70.5

  • nfqws: множественные фейки для всех типов протоколов через указание множественных параметров --dpi-desync-fake-???. (кроме syndata, это - не протокол)
  • nfqws: поддержка меж-пакетной дефрагментации QUIC фреймов CRYPTO. так стали делать свежие chrome броузеры. на более старой версии пакеты не собираются, хост не вытаскивается

Если не обновлять pktws, на последних chrome слетит дурение quic и перестанут работать хостлисты по quic. Либо придется отключать KYBER

В последней версии сделано распознавание discord и stun протоколов.
Поэтому нужды в ipset и any protocol больше нет.
Скрипт 50-discord удален.
Вместо него вы добавляете в основной конфиг еще один профиль такого вида.

--filter-udp=50000-50099 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6

На linux при использовании скриптов запуска
NFQWS_PORTS_UDP=443,50000-50099

На винде
--wf-udp=443,50000-50099

repeats не знаю надо или нет. лучше без.
Пока только в исходниках. Прошу протестировать.

Есть один недостаток такого решения. Если на винде или BSD пойдет раздача торрентов и попадет на указанные порты, будет загрузка проца, тк все пойдет через winws. На linux нас спасет connbytes.
Зато избавляемся от фиксированной привязки к IP, за которыми надо следить.

v70.6

  • nfqws: определение протоколов discord voice IP discovery и STUN
  • nfqws: удален custom скрипт 50-discord. вместо него пишем в основные опции nfqws --filter-udp=50000-50099 --filter-l7=discord,stun --dpi-desync=fake и включаем перехват портов udp 50000-50099 в NFQWS_PORTS_UDP (пример : NFQWS_PORTS_UDP=443,50000-50099)
  • nfqws: модификация tls фейков на конкретный SNI. пример : --dpi-desync-fake-tls-mod=sni=www.google.com,rnd,dupsid
  • nfqws: поддержка различных модификаций для разных TLS фейков. множественные опции --dpi-desync-fake-tls и --dpi-desync-fake-tls-mod в одном профиле.
  • nfqws: обновление tls фейка по умолчанию. firefox 136.0.4 finger, no kyber, SNI=www.microsoft.com
  • blockcheck: в тестах tpws c множественными сплитами включаем --fix-seg на linux

В zapret-win-bundle удален ipset discord, стратегия переписана.
Удален TLS фейк гугла, вместо него используем tls-mod