feat(autotest): --list-all mode; fix GAME placeholders; fix bin refs; docs: new workflow

This commit is contained in:
Auto Fix
2026-05-11 17:38:56 +04:00
parent e06a9a56fc
commit e6551f8954
25 changed files with 532 additions and 844 deletions

911
README.md
View File

@@ -1,560 +1,353 @@
# Zapret for Linux (Discord + YouTube + GitHub + Telegram + Steam)
Linux-аналог популярного репозитория [Flowseal/zapret-discord-youtube](https://github.com/Flowseal/zapret-discord-youtube) для обхода DPI (Deep Packet Inspection).
**Ключевая фича:** `sync_from_upstream.sh` — автоматическое слежение за оригинальным Windows-репозиторием. При обновлении Flowseal скрипт сам скачает новые списки доменов, `hosts` и авто-конвертирует новые `.bat` стратегии в Linux-формат. Подробнее в разделе **Синхронизация upstream**.
---
## Важно для пользователей из России
GitHub заблокирован в РФ. Установщик **автоматически использует** прокси/зеркала, но рекомендуется:
1. **Если есть VPN/прокси** — самый простой способ:
```bash
# Вариант A: системный прокси
export HTTPS_PROXY=socks5://127.0.0.1:1080
sudo ./install.sh
# Вариант B: proxychains
proxychains ./install.sh
```
2. **Если нет VPN на целевой машине** — подготовьте офлайн-пакет:
```bash
# На машине С интернетом (с VPN):
cd /opt/zapret
proxychains ./prepare_offline_bundle.sh
# Перенесите zapret-discord-youtube-linux-bundle.tar.gz
# на целевую машину, распакуйте и:
sudo ./install.sh --offline
```
3. **Если установка падает на скачивании**:
- Проверьте `.env.example` → создайте `.env` с `GITHUB_PROXY=...`
- Или передайте прокси через переменную окружения
Подробнее: раздел **Offline / РФ** внизу.
---
## Быстрый старт
```bash
# 1. Установка git (один раз)
sudo apt install git # Ubuntu/Debian
sudo pacman -S git # Arch/Manjaro
sudo dnf install git # Fedora
# 2. Клонирование (БЕЗ sudo — создаёт файлы от текущего пользователя)
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
# 3. Установка (одна команда — всё сделает)
sudo ./install.sh
```
После `install.sh` сервис запущен и будет автозапускаться.
> **Важно:** Все скрипты (`install.sh`, `setup.sh`, `general*.sh`, `service.sh`, `autotest.sh`, `update.sh`) должны запускаться **от root** (через `sudo`). Сами скрипты проверяют это автоматически.
---
## Установка по дистрибутивам
### Ubuntu / Debian / Linux Mint / Pop!_OS / Zorin OS / Kali
```bash
sudo apt update
sudo apt install -y git curl make gcc iptables nftables libnetfilter-queue-dev
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### Arch Linux / Manjaro / EndeavourOS / Garuda / Artix
```bash
sudo pacman -Syu --noconfirm git curl make gcc iptables nftables libnetfilter_queue
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### Fedora / RHEL / CentOS / AlmaLinux / Rocky Linux
```bash
sudo dnf install -y git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### Alpine Linux
```bash
sudo apk add --no-cache git curl make gcc iptables nftables libnetfilter_queue-dev linux-headers
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### Gentoo / Funtoo
```bash
sudo emerge --ask dev-vcs/git net-misc/curl sys-devel/gcc sys-devel/make net-firewall/iptables net-firewall/nftables
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### openSUSE / SUSE
```bash
sudo zypper install -y git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### Void Linux
```bash
sudo xbps-install -Sy git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
### NixOS
```bash
nix-shell -p git curl gnumake gcc iptables nftables libnetfilter_queue
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./install.sh
```
---
## Что делает `./install.sh` (шаг за шагом)
1. **Синхронизация upstream** (`sync_from_upstream.sh`)
- Клонирует оригинальный `Flowseal/zapret-discord-youtube`
- Мержит свежие `lists/*.txt` (Discord, YouTube, GitHub, Telegram, Steam)
- Обновляет `.service/hosts` (статичные IP для GitHub/Telegram)
- При необходимости конвертирует новые `.bat` стратегии в `strategies/*.conf`
2. **Установка зависимостей** (`setup.sh`) — по дистрибутиву
3. **Сборка `nfqws`** (`install_nfqws.sh`) — git clone bol-van/zapret, make, fake .bin пакеты
4. **Автотест** (`autotest.sh --auto`) — перебирает стратегии, находит рабочую, ставит в systemd
---
## Структура проекта (модульная архитектура)
```text
.
├── bin/ # nfqws + fake .bin (собирается)
├── lib/
│ └── functions.sh # Общие: firewall, цвета, cleanup
├── lists/ # Списки доменов и IP
│ ├── list-general.txt # Discord, YouTube, GitHub, Telegram, Steam
│ ├── list-google.txt # Google/YouTube
│ ├── list-exclude.txt # Исключения (банки, госуслуги)
│ ├── ipset-all.txt # IP-диапазоны
│ └── ipset-exclude.txt # Локальные подсети
├── strategies/ # Модульные стратегии (.conf)
│ └── general.conf # Конфиг стратегии (RULE1=... RULE2=...)
│ # Другие .conf появляются автоматически через sync_from_upstream.sh
├── utils/
│ ├── test_zapret.sh # curl-тесты
│ └── targets.txt # Цели
├── systemd/ # Юниты и таймеры
├── .service/
│ ├── version.txt # Версия (x.y.z-linux)
│ ├── hosts # Статичные IP (GitHub, Telegram)
│ └── installed_strategy # Какая стратегия в systemd
├── general*.sh # Обёртки → run_strategy.sh
├── run_strategy.sh # Движок: читает .conf, подставляет %BIN%/%LISTS%, запускает nfqws
├── sync_from_upstream.sh # Авто-мердж с Windows-репон
├── autotest.sh # Автоподбор рабочей стратегии
├── install.sh # Полный установщик (setup + build + autotest + systemd)
├── service.sh # Меню управления (аналог service.bat)
├── setup.sh # Зависимости по дистрибутиву
├── install_nfqws.sh # Сборка nfqws из bol-van/zapret
├── ensure_wrappers.sh # Создаёт general_*.sh из strategies/*.conf
└── update.sh # Полный pipeline: sync → build → test → install
# Zapret for Linux (Discord + YouTube + GitHub + Telegram + Steam)
Linux-аналог популярного репозитория [Flowseal/zapret-discord-youtube](https://github.com/Flowseal/zapret-discord-youtube) для обхода DPI (Deep Packet Inspection).
**Ключевая фича:** `sync_from_upstream.sh` — автоматическое слежение за оригинальным Windows-репозиторием. При обновлении Flowseal скрипт сам скачает новые списки доменов, `hosts` и авто-конвертирует новые `.bat` стратегии в Linux-формат.
---
## Быстрый старт (рекомендуемый workflow)
```bash
# 1. Клонирование
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
# 2. Запуск меню управления
sudo ./service.sh
```
.
├── bin/ # nfqws + fake .bin (собирается)
├── lib/
│ └── functions.sh # Общие: firewall, цвета, cleanup
├── lists/ # Списки доменов и IP
│ ├── list-general.txt # Discord, YouTube, GitHub, Telegram, Steam
│ ├── list-google.txt # Google/YouTube
│ ├── list-exclude.txt # Исключения (банки, госуслуги)
│ ├── ipset-all.txt # IP-диапазоны
│ └── ipset-exclude.txt # Локальные подсети
├── strategies/ # Новое: модульные стратегии
│ └── general.conf # Конфиг стратегии (RULE1=... RULE2=...)
│ # Другие .conf появляются автоматически через sync_from_upstream.sh
├── utils/
│ ├── test_zapret.sh # curl-тесты
│ └── targets.txt # Цели
├── systemd/ # Юниты и таймеры
├── .service/
│ ├── version.txt # Версия (x.y.z-linux)
│ ├── hosts # Статичные IP (GitHub, Telegram)
│ └── installed_strategy # Какая стратегия в systemd
├── general*.sh # Обёртки → run_strategy.sh
├── run_strategy.sh # Движок: читает .conf, подставляет %BIN%/%LISTS%, запускает nfqws
├── sync_from_upstream.sh # Авто-мердж с Windows-репон
├── autotest.sh # Автоподбор рабочей стратегии
├── install.sh # Полный установщик (setup + build + autotest + systemd)
├── service.sh # Меню управления (аналог service.bat)
├── setup.sh # Зависимости по дистрибутиву
├── install_nfqws.sh # Сборка nfqws из bol-van/zapret
├── ensure_wrappers.sh # Создаёт general_*.sh из strategies/*.conf
└── update.sh # Полный pipeline: sync → build → test → install
```
**Ключевой момент:** стратегии больше не зашиты в код. Они вынесены в `strategies/*.conf` — текстовые файлы, которые автоматически конвертируются из `.bat` при синхронизации.
---
## Модульные стратегии (strategies/*.conf)
Вместо 20 скриптов с дублирующимся кодом — **один движок** + **конфигурационные файлы**.
Пример `strategies/general.conf`:
```
# Strategy: general
RULE1=--filter-udp=443 --hostlist="%LISTS%/list-general.txt" ... --dpi-desync=fake ...
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun ...
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media ...
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%/ipset-all.txt" ...
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%/ipset-all.txt" ...
```
Переменные (подставляются на лету через sed, без envsubst):
- `%BIN%` → `bin/`
- `%LISTS%` → `lists/`
- `%GAME_TCP%` / `%GAME_UDP%` → `1024:65535` (или пусто)
**Если Flowseal выпускает новую `general (ALT12).bat`:**
```bash
sudo ./sync_from_upstream.sh # авто-конвертирует в strategies/ALT12.conf + general_ALT12.sh
```
---
## Стратегии (general*.sh)
| Файл | Стратегия | Описание |
|------|-----------|----------|
| `general.sh` | `general` | Standard multisplit (рекомендуется пробовать первой) |
| `general_ALT.sh` | `ALT` | Fake fakedsplit + ts fooling |
| `general_ALT2.sh` | `ALT2` | Multisplit pos=2 |
| `general_ALT3.sh` | `ALT3` | Hostfakesplit (Google/ya.ru) |
| `general_ALT4.sh` | `ALT4` | Fake multisplit + badseq |
| `general_ALT5.sh` | `ALT5` | **NOT RECOMMENDED** syndata multidisorder |
| `general_ALT6.sh` | `ALT6` | Uniform split-seqovl=681 |
| `general_ALT7.sh` | `ALT7` | Multisplit + syndata |
| `general_ALT8.sh` | `ALT8` | Fake + badseq-increment=2 |
| `general_ALT9.sh` | `ALT9` | Hostfakesplit (ozon.ru) |
| `general_ALT10.sh` | `ALT10` | Fake + ts fooling |
| `general_ALT11.sh` | `ALT11` | Fake multisplit + max_ru pattern |
| `general_FAKE_TLS_AUTO.sh` | `FAKE_TLS_AUTO` | FAKE TLS multidisorder |
| `general_FAKE_TLS_AUTO_ALT.sh` | `FAKE_TLS_AUTO_ALT` | FAKE TLS fakedsplit |
| `general_FAKE_TLS_AUTO_ALT2.sh` | `FAKE_TLS_AUTO_ALT2` | FAKE TLS multisplit badseq |
| `general_FAKE_TLS_AUTO_ALT3.sh` | `FAKE_TLS_AUTO_ALT3` | FAKE TLS + 4pda pattern |
| `general_SIMPLE_FAKE.sh` | `SIMPLE_FAKE` | Simple fake |
| `general_SIMPLE_FAKE_ALT.sh` | `SIMPLE_FAKE_ALT` | Simple fakedsplit |
| `general_SIMPLE_FAKE_ALT2.sh` | `SIMPLE_FAKE_ALT2` | Simple hostfakesplit |
**Подбор рабочей:**
```bash
sudo ./autotest.sh # интерактивно: тестит, пока не найдёт
sudo ./autotest.sh --auto # автомат: найдёт и сразу установит в systemd
```
---
## service.sh — меню управления
Аналог `service.bat` из Windows-версии:
```
:: SERVICE
1. Install Service — выбор стратегии + systemd unit
2. Remove Services — удаление unit + остановка nfqws
3. Check Status — проверка nfqws и firewall rules
:: SETTINGS
4. Game Filter — вкл/выкл обход портов >1024
5. IPSet Filter — none / loaded / any
6. Auto-Update Check — вкл/выкл автообновление
:: UPDATES
7. Update IPSet List — обновить список IP
8. Update Hosts File — показать hosts и предложить добавить в /etc/hosts
9. Check for Updates — проверить версию (внутренняя)
:: TOOLS
10. Run Diagnostics — зависимости, ядерный модуль, DNS
11. Run Tests — curl-проверка Discord/YouTube
```
---
## update.sh — автообновление (pipeline)
```bash
# Полный pipeline: sync upstream → rebuild → test → install
sudo ./update.sh # интерактивно
sudo ./update.sh --auto # для cron: тихий режим, только если upstream изменился
sudo ./update.sh --full-auto # форсировать пересборку + перетестирование
sudo ./update.sh --help # справка
```
**Когда использовать `--full-auto`:**
- После обновления дистрибутива/ядра (может сломать бинарный совместимость `nfqws`)
- Если `nfqws` падает с segfault (пересборка с безопасными флагами)
- Если установка новой стратегии не работает
**Что делает при обновлении Flowseal:**
```
Step 0: sync_from_upstream.sh
→ скачивает новые lists, hosts, версию
→ если Flowseal выпустил новый .bat — авто-конвертирует в .conf + .sh
Step 1: Rebuild nfqws
→ пересобирает из исходников
Step 2: Auto-test
→ перетестирует все стратегии (включая новые)
Step 3: Install to systemd
→ ставит лучшую рабочую в автостарт
```
---
## Синхронизация upstream (`sync_from_upstream.sh`)
Отдельный скрипт для ручного мержа с оригиналом. Не требует пересборки nfqws.
```bash
sudo ./sync_from_upstream.sh
# Вывод:
# [OK] lists/list-general.txt (новые домены GitHub/Telegram)
# [OK] .service/hosts (новые статичные IP)
# [NEW] Detected upstream strategy: general (ALT12).bat → ALT12.conf
# [OK] REBUILD NEEDED: run ./update.sh
```
Если видите `REBUILD NEEDED` (exit 2) — запускайте `sudo ./update.sh` или `sudo ./install.sh`.
**systemd таймер для ежедневного автообновления:**
```bash
sudo cp systemd/zapret-update.timer /etc/systemd/system/
sudo cp systemd/zapret-update.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now zapret-update.timer
```
---
## Security — hosts для заблокированных ресурсов
Проект включает `.service/hosts` со статичными IP, чтобы обойти DNS-блокировки:
- **GitHub**: `raw.githubusercontent.com`, `avatars.githubusercontent.com`, `gist.github.com`
- **Telegram**: `t.me`, `telegram.org`, `web.telegram.org`, `api.telegram.org`
- **Discord media**: голосовые каналы
Добавить в `/etc/hosts`:
```bash
sudo ./service.sh
# → 8. Update Hosts File
```
Или вручную:
```bash
cat .service/hosts | sudo tee -a /etc/hosts
```
Рекомендуется также включить **Secure DNS** (DoH/DoT):
- Chrome: `chrome://settings/security` → Secure DNS
- Firefox: `about:preferences#privacy` → DNS-over-HTTPS
- systemd-resolved: `resolvectl dns eth0 1.1.1.1`
---
## Ручное управление (если автоматика не подошла)
```bash
cd /opt/zapret
# Запуск конкретной стратегии
sudo ./general.sh # если не работает — Ctrl+C
sudo ./general_ALT.sh # пробуем следующую
# ... и так до 20 стратегий
# Меню
sudo ./service.sh
# Обновление (sync + rebuild + test + install)
sudo ./update.sh
sudo ./update.sh --full-auto
```
### Если autotest показывает "nfqws did not start" / ошибка 0000
Это значит `nfqws` не удалось запуститься. Самые частые причины:
1. **Не хватает root-прав** — запускайте ВСЕ скрипты через `sudo`
2. **Отсутствуют fake .bin файлы** — пересоберите: `sudo ./install_nfqws.sh`
3. **nfnetlink_queue не загружен** — `sudo modprobe nfnetlink_queue`
4. **iptables/nftables конфликт** — `sudo ./service.sh → 2. Remove Services`, затем `sudo ./general.sh`
5. **nfqws падает с segfault** — пересоберите с безопасными флагами: `sudo ./update.sh --full-auto`
- Скрипт автоматически выключит `-flto=auto` и `--gc-sections`, которые вызывают крах на некоторых системах
### Если curl-тесты падают, но nfqws запущен
1. Включите **Secure DNS** (DoH/DoT) — провайдер блокирует по DNS
2. Добавьте `.service/hosts` в `/etc/hosts` (`sudo ./service.sh → 8`)
3. Попробуйте стратегии вручную — у разных провайдеров работают разные
---
## Требования
- Linux с `iptables` или `nftables`
- Ядерный модуль `nfnetlink_queue` (загрузится автоматически)
- `git`, `make`, `gcc`, `curl`
- **Root-доступ** — все скрипты (`install.sh`, `setup.sh`, `general*.sh`, `service.sh`, `autotest.sh`, `update.sh`) проверяют это автоматически и показывают `sudo $0`, если запущены без прав
---
## Работа в России / Offline-режим
### Почему нужен прокси или offline-бандл
- `github.com` заблокирован в РФ
- Оригинальный репозиторий лежит на GitHub (Flowseal/zapret-discord-youtube)
- Исходники `nfqws` тоже на GitHub (bol-van/zapret)
- Наш проект на **Gitea**, поэтому клонирование работает, но внутренние скачивания (lists, hosts, bol-van/zapret) — используют GitHub
### Вариант 1: Установка с VPN/прокси (рекомендуется)
```bash
# Системный прокси
export HTTPS_PROXY=socks5://127.0.0.1:1080
export HTTP_PROXY=socks5://127.0.0.1:1080
sudo ./install.sh
# Или proxychains
proxychains ./install.sh
```
Также можно настроить `~/.bashrc`:
```bash
echo 'export HTTPS_PROXY=socks5://127.0.0.1:1080' >> ~/.bashrc
source ~/.bashrc
```
### Вариант 2: Offline-бандл (без интернета на целевой машине)
На машине **с интернетом** (например, у друга, или с VPN на работе):
```bash
cd /opt/zapret
proxychains ./prepare_offline_bundle.sh
```
Получите файл: `zapret-discord-youtube-linux-bundle.tar.gz`
На машине **без интернета**:
```bash
cd /opt
sudo tar -xzf zapret-discord-youtube-linux-bundle.tar.gz
cd zapret-bundle-*/installed-scripts
sudo ./install.sh --offline
```
Бандл содержит:
- Исходники `bol-van/zapret` (для сборки nfqws)
- `lists/*.txt` (свежие домены)
- `.service/hosts` (статичные IP)
- Все скрипты и стратегии
### Вариант 3: Установка на Windows и перенос в Linux
1. Скачать репозиторий на Windows (где VPN работает)
2. Перенести на Linux через флешку/сеть
3. На Linux запустить `sudo ./install.sh --offline`
### Если GitHub заблокирован — поведение скриптов
| Скрипт | Поведение при отсутствии интернета |
|--------|-----------------------------------|
| `install.sh` | Предупреждает, спрашивает, можно запустить `--offline` |
| `sync_from_upstream.sh` | Переключается в offline-режим, использует `.bundle/` |
| `update.sh` | Если sync не удался — сообщает и выходит |
| `install_nfqws.sh` | Предлагает proxychains, `--offline`, или `prepare_offline_bundle.sh` |
### Настройка прокси через .env
```bash
cp .env.example .env
nano .env
```
```
GITHUB_PROXY=socks5://127.0.0.1:1080
```
Скрипты автоматически прочитают `.env` при запуске.
### Обновление при заблокированном GitHub
```bash
# С VPN/proxy на целевой машине:
sudo ./update.sh --full-auto
# Или через proxychains:
proxychains ./update.sh --full-auto
```
---
## Лицензия
MIT License.
**Авторы:**
- [bol-van](https://github.com/bol-van) — оригинальный zapret
- [Flowseal](https://github.com/Flowseal) — Windows-обёртка и стратегии
- Linux-адаптация — [Gitea](https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux)
В открывшемся меню:
1. **Нажмите `11` (Run Tests)** — скрипт автоматически проверит все стратегии (general, ALT, ALT2, ALT3...) против YouTube и Discord и покажет **список ВСЕХ рабочих**.
2. После тестов нажмите `1` (Install Service) и **выберите номер** понравившейся стратегии из списка.
3. Сервис установлен и будет автозапускаться при загрузке.
```
:: TOOLS
10. Run Diagnostics
11. Run Tests (find ALL working strategies) ← СНАЧАЛА ЭТО
:: SERVICE
1. Install Service ← ПОТОМ ЭТО
2. Remove Services
3. Check Status
```
> **Важно:** Все скрипты (`install.sh`, `setup.sh`, `general*.sh`, `service.sh`, `autotest.sh`, `update.sh`) должны запускаться **от root** (через `sudo`).
---
## Установка по дистрибутивам
### Ubuntu / Debian / Linux Mint / Pop!_OS / Zorin OS / Kali
```bash
sudo apt update
sudo apt install -y git curl make gcc iptables nftables libnetfilter-queue-dev
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
# → 11 для тестов, затем 1 для установки
```
### Arch Linux / Manjaro / EndeavourOS / Garuda / Artix
```bash
sudo pacman -Syu --noconfirm git curl make gcc iptables nftables libnetfilter_queue
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### Fedora / RHEL / CentOS / AlmaLinux / Rocky Linux
```bash
sudo dnf install -y git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### Alpine Linux
```bash
sudo apk add --no-cache git curl make gcc iptables nftables libnetfilter_queue-dev linux-headers
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### Gentoo / Funtoo
```bash
sudo emerge --ask dev-vcs/git net-misc/curl sys-devel/gcc sys-devel/make net-firewall/iptables net-firewall/nftables
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### openSUSE / SUSE
```bash
sudo zypper install -y git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### Void Linux
```bash
sudo xbps-install -Sy git curl make gcc iptables nftables libnetfilter_queue-devel
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
### NixOS
```bash
nix-shell -p git curl gnumake gcc iptables nftables libnetfilter_queue
cd /opt
git clone https://giteas.stitch505.su/Stitch505/zapret-discord-youtube-linux.git zapret
cd zapret
sudo ./service.sh
```
---
## Альтернативный способ: install.sh (полный автоустановщик)
Если `service.sh` кажется сложным, можно запустить всё одной командой:
```bash
sudo ./install.sh
```
Он автоматически:
1. Соберёт nfqws
2. Запустит тесты
3. Установит **первую** рабочую стратегию в systemd
После этого сервис будет работать сразу и автозапускаться при загрузке.
---
## service.sh — меню управления
```
ZAPRET SERVICE MANAGER v1.9.8c-linux
----------------------------------------
:: SERVICE
1. Install Service ← выбор и установка стратегии
2. Remove Services ← удаление сервиса + остановка
3. Check Status ← проверка nfqws и firewall
:: SETTINGS
4. Game Filter [disabled]
5. IPSet Filter [none]
6. Auto-Update Check [disabled]
:: UPDATES
7. Update IPSet List
8. Update Hosts File
9. Check for Updates
:: TOOLS
10. Run Diagnostics
11. Run Tests (find ALL working strategies) ← тестирует все и показывает рабочие
```
**Workflow:**
1. `sudo ./service.sh``11` → ждёте завершения тестов → видите список рабочих стратегий
2. `1` → вводите номер нужной стратегии → сервис установлен
3. `3` → проверяете, что сервис запущен
4. Открываете браузер: `youtube.com`, `discord.com`
**Если стратегия перестала работать:**
```bash
sudo ./service.sh
# 2 — Remove Services (очистить)
# 11 — Run Tests (перетестировать)
# 1 — Install Service (выбрать другую рабочую)
```
---
## Стратегии
| Стратегия | Описание |
|-----------|----------|
| `general` | Standard multisplit |
| `ALT` | Fake fakedsplit + ts fooling |
| `ALT2` | Multisplit pos=2 |
| `ALT3` | Hostfakesplit (Google/ya.ru) |
| `ALT4` | Fake multisplit + badseq |
| `ALT5` | **NOT RECOMMENDED** syndata multidisorder |
| `ALT6` | Uniform split-seqovl=681 |
| `ALT7` | Multisplit + syndata |
| `ALT8` | Fake + badseq-increment=2 |
| `ALT9` | Hostfakesplit (ozon.ru) |
| `ALT10` | Fake + ts fooling |
| `ALT11` | Fake multisplit + max_ru pattern |
| `FAKE_TLS_AUTO` | FAKE TLS multidisorder |
| `FAKE_TLS_AUTO_ALT` | FAKE TLS fakedsplit |
| `FAKE_TLS_AUTO_ALT2` | FAKE TLS multisplit badseq |
| `FAKE_TLS_AUTO_ALT3` | FAKE TLS + 4pda pattern |
| `SIMPLE_FAKE` | Simple fake |
| `SIMPLE_FAKE_ALT` | Simple fakedsplit |
| `SIMPLE_FAKE_ALT2` | Simple hostfakesplit |
**Ручной тест всех стратегий:**
```bash
sudo ./autotest.sh # интерактивно: тестит все и показывает рабочие
sudo ./autotest.sh --auto # автомат: найдёт и сразу установит первую рабочую
```
**Ручной запуск конкретной стратегии (без systemd):**
```bash
sudo ./run_strategy.sh ALT3
# Ctrl+C — остановить
```
---
## Структура проекта
```
.
├── bin/ # nfqws + fake .bin (собирается)
├── lib/
│ └── functions.sh # Общие: firewall, цвета, cleanup
├── lists/ # Списки доменов и IP
│ ├── list-general.txt # Discord, YouTube, GitHub, Telegram, Steam
│ ├── list-google.txt # Google/YouTube
│ ├── list-exclude.txt # Исключения (банки, госуслуги)
│ ├── ipset-all.txt # IP-диапазоны
│ └── ipset-exclude.txt # Локальные подсети
├── strategies/ # Модульные стратегии (.conf)
│ └── general.conf # Конфиг стратегии (RULE1=... RULE2=...)
├── utils/
│ ├── test_zapret.sh # curl-тесты
│ └── targets.txt # Цели
├── systemd/ # Юниты и таймеры
├── .service/
│ ├── version.txt # Версия
├── hosts # Статичные IP
│ └── installed_strategy # Какая стратегия в systemd
├── general*.sh # Обёртки → run_strategy.sh
├── run_strategy.sh # Движок: читает .conf, подставляет %BIN%/%LISTS%, запускает nfqws
├── sync_from_upstream.sh # Авто-мердж с Windows-репон
├── autotest.sh # Автоподбор рабочей стратегии (все или первая)
├── install.sh # Полный установщик (setup + build + autotest + systemd)
├── service.sh # Меню управления (аналог service.bat)
├── setup.sh # Зависимости по дистрибутиву
├── install_nfqws.sh # Сборка nfqws из bol-van/zapret
├── ensure_wrappers.sh # Создаёт general_*.sh из strategies/*.conf
└── update.sh # Полный pipeline: sync → build → test → install
```
---
## Важно для пользователей из России
GitHub заблокирован в РФ. Установщик **автоматически использует** прокси/зеркала, но рекомендуется:
1. **Если есть VPN/прокси:**
```bash
export HTTPS_PROXY=socks5://127.0.0.1:1080
sudo ./install.sh
```
2. **Если нет VPN на целевой машине** — подготовьте офлайн-пакет:
```bash
# На машине С интернетом (с VPN):
cd /opt/zapret
proxychains ./prepare_offline_bundle.sh
# Перенесите zapret-discord-youtube-linux-bundle.tar.gz
# на целевую машину, распакуйте и:
sudo ./install.sh --offline
```
3. **Если установка падает на скачивании:**
- Проверьте `.env.example` → создайте `.env` с `GITHUB_PROXY=...`
---
## update.sh — автообновление
```bash
# Полный pipeline: sync upstream → rebuild → test → install
sudo ./update.sh # интерактивно
sudo ./update.sh --auto # для cron: тихий режим
sudo ./update.sh --full-auto # форсировать пересборку + перетестирование
```
**Когда использовать `--full-auto`:**
- После обновления дистрибутива/ядра
- Если `nfqws` падает с segfault
- Если текущая стратегия перестала работать
---
## Troubleshooting
**nfqws падает с segfault:**
```bash
sudo ./update.sh --full-auto
# Пересобирает с -O0 (без оптимизаций)
```
**Стратегия перестала работать:**
```bash
sudo ./service.sh
# 2 — Remove Services
# 11 — Run Tests (перетестировать все)
# 1 — Install Service (выбрать другую)
```
**Discord не работает, хотя YouTube работает:**
```bash
# Добавьте домены в пользовательский список
echo "discord.gg" >> lists/list-general-user.txt
sudo systemctl restart zapret
```
**Steam не запускается:**
- Включите Game Filter: `sudo ./service.sh` → `4`
- Или добавьте порты Steam в `lists/list-general-user.txt`
**YouTube работает, но страница грузится медленно:**
```bash
sudo ./service.sh
# 6 — Auto-Update Check → вкл
# 9 — Check for Updates → обновить стратегии
```
---
## Автор и лицензия
Linux-адаптация: [Stitch505](https://giteas.stitch505.su/Stitch505)
Оригинальные стратегии: [Flowseal](https://github.com/Flowseal/zapret-discord-youtube)
Движок nfqws: [bol-van/zapret](https://github.com/bol-van/zapret)
MIT License.

0
SCRIPT Normal file
View File

View File

@@ -1,62 +1,35 @@
#!/bin/bash
# autotest.sh - Automatic strategy tester v2
# Iterates through all strategies, checks connectivity, suggests installation
# autotest.sh - Automatic strategy tester v3
# Modes: --auto, --list-all, interactive
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SCRIPT_DIR/lib/functions.sh"
# Test targets (must be accessible when bypass works)
TEST_URLS=(
"https://www.youtube.com|YouTube"
"https://discord.com|Discord"
"https://discordapp.com|DiscordApp"
)
# Strategy order (most common first)
STRATEGIES=(
general
ALT
ALT2
ALT3
ALT4
ALT6
ALT7
ALT8
ALT9
ALT10
ALT11
FAKE_TLS_AUTO
FAKE_TLS_AUTO_ALT
FAKE_TLS_AUTO_ALT2
FAKE_TLS_AUTO_ALT3
SIMPLE_FAKE
SIMPLE_FAKE_ALT
SIMPLE_FAKE_ALT2
ALT5 # NOT RECOMMENDED, last
general ALT ALT2 ALT3 ALT4 ALT6 ALT7 ALT8 ALT9 ALT10 ALT11
FAKE_TLS_AUTO FAKE_TLS_AUTO_ALT FAKE_TLS_AUTO_ALT2 FAKE_TLS_AUTO_ALT3
SIMPLE_FAKE SIMPLE_FAKE_ALT SIMPLE_FAKE_ALT2 ALT5
)
# Test a single URL
test_url() {
local url="$1"
local timeout=8
local code
local url="$1" timeout=8 code
code=$(curl -o /dev/null -s -w "%{http_code}" --max-time "$timeout" -L "$url" 2>/dev/null)
if [[ "$code" == "200" ]] || [[ "$code" == "301" ]] || [[ "$code" == "302" ]] || [[ "$code" == "307" ]]; then
return 0
fi
return 1
[[ "$code" == "200" || "$code" == "301" || "$code" == "302" || "$code" == "307" ]]
}
# Test all targets for a strategy
test_strategy() {
local passed=0
local total=${#TEST_URLS[@]}
local passed=0 total=${#TEST_URLS[@]}
echo " [*] Testing connectivity..."
for entry in "${TEST_URLS[@]}"; do
IFS='|' read -r url name <<< "$entry"
IFS="|" read -r url name <<< "$entry"
if test_url "$url"; then
echo " $(print_green "[OK]") $name"
((passed++))
@@ -64,48 +37,30 @@ test_strategy() {
echo " $(print_red "[FAIL]") $name"
fi
done
echo " [*] Result: $passed/$total passed"
if [[ "$passed" -eq "$total" ]]; then
return 0
fi
return 1
[[ "$passed" -eq "$total" ]]
}
# Run a strategy with timeout
run_strategy_test() {
local strategy="$1"
local strategy_path="$SCRIPT_DIR/run_strategy.sh"
local strategy_name="$strategy"
local strategy="$1" strategy_path="$SCRIPT_DIR/run_strategy.sh"
echo ""
echo "=============================================="
echo " Testing: $strategy_name"
echo " Testing: $strategy"
echo " $(describe_strategy "$SCRIPT_DIR/general_${strategy}.sh")"
echo "=============================================="
# Check if strategy config exists
if [[ ! -f "$SCRIPT_DIR/strategies/${strategy}.conf" ]]; then
print_yellow " [!] Strategy config not found, skipping..."
return 1
fi
[[ -f "$SCRIPT_DIR/strategies/${strategy}.conf" ]] || { print_yellow " [!] Config not found, skipping..."; return 1; }
# Ensure clean firewall state before starting
cleanup_firewall >/dev/null 2>&1 || true
sleep 1
# Start strategy in background (run_strategy.sh handles its own cleanup on signals)
echo " [*] Starting $strategy_name..."
echo " [*] Starting $strategy..."
"$strategy_path" "$strategy" >/dev/null 2>&1 &
local strategy_pid=$!
# Wait for nfqws to initialize
sleep 3
# Check if nfqws actually started (not just the wrapper)
if ! pgrep -f "nfqws.*qnum=$NFQUEUE_NUM" >/dev/null 2>&1; then
print_yellow " [!] nfqws did not start for $strategy_name, skipping..."
# Kill wrapper if still alive
print_yellow " [!] nfqws did not start for $strategy, skipping..."
kill "$strategy_pid" 2>/dev/null || true
wait "$strategy_pid" 2>/dev/null || true
cleanup_firewall >/dev/null 2>&1 || true
@@ -113,104 +68,32 @@ run_strategy_test() {
return 1
fi
# Run connectivity tests
local success=0
if test_strategy; then
success=1
fi
test_strategy && success=1
# Stop strategy
echo " [*] Stopping $strategy_name..."
# Send SIGTERM to wrapper — it will cleanup firewall + nfqws via trap
echo " [*] Stopping $strategy..."
kill -TERM "$strategy_pid" 2>/dev/null || true
# Give trap time to fire and cleanup
sleep 2
# Ensure nfqws is gone
pkill -f "nfqws.*qnum=$NFQUEUE_NUM" 2>/dev/null || true
wait "$strategy_pid" 2>/dev/null || true
cleanup_firewall >/dev/null 2>&1 || true
sleep 1
if [[ "$success" -eq 1 ]]; then
return 0
fi
return 1
[[ "$success" -eq 1 ]]
}
# Main autotest logic
main() {
local auto_install="${1:-}"
echo ""
echo "=============================================="
echo " Zapret Auto-Test v$LOCAL_VERSION"
echo " Will test ${#STRATEGIES[@]} strategies"
echo "=============================================="
echo ""
# Check prerequisites
if [[ "${EUID:-$(id -u)}" -ne 0 ]]; then
print_red "[!] This script must be run as root (or with sudo)"
echo " sudo ./autotest.sh"
exit 1
fi
check_nfqws || {
echo ""
echo "[*] nfqws not found. Building first..."
bash "$SCRIPT_DIR/install_nfqws.sh"
}
echo "[*] Test targets:"
for entry in "${TEST_URLS[@]}"; do
IFS='|' read -r url name <<< "$entry"
echo " - $name ($url)"
done
echo ""
if [[ "$auto_install" != "--auto" ]]; then
read -rp "Press Enter to start testing... or Ctrl+C to cancel"
fi
# Ensure clean state
cleanup_firewall >/dev/null 2>&1 || true
sleep 1
local working_strategy=""
local working_desc=""
for strat in "${STRATEGIES[@]}"; do
if run_strategy_test "$strat"; then
working_strategy="$strat"
working_desc="$(describe_strategy "$SCRIPT_DIR/general_${strat}.sh")"
break
fi
done
echo ""
echo "=============================================="
if [[ -n "$working_strategy" ]]; then
print_green " WORKING STRATEGY FOUND!"
print_green " Strategy: $working_strategy"
print_green " Desc: $working_desc"
echo "=============================================="
echo ""
if [[ "$auto_install" == "--auto" ]]; then
echo "[*] Auto-installing to systemd..."
# Write strategy marker directly
mkdir -p "$SCRIPT_DIR/.service"
echo "$working_strategy" > "$SCRIPT_DIR/.service/installed_strategy"
local service_path="$SYSTEMD_DIR/zapret.service"
cat > "$service_path" <<EOF
install_strategy() {
local strategy="$1"
mkdir -p "$SCRIPT_DIR/.service"
echo "$strategy" > "$SCRIPT_DIR/.service/installed_strategy"
cat > /etc/systemd/system/zapret.service <<EOS
[Unit]
Description=Zapret DPI bypass (strategy: $working_strategy)
Description=Zapret DPI bypass (strategy: $strategy)
After=network.target
[Service]
Type=simple
ExecStart=$SCRIPT_DIR/run_strategy.sh $working_strategy
ExecStart=$SCRIPT_DIR/run_strategy.sh $strategy
Restart=on-failure
RestartSec=5
StandardOutput=journal
@@ -218,54 +101,94 @@ StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
cp "$service_path" /etc/systemd/system/zapret.service
systemctl daemon-reload
systemctl enable zapret.service
systemctl start zapret.service
print_green "[OK] Installed and started!"
echo ""
systemctl status zapret --no-pager
EOS
systemctl daemon-reload
systemctl enable zapret.service
systemctl start zapret.service
print_green "[OK] Installed and started!"
echo ""
systemctl status zapret --no-pager
}
main() {
local mode="${1:-interactive}"
echo ""
echo "=============================================="
echo " Zapret Auto-Test v$LOCAL_VERSION"
echo " Will test ${#STRATEGIES[@]} strategies"
echo "=============================================="
echo ""
[[ "${EUID:-$(id -u)}" -eq 0 ]] || { print_red "[!] Run as root"; exit 1; }
check_nfqws || { bash "$SCRIPT_DIR/install_nfqws.sh"; }
echo "[*] Test targets:"
for entry in "${TEST_URLS[@]}"; do
IFS="|" read -r url name <<< "$entry"
echo " - $name ($url)"
done
echo ""
[[ "$mode" == "interactive" ]] && read -rp "Press Enter to start..."
cleanup_firewall >/dev/null 2>&1 || true
sleep 1
local working_strategies=() working_descs=() first_working=""
for strat in "${STRATEGIES[@]}"; do
if run_strategy_test "$strat"; then
working_strategies+=("$strat")
working_descs+=("$(describe_strategy "$SCRIPT_DIR/general_${strat}.sh")")
[[ -z "$first_working" ]] && first_working="$strat"
fi
done
echo ""
echo "=============================================="
if [[ ${#working_strategies[@]} -gt 0 ]]; then
print_green " WORKING STRATEGIES FOUND: ${#working_strategies[@]}"
echo "=============================================="
echo ""
local i=0
for strat in "${working_strategies[@]}"; do
echo " $(print_green "[$((i+1))]") $strat${working_descs[$i]}"
((i++))
done
echo ""
if [[ "$mode" == "--auto" ]]; then
install_strategy "$first_working"
elif [[ "$mode" == "--list-all" ]]; then
echo "[*] To install a strategy, run: sudo ./service.sh → 1. Install Service"
echo " Or directly: sudo ./run_strategy.sh ALT3"
else
echo "[*] Next steps:"
echo " 1. Test in browser: open youtube.com and discord.com"
echo " 2. If everything works, install it:"
echo " 1. Test in browser: youtube.com, discord.com"
echo " 2. To install: sudo ./service.sh → 1. Install Service → Pick a strategy"
echo ""
echo " sudo ./service.sh"
echo " → 1. Install Service"
echo " → Choose: $working_strategy"
echo ""
read -rp "Install this strategy to systemd now? [Y/n]: " ans
if [[ "${ans:-Y}" == [yY]* ]]; then
bash "$SCRIPT_DIR/service.sh"
fi
read -rp "Install first working strategy ($first_working)? [Y/n]: " ans
[[ "${ans:-Y}" == [yY]* ]] && install_strategy "$first_working"
fi
else
print_red " NO WORKING STRATEGY FOUND"
echo "=============================================="
echo ""
echo "[*] Suggestions:"
echo " - Try adding custom domains to lists/list-general-user.txt"
echo " - Check that Secure DNS is enabled"
echo " - Try modifying strategy parameters manually in strategies/*.conf"
echo " - Check diagnostics: sudo ./service.sh → 10. Run Diagnostics"
echo " - Add custom domains to lists/list-general-user.txt"
echo " - Check Secure DNS is enabled"
echo " - Modify strategy parameters in strategies/*.conf"
echo " - Run diagnostics: sudo ./service.sh → 10. Run Diagnostics"
fi
echo ""
echo "[*] Auto-test complete."
echo ""
}
# Entry point
case "${1:-interactive}" in
--auto|-a)
main --auto
;;
interactive|"")
main interactive
;;
*)
echo "Usage: sudo ./autotest.sh [--auto|-a]"
exit 1
;;
--auto|-a) main --auto ;;
--list-all|-l) main --list-all ;;
interactive|"") main interactive ;;
*) echo "Usage: sudo ./autotest.sh [--auto|-a] [--list-all|-l]"; exit 1 ;;
esac

View File

@@ -43,6 +43,14 @@ parse_conf_args() {
local rule_value="${line#*=}"
# Skip rule if game filter placeholders remain but filter is empty
if [[ "$rule_value" == *'%GAME_TCP%'* ]] && [[ -z "${GameFilterTCP:-}" ]]; then
continue
fi
if [[ "$rule_value" == *'%GAME_UDP%'* ]] && [[ -z "${GameFilterUDP:-}" ]]; then
continue
fi
# Substitute variables using sed (no envsubst dependency)
rule_value=$(echo "$rule_value" | sed \
-e "s|%BIN%|$BIN_DIR/|g" \
@@ -53,14 +61,6 @@ parse_conf_args() {
# Remove surrounding quotes added by .bat conversion around path args
rule_value=$(echo "$rule_value" | sed -E 's/="([^"]*)"/=\1/g')
# Skip rule if game filter placeholders remain but filter is empty
if [[ "$rule_value" == *'%GAME_TCP%'* ]] && [[ -z "${GameFilterTCP:-}" ]]; then
continue
fi
if [[ "$rule_value" == *'%GAME_UDP%'* ]] && [[ -z "${GameFilterUDP:-}" ]]; then
continue
fi
# Parse into array
local rule_arr=()
read -ra rule_arr <<< "$rule_value"

View File

@@ -67,7 +67,7 @@ show_menu() {
echo ""
echo " :: TOOLS"
echo " 10. Run Diagnostics"
echo " 11. Run Tests"
echo " 11. Run Tests (find ALL working strategies)"
echo ""
echo " ----------------------------------------"
echo " 0. Exit"
@@ -126,7 +126,6 @@ service_install() {
while IFS= read -r -d '' f; do
local name
name=$(basename "$f")
# Only list strategy wrappers (general*.sh), skip service/utility scripts
[[ "$name" == general*.sh ]] || continue
files+=("$f")
local desc
@@ -155,16 +154,12 @@ service_install() {
echo ""
echo "[*] Installing strategy: $strategy_name"
# Stop any existing service (internal — no prompts)
service_remove_internal > /dev/null 2>&1 || true
# Write strategy marker
mkdir -p "$SCRIPT_DIR/.service"
echo "$strategy_name" > "$SCRIPT_DIR/.service/installed_strategy"
# Create systemd service file
local service_path="$SYSTEMD_DIR/zapret.service"
cat > "$service_path" <<EOF
cat > /etc/systemd/system/zapret.service <<EOF
[Unit]
Description=Zapret DPI bypass (strategy: $strategy_name)
After=network.target
@@ -181,9 +176,7 @@ StandardError=journal
WantedBy=multi-user.target
EOF
# Install and enable
if command -v systemctl >/dev/null 2>&1; then
cp "$service_path" /etc/systemd/system/zapret.service
systemctl daemon-reload
systemctl enable zapret.service
systemctl start zapret.service
@@ -204,7 +197,6 @@ EOF
# SERVICE REMOVE (internal — no prompts)
# ============================================
service_remove_internal() {
# Stop systemd service
if command -v systemctl >/dev/null 2>&1; then
systemctl stop zapret.service 2>/dev/null || true
systemctl disable zapret.service 2>/dev/null || true
@@ -212,14 +204,11 @@ service_remove_internal() {
systemctl daemon-reload
fi
# Kill nfqws
pkill -f "nfqws.*qnum=$NFQUEUE_NUM" 2>/dev/null || true
sleep 1
# Cleanup firewall
cleanup_firewall
# Remove markers
rm -f "$SCRIPT_DIR/.service/installed_strategy"
}
@@ -245,7 +234,6 @@ service_status() {
echo "[*] Service Status"
echo ""
# Check systemd
if command -v systemctl >/dev/null 2>&1; then
if systemctl is-active zapret.service >/dev/null 2>&1; then
print_green "zapret.service is RUNNING."
@@ -254,14 +242,12 @@ service_status() {
fi
fi
# Check nfqws process
if pgrep -f "nfqws.*qnum=$NFQUEUE_NUM" >/dev/null 2>&1; then
print_green "nfqws process is RUNNING."
else
print_red "nfqws process is NOT running."
fi
# Check iptables/nftables rules
if nft list table ip $NFT_TABLE >/dev/null 2>&1; then
print_green "nftables rules are LOADED."
elif iptables -t mangle -L -n 2>/dev/null | grep -q "NFQUEUE"; then
@@ -270,7 +256,6 @@ service_status() {
print_red "No firewall rules found."
fi
# Show strategy
local strat
strat=$(get_strategy_name)
echo ""
@@ -382,7 +367,6 @@ hosts_update() {
read -rp "Append these entries to /etc/hosts? [y/N]: " ans
if [[ "$ans" == [yY]* ]]; then
# Backup /etc/hosts
sudo cp /etc/hosts "/etc/hosts.backup.$(date +%s)"
echo "" | sudo tee -a /etc/hosts > /dev/null
echo "# --- zapret-discord-youtube-linux hosts ---" | sudo tee -a /etc/hosts > /dev/null
@@ -455,12 +439,10 @@ service_diagnostics() {
echo "[*] Running Diagnostics"
echo ""
# Check root/sudo
if [[ "$EUID" -ne 0 ]]; then
print_yellow "[!] Not running as root. Some checks may fail."
fi
# Check nfqws
if [[ -x "$BIN_DIR/nfqws" ]]; then
print_green "[OK] nfqws binary found"
else
@@ -468,7 +450,6 @@ service_diagnostics() {
echo " Run: ./install_nfqws.sh"
fi
# Check iptables/nftables
if command -v iptables >/dev/null 2>&1; then
print_green "[OK] iptables found"
else
@@ -481,7 +462,6 @@ service_diagnostics() {
print_yellow "[WARN] nftables (nft) NOT found"
fi
# Check kernel modules
if lsmod | grep -q "nfnetlink_queue"; then
print_green "[OK] nfnetlink_queue module loaded"
else
@@ -489,14 +469,12 @@ service_diagnostics() {
echo " Try: sudo modprobe nfnetlink_queue"
fi
# Check Secure DNS (systemd-resolved)
if command -v resolvectl >/dev/null 2>&1; then
echo ""
echo "[*] DNS settings:"
resolvectl status 2>/dev/null | head -n 20 || true
fi
# Check for conflicting processes
echo ""
echo "[*] Checking for conflicting processes..."
if pgrep -f "goodbye-dpi\|byedpi\|zapret-win" >/dev/null 2>&1; then
@@ -505,7 +483,6 @@ service_diagnostics() {
print_green "[OK] No conflicting processes found"
fi
# Offer to clear Discord cache
echo ""
read -rp "Clear Discord cache? [y/N]: " ans
if [[ "$ans" == [yY]* ]]; then
@@ -523,23 +500,19 @@ service_diagnostics() {
}
# ============================================
# RUN TESTS
# RUN TESTS (menu 11 — finds ALL working strategies)
# ============================================
run_tests() {
echo ""
echo "[*] Running Tests"
echo "[*] Running strategy tests..."
echo " This will test all strategies against YouTube + Discord."
echo " At the end you'll see a list of ALL working strategies."
echo ""
echo " 1. Standard tests (check common sites)"
echo " 2. DPI checkers (Cloudflare, Amazon, etc.)"
read -rp " Press Enter to start or Ctrl+C to cancel..."
bash "$SCRIPT_DIR/autotest.sh" --list-all
echo ""
read -rp " Select option (1-2): " choice
case "$choice" in
1) bash "$UTILS_DIR/test_zapret.sh" standard ;;
2) bash "$UTILS_DIR/test_zapret.sh" dpi ;;
*) echo "Invalid choice" ;;
esac
read -rp "Press Enter to continue..."
}
@@ -547,7 +520,6 @@ run_tests() {
# MAIN LOOP
# ============================================
main() {
# Require root for service management
if [[ "${EUID:-$(id -u)}" -ne 0 ]]; then
print_red "[!] This script must be run as root (or with sudo)"
echo " sudo $0"

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n3
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fooling=ts --dpi-desync-fakedsplit-pattern=0x00 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n3

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=none
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_4pda_to.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_4pda_to.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_4pda_to.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=11 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n4
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-seqovl=664 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n4

View File

@@ -10,4 +10,4 @@ RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LIST
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=652 --dpi-desync-split-pos=2 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=652 --dpi-desync-split-pos=2 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-hostfakesplit-mod=host=www.google.com,altorder=1 --dpi-desync-fooling=ts
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-hostfakesplit-mod=host=www.google.com,altorder=1 --dpi-desync-fooling=ts
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n4
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,hostfakesplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=ya.ru --dpi-desync-hostfakesplit-mod=host=ya.ru,altorder=1 --dpi-desync-fooling=ts --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n4

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=1000 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -7,4 +7,4 @@ RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync
RULE3=--filter-l3=ipv4 --filter-tcp=80,443,2053,2083,2087,2096,8443 --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=syndata,multidisorder
RULE4=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=syndata,multidisorder --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4
RULE5=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE6=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=14 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n3
RULE6=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=14 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n3

View File

@@ -10,4 +10,4 @@ RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LIST
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -10,4 +10,4 @@ RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LIST
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=syndata
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=syndata --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fake-tls-mod=none --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -10,4 +10,4 @@ RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LIST
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=hostfakesplit --dpi-desync-repeats=4 --dpi-desync-fooling=ts --dpi-desync-hostfakesplit-mod=host=ozon.ru
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=hostfakesplit --dpi-desync-repeats=4 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=ts --dpi-desync-hostfakesplit-mod=host=ozon.ru
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=11 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multidisorder --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-pos=1,midsld --dpi-desync-repeats=11 --dpi-desync-fooling=badseq --dpi-desync-fake-tls=0x00000000 --dpi-desync-fake-tls= ! --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=11 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,fakedsplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-repeats=8 --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=11 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=10000000 --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=11 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n3
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake,multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-fooling=ts --dpi-desync-repeats=8 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n3

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n3
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n4 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n3

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-fooling=badseq --dpi-desync-badseq-increment=2 --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n5 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_max_ru.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_max_ru.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n3
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n5 --dpi-desync-fooling=ts --dpi-desync-fake-tls="%BIN%stun.bin" --dpi-desync-fake-tls="%BIN%tls_clienthello_www_google_com.bin" --dpi-desync-fake-http="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n3

View File

@@ -6,8 +6,8 @@ RULE1=--filter-udp=443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%l
RULE2=--filter-udp=19294-19344,50000-50100 --filter-l7=discord,stun --dpi-desync=fake --dpi-desync-repeats=6
RULE3=--filter-tcp=2053,2083,2087,2096,8443 --hostlist-domains=discord.media --dpi-desync=multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE4=--filter-tcp=443 --hostlist="%LISTS%list-google.txt" --ip-id=zero --dpi-desync=multisplit --dpi-desync-split-seqovl=681 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_4pda_to.bin"
RULE5=--filter-tcp=80,443 --hostlist="%LISTS%list-general.txt" --hostlist="%LISTS%list-general-user.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE6=--filter-udp=443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin"
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_4pda_to.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_4pda_to.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_dbankcloud_ru.bin" --dpi-desync-cutoff=n2
RULE7=--filter-tcp=80,443,8443 --ipset="%LISTS%ipset-all.txt" --hostlist-exclude="%LISTS%list-exclude.txt" --hostlist-exclude="%LISTS%list-exclude-user.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE8=--filter-tcp=%GAME_TCP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=multisplit --dpi-desync-any-protocol=1 --dpi-desync-cutoff=n3 --dpi-desync-split-seqovl=568 --dpi-desync-split-pos=1 --dpi-desync-split-seqovl-pattern="%BIN%tls_clienthello_www_google_com.bin"
RULE9=--filter-udp=%GAME_UDP% --ipset="%LISTS%ipset-all.txt" --ipset-exclude="%LISTS%ipset-exclude.txt" --ipset-exclude="%LISTS%ipset-exclude-user.txt" --dpi-desync=fake --dpi-desync-repeats=12 --dpi-desync-any-protocol=1 --dpi-desync-fake-unknown-udp="%BIN%quic_initial_www_google_com.bin" --dpi-desync-cutoff=n2

View File

@@ -1,10 +1,10 @@
[Unit]
Description=Zapret DPI bypass
Description=Zapret DPI bypass (strategy: ALT3)
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/zapret-start.sh
ExecStart=/opt/zapret/run_strategy.sh ALT3
Restart=on-failure
RestartSec=5
StandardOutput=journal