# Что такое Zapret 2 (*nfqws2*)?
**[[home|Zapret 2]]** — инструмент для тонкого управления сетевым трафиком. Его самый известный побочный эффект — обход DPI (Deep Packet Inspection) под авторством [bol-van](https://github.com/bol-van/zapret2). **DPI** *(системы глубокого анализа трафика*) используются для блокировки сайтов и сервисов. В России это **ТСПУ** (*технические средства противодействия угрозам*).
Программа перехватывает сетевые пакеты и модифицирует их так, чтобы DPI не мог их правильно проанализировать, но сервер-получатель всё понял корректно. Официальная документация по программе доступна [здесь](https://github.com/bol-van/zapret2/blob/master/docs/manual.md).
## Чем Zapret2 лучше обычного Zapret (*winws, nfqws*)?
В старом Zapret все методы обхода блокировок зашиты прямо в код на языке C. Программа делает ровно то, что в неё заложил разработчик при сборке. Хочешь что-то изменить — разбирайся в исходниках, правь C-код, компилируй заново. Для большинства пользователей это невозможно, поэтому при каждом обновлении ТСПУ приходится просто ждать, когда автор выпустит новую версию с исправлениями.
В Zapret 2 архитектуру разделили на две части. Ядро на C осталось — оно отвечает за перехват и отправку пакетов, и работает так же быстро, как раньше. А вот вся логика обмана DPI вынесена в отдельные скрипты на языке Lua. Это обычные текстовые файлы с инструкциями: как подменять пакет, как его разрезать, как запутать анализатор. Их можно открыть в любом редакторе, подправить пару строк или полностью заменить на чужой скрипт — и всё заработает без перекомпиляции программы.
На практике это меняет всё. Роскомнадзор обновил ТСПУ и старый трюк сломался — достаточно поправить скрипт и проверить, не дожидаясь нового релиза. Кто-то нашёл рабочий способ обхода — он оформляет его как Lua-файл и делится с сообществом, а остальные просто кидают его в папку. Плюс в комплекте уже идёт библиотека готовых скриптов для работы с TLS, QUIC и HTTP, которые можно свободно комбинировать между собой.
Дополнительно наш GUI делает точно также с [[preset|пресетами]] - чтобы быстро обмениваться ими между сообществом и люди сами находили способы решения полностью автономно и могли делиться ими с другими (*даже если вдруг с автором что-то случится*) без перелопатывания исходного lua-кода. Наш Zapret 2 GUI решает главную проблему любого большого инструмента обхода цензуры — [фактора автобуса](https://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%BA%D1%82%D0%BE%D1%80_%D0%B0%D0%B2%D1%82%D0%BE%D0%B1%D1%83%D1%81%D0%B0).
По сути старый Zapret — это заводской инструмент, который делает только то, что в него заложили на этапе сборки. Zapret 2 — конструктор, где способы обхода можно собирать, менять и подстраивать под любые изменения блокировок прямо на ходу.
## <img src="https://i.imgur.com/qTfQ4cf.png" width="25px"> [[download|Установка на Windows]] | [[router|Установка на роутеры]] | [[android|Установка на Android]]
Начните изучать в следующем направлении (от самого большого объекта к меньшему):
- [[preset|Пресеты]] -> [[profile|Профили (что настраивать внутри пресета)]]
- [[symptom-not-cause|Почему «Запрет не работает» — это симптом, а не причина]] — если что-то не открывается, начните отсюда
Подробнее прочитайте про стратегии и другие "понятия" Запрета 2:
- [[основные флаги]]
- [[wf]]
- [[filter]]
- [[out-range]]
- [[payload]]
- [[desync]]
- [[ts-and-fooling|ts и fooling: почему фейк должен умереть]]
- [[blob]]
Некоторые интересные факты:
[[последовательность аргументов]]
[[распознавание mtproto]]
[[roadmap обучения]]
[[zapret2_start_cutoff]]
Как работает Запрет 2:
![[manual]]
## Техники [[desync|дурения]] (стратегии)
[[syndata]]
[[fake]]
[[multisplit]]
[[multidisorder]]
[[всякий мусор]]
---
> [!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ
> При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование и скачивание всего репозитория одним zip-архивом доступны на GitHub: [исходник этой заметки](https://github.com/youtubediscord/todo/blob/main/Zapret2/Zapret2.md) · [весь репозиторий](https://github.com/youtubediscord/todo/tree/main).