goncalocabral-hub/network-device-scanner-final

GitHub: goncalocabral-hub/network-device-scanner-final

一款多协议网络设备扫描与资产管理桌面工具,帮助组织在复杂网络环境中发现设备、追踪变更并检测未经授权的接入资产。

Stars: 0 | Forks: 0

使用 C# WPF (.NET) 开发的桌面应用程序,用于在多个环境中进行网络发现、监控、资产盘点和 Shadow IT 检测。 该平台支持多协议扫描、基于工作空间的资产管理、基线比较、历史扫描追踪以及网络设备的实时监控。 🏗️ 架构 ![网络设备扫描器架构](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/822f45cc3f010439.png) 📌 描述 现代网络环境通常包含来自不同供应商、协议和技术的设备。跟踪所有已连接的资产并识别未经授权的设备可能是一项挑战。 Network Device Scanner 提供了一个集中式的解决方案,用于: 多协议设备发现 资产库存管理 历史扫描存储 基于工作空间的环境隔离 基线生成与比较 Shadow IT 检测 实时网络监控 设备交互与诊断 🎯 问题 组织经常面临以下困难: 发现网络内的所有活动设备 管理多个客户或公司环境 随着时间的推移跟踪网络变化 检测未经授权的设备 (Shadow IT) 维护准确的网络资产清单 将当前网络状态与之前的扫描结果进行比较 💡 解决方案 该应用程序提供: 多协议网络发现 用于多环境的工作空间管理 持久化的历史扫描存储 统一的设备存储库 基线生成与比较 自动 Shadow IT 检测 设备交互工具 数据导出功能 实时用户通知 🏛️ 系统架构 🖥️ WPF 用户界面 表示层采用 Master-Detail 方法: 设备列表 (DataGrid) 设备详细信息面板 用户操作和控制 实时 toast 通知 ⚙️ 核心逻辑层 负责: 协调扫描 管理工作流 处理发现的数据 维护应用程序状态 🔍 设备发现引擎 扫描引擎负责协调多个发现模块: 支持的协议 低功耗蓝牙 (BLE) Wi-Fi 发现 局域网发现 (LAN) BACnet/IP Modbus TCP ONVIF 每个扫描器独立运行,并将发现的资产汇集到中央存储库中。 📦 设备存储库 作为集中式存储层,负责: 聚合发现的设备 标准化设备信息 维护统一的清单视图 为 UI 和分析模块提供数据 📂 工作空间管理 应用程序支持多个工作空间,允许建立独立的监控环境。 功能 创建工作空间 选择活动工作空间 删除工作空间 每个环境拥有独立的清单 独立的扫描历史 示例 工作空间 1 → A 公司 工作空间 2 → B 公司 工作空间 3 → 测试实验室 这使得通过单个应用程序即可实现多环境的资产管理。 🕒 历史扫描存储 每个工作空间都维护着持久化的扫描历史记录。 优势 历史设备追踪 环境演变监控 审计与库存支持 在会话之间保留上下文 📋 基线管理器 创建并存储参考网络状态。 功能 初始基线创建 基线更新 网络状态保留 与未来的扫描进行比较 🚨 Shadow IT 检测 将当前扫描结果与存储的基线进行比较。 检测内容 新设备 未知设备 未经授权的资产 网络变化 这样可以快速识别进入网络的潜在的、未经管理的设备。 📡 设备操作 与已发现的资产进行直接交互: 可用操作 Ping 设备 在浏览器中打开设备 IP 这对于验证、故障排除和快速访问非常有用。 📤 导出模块 支持导出清单信息。 格式 CSV TXT 适用于报告和文档记录目的。 🔔 通知系统 非阻塞的 toast 通知可提供即时反馈。 通知类型 成功 警告 错误 信息事件 ⚙️ 使用的技术 C# WPF (.NET) SQLite TCP/IP 网络 低功耗蓝牙 (BLE) BACnet/IP Modbus TCP ONVIF Async/Await 编程 🚀 功能 🔍 设备发现 BLE 扫描 Wi-Fi 扫描 局域网扫描 BACnet/IP 发现 Modbus TCP 发现 ONVIF 发现 📂 工作空间管理 多环境 独立清单 工作空间持久化 历史上下文隔离 🕒 历史扫描追踪 持久化扫描存储 历史清单比较 环境演变监控 🚨 Shadow IT 检测 基线生成 网络比较 未经授权的设备检测 📡 设备交互 Ping 设备 打开设备管理界面 📊 导出功能 CSV 导出 TXT 导出 🖥️ 用户体验 Master-Detail 界面 DataGrid 可视化 详细的资产面板 Toast 通知 响应迅速的异步操作 🧠 技术决策 异步架构 使用 async/await 实现: 防止 UI 阻塞 提高响应速度 支持并发的网络操作 模块化扫描器设计 每个协议扫描器都是独立实现的。 优势: 可扩展性 可维护性 易于集成新协议 基于工作空间的数据隔离 允许在保持集中式应用程序管理的同时隔离各个环境。 基线比较策略 提供对以下内容的高效识别: 新资产 丢失的设备 网络变化 Master-Detail 模式 改善: 数据可视化 导航体验 用户生产力 ⚡ 性能 完全异步的操作 增量扫描处理 非阻塞 UI 高效的设备聚合 使用 SQLite 进行持久化本地存储 ## 👨‍💻 作者 **Gonçal Cabral** *软件开发、网络与网络安全* [LinkedIn](https://linkedin.com/in/gonçalo-cabral-016498304) | [作品集](https://goncalocabral-hub.github.io/goncalocabral.github.io/)
标签:C# WPF, Maven构建, 多人体追踪, 影子IT检测, 网络发现, 资产盘点, 运维工具