返回目录
开源项目文档办公类新手

Scanopy:自动更新的网络拓扑图与网络文档工具

Scanopy 是一个自托管的网络文档与拓扑发现工具,用持续维护的模型替代手工绘制的网络图。单个守护进程按计划扫描网络,每次扫描生成 L2(物理层)、L3(逻辑层)、工作负载和应用依赖四种视图,支持导出 SVG、Mermaid、Confluence,并可嵌入实时地图或把模型接入既有的事实源系统。

0 次阅读2026/09/18 发布
Scanopy:自动更新的网络拓扑图与网络文档工具 来源图片

社区作者 · zZz

它解决什么问题

Scanopy 的定位是「没有画图动作的网络文档」。它用持续维护的模型取代静态的网络拓扑图:一个守护进程按计划扫描网络,每次扫描产出四种视图——L2(物理层,交换机、端口与链路)、L3(逻辑层,子网及主机跨子网的连接关系)、工作负载(从裸金属到虚拟机管理程序再到容器)、应用(按应用分组的服务及其依赖关系)。项目强调与 draw.io 手绘图和 IaC 状态的差异:手绘图保存后一周即过期,IaC 状态会遗漏漂移和在流水线之外开通的资源,而 Scanopy 反映基础设施的当前状态。

输出可以导出为 SVG、Mermaid 或 Confluence 格式,可以嵌入实时地图,也可以把模型喂给现有的「事实源」系统。

配图 1 为 Scanopy Logo;配图 2 为 L2 物理视图示例;配图 3 为 L3 逻辑视图示例;配图 4 为工作负载视图示例;配图 5 为应用依赖视图示例。

主要功能:

  • 自动发现:通过扫描网络来测绘主机与服务,只需一个扫描器,无需在每台设备上部署 agent。
  • 230+ 服务定义:自动识别数据库、Web 服务器、容器、网络基础设施和企业应用。
  • 一次扫描四种视图:L2(物理)、L3(逻辑)、工作负载、应用依赖。
  • 分布式扫描:在多个网段部署守护进程,用于测绘多站点、多 VLAN 拓扑。
可复制命令
Docker 与 SNMP 集成:对容器化服务和网络硬件进行原生发现

  • 计划重扫:随基础设施变化保持文档最新。
  • 多用户 + RBAC:组织管理、基于角色的访问控制,以及可分享给团队成员或外部相关方的实时视图。

适用对象:平台与 DevOps 团队(不依赖 APM 追踪服务依赖,把容器、虚拟机和硬件统一到一份模型中)、网络工程师(基于 SNMP、LLDP、ARP 生成多 VLAN、多站点拓扑图,无需手工绘制)、IT 运维(跨团队跨站点保持清单、拓扑与依赖关系最新)、MSP 服务商(为每个客户维护文档并提供可分享的实时视图)、家庭实验室用户(不打开 draw.io 也能记录自己的基础设施)。

许可模式:自托管采用 AGPL-3.0,所有用途免费,但要求网络服务公开源代码并遵守 copyleft 合规义务;无法满足 AGPL-3.0 条款的用户可申请商业许可(联系 [email protected]);也可选择官方托管方案 Scanopy Cloud 订阅,免去自建基础设施。

社区与文档:官方文档与 API 见 scanopy.net/docs;提供在线演示 demo.scanopy.net(含示例数据集的托管演示应用);支持 Discord、GitHub Issues、GitHub Discussions 渠道,翻译由 Weblate 驱动。欢迎的首次贡献包括新增服务定义和把 Scanopy 翻译成其他语言。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

一、准备环境

  • 自托管推荐使用 Docker 与 Docker Compose(Compose 方式为官方 Quick Start 主路径)。
  • 需要一台可访问待扫描网段的服务器;多网段场景需在各网段部署守护进程实现分布式扫描。

二、Docker Compose 安装(官方 Quick Start)

  1. 下载官方 compose 文件:
命令
curl -O https://raw.githubusercontent.com/scanopy/scanopy/refs/heads/main/docker-compose.yml
  1. 在文件所在目录后台启动服务:
命令
docker compose up -d

三、Proxmox 安装

  • 使用官方提供的 helper script 创建 Scanopy LXC 容器。

四、Unraid 安装

  • 已作为 Unraid 社区应用(community app)提供,可从应用市场安装。

五、首次运行

  1. 浏览器访问 UI:http://<your-server-ip>:60072
  2. 创建账号(首次使用需注册账户)。
  1. 等待首次发现(first discovery)完成,之后即可看到 L2、L3、工作负载、应用四类视图;后续按计划自动重扫,文档随基础设施变化保持最新。

六、后续配置与常见问题

  • 端口:默认 UI 端口为 60072,若被占用或需外网访问请自行调整网络与防火墙策略。
  • 视图为空或数据不全:通常是首次发现尚未完成,或扫描器所在网段无法覆盖目标设备;多 VLAN、多站点拓扑请部署多个守护进程(分布式扫描)。
  • 硬件拓扑不完整:确认已启用并可达 SNMP,L2/L3 拓扑依赖 SNMP、LLDP、ARP 信息。
  • 容器化服务未识别:确认 Docker 集成可用,服务识别依赖内置的 230+ 服务定义,也可自行贡献新的服务定义。
  • 更详细的安装选项与配置说明请查看官方 Installation Guide(文档入口:scanopy.net/docs)。
  • 若无法遵守 AGPL-3.0 条款,请改为申请商业许可;不想自建可申请 Scanopy Cloud 免费试用。

来源教程配图

Scanopy Logo
配图 1 · Scanopy Logo查看原图
L2 view
配图 2 · L2 view查看原图
L3 view
配图 3 · L3 view查看原图
Workloads view
配图 4 · Workloads view查看原图
Applications view
配图 5 · Applications view查看原图

适用场景

平台与 DevOps 团队在不引入 APM 的前提下追踪服务依赖
把容器
虚拟机和硬件统一到一份模型
网络工程师基于 SNMP
LLDP
ARP 自动生成多 VLAN
多站点拓扑图
替代手工绘制
IT 运维跨团队
跨站点保持资产清单
拓扑与依赖关系实时更新
MSP 服务商为每个客户维护独立文档