aiDgeScanner 工业设备网络扫描与管理工具

aiDgeScanner 工业设备网络扫描与管理工具

前言

在工业网络环境中,设备的管理与发现一直是运维人员面临的挑战。传统的设备扫描工具往往功能单一、界面陈旧、操作复杂。今天,我正式宣布 aiDgeScanner 项目开源,这是一款基于现代技术栈开发的工业设备网络扫描与管理工具。


项目概述

aiDgeScanner 是一款专为工业网络环境设计的设备发现与管理工具,具有以下核心能力:

  • 🎯 智能设备发现:支持 LLDP 协议和 UDP Discovery 协议,自动发现网络中的工业设备
  • 🔒 远程管理:内置 SSH 终端和 Web 浏览器,无需额外工具即可管理设备
  • 🎨 现代化界面:基于 Vue 3 + Electron 构建,提供流畅的用户体验
  • 高性能底层:C++ NAPI 插件实现高效的数据包捕获与解析

核心技术架构

aiDgeScanner 采用分层架构设计,兼顾开发效率和运行性能:
系统层
libpcap/Npcap
C++ NAPI 插件
LLDP解析器
Packet捕获
设备发现
主进程 (Node.js)
窗口管理
SSH2连接
设备扫描器
主题系统
Electron 进程通信
IPC + Context Bridge
UI 层 (Vue 3)
设备列表
系统日志
SSH终端
嵌入式浏览器

技术栈详解

层级 技术选型 说明
桌面框架 Electron 39 成熟的跨平台桌面应用框架
前端框架 Vue 3.5 组件化、响应式设计
构建工具 Vite 5 快速的开发服务器和构建
终端组件 xterm.js 专业级终端模拟器
SSH 客户端 ssh2 完整的 SSH2 协议实现
网络抓包 libpcap/Npcap 高效的数据包捕获

功能亮点

1. 多协议设备发现

aiDgeScanner 支持两种设备发现协议:

LLDP(Link Layer Discovery Protocol)

  • 工业交换机标准协议
  • 获取设备 MAC 地址、端口信息、系统名称等
  • 解析 Chassis ID、Port ID、Management Address 等 TLV

UDP Discovery

  • 自定义 UDP 发现机制
  • 灵活的端口配置(默认 6000)
  • 支持设备主动上报

目标设备 工业网络 aiDgeScanner 目标设备 工业网络 aiDgeScanner 监听 LLDP/UDP 报文 发送 LLDP/UDP Discovery 报文 转发报文 解析报文提取设备信息 更新设备列表

2. 内置 SSH 终端

告别繁琐的第三方终端工具,aiDgeScanner 内置完整的 SSH 客户端:

  • 独立标签页:每个 SSH 会话独立标签页管理
  • 现代化终端:基于 xterm.js 的专业终端体验
  • 登录对话框:直观的凭据输入界面
  • 会话复用:支持多设备同时管理


3. 嵌入式 Web 浏览器

设备配置页面直接嵌入应用:

  • 多标签页管理
  • 阻止弹出窗口
  • 跨域访问支持
  • 与应用界面无缝融合

4. 灵活的配置选项

通过设置对话框可以:

  • 选择监听网卡
  • 配置 UDP 端口
  • 切换 LLDP/UDP/混合监听模式
  • 调整查询间隔

界面主题

aiDgeScanner 提供五种精心设计的主题:

主题 风格 预览
🌸 金桂飘香 温暖金色系
🎋 翠竹清幽 自然绿色系
🌙 朗月皎洁 清爽蓝色系
🌊 碧海晴空 深海蓝色系 -
🪙 流银典雅 低调银色系

快速上手

环境准备

bash 复制代码
# Node.js >= 18.x
# npm >= 9.x 或 yarn
# Python 3.x (用于 C++ 插件构建)

安装与运行

bash 复制代码
# 克隆项目
git clone https://gitee.com/galaxy_0/ai-dge-scanner.git
cd aiDgeScanner

# 安装依赖
npm install --registry=https://registry.npmmirror.com

# 构建 C++ 插件
npm run build-plugin

# 启动应用
npm start

打包发布

bash 复制代码
# 构建前端
npm run build

# 打包 Windows 安装包
npm run electron:build:win

# 输出目录: release/

项目结构

aiDgeScanner
src/
native/
device/
dist/
release/
components/
SSHTerminal.vue
SettingsModal.vue
TabbedBrowser.vue
TelTerminal.vue
Terminal.vue
theme/
i18n/
App.vue
src/
scanner.cc
lldp_parser.cc
packet_parser.cc
device.cc
interface.cc
build/
src/
lldp/
protocol/
core/
capture/


开源许可

aiDgeScanner 采用 GNU General Public License v2.0 (GPL-2.0) 开源,您可以:

  • ✅ 自由使用、修改、分发本项目
  • ✅ 商业使用
  • ✅ 私有化部署
  • ❌ 但不提供任何担保
  • ⚠️ 如果修改源码,必须开源(GPL传染性)

致谢

感谢以下开源项目:

  • Electron - 跨平台桌面应用框架
  • Vue.js - 渐进式 JavaScript 框架
  • xterm.js - 终端模拟器
  • ssh2 - SSH2 客户端库
  • Npcap - Windows 网络抓包库

获取项目

欢迎 Star、Fork、Issue 和 Pull Request!


"最好的工具是那些让复杂任务变得简单,同时又不失去灵活性的工具。"

aiDgeScanner 致力于为工业网络运维提供一站式解决方案,让设备管理变得更加高效、便捷。

相关推荐
morning_judger25 分钟前
Agent系列(一) - Agent系统分层架构
人工智能·架构
跨境数据猎手28 分钟前
Superbuy淘宝代购集运系统架构拆解,复刻方案参考
爬虫·架构·系统架构
喵星人工作室29 分钟前
C++火影忍者1.1.2
开发语言·c++
basketball6161 小时前
C++ 中的 ptrdiff_t 详解
开发语言·c++
wunaiqiezixin1 小时前
互斥锁与自旋锁的区别
c++
代码中介商1 小时前
深入解析STL中的stack、queue与priority_queue
开发语言·c++
leoFY1231 小时前
STM32H750配置LAN PHY芯片LAN8742
网络·stm32·嵌入式硬件
Rain5092 小时前
mini-cc 的 MCP 协议:给 AI 装个 USB-C 接口
c语言·开发语言·前端·人工智能·架构·node.js·ai编程
阿部多瑞 ABU2 小时前
AI红队攻防演化史(2023-2026):从虚拟角色到RLHF劫持——所有攻击方法全景总结与最新趋势分析
网络·人工智能·安全
雨辰AI2 小时前
SpringBoot3 整合达梦 DM9 超详细入门实战|从零搭建可直接上线
数据库·微服务·架构·政务