mirror of
https://github.com/hufrea/byedpi.git
synced 2025-07-01 11:03:04 +00:00
Bump version, update README.md
This commit is contained in:
parent
56cf13e073
commit
bcdaaa93a3
30
README.md
30
README.md
@ -126,19 +126,14 @@ ciadpi --fake -1 --ttl 8
|
|||||||
TTL для поддельного пакета, по умолчанию 8
|
TTL для поддельного пакета, по умолчанию 8
|
||||||
Необходимо подобрать такое значение, чтобы пакет не дошел до сервера, но был обработан DPI
|
Необходимо подобрать такое значение, чтобы пакет не дошел до сервера, но был обработан DPI
|
||||||
|
|
||||||
-k, --ip-opt[=file|:str]
|
|
||||||
Установить опции для фейкового IP пакета
|
|
||||||
Существенно снизит вероятность, что пакет дойдет до сервера
|
|
||||||
Стоит учесть, что до DPI он также может не дойти
|
|
||||||
В Windows не поддерживается
|
|
||||||
|
|
||||||
-S, --md5sig
|
-S, --md5sig
|
||||||
Установить опцию TCP MD5 Signature для фейкового пакета
|
Установить опцию TCP MD5 Signature для фейкового пакета
|
||||||
Большинство серверов (в основном на Linux) отбрасывают пакеты с данной опцией
|
Большинство серверов (в основном на Linux) отбрасывают пакеты с данной опцией
|
||||||
Поддерживается только в Linux, может быть выключен в некоторых сборках ядра (< 3.9, Android)
|
Поддерживается только в Linux, может быть выключен в некоторых сборках ядра (< 3.9, Android)
|
||||||
|
|
||||||
-O, --fake-offset <n>
|
-O, --fake-offset <pos_t>
|
||||||
Сместить начало фейковых данных на n байт
|
Сместить начало фейковых данных
|
||||||
|
Смещения с флагами вычисляются относительно оригинального запроса
|
||||||
|
|
||||||
-l, --fake-data <file|:str>
|
-l, --fake-data <file|:str>
|
||||||
Указать свои поддельные пакеты
|
Указать свои поддельные пакеты
|
||||||
@ -148,9 +143,16 @@ ciadpi --fake -1 --ttl 8
|
|||||||
Байт, отсылаемый вне основного потока, по умолчанию 'a'
|
Байт, отсылаемый вне основного потока, по умолчанию 'a'
|
||||||
Можно указать ASCII или escape символ
|
Можно указать ASCII или escape символ
|
||||||
|
|
||||||
-n, --tls-sni <str>
|
-n, --fake-sni <str>
|
||||||
Изменить SNI в дефолтном fake пакете на указанный
|
Динамично меняет SNI в фейковом пакете
|
||||||
|
Если размер фейка больше размера запроса, то фейк уменьшается (изменяются размеры Padding, ECH или удаляются некоторые расширения)
|
||||||
|
Символ "?" заменяется на случайную латинскую букву, "#" на цифру, "*" на букву или цифру
|
||||||
|
Можно указывать несколько раз, для каждого запроса будет выбираться случайный SNI из указанных
|
||||||
|
|
||||||
|
-Q, --fake-tls-mod <r,o>
|
||||||
|
rand - заполнить случайными данными поля SessionID, Random и KeyExchange
|
||||||
|
orig - использовать в качестве фейка оригинальный ClientHello
|
||||||
|
|
||||||
-M, --mod-http <h[,d,r]>
|
-M, --mod-http <h[,d,r]>
|
||||||
Всякие манипуляции с HTTP пакетом, можно комбинировать
|
Всякие манипуляции с HTTP пакетом, можно комбинировать
|
||||||
hcsmix:
|
hcsmix:
|
||||||
@ -213,7 +215,7 @@ ciadpi --fake -1 --ttl 8
|
|||||||
Данные в первой части запроса заменяются на поддельные.
|
Данные в первой части запроса заменяются на поддельные.
|
||||||
Эта часть должна пройти через DPI, но не дойти до сервера.
|
Эта часть должна пройти через DPI, но не дойти до сервера.
|
||||||
А раз часть не дойдет, то ОС отправит ее снова, тем самым изменив порядок подобно `disorder`.
|
А раз часть не дойдет, то ОС отправит ее снова, тем самым изменив порядок подобно `disorder`.
|
||||||
Для того, чтобы фейк не дошел до сервера, есть опции `ttl`, `ip-opt` и `md5sig`.
|
Для того, чтобы фейк не дошел до сервера, есть опции `ttl` и `md5sig`.
|
||||||
|
|
||||||
TTL необходимо подбирать такой, чтобы пакет прошел через все DPI, но не дошел до сервера.
|
TTL необходимо подбирать такой, чтобы пакет прошел через все DPI, но не дошел до сервера.
|
||||||
Для Linux есть md5sig. Он устанавливает опцию TCP MD5 Signature, что не дает пакету быть принятым многими серверами.
|
Для Linux есть md5sig. Он устанавливает опцию TCP MD5 Signature, что не дает пакету быть принятым многими серверами.
|
||||||
@ -281,10 +283,10 @@ TCP может отсылать данные вне основного пото
|
|||||||
|
|
||||||
Параметр `auto` делит опции на группы.
|
Параметр `auto` делит опции на группы.
|
||||||
Для каждого запроса они обходятся слева на право.
|
Для каждого запроса они обходятся слева на право.
|
||||||
Сначала проверяется триггер, указанный в `auto`, затем `pf`, `proto` и `hosts`.
|
Сначала проверяется триггер, указанный в `auto`, затем `pf`, `ipset`, `proto` и `hosts`.
|
||||||
|
|
||||||
Можно указывать несколько групп опций, раделяя их данным параметром.
|
Можно указывать несколько групп опций, раделяя их данным параметром.
|
||||||
Параметры, которые идут ниже `--timeout` в help-тексте (кроме `tls-sni`), можно вынести в отдельную группу.
|
Параметры, которые идут ниже `--timeout` в help-тексте, можно вынести в отдельную группу.
|
||||||
|
|
||||||
#### Примеры:
|
#### Примеры:
|
||||||
```
|
```
|
||||||
|
2
main.c
2
main.c
@ -25,7 +25,7 @@
|
|||||||
#define close(fd) closesocket(fd)
|
#define close(fd) closesocket(fd)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define VERSION "16.6"
|
#define VERSION "17"
|
||||||
|
|
||||||
ASSERT(sizeof(struct in_addr) == 4)
|
ASSERT(sizeof(struct in_addr) == 4)
|
||||||
ASSERT(sizeof(struct in6_addr) == 16)
|
ASSERT(sizeof(struct in6_addr) == 16)
|
||||||
|
Loading…
Reference in New Issue
Block a user