Update readme.md раздел Как это работает

пробелы, регистры, дефисы
This commit is contained in:
Evgeny 2025-01-11 19:06:00 +03:00 committed by GitHub
parent de6cadf8e4
commit 1935473bd1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -89,25 +89,25 @@ VPN.
В самом простейшем случае вы имеете дело с пассивным DPI. Пассивный DPI может читать трафик из потока, может инжектить
свои пакеты, но не может блокировать проходящие пакеты. Если запрос "плохой", пассивный DPI инжектит пакет RST,
опционально дополняя его пакетом http redirect. Если фейк пакет инжектится только для клиента, в этом случае можно
обойтись командами iptables для дропа RST и/или редиректа на заглушку по определенным условиям, которые нужно подбирать
опционально дополняя его пакетом HTTP redirect. Если фейк пакет инжектится только для клиента, в этом случае можно
обойтись командами iptables для дропа RST и/или редиректа на заглушку по опредёленным условиям, которые нужно подбирать
для каждого провайдера индивидуально. Так мы обходим последствия срабатывания триггера запрета. Если пассивный DPI
направляет пакет RST в том числе и серверу, то вы ничего с этим не сможете сделать. Ваша задача - не допустить
срабатывания триггера запрета. Одними iptables уже не обойдетесь. Этот проект нацелен именно на предотвращение
направляет пакет RST в том числе и серверу, то вы ничего с этим не сможете сделать. Ваша задача не допустить
срабатывания триггера запрета. Одними iptables уже не обойтись. Этот проект нацелен именно на предотвращение
срабатывания запрета, а не ликвидацию его последствий.
Активный DPI ставится в разрез провода и может дропать пакеты по любым критериям, в том числе распознавать TCP потоки и
Активный DPI ставится в разрез провода и может дропать пакеты по любым критериям, в том числе распознавать TCP-потоки и
блокировать любые пакеты, принадлежащие потоку.
Как не допустить срабатывания триггера запрета ? Послать то, на что DPI не рассчитывает и что ломает ему алгоритм
Как не допустить срабатывания триггера запрета? Послать то, на что DPI не рассчитывает и что ломает ему алгоритм
распознавания запросов и их блокировки.
Некоторые DPI не могут распознать http запрос, если он разделен на TCP сегменты. Например, запрос
Некоторые DPI не могут распознать HTTP-запрос, если он разделен на TCP-сегменты. Например, запрос
вида `GET / HTTP/1.1\r\nHost: kinozal.tv......`
мы посылаем 2 частями : сначала идет `GET`, затем `/ HTTP/1.1\r\nHost: kinozal.tv.....`. Другие DPI спотыкаются, когда
заголовок `Host:` пишется в другом регистре : например,`host:`. Кое-где работает добавление дополнительного пробела
после метода : `GET /` => `GET /`
или добавление точки в конце имени хоста : `Host: kinozal.tv.`
мы посылаем двумя частями: сначала идет `GET`, затем `/ HTTP/1.1\r\nHost: kinozal.tv.....`. Другие DPI спотыкаются, когда
заголовок `Host:` пишется в другом регистре: например, `host:`. Кое-где работает добавление дополнительного пробела
после метода: `GET /` `GET /`
или добавление точки в конце имени хоста: `Host: kinozal.tv.`
Существует и более продвинутая магия, направленная на преодоление DPI на пакетном уровне.