devicenull9/NetworkAPI

GitHub: devicenull9/NetworkAPI

基于libnetfilter_queue的Linux C++模块化网络数据包处理框架,通过插件架构实现对流量的人机友好操控。

Stars: 0 | Forks: 0

# NetworkAPI ## 编译 (Linux) 1. 确保您的计算机上安装了编译 C/C++ 程序所需的一切,包括 CMake 和 Ninja build。 2. 安装:`sudo apt-get install libnetfilter-queue-dev` 3. 安装:`sudo apt-get install iptables` 4. 下载该代码库。 5. 运行 'Compile-Linux.sh'。 ## 使用方法 1. 在您的计算机上插入必要的 'iptables/ip6tables' 规则,您可以打开 `HELP.md` 查看可以运行的命令来执行此操作。 2. 将插件放入可执行文件所在的文件夹中。 3. 运行该程序。 完整命令示例:`NetworkAPI --configuration ` ## 移除 要停止使用该程序,您需要停止可执行文件并删除 'iptables/ip6tables' 规则,您可以打开 `HELP.md` 查看可以运行的命令来执行此操作。 ## 文档 打开 `DOCUMENTATION.hxx` 以查看您可以用来编写插件的可用转发 (hooks)。 ## 注意事项 - 该程序目前处于测试版,请随时报告您发现的任何错误。 - 加载插件的顺序很重要。 - 这是一个模块化的 C++ 程序,这意味着该软件是 `libnetfilter-queue` 和您的插件之间的桥梁,该程序仅为插件(Linux 下的 .so 库)提供了对数据包执行操作的能力。 - 请务必仔细阅读 LICENSE 文件。 - 如果您有任何疑问,可以联系我。 - 目前尚未在 IPv6 上完全测试,请考虑到这一点。 - 与任何内核到用户空间以及用户空间到内核的程序一样,您必须考虑到该程序的速度不足以应对高性能场景。 ## 致谢与许可 本项目根据 Apache License 2.0 授权。 包含以下第三方软件: - nlohmann/json - 代码库:https://github.com/nlohmann/json - 用途:JSON 解析。 - 根据 MIT License 授权。 - 完整许可请见:https://github.com/nlohmann/json/blob/develop/LICENSE.MIT - 版权所有 (c) 2013-2026 Niels Lohmann 并使用了以下第三方软件: - libnetfilter_queue - 代码库:https://git.netfilter.org/libnetfilter_queue/ - 用途:接收数据包。 - 根据 GNU General Public License (GPL) 版本 2 或更高版本授权。 - 主页:https://www.netfilter.org/projects/libnetfilter_queue/index.html
标签:Bash脚本, C++, CMake, iptables, IPv4/IPv6, JSON, libnetfilter_queue, Ninja, Prompt Injection, 动态链接库, 包过滤, 数据包处理, 数据擦除, 模块化架构, 流量拦截, 流量监控, 用户空间网络, 网络API, 网络安全, 网络编程, 调试插件, 隐私保护