Skip to content

📊 轻量级图形化 TCP/UDP 调试工具,支持无干预监听与数据发送 ⚖️ Lightweight graphical TCP/UDP debugging tool featuring non-intrusive monitoring and data transmission

License

Notifications You must be signed in to change notification settings

ELDment/Net-Assist

Repository files navigation

🚀 Net-Assist

简体中文项目介绍

⚠️ This is a learning project. Since the core implementation relies on WinDivert, this project only supports the Windows platform. Additionally, this project does not provide production-level performance optimizations or long-term community support

Net-Assist

Net-Assist is based on the WinDivert driver, enabling seamless network packet sniffing directly at the Windows kernel level (without occupying listening ports). It uses a fully asynchronous, highly decoupled design to ensure UI responsiveness and efficient data processing under high load

Language License: GPL v3 Build

✨ Core Features

  • Packet Sniffing: Based on the WinDivert driver, it directly sniffs TCP/UDP packets at the kernel level, providing the lowest-level packet sniffing without occupying any listening ports
  • Fully Asynchronous I/O Architecture: Uses Asio for a high-performance, event-driven model, with all network and file operations executed in background threads
  • Modular Design: The core network service (Net) and the user interface (GUI) are completely decoupled through dependency injection
  • Lightweight GUI: Built with ImGui for an efficient, fast-rendering, and low-resource-consumption interface

🛠️ Tech Stack

  • Language: C++17
  • Build System: CMake
  • Dependency Management: vcpkg
  • Core Networking: WinDivert, Asio
  • GUI: ImGui, GLFW, OpenGL
  • Other Dependencies: GLAD

🚀 Getting Started

Prerequisites

Building

  1. Clone the repository

    git clone https://github.com/ELDment/Net-Assist.git
    cd Net-Assist
  2. Configure the project (CMake will handle dependencies automatically via vcpkg)

    cmake --preset debug
  3. Build the project

    cmake --build --preset debug

🙏 Acknowledgements