Как я могу реализовать функции туннелирования, подобные NetMod (введение полезной нагрузки, ротатор IP, режим DNS, раздеC#

Место общения программистов C#
Ответить
Anonymous
 Как я могу реализовать функции туннелирования, подобные NetMod (введение полезной нагрузки, ротатор IP, режим DNS, разде

Сообщение Anonymous »

Я разрабатываю VPN-клиент Windows на C# (.NET 6/8, Windows Forms) под названием Vortex Tunnel.

Приложение уже поддерживает:
  • туннелирование SSH (Direct / HTTP Injection / SSL SNI)
  • интеграцию Xray Core (VMess / VLESS)
  • Tun2Socks (общесистемный VPN с использованием Wintun)
  • Пересылка UDP для игр
  • Автоматическое переподключение
  • Генератор полезной нагрузки
  • IP Hunter (базовый IP-сканер)
Моя цель сейчас — добавить несколько расширенных функций, подобных NetMod / HTTP Injector / NapsternetV, и я пытаюсь понять, какую архитектуру или библиотеки лучше всего использовать для этих компонентов.

Что я хочу реализовать:

1. Расширенный механизм полезной нагрузки

Такие функции:
  • Динамические теги (, [port], [crlf], [ua] и т. д.)
  • Модификация заголовка во время выполнения
  • Генератор полезной нагрузки WebSocket
  • Тестер полезной нагрузки (отправка подтверждения перед подключением к серверу)
Вопрос:

Каков наилучший подход к разработке гибкого и безопасного механизма преобразования полезной нагрузки на C# перед передачей измененных данных в SSH-туннель?

2. Auto IP Rotator / Fast IP Hunter

Я хочу сканировать диапазон, например 10.100.x.x или определенные пользователем диапазоны, проверять пинг/задержку и автоматически выбирать самый быстрый IP-адрес перед подключением.
Вопросы:
  • Должен ли я использовать необработанный сокет ICMP, Windows API или внешний двоичный файл для более быстрого подключения сканирование?
  • Как избежать голодания потоков при одновременном сканировании до сотен IP-адресов?

3. Режим DNS (аналогично NetMod)

Я хочу поддерживать:
  • переключение DNS (Google, Cloudflare, AdGuard, собственный)
  • DoH (DNS-over-HTTPS)
  • Защиту от утечки DNS
  • Сравнение задержки между поставщиками DNS
Вопрос:

Существуют ли рекомендуемые библиотеки .NET для DoH/DoT или мне следует вручную реализовывать HTTPS-запросы к /dns-query?

4. Разделенное туннелирование

Я хочу, чтобы пользователи могли выбирать, какие приложения проходят через VPN (Tun2Socks), а какие обходят его.
Вопрос:

Есть ли в Windows надежный способ маршрутизации определенных процессов через определенный интерфейс (Wintun) или мне следует изменять маршруты на уровне IP, а не для каждого процесса?

5. Импортер конфигураций (подобный NetMod)

Я хочу импортировать/экспортировать: Вопрос:

Существует ли какая-либо документация или реконструированная структура для этих форматов, или это единственный способ декодировать их вручную с использованием образцов, предоставленных пользователями?

Что мне нужно:
Я не прошу полных реализаций.

Мне нужны рекомендации по:
  • Рекомендуемым библиотекам
  • Лучший дизайн архитектуры для функций туннелирования
  • Требуется ли определенным компонентам собственный код (C/C++), pcap или raw-сокеты
  • Распространенные ошибки при изменении низкоуровневой сетевой маршрутизации в Windows
Среда:
  • Windows 11
  • .NET 10
  • Пользовательский интерфейс Windows Forms
  • Использование двоичных файлов Wintun + Tun2Socks + Xray Core
Заключительный вопрос:
Каков рекомендуемый подход или архитектура для безопасной реализации этих функций в стиле NetMod (внедрение полезной нагрузки, сканирование IP, режим DNS, раздельное туннелирование, импортер конфигурации) в приложении туннелирования C#?

Подробнее здесь: https://stackoverflow.com/questions/798 ... -ip-rotato
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»