V1.0.2-beta1.0 -- added the ability to force fragmentation for all sites master
authorFedor Sevrugin <fedor.sevrugin@gmail.com>
Sat, 8 Feb 2025 22:47:41 +0000 (01:47 +0300)
committerFedor Sevrugin <fedor.sevrugin@gmail.com>
Sat, 8 Feb 2025 22:47:41 +0000 (01:47 +0300)
README.md
fedordpi.py

index 4e906a006d90e4ac5f3227ff0ade42de0fe524e7..62ea2b57a22adef0d2c4a5561fed5f481f0ad82e 100644 (file)
--- a/README.md
+++ b/README.md
@@ -4,6 +4,8 @@ FedorDPI — это аналог GoodbyeDPI и прочих сервисов п
 
 Прокси сервер будет доступен по адресу: 127.0.0.1:8881
 
-Пропишите настройку прокси сервера в браузере и проверяйте работу ;)  
+Пропишите настройку прокси сервера в браузере и проверяйте работу ;)
+
+Для принудительной фрагментации пакетов для всех сайтов добавте флаг: --force-all
   
 Известные проблемы: Не пропускает трафик по http протоколу, если ктото пофиксит будет круто.
index 41348c797f8954886f5b589af42b88bdaf28ced1..4ffc0d35627e304855ff467dda3fab2ba12abdbc 100644 (file)
@@ -1,3 +1,4 @@
+from sys import argv
 import random
 import asyncio
 
@@ -60,7 +61,7 @@ async def fragemtn_data(local_reader, remote_writer):
     data = await local_reader.read(1500)
     parts = []
 
-    if all([data.find(site) == -1 for site in BLOCKED]):
+    if all([data.find(site) == -1 for site in BLOCKED]) and not force_all:
         remote_writer.write(head + data)
         await remote_writer.drain()
         
@@ -77,6 +78,11 @@ async def fragemtn_data(local_reader, remote_writer):
     await remote_writer.drain()
 
 
+force_all = True
+if ('--force-all' in argv):
+    force_all = True
+    print('fragmentation forced for all sites')
+
 host = '127.0.0.1'
 port = 8881
 print(f'proxy: {host}:{str(port)}')