SwitchOps 交换机巡检
图形界面使用
使用 SwitchOps GUI 加载设备、批量巡检、查询 ARP/MAC/端口并查看输出。
启动 GUI
源码运行:
python main.py
Windows EXE 部署后,可以直接双击:
SwitchOps巡检工具.exe
GUI 默认窗口标题为“院内交换机自动化巡检工具”。程序启动后不会自动连接设备,需要先加载设备清单。
界面区域
| 区域 | 用途 |
|---|---|
| 配置文件栏 | 浏览并选择 devices.yaml,加载设备清单。 |
| 设备列表 | 显示名称、IP、厂商、型号、角色、位置和启用状态。 |
| 过滤框 | 按设备名称或 IP 过滤当前列表。 |
| 巡检操作区 | 全量巡检、巡检选中设备、停止任务。 |
| 查询操作区 | 选择单台设备并查询 ARP、MAC 或接口。 |
| 进度区 | 显示已完成、成功、失败和总数。 |
| 运行日志 | 展示连接、命令执行、保存文件和错误信息。 |
| 状态栏 | 显示当前任务以及最近生成的报告或查询文件。 |
双击设备列表中的某一行,可以查看该设备的详细配置摘要。界面不会显示账号密码。
加载设备清单
- 点击顶部“浏览”。
- 选择真实的
config/devices.yaml。 - 点击“加载设备”。
- 检查加载数量和启用数量。
- 确认设备名称、IP、厂商、型号和位置无误。
加载完成后,所有 enabled: true 的设备默认被勾选。可以使用“全选”“取消全选”或点击列表第一列的复选标记调整范围。
如果加载失败,通常是文件不存在、YAML 缩进错误或必填字段缺失。详细信息会同时显示在弹窗和日志区。
全量巡检
点击“一键巡检全部”,程序会巡检清单中所有 enabled: true 的设备。
巡检过程会按照 settings.yaml 的并发数执行。每台设备完成后,进度条和成功/失败计数会更新。全部完成后会弹出结果摘要,并显示 Excel 报告位置。
设备较多时,建议先使用少量测试设备验证账号权限、命令兼容性和报告解析,再执行全量巡检。
巡检选中设备
- 在设备列表第一列勾选目标设备。
- 确认禁用设备不会被选入。
- 点击“巡检选中设备”。
- 等待进度完成并打开报告。
这适合故障复查、单区域巡检或新设备接入验证。
停止任务
点击“停止任务”后,程序会发出软停止信号:
- 已经开始连接或执行命令的设备会先完成当前巡检。
- 尚未开始执行的设备会标记为未巡检。
- 最终仍会生成报告,便于确认哪些设备已经完成。
软停止不是强制断开 SSH,因此点击后可能需要等待一段时间,最长等待时间受连接和命令超时设置影响。
ARP 查询
- 在右侧“查询设备”中选择一台启用设备。
- “关键字”可以留空,也可以填写 IP、VLAN 或接口等过滤内容。
- 点击“查询 ARP”。
程序执行设备对应的 ARP 查询命令。关键字过滤发生在本地,只保留包含关键字的回显行,不会改变发送到交换机的命令。
MAC 查询
- 选择查询设备。
- 可选填写 VLAN、MAC 地址片段或接口名作为关键字。
- 点击“查询 MAC”。
例如填写 Vlan10 后,只显示原始 MAC 地址表中包含 Vlan10 的行。
端口查询
- 选择查询设备。
- 在“端口”中填写完整接口名,例如
GigabitEthernet2/0/7。 - 可选填写关键字。
- 点击“查询端口”。
接口名称为空时,GUI 会阻止查询。名称是否有效由目标交换机判断。
查看和保存查询结果
查询完成后会打开独立结果窗口,同时将完整或过滤后的结果保存到当天的 queries/ 目录。例如:
outputs/2026-09-04/queries/
├── ARP查询_核心交换机_2026-09-04_103000.txt
├── MAC查询_核心交换机_2026-09-04_103200.txt
└── 端口查询_核心交换机_GigabitEthernet2-0-7_2026-09-04_103500.txt
文件名中的 / 等 Windows 非法字符会自动替换为 -。
打开输出目录
点击“打开输出目录”会打开:
- 最近一次报告所在的日期目录;或
- 当前运行已经创建的日期目录;或
- 尚未运行任务时的默认
outputs目录。