mirror of
https://github.com/DanielLavrushin/b4.git
synced 2026-04-29 03:50:44 +00:00
Add Russian documentation for UDP handling, backup settings, core settings, discovery settings, geodata, payloads, security, and domain monitoring
- Created UDP documentation detailing traffic handling and filtering options. - Added backup settings documentation for configuration backup and restoration. - Introduced core settings documentation covering service management, packet processing, and logging. - Added discovery settings documentation for automatic configuration detection. - Created geodata documentation explaining GeoSite and GeoIP databases and their usage. - Added payloads documentation for generating and managing TLS payloads for faking. - Introduced security documentation for web interface authorization and HTTPS setup. - Added domain monitoring documentation for automatic detection of blocked domains and recovery processes. - Created footer and navbar localization files for Russian language support.
This commit is contained in:
parent
1df5909e62
commit
ef8bedd247
79 changed files with 3545 additions and 3133 deletions
|
|
@ -0,0 +1,138 @@
|
|||
---
|
||||
sidebar_position: 6
|
||||
title: Сеты
|
||||
---
|
||||
|
||||
# Сеты
|
||||
|
||||
Сет - это набор настроек обхода DPI, привязанный к списку доменов, IP-адресов, UDP-портов или категорий GeoSite/GeoIP. Можно создать несколько сетов с разными стратегиями для разных сайтов.
|
||||
|
||||
## Управление сетами
|
||||
|
||||
На странице **Сеты** отображаются все созданные наборы. Для каждого сета видно:
|
||||
|
||||
- Название и статус (включён/выключен)
|
||||
- Количество доменов и IP
|
||||
- Активные техники (COMBO, DISORDER, HYBRID и т.д.)
|
||||
- Состояние DNS-маршрутизации и SNI Faking
|
||||
|
||||

|
||||
|
||||
Доступные действия:
|
||||
|
||||
- **Создать сет** - новый набор настроек
|
||||
- **Редактировать** - клик по карточке
|
||||
- **Дублировать** - создать копию существующего сета
|
||||
- **Сравнить** - сравнение двух сетов в два столбца
|
||||
- **Удалить** - удаление одного или нескольких сетов (через массовое выделение)
|
||||
- **Перетаскивание** - изменение порядка сетов (порядок влияет на приоритет обработки)
|
||||
|
||||
## Редактор сета
|
||||
|
||||
Редактор содержит 5 вкладок:
|
||||
|
||||
- [Цели](./targets) - домены, IP, GeoSite/GeoIP категории, устройства
|
||||
- [TCP](./tcp/) - фрагментация, faking, desync и другие TCP-стратегии
|
||||
- [UDP](./udp) - обработка UDP-трафика, QUIC, STUN
|
||||
- [Маршрутизация](./routing) - DNS-редирект и маршрутизация трафика через интерфейсы
|
||||
- **Импорт/Экспорт** - JSON-представление конфигурации сета для переноса между устройствами
|
||||
|
||||

|
||||
|
||||
## Как это работает
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A["Пакет из сети"] --> B{"IP назначения\nсовпал с сетом?"}
|
||||
|
||||
B -->|"Да"| C["Предварительный сет\n(по IP)"]
|
||||
B -->|"Нет"| D
|
||||
|
||||
C --> D{"Есть ли\nTLS/QUIC данные?"}
|
||||
|
||||
D -->|"Да"| E["Извлечь домен (SNI)"]
|
||||
D -->|"Нет"| F
|
||||
|
||||
E --> G{"Домен совпал\nс сетом?"}
|
||||
G -->|"Да"| SEL
|
||||
G -->|"Нет"| TLSCHK
|
||||
|
||||
TLSCHK{"IP совпал ранее\nи версия TLS\nподходит?"}
|
||||
TLSCHK -->|"Да"| SEL
|
||||
TLSCHK -->|"Нет"| F
|
||||
|
||||
F{"IP ранее\nсвязывался\nс доменом?"}
|
||||
F -->|"Да"| SEL
|
||||
F -->|"Нет"| H
|
||||
|
||||
H{"Есть сет\nтолько по порту?"}
|
||||
H -->|"Да"| SEL
|
||||
H -->|"Нет"| SKIP["Пропустить"]
|
||||
|
||||
SEL{"Сет с устройством\n+ версия TLS?"}
|
||||
SEL -->|"Да"| OK["Применить сет"]
|
||||
SEL -->|"Нет"| SEL2{"Общий сет\n+ версия TLS?"}
|
||||
SEL2 -->|"Да"| OK
|
||||
SEL2 -->|"Нет"| SEL3{"Любой\nподходящий сет?"}
|
||||
SEL3 -->|"Да"| OK
|
||||
SEL3 -->|"Нет"| SKIP
|
||||
|
||||
style A fill:#4a9eff,color:#fff,stroke:none
|
||||
style OK fill:#4caf50,color:#fff,stroke:none
|
||||
style SKIP fill:#666,color:#fff,stroke:none
|
||||
style C fill:#ff9800,color:#fff,stroke:none
|
||||
style SEL fill:#9c27b0,color:#fff,stroke:none
|
||||
style SEL2 fill:#9c27b0,color:#fff,stroke:none
|
||||
style SEL3 fill:#9c27b0,color:#fff,stroke:none
|
||||
style TLSCHK fill:#ff9800,color:#fff,stroke:none
|
||||
```
|
||||
|
||||
### Порядок сопоставления
|
||||
|
||||
1. **IP-адрес** - проверяется первым. Если IP назначения совпал с IP/CIDR в каком-то сете, это запоминается как предварительное совпадение
|
||||
2. **Домен (SNI)** - если в пакете есть TLS/QUIC-данные, b4 извлекает домен. Если домен совпал с сетом - **этот сет заменяет** предварительное совпадение по IP. Домен всегда имеет приоритет
|
||||
3. **Выученный IP** - если b4 ранее видел этот IP в связке с доменом (из предыдущих соединений), используется тот же сет
|
||||
4. **Порт** - проверяется, только если сет настроен исключительно по порту (без доменов и IP)
|
||||
5. **Предварительный IP** - если ни домен, ни выученный IP, ни порт не сработали, используется совпадение по IP из шага 1
|
||||
|
||||
:::tip Фильтр портов
|
||||
Если в сете настроен фильтр портов - он работает как дополнительное условие. Даже если домен или IP совпали, пакет будет обработан только при совпадении порта.
|
||||
:::
|
||||
|
||||
:::info Выбор сета при нескольких совпадениях
|
||||
Если один и тот же домен или IP настроен в нескольких сетах, b4 выбирает сет по приоритету:
|
||||
|
||||
1. Сет с указанным **исходным устройством**, совпавшим с MAC отправителя + совпавшей **версией TLS**
|
||||
2. Сет без привязки к устройству + совпавшей версией TLS
|
||||
3. Если ни один сет не подошёл по TLS - версия TLS игнорируется и проверка повторяется
|
||||
|
||||
Таким образом, сеты с привязкой к устройствам всегда имеют приоритет над общими, а фильтр TLS-версии уточняет выбор, но не блокирует обработку.
|
||||
:::
|
||||
|
||||
:::info Выученные IP
|
||||
Когда b4 видит соединение, где домен (SNI) совпал с сетом, он запоминает связку IP → домен на 10 минут. Это ускоряет обработку последующих пакетов к тому же серверу, даже если в них нет SNI.
|
||||
:::
|
||||
|
||||
### Что происходит при совпадении
|
||||
|
||||
Для TCP-пакетов b4 перехватывает оригинальный пакет и отправляет вместо него модифицированную версию. В зависимости от настроек сета применяются:
|
||||
|
||||
1. Удаление SACK-опции (если включено)
|
||||
2. Мутация ClientHello (если включена)
|
||||
3. Десинхронизация (RST/FIN/ACK)
|
||||
4. Манипуляция TCP-окном
|
||||
5. Отправка фейковых SNI-пакетов
|
||||
6. Фрагментация по выбранной стратегии
|
||||
|
||||
Для UDP - пакет либо отбрасывается (режим drop), либо заменяется фейковым ответом (режим fake).
|
||||
|
||||
Если ни один сет не совпал - пакет проходит без изменений.
|
||||
|
||||
## Импорт и экспорт
|
||||
|
||||
Вкладка **Импорт/Экспорт** показывает JSON-конфигурацию сета. Можно:
|
||||
|
||||
- Скопировать JSON для переноса на другое устройство
|
||||
- Вставить JSON для импорта конфигурации
|
||||
|
||||
Исходные устройства (MAC-адреса) не экспортируются - их нужно настроить заново на целевом устройстве.
|
||||
Loading…
Add table
Add a link
Reference in a new issue