NetNexus 是一个基于 Vue 3、Ant Design Vue 和 Electron 的本地网络工具集。项目当前重点是协议联调、报文解析、轻量服务器和本机调试工具。
- BGP 模拟器:BGP 服务端、对等体配置、IPv4/IPv6 单播路由、MVPN 路由、IPv4/IPv6 QP 路由、RouteViews 导入和路由查看。
- BMP 监控器:BMP v3/v4 接收、客户端列表、BGP session、Loc-RIB、路由列表、路由详情、统计报告和只读 HTTP API。
- RPKI RTR 服务:RPKI-RTR 服务端、ROA、Router Key、ASPA 数据管理和 JSON 导入。
- SNMP 工具:Trap 接收、Trap 历史、MIB 导入/编译、OID 树、OID 解析和基础 SNMP 查询操作。
- FTP 服务器:本地 FTP 服务、用户目录配置、客户端连接列表。
- DHCP 服务器:DHCPv4/DHCPv6 地址分配、租约列表和测试脚本。
- NTP 服务器:本地 NTP 响应、时间参数配置和请求日志。
- TFTP 服务器:TFTP 上传/下载、选项协商和传输日志。
- 工具集合:字符串生成、报文解析、端口监控、网络信息、HTTP API 测试、TCP-AO MAC 计算。
- 设置:日志级别、工具历史数量、FTP 用户数量、外部 HTTP API、TCP MD5 代理部署和更新设置。
- 外部 API:当前只注册 BMP 查询接口,API 服务不负责启动 BMP。
npm install
npm run dev常用脚本:
npm run build
npm run pack:mac:arm64
npm run lint
npm test
npm run mock:bmp
npm run docs:screenshots说明:
npm run mock:bmp会向本机 BMP 服务发送模拟数据,用于查看 BMP 页面布局和接口返回。npm run docs:screenshots会打开本地页面并更新docs/images下的文档截图,需要先启动npm start或设置NETNEXUS_DOCS_URL;截图视口默认不小于1920x1200,可用NETNEXUS_DOCS_WINDOW_WIDTH、NETNEXUS_DOCS_WINDOW_HEIGHT覆盖;脚本会自动启动 BMP 并注入 mock 路由数据,可用NETNEXUS_DOCS_BMP_PORT和NETNEXUS_DOCS_BMP_ROUTES覆盖端口和路由数。- 标准端口如
67、69、123在部分系统上需要管理员/root 权限,联调时可以改用高位端口。
- Vue 3
- Vue Router 4
- Vuex 4
- Ant Design Vue 4
- Electron 15
- Vite
- Node.js worker_threads
NetNexus/
├── docs/ # 功能文档和截图
├── electron/ # Electron 主进程、协议 worker、工具函数
│ ├── app/ # IPC 应用控制器
│ ├── worker/ # 按协议模块划分的 worker、会话模型和公共 worker 基础设施
│ ├── const/ # 主进程常量
│ ├── utils/ # 协议和存储工具
│ └── main.js # Electron 入口
├── scripts/ # 构建、发布、测试辅助脚本
├── src/ # Vue 渲染进程
│ ├── router/ # 页面路由
│ ├── store/ # keep-alive 等状态
│ └── view/ # 页面组件
├── test/ci/ # Node CI 测试脚本
├── package.json
└── vite.config.js
- 新页面路由采用动态导入,避免启动时一次性加载所有页面组件。
- 设置页日志级别只在当前运行期生效,重启后默认恢复
off。 - BMP 路由详情不保存 BGP 原始报文摘要,路由 NLRI 解析结果通过
nlriDetail查看。 - 外部 HTTP API 只监听
127.0.0.1,当前仅暴露 BMP 只读查询接口。
NetNexus is licensed under the MIT License.
Production third-party dependency notices are listed in THIRD_PARTY_NOTICES.md.