diff --git a/README.md b/README.md index 96ec9a5f..1eb17a99 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,9 @@ [![Original](https://img.shields.io/badge/original-itdoginfo%2Fpodkop-blue)](https://github.com/itdoginfo/podkop) [![podkop-evolution](https://img.shields.io/badge/podkop--evolution-yandexru45-blue)](https://github.com/yandexru45/podkop-evolution) [![zapret-openwrt](https://img.shields.io/badge/zapret--openwrt-remittor-blue)](https://github.com/remittor/zapret-openwrt/releases) +[![ByeDPI-OpenWrt](https://img.shields.io/badge/ByeDPI--OpenWrt-DPITrickster-blue)](https://github.com/DPITrickster/ByeDPI-OpenWrt/releases) +[![sing-box-extended](https://img.shields.io/badge/sing--box--extended-shtorm--7-blue)](https://github.com/shtorm-7/sing-box-extended/releases) +[![awg-openwrt](https://img.shields.io/badge/awg--openwrt-Slava--Shchipunov-blue)](https://github.com/Slava-Shchipunov/awg-openwrt/releases) Podkop Plus расширяет возможности оригинального [Podkop](https://github.com/itdoginfo/podkop): обновленный LuCI-интерфейс, гибкое управление секциями, поддержка подписок, расширенные условия правил, интеграция Zapret. @@ -25,11 +28,21 @@ Podkop Plus расширяет возможности оригинального sh <(wget -O - https://raw.githubusercontent.com/ushan0v/podkop-plus/main/install.sh) ``` +Установщик поддерживает опциональную установку дополнительных компонентов: + +- [zapret-openwrt](https://github.com/remittor/zapret-openwrt/releases) +- [ByeDPI-OpenWrt](https://github.com/DPITrickster/ByeDPI-OpenWrt/releases) +- [sing-box-extended](https://github.com/shtorm-7/sing-box-extended/releases) +- [awg-openwrt](https://github.com/Slava-Shchipunov/awg-openwrt/releases) + ### Возможности -- Поддержка подписок, адаптированная из [podkop-evolution](https://github.com/yandexru45/podkop-evolution). Расширена поддержка всех основных форматов подписок: sing-box JSON, URI/base64 списки, Clash/Mihomo. Добавлено чтение метаданных подписки. +- Поддержка подписок, адаптированная из [podkop-evolution](https://github.com/yandexru45/podkop-evolution). +- Расширена поддержка всех основных форматов подписок: sing-box JSON, URI/base64 списки, Clash/Mihomo. Добавлено чтение метаданных подписки. - Обновленный LuCI-интерфейс секций. Расширенное управление секциями: изменение приоритета, новые условия и значения. -- Интеграция Zapret как отдельного действия для секции (опционально). +- Интеграция Zapret и ByeDPI как отдельного действия для секции. +- Поддержка sing-box extended и транспорта XHTTP. +- Поддержка AmneziaVPN-style VLESS Reality формата для ключей. ### Секции @@ -41,11 +54,14 @@ Podkop Plus расширяет набор условий, которые мож - Ключевое слово домена (`domain_keyword`) - Регулярное выражение домена (`domain_regex`) - Исходные IP-адреса (`source_cidr`) +- Полностью маршрутизированные IP-адреса - Встроенные наборы правил - Наборы правил (домены) - Наборы правил (домены и подсети) - Списки доменов и IPs +Для `Исходные IP-адреса` и `Полностью маршрутизированные IP-адреса` можно не только вручную вводить IP-адреса, но и выбирать устройство в локальной сети из удобного списка с именами. + ### Наборы правил `Наборы правил (домены)` принимают sing-box списки в форматах `.srs` и `.json`. Можно указывать как локальные пути, так и удаленные ссылки. Такие списки добавляются только в конфигурацию sing-box. @@ -60,12 +76,9 @@ Podkop Plus расширяет набор условий, которые мож Zapret доступен как действие отдельной секции. Используется [remittor/zapret-openwrt](https://github.com/remittor/zapret-openwrt/releases). Интеграция не конфликтует с отдельным полноценным пакетом zapret (`luci-app-zapret`). -- `sing-box` отбирает и помечает трафик; -- `zapret` принимает этот трафик и применяет выбранную anti-DPI стратегию. +Реализация: `sing-box` отбирает трафик секции и отправляет его в `direct` outbound с отдельным `routing_mark` -> `zapret` принимает помеченные пакеты из очереди и применяет выбранную стратегию DPI-обхода. -Для Zapret стратегии NFQWS намеренно ограничены. Это нужно, чтобы Podkop Plus сам помечал трафик и управлял очередями, fwmark и жизненным циклом процесса. - -Запрещены: +Для стратегии `zapret` намеренно запрещены: - шаблоны и hostlist placeholders: **``**, **``**; - hostname/IP selectors внутри самой стратегии: **`--hostlist*`**, **`--hostlist-auto*`**, **`--ipset*`**; @@ -73,3 +86,17 @@ Zapret доступен как действие отдельной секции. - режимы, которые ломают lifecycle процесса: **`--daemon`**; - режимы, которые не должны быть итоговой стратегией запуска: **`--dry-run`**, **`--version`**; - внешние конфиги вида **`@file`** или **`$file`**, которые обходят встроенную валидацию и управление очередями. + +### Интеграция ByeDPI + +ByeDPI доступен как действие отдельной секции. Используется [DPITrickster/ByeDPI-OpenWrt](https://github.com/DPITrickster/ByeDPI-OpenWrt/releases). Процесс работает под управлением Podkop Plus. + +Реализация: `sing-box` отбирает трафик секции и отправляет его в локальный SOCKS5 outbound -> `ciadpi` принимает соединение на `127.0.0.1:1080+` и применяет выбранную стратегию DPI-обхода. + +Для стратегии `ByeDPI` намеренно запрещены: + +- ручное назначение listen-адреса и порта: **`--ip`**, **`-i`**, **`--port`**, **`-p`**; +- прозрачный режим, несовместимый с SOCKS5-подключением: **`--transparent`**, **`-E`**; +- режимы, которые ломают lifecycle процесса: **`--daemon`**, **`-D`**; +- ручное управление pid-файлами: **`--pidfile`**, **`-w`**; +- режимы, которые выводят справку или версию и сразу завершают работу: **`--help`**, **`-h`**, **`--version`**, **`-v`**; \ No newline at end of file