Zapret | Дорожная карта
2.37K subscribers
28 photos
24 files
3.58K links
Дорожная карта обновлений.

Узнайте что я буду редактировать в Запрет для обхода блокировок Дискорда и Ютуба в первую очередь

И ужаснуться моим техническим непонятным запискам без контекста.
Download Telegram
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит

📝 dfg

👤 Автор: fuckyou
📅 Дата: 15.03.2026 14:38:52
🔗 SHA: 084f2d9

📊 Статистика:
➕ Добавлено: 1336 строк
➖ Удалено: 8 строк
📝 Всего изменений: 1344

📁 Изменено файлов: 11

✏️ Zapret/desync/fake.md
+8 -8

Удалилось:
| Опция | Описание | Требования |

|:------|:---------|:-----------|

| `none` | Ничего не делать | — |

| `rnd` | Заполнить поля `Random` (32 байта) и `Session ID` случайными данными | blob должен соде...

| `rndsni` | Заменить SNI на случайный домен. Если длина оригинального SNI >= 7 символов — случай...

| `sni=<domain>` | Заменить SNI на конкретный домен (изменяет длины внутри TLS-структур) | blob д...

| `dupsid` | Скопировать Session ID из **оригинального** payload (из `desync.reasm_data`) в фейк....

| `padencap` | Подкорректировать blob так, чтобы оригинальный payload стал частью padding extensi...


Добавилось:
| Опция          | Описание                                                                      ...

| :------------- | :-----------------------------------------------------------------------------...

| `none`         | Ничего не делать                                                              ...

| `rnd`          | Заполнить поля `Random` (32 байта) и `Session ID` случайными данными          ...

| `rndsni`       | Заменить SNI на случайный домен. Если длина оригинального SNI >= 7 символов — ...

| `sni=<domain>` | Заменить SNI на конкретный домен (изменяет длины внутри TLS-структур)         ...

| `dupsid`       | Скопировать Session ID из **оригинального** payload (из `desync.reasm_data`) в...

| `padencap`     | Подкорректировать blob так, чтобы оригинальный payload стал частью padding ext...


🆕 Zapret/mtproto/00-overview.md
+46 -0

Добавилось:
# MTProto Proxy — Полный гайд

## Что это такое

MTProto Proxy (MTProxy) — специализированный прокси-сервер для Telegram. В отличие от VPN, он раб...

Пользователь получает ссылку `tg://proxy?server=...&port=...&secret=...`, нажимает на неё — и Tel...

## Зачем нужен

1. **Обход замедления Telegram** — с января 2026 РКН замедляет медиа в Telegram до 128 КБ/с

2. **Работает когда VLESS падает** — 17 февраля 2026 VLESS массово "заболел", MTProxy с FakeTLS п...

3. **Не нужен VPN-клиент** — настройка в одно касание через ссылку

4. **Низкий расход батареи** — не держит VPN-тоннель для всего устройства

5. **Дополняет VLESS** — MTProxy для Telegram + VLESS для остального трафика

... и еще 25 строк

🆕 Zapret/mtproto/01-protocol.md
+101 -0

Добавилось:
# Протокол MTProto Proxy

## Официальная спецификация

Протокол определён Telegram. Официальный репозиторий: [TelegramMessenger/MTProxy](https://github....

## Три режима

### Classic (без префикса)

- **Секрет:** 32 hex-символа (16 байт)

- **Транспорт:** Intermediate (`0xeeeeeeee`) с обфускацией AES-256-CTR

- **Добавлен:** Май 2018 (первый коммит)

- **Защита от DPI:** Слабая — паттерны пакетов легко детектируются

- **Статус:** Устаревший, не использовать

... и еще 61 строк

... и еще 8 файлов

... и еще 1 файлов

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит

📝 vault backup: 2026-03-18 20:17:01

👤 Автор: fuckyou
📅 Дата: 18.03.2026 17:17:01
🔗 SHA: f7e380e

📊 Статистика:
➕ Добавлено: 32 строк
➖ Удалено: 0 строк
📝 Всего изменений: 32

📁 Изменено файлов: 2

✏️ Zapret/mtproto/05-censorship.md
+29 -0

Добавилось:
## Честная оценка: FakeTLS — камуфляж, не невидимость

**FakeTLS НЕ равен настоящему TLS.** Это важно понимать.

### Что может обнаружить DPI

| Метод | Детектирует FakeTLS? | Почему |

|---|---|---|

| Первые байты пакета | **Нет** | FakeTLS корректно имитирует TLS Record Layer |

| JA3/JA4 fingerprinting | **Да** | Статические cipher/extension без GREASE/ECH — не совпадает с ...

| Паттерны трафика | **Да** | Burst-передача, нехарактерная для реального HTTPS |

| Active probing | **Нет** (telemt/mtg) | TCP Splice возвращает реальный сайт. Но DNS-проверка ра...

| Полный TLS-анализ | **Да** | Нет реального Certificate, session resumption, ALPN negotiation |

... и еще 10 строк

✏️ Zapret/🐳 Win 7 и 8.md
+3 -0

Добавилось:
## Zapret 2

Доступно здесь — https://github.com/youtubediscord/zapret2-youtube-discord

## Zapret 1


🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит

📝 vault backup: 2026-03-18 20:23:17

👤 Автор: fuckyou
📅 Дата: 18.03.2026 17:23:17
🔗 SHA: c9ea96b

📊 Статистика:
➕ Добавлено: 1 строк
➖ Удалено: 1 строк
📝 Всего изменений: 2

📁 Изменено файлов: 1

✏️ Zapret/Дорожная карта.md
+1 -1

Удалилось:
- [ ] запрет вин7


Добавилось:
- [x] запрет вин7 ✅ 2026-03-18


🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 TCP multi-phase больше не нужен

👤 Автор: loop-uh
📅 Дата: 22.03.2026 20:21:48
🔗 SHA: 036f6c0

📊 Статистика:
➕ Добавлено: 0 строк
➖ Удалено: 36 строк
📝 Всего изменений: 36

📁 Изменено файлов: 1

✏️ src/ui/pages/zapret2/strategy_detail_page.py
+0 -36

Удалилось:
# TCP multi-phase: restore last enabled args when switching from "none" to a strategy

if self._tcp_phase_mode and strategy_id != "none" and prev_strategy_id == "none":

last_args = (self._tcp_last_enabled_args_by_category.get(self._category_key) or "").strip()

if last_args:

try:

preset = self._preset_manager.get_active_preset()

if preset:

if self._category_key not in preset.categories:

preset.categories[self._category_key] = self._preset_manager._create_category_with_defaults(self....

cat = preset.categories[self._category_key]

... и еще 25 строк

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Create telegram-notify.yml

👤 Автор: loop-uh
📅 Дата: 22.03.2026 20:24:18
🔗 SHA: 23970cd

📊 Статистика:
➕ Добавлено: 71 строк
➖ Удалено: 0 строк
📝 Всего изменений: 71

📁 Изменено файлов: 1

🆕 .github/workflows/telegram-notify.yml
+71 -0

Добавилось:
name: Telegram Commit Notify

on:

push:

branches: [main]

jobs:

notify:

runs-on: ubuntu-latest

steps:

- uses: actions/checkout@v4

with:

... и еще 48 строк

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Create telegram-notify.yml

👤 Автор: loop-uh
🔗 SHA: 23970cd

📊 Статистика: 1 file changed, 71 insertions(+)

📁 Изменённые файлы:
🆕 .github/workflows/telegram-notify.yml\n
🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Compound категории теперь выживают roundtrip. Простые категории не затронуты. IPset UDP (Games) больше не будет "включаться и выключаться".

👤 Автор: loop-uh
📅 Дата: 22.03.2026 20:52:42
🔗 SHA: 4af52ce

📊 Статистика:
➕ Добавлено: 74 строк
➖ Удалено: 43 строк
📝 Всего изменений: 117

📁 Изменено файлов: 3

✏️ docs/DIAGRAMS.md
+0 -1

Удалилось:
CHAT[-1003005847271]


✏️ src/preset_orchestra_zapret2/txt_preset_parser.py
+37 -21

Удалилось:
for list_category, list_mode, list_file in categories_from_lists:

mode = (list_mode or "hostlist").strip().lower() or "hostlist"

canonical_key = _canonicalize_list_category_key(

category_key=list_category,

filter_mode=mode,

filter_file=list_file,

protocol_hint=base_protocol,

block_args=block_args,

)

category_entries.append((canonical_key, mode, list_file))

... и еще 10 строк

Добавилось:
# Compound categories (ipset_udp, ipset_tcp_cloudflare, etc.) have

# multiple --ipset=/--hostlist= in their base_filter. Per-entry

# resolution would split them into individual unknown entries.

# Detect and use full-block inference instead.

use_inferred_compound = False

if inferred_category != "unknown":

_ci = (_load_category_info() or {}).get(inferred_category, {})

_bf = _ci.get("base_filter") or _ci.get("base_filter_ipset") or _ci.get("base_filter_hostlist") o...

_selector_count = len(re.findall(r'--(ipset|hostlist)=', _bf))

if _selector_count > 1:

... и еще 25 строк

✏️ src/preset_zapret2/txt_preset_parser.py
+37 -21

Удалилось:
for list_category, list_mode, list_file in categories_from_lists:

mode = (list_mode or "hostlist").strip().lower() or "hostlist"

canonical_key = _canonicalize_list_category_key(

category_key=list_category,

filter_mode=mode,

filter_file=list_file,

protocol_hint=base_protocol,

block_args=block_args,

)

category_entries.append((canonical_key, mode, list_file))

... и еще 10 строк

Добавилось:
# Compound categories (ipset_udp, ipset_tcp_cloudflare, etc.) have

# multiple --ipset=/--hostlist= in their base_filter. Per-entry

# resolution would split them into individual unknown entries.

# Detect and use full-block inference instead.

use_inferred_compound = False

if inferred_category != "unknown":

_ci = (_load_category_info() or {}).get(inferred_category, {})

_bf = _ci.get("base_filter") or _ci.get("base_filter_ipset") or _ci.get("base_filter_hostlist") o...

_selector_count = len(re.findall(r'--(ipset|hostlist)=', _bf))

if _selector_count > 1:

... и еще 25 строк

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 сканирует пресет, находит --lua-desync= функции, проверяет наличие нужных --lua-init строк, добавляет отсутствующие (с проверкой что .lua файл существует на диске)

👤 Автор: loop-uh
📅 Дата: 23.03.2026 11:35:32
🔗 SHA: dadc25d

📊 Статистика:
➕ Добавлено: 113 строк
➖ Удалено: 0 строк
📝 Всего изменений: 113

📁 Изменено файлов: 2

✏️ src/dpi/process_health_check.py
+22 -0

Добавилось:
import re

stderr_lower = (stderr or "").lower()

# Lua desync function not found — lua-init auto-fix didn't help,

# meaning the .lua file itself is missing from disk.

m = re.search(r"desync function '([^']+)' does not exist", stderr or "")

if m:

func_name = m.group(1)

return WinDivertDiagnosis(

cause=f"Lua-функция '{func_name}' не найдена — файл .lua отсутствует на диске",

solution="Переустановите программу — файлы в папке lua/ повреждены или удалены",

... и еще 9 строк

✏️ src/zapret2_launcher/strategy_runner.py
+91 -0

Добавилось:
# Core lua-init files required by any preset that uses --lua-desync.

# Order matters — zapret-lib must come first (defines base primitives).

_CORE_LUA_INITS = [

"lua/zapret-lib.lua",

"lua/zapret-antidpi.lua",

"lua/zapret-auto.lua",

"lua/custom_funcs.lua",

"lua/custom_diag.lua",

]

# Extension lua files required only when specific desync functions are used.

... и еще 64 строк

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 сканирует пресет, находит --lua-desync= функции, проверяет наличие нужных --lua-init строк, добавляет отсутствующие (с проверкой что .lua файл существует на диске)

👤 Автор: loop-uh
🔗 SHA: dadc25d

📊 Статистика: 2 files changed, 113 insertions(+)

📁 Изменённые файлы:
✏️ src/dpi/process_health_check.py\n✏️ src/zapret2_launcher/strategy_runner.py\n
🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Update Default old.txt

👤 Автор: loop-uh
🔗 SHA: 7e91fec

📊 Статистика: 1 file changed, 1 insertion(+), 1 deletion(-)

📁 Изменённые файлы:
✏️ src/preset_zapret2/builtin_presets/Default old.txt\n
🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 брана мёртвая попытка скачивания через Telegram (Bot API лимит 20MB, установщик >50MB)

👤 Автор: loop-uh
🔗 SHA: 155f1d5

📊 Статистика: 7 files changed, 20 insertions(+), 85 deletions(-)

📁 Изменённые файлы:
✏️ docs/README.md\n✏️ src/ui/pages/about_page.py\n✏️ src/ui/pages/zapret1/user_presets_page.py\n✏️ src/ui/pages/zapret2/direct_zapret2_page.py\n✏️ src/ui/pages/zapret2/user_presets_page.py\n✏️ src/updater/telegram_updater.py\n✏️ src/updater/update.py\n
🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 winws2 больше не будет писаться как не наш экземпляр

👤 Автор: loop-uh
🔗 SHA: 4cd8729

📊 Статистика: 4 files changed, 5 insertions(+), 18 deletions(-)

📁 Изменённые файлы:
✏️ .github/workflows/telegram-notify.yml
✏️ src/dpi/dpi_controller.py
✏️ src/dpi/process_health_check.py
✏️ src/updater/update.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 вап

👤 Автор: loop-uh
🔗 SHA: 0878ff6

📊 Статистика: 6 files changed, 23 insertions(+), 10 deletions(-)

📁 Изменённые файлы:
✏️ docs/README.md
✏️ src/ui/pages/about_page.py
✏️ src/ui/pages/servers_page.py
✏️ src/ui/pages/zapret1/user_presets_page.py
✏️ src/ui/pages/zapret2/direct_zapret2_page.py
✏️ src/ui/pages/zapret2/user_presets_page.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 двойний клик

👤 Автор: loop-uh
🔗 SHA: bc5845b

📊 Статистика: 2 files changed, 10 insertions(+), 33 deletions(-)

📁 Изменённые файлы:
✏️ src/ui/pages/servers_page.py
✏️ src/updater/update.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 запрос на хостлисты

👤 Автор: loop-uh
🔗 SHA: 0a9669e

📊 Статистика: 9 files changed, 439 insertions(+), 67 deletions(-)

📁 Изменённые файлы:
🆕 .github/ISSUE_TEMPLATE/bug_report.yml
🆕 .github/ISSUE_TEMPLATE/config.yml
🆕 .github/ISSUE_TEMPLATE/feature_request.yml
🆕 .github/ISSUE_TEMPLATE/hostlist_ipset_request.yml
🆕 .github/ISSUE_TEMPLATE/service_not_working.yml
✏️ src/main.py
✏️ src/ui/pages/servers_page.py
✏️ src/updater/release_manager.py
✏️ src/updater/update.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Пользователь не сможет отправить заявку на hostlist/ipset без прикреплённого файла.

👤 Автор: loop-uh
🔗 SHA: 45be2fc

📊 Статистика: 1 file changed, 1 insertion(+), 1 deletion(-)

📁 Изменённые файлы:
✏️ .github/ISSUE_TEMPLATE/hostlist_ipset_request.yml

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 4 параллельных потока через HTTP Range, 1MB чанки → ~10-40 MB/s на GitHub CDN

👤 Автор: loop-uh
🔗 SHA: cbba1b6

📊 Статистика: 1 file changed, 169 insertions(+), 202 deletions(-)

📁 Изменённые файлы:
✏️ src/updater/update.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 проверка и предупреждение о поддельном клиенте «Telega Desktop»

👤 Автор: loop-uh
🔗 SHA: 243d06b

📊 Статистика: 2 files changed, 168 insertions(+)

📁 Изменённые файлы:
✏️ src/main.py
🆕 src/startup/telega_check.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 блокчек теперь умеет определять блок по айпи

👤 Автор: loop-uh
🔗 SHA: b4929a7

📊 Статистика: 10 files changed, 756 insertions(+), 281 deletions(-)

📁 Изменённые файлы:
✏️ src/blockcheck/__init__.py
✏️ src/blockcheck/config.py
✏️ src/blockcheck/models.py
🆕 src/blockcheck/preflight.py
✏️ src/blockcheck/runner.py
✏️ src/dns_checker.py
🗑️ src/preset_zapret2/builtin_presets/Default old.txt
✏️ src/preset_zapret2/builtin_presets/Default.txt
🆕 src/preset_zapret2/builtin_presets/special for loop-uh.txt
✏️ src/ui/pages/blockcheck_page.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 Что изменилось в формате вывода: Для доступного домена: Preflight discord.com: DNS: ОК — 2 адресов (104.26.10.52, 172.67.69.236), 45мс → IP не в списке заглушек провайдеров TCP :443: ОК — порт открыт (104.26.10.52), 42мс Ping: ОК — хост отвечает, 24мс HTTP :80: ОК — провайдер не подменяет контент Итого: ПРОЙДЕН — все проверки пройдены (DNS, TCP :443, Ping, HTTP) Для заблокированного домена (DNS заглушка): Preflight rutracker.org: DNS: ПРОВАЛ — IP-заглушка Ростелеком (195.82.146.214), 12мс → Провайдер подменяет DNS на IP-заглушку (Ростелеком) → Рекомендация: смените DNS на DoH (1.1.1.1 или 8.8.8.8) TCP :443: ОК — порт открыт (195.82.146.214), 8мс → Это заглушка, не реальный сервер Ping: ОК — хост отвечает, 5мс → Но это IP заглушки провайдера HTTP :80: ISP ИНЪЕКЦИЯ — маркер Роскомнадзор, 15мс → Провайдер перенаправляет HTTP на страницу блокировки Итого: ПРОВАЛ — DNS заглушка провайдера; ISP инъекция Ключевые улучшения: - Убрано двойное ОК в DNS - Каждая проверка объясняет что значит результат (→ IP не в списке заглушек) - Идентификация провайдера по IP (Ростелеком, МТС, Билайн, Мегафон, РКН) - Рекомендации при ошибках (DoH) - Тайминги для каждой проверки - При block IP — пояснения к TCP/Ping что это заглушка - Результат → Итого

👤 Автор: loop-uh
🔗 SHA: c289795

📊 Статистика: 4 files changed, 298 insertions(+), 112 deletions(-)

📁 Изменённые файлы:
✏️ src/blockcheck/models.py
✏️ src/blockcheck/preflight.py
✏️ src/blockcheck/runner.py
✏️ src/blockcheck/strategy_scanner.py

🔗 Открыть на GitHub
💥 ВСЕ НАШИ ССЫЛКИ: https://t.me/runetvpnyoutubediscord

🔔 Новый коммит в youtubediscord/zapret

📝 ри нажатии Развернуть: - Все карточки кроме лога скрываются через setVisible(False) - Потолок высоты лога снимается (setMaximumHeight(16777215) — Qt QWIDGETSIZE_MAX) - Минимальная высота лога увеличивается до 400px - Кнопка меняет текст на Свернуть

👤 Автор: loop-uh
🔗 SHA: 0a94301

📊 Статистика: 2 files changed, 79 insertions(+)

📁 Изменённые файлы:
✏️ src/ui/pages/blockcheck_page.py
✏️ src/ui/pages/strategy_scan_page.py

🔗 Открыть на GitHub