Files
NeoTachyon/docs/knowledge-base/16_BYEDPI_CIADPI_REFERENCE.md
T

70 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 16. Справочник по ByeDPI (ciadpi): SOCKS5/TProxy десинхронизация
## 1. Архитектура и принцип работы ByeDPI (`ciadpi`)
`ciadpi` (ByeDPI) — это легковесный локальный прокси-сервер (SOCKS5 / Transparent TCP), который принимает исходящий трафик и выполняет фрагментацию и манипуляцию пакетами на сокетовом уровне (L7/L4).
### Ключевое отличие от Zapret:
- Zapret работает через перехват `NFQUEUE` (L3/L4 фильтрация ядра).
- ByeDPI работает как SOCKS5 прокси (по умолчанию порт `4539` в Tachyon) или прозрачный прокси, модифицируя TCP payload непосредственно перед системным вызовом `send()`/`write()`.
---
## 2. Основные параметры командной строки ByeDPI
### 2.1. Фрагментация (`--split` / `-s`)
- `--split <позиция>` или `-s <позиция>`
- **Значения позиции:**
- `1` — сплит на 1-м байте payload.
- `2` — сплит на 2-м байте.
- `1+sniext` — сплит в начале блока TLS SNI расширений.
- `midsld` — сплит посередине SLD домена.
### 2.2. Изменение порядка сегментов (`--disorder` / `-d`)
- `--disorder <позиция>` или `-d <позиция>`
- Отправляет первый сегмент с задержкой или после второго сегмента (out-of-order delivery).
### 2.3. Инжекция фейковых пакетов (`--fake` / `-f` и `--ttl` / `-t`)
- `--fake <смещение>` или `-f <смещение>` — смещение вставки фейкового пакета (`-1` = перед началом реального запроса).
- `--ttl <N>` или `-t <N>` — Time-To-Live для фейковых пакетов (обычно `4..8` в зависимости от провайдера).
### 2.4. Out-of-Band данные (`--oob` / `-o`)
- `--oob <смещение>` или `-o <смещение>` — отправка одного срочного байта TCP OOB (Urgent Pointer) на указанном смещении. Ломает разбор буфера в DPI, заставляя его пропустить пакет.
### 2.5. Автоматический режим (`--auto` / `-a`)
- `--auto=t,r,a,s`
- Адаптивный режим подбора: ByeDPI автоматически пробует комбинации флагов при обнаружении сброса соединения или таймаута:
- `t` — TLS Record splitting
- `r` — Reverse disorder
- `a` — Auto-ttl
- `s` — Simple split
### 2.6. Дополнительные опции
- `--tlsrec <N>` / `-r <N>` — деление одного ClientHello на несколько независимых TLS Records.
- `--ip-frag` — включение фрагментации на уровне IP.
- `--mod-http` / `-M` — модификация HTTP заголовков (манипуляция Host/символами переноса строки).
---
## 3. Рецепты ByeDPI
### 1. Универсальный адаптивный авто-режим
```text
-o 2 --auto=t,r,a,s -d 2
```
### 2. Disorder + Fake с контролем TTL
```text
--split 1 --disorder 1 --fake -1 --ttl 8
```
### 3. SNI Extension Split + Fake
```text
-s 1+sniext -f -1 -t 6
```
### 4. Агрессивный низко-TTL фейк
```text
--fake -1 --ttl 4 --disorder 1 --split 1
```