快速使用
一、产品简介与安装
产品定位
NetClaw 是一款专为网络工程师设计的现代化 Windows 桌面应用。无需复杂部署,开箱即用,集设备纳管、配置自动化、智能巡检、任务调度、可视化编排与 AI 智能助手等核心能力于一体,同时内置子网计算、连通性探测、报文分析等多种常用网络工具,是实现网络运维自动化、提升网络运维效率的得力助手。
安装步骤
- 访问 https://netclaw.site 获取安装包
netclaw_1.0.3_setup.exe,双击启动安装向导。 - 按向导提示完成安装,双击桌面快捷方式启动 NetClaw。
- 登录界面输入密码完成登录,初始密码为
netclaw。

安装向导界面

登录界面
二、界面布局与主题
主界面采用清晰的功能分区:顶部导航栏、左侧功能菜单、中央工作区、右侧工具面板以及底部状态栏。
- 主题切换:点击顶部导航栏的太阳/月亮图标,可在浅色与深色模式间实时切换,适应不同工作环境。

界面整体布局
功能指南
一、网络管理
1.1 设备管理
“设备管理”是 NetClaw 的资产中心,用于统一纳管所有网络设备。平台支持华为、思科、H3C、锐捷等主流厂商,通过 SSH/Telnet 协议进行自动化连接与管理。
资产信息:设备资产信息。
| 字段 | 说明 | 录入方式 |
|---|---|---|
| 管理IP | 设备的管理地址,如 192.168.1.1 | 手动输入 |
| 设备名称 | 用于标识设备的别名,如 核心交换机-01 | 手动输入 |
| 厂商 | 设备品牌,如华为、思科 | 下拉选择(由“信息维护”预设) |
| 设备型号 | 具体硬件型号,如 S6730-H48X6C | 下拉选择(由“信息维护”预设) |
| 站点 | 设备物理位置,如 北京总部 | 下拉选择(由“信息维护”预设) |
| 网络分区 | 所属网络区域,如 核心区 | 下拉选择(由“信息维护”预设) |
| 角色 | 网络角色,如 核心交换机 | 下拉选择(由“信息维护”预设) |
| 备注 | 额外的说明信息 | 手动输入(非必填) |
登录凭证:设备连接与认证所需信息。
| 字段 | 说明 | 录入方式 |
|---|---|---|
| 登录类型 | 连接协议:SSH 或 Telnet | 下拉选择 |
| 平台 | netmiko 对应的 device_type,由系统根据“厂商”自动匹配 | 自动生成,不可编辑 |
| 端口 | 连接端口,SSH 默认 22,Telnet 默认 23 | 手动输入 |
| 用户名 | 登录用户名 | 手动输入 |
| 密码 | 登录密码 | 手动输入 |
| 特权密码 | 进入特权模式的密码(若有) | 手动输入(非必填) |
操作按钮说明
- 顶部批量操作栏
- 筛选条件:支持按设备名称、管理IP、厂商、型号等多个维度组合筛选。
- 搜索框:输入关键字,结合筛选条件进行模糊搜索。
- 重置:一键清空筛选条件及搜索框输入。
- 新增:手动添加单台设备信息。
- 批量导入:通过 Excel 表格批量导入设备。
- 下载模板:下载标准格式的 Excel 批量导入模板。
- 单设备操作栏
- 基础操作:对单台设备进行查看、编辑、删除。
- 查看配置:在线预览该设备最近一次备份的配置文件。
- 快捷终端:调用内置的
终端工具并自动发起连接。 - 智能终端:打开一个集成 AI 对话窗口的终端,左侧为设备命令行,右侧为 AI 助手,可辅助进行状态诊断和命令配置。

设备列表主界面

编辑设备信息界面

点击【查看配置】按钮

点击【智能终端】按钮

点击【快捷终端】按钮
1.2 快速命令
批量对多台网络设备下发查询或配置命令,并通过界面清晰展示每台设备的执行结果。
- 选择设备:点击按钮批量选择目标设备,支持按条件筛选或直接输入 IP 列表。
- 下发命令:在命令输入区键入需要执行的 CLI 命令。
- 执行与导出:点击“执行”后,结果分页展示。点击“导出结果”,所有设备的回显将打包为一个
.zip文件,每台设备的输出对应一个独立的.txt文件。

快速执行命令

执行结果界面
1.3 信息维护
此模块用于集中维护设备信息中的枚举字段,确保在添加设备时可通过下拉菜单选择,避免手动输入错误,统一数据口径。
可维护的字段包括:厂商、设备型号、站点、网络分区、角色。
- 维护厂商:新增时需要填写厂商名称、对应的
netmiko平台类型以及关键信息查询命令(全量配置、ARP 表、MAC 地址表的查看命令)。系统已预置华为、思科、锐捷、H3C 的数据。 - 维护其他项:对于“型号”、“站点”等字段,操作类似,仅需维护名称列表。
操作示例:添加一个新厂商「Juniper」
- 进入「信息维护」页面,点击「厂商」标签页。
- 点击「新增厂商」按钮,弹出配置窗口。
- 填写厂商名称:
Juniper。 - 在「netmiko 平台类型」中选择
juniper_junos。 - 填写关键查询命令(以 Junos OS,如 EX 系列为例):
- 全量配置查看命令:
show configuration | display set - ARP 表查看命令:
show arp - MAC 地址表查看命令:
show ethernet-switching table
6. 点击「保存」。此后在添加设备时,厂商下拉菜单中将出现 Juniper,系统会自动使用 Juniper 的驱动与命令进行连接和备份。

信息维护界面
二、配置渲染
基于 Jinja2 模板引擎,结合 JSON 规划数据,动态生成标准化网络配置,实现“数据驱动配置”。
2.1 模板管理
此页面用于管理 Jinja2 模板文件,支持新建/删除目录、增删改模板,并提供 Jinja2 语法高亮。

jinja2模板管理
2.2 配置渲染
- 准备数据与模板:准备好 JSON 格式的规划数据与 Jinja2 模板文件。在左侧 Jinja2 主模板文件区导入主模板,在右侧 JSON 规划信息区导入 JSON 数据,导入后,右侧会通过树形图展示 JSON 层级结构。
JSON 数据必须为字典格式,其key为设备标识,value为包含配置变量的字典。
JSON 数据示例:
{
"Core-SW1": {
"hostname": "Core-SW1",
"ospf": {
"process_id": 100,
"router_id": "10.0.0.1",
"networks": [
{"network": "10.0.0.0", "wildcard": "0.0.0.3"},
{"network": "10.0.1.0", "wildcard": "0.0.0.255"}
]
}
},
"Core-SW2": {
"hostname": "Core-SW2",
"ospf": {
"process_id": 100,
"router_id": "10.0.0.2",
"networks": [
{"network": "10.0.0.4", "wildcard": "0.0.0.3"},
{"network": "10.0.2.0", "wildcard": "0.0.0.255"}
]
}
}
}
- 执行渲染:选择主模板和对应数据文件,系统将自动渲染。若模板存在引用层级,只需选择主模板,其
{% include %}的子模板会被自动加载。 - 查看与导出:渲染结果按设备分页展示。点击“导出结果”,所有设备的配置文件将打包为一个
.zip文件下载。

生成配置界面

生成配置结果
操作示例:为两台核心交换机生成 OSPF 配置
- 创建模板:在「模板管理」中新建文件
ospf_config.j2,内容如下(Jinja2 语法):
hostname {{ hostname }}
!
router ospf {{ ospf.process_id }}
router-id {{ ospf.router_id }}
{% for net in ospf.networks %}
network {{ net.network }} {{ net.wildcard }} area 0
{% endfor %}
- 准备数据:将上文 JSON 数据示例保存为
ospf_data.json。 - 导入并渲染:
- 打开「配置渲染」页面,点击左侧「导入模板」,选择
ospf_config.j2。 - 点击右侧「导入 JSON」,选择
ospf_data.json。右侧树形图会显示 Core-SW1 和 Core-SW2 的变量结构。 - 点击「开始渲染」。
- 打开「配置渲染」页面,点击左侧「导入模板」,选择
- 查看结果:系统自动切换至结果页,每个设备一个标签页。确认无误后,点击「导出结果」下载包含所有配置文件的压缩包。
进阶示例:模块化模板组织
面对包含 OSPF、BGP、接口、全局参数等众多配置的复杂场景,建议将模板按功能拆分为独立子文件,由主模板通过 {% include %} 统一组织,避免单文件臃肿、提升可维护性。
推荐的项目结构如下:
父目录/
├── base.jinja2
├── global.jinja2
├── interfaces/
│ ├── ethernet.jinja2
│ └── vlan.jinja2
└── protocols/
├── ospf.jinja2
└── bgp.jinja2
base.jinja2 作为渲染入口,负责引入各模块:
{% include 'global.jinja2' %}
{% include 'interfaces/ethernet.jinja2' %}
{% include 'interfaces/vlan.jinja2' %}
{% include 'protocols/ospf.jinja2' %}
{% include 'protocols/bgp.jinja2' %}
子模板则各司其职,例如 protocols/ospf.jinja2:
router ospf {{ ospf.process_id }}
router-id {{ ospf.router_id }}
{% for net in ospf.networks %}
network {{ net.network }} {{ net.wildcard }} area {{ net.area | default('0') }}
{% endfor %}
三、任务调度与管理
NetClaw 的任务管理引擎统一负责配置备份、配置下发、自动化巡检三大类任务的创建、调度与生命周期管理。
3.1 创建任务
创建一个自动化任务的步骤:
- 基本信息设置
- 任务名称:为任务指定一个唯一的名称,长度不超过 30 个字符。
- 执行方式:支持三种模式。
- 立即执行:保存任务后立刻启动。
- 定时执行:在指定的未来时间点(格式如
YYYY-MM-DD HH:MM,例如2026-06-01 15:26)自动执行一次。 - 周期执行:按设定的频率(如每天几点,或每隔 N 小时)周期性自动执行。
- 选择目标设备 点击“选择设备”按钮,在弹出的窗口中批量选择要执行任务的设备。按钮上将实时显示已选设备数量。
- 配置执行内容(根据任务类型而异)
- 配置备份:无需额外配置,系统自动执行预设的命令进行全量配置、ARP 表项、MAC 表项的备份。
- 配置下发:需点击“添加配置”,为设备选择自定义的配置文件或预设的配置模板。
- 自动化巡检:需点击“选择巡检模板”,添加一个已预设好的巡检模板。

创建任务

点击选择设备按钮添加配置

配置下发任务选择一个配置模版或自定义添加配置

设备巡检任务添加一个巡检项

任务的执行详情

双击查看单台设备执行详情

单台设备编排巡检的执行详情

自动生成的巡检报告

配置并启用邮件通知

任务完成后将自动发送邮件
操作示例一:创建每日自动备份任务
需求:每天凌晨 2:00 对核心区交换机执行配置备份。
- 在「配置下发」页面创建任务。
- 基本信息:
- 任务名称:
核心区每日备份 - 执行方式:选择「周期执行」,设置频率为「每天」,时间为
02:00。
- 选择设备:点击「选择设备」,在弹出页面的分区筛选条件中选择「核心区」,点击
选择按钮勾选框,确认后按钮显示“已选 2 台”。 - 点击「创建任务」。任务将出现在任务列表中,状态为“挂起”,到次日凌晨 2:00 自动执行。可在任务详情中查看备份结果和日志。
操作示例二:批量下发 VLAN 配置
需求:为所有接入层交换机统一下发一组 VLAN 创建命令。
- 在「配置下发」页面,任务名称填写
接入层VLAN批量下发。 - 执行方式选择「立即执行」。
- 选择设备:筛选角色为「接入交换机」,全选并确认。
- 点击「添加配置」,在弹出配置选择界面选择「固定配置」,然后选用预先保存的名为“VLAN批量创建”的模板(也可选择自定义配置文件)。
- 点击「创建任务」后任务将开始执行。执行结束后,可在任务详情中双击任意设备查看命令回显,验证 VLAN 是否成功创建。
操作示例三:定时自动化巡检
需求:每周一上午 9:00 对所有核心与汇聚设备执行一次合规巡检。
- 在「设备巡检」页面,任务名称填写为
每周合规巡检。 - 执行方式选择「周期执行」,频率设为「每周」,时间
09:00,勾选“周一”。 - 选择设备:筛选角色包含「核心」和「汇聚」,选中全部。
- 点击「选择巡检模板」,选择已创建的“核心设备xxx基线巡检”模板。
- 创建任务后,任务将按周期自动运行。巡检完成后可进入详情页面查询执行结果,支持一键导出 HTML 巡检报告。
3.2 任务列表
展示所有已创建的任务,关键信息一目了然。
- 任务类型与状态:标识即时任务、定时任务或周期任务,并实时显示状态(
执行中、完成、失败、挂起)。 - 时间信息:展示任务的创建时间、计划时间与实际耗时。
- 操作选项:可查看任务的详细执行结果,或删除任务。
- 筛选与搜索:支持按“任务状态”筛选,或通过关键词搜索任务名称。
3.3 任务详情
点击任务列表中的“查看”,即可进入详情页。页面从上至下提供了完整的信息链路:
- 任务概览:顶部卡片展示任务名称、类型、状态、起止时间及总耗时。
- 执行统计:以可视化图表展示设备总数、成功数、失败数和成功率。
- 设备执行列表:通过表格形式展示每台设备的 IP、名称、厂商、型号及执行状态。
- 单设备日志:双击表格中的某台设备,可查看其详细的执行日志。根据任务类型,日志内容有所不同,例如配置下发任务会显示完整的命令回显,设备巡检则根据巡检模板呈现不同的界面及结果展示。
四、配置下发
此功能用于将标准化的统一配置或差异化的自定义配置批量、可靠地下发到指定设备。
- 配置模板:为方便复用,可将常用命令组合保存为“固定配置模板”。创建任务时,可直接选用,无需重复输入。
- 任务配置:在创建下发任务时,核心步骤是“添加配置”。有两种方式为设备指定下发内容:
- 固定配置:为所有选中设备统一下发一个预先创建的模板。
- 自定义配置:为每台设备单独指定一个包含配置命令的文本文件,满足差异化需求。
- 结果验证:在任务详情页的设备列表中,双击任意设备即可查看其完整的命令行执行回显,用于核对是否下发成功。
- 数据导出:点击“导出结果”,所有设备的执行会话将打包为一个
.zip文件下载。

创建一个固定配置模块,配置下发任务可以快速引用

五、配置备份
自动化备份网络设备的关键信息。
- 任务配置:创建备份任务十分简单,只需设置名称、选择执行方式(推荐使用周期任务)和目标设备。系统会根据设备厂商自动匹配并执行备份命令。
- 备份内容:每次备份任务会自动拉取并保存三类关键信息:
- 全量运行配置(系统根据厂商自动适配,例如华为设备执行
display current-configuration,思科设备执行show running-config) - ARP 表项(如
display arp) - MAC 地址表(如
display mac-address)
- 全量运行配置(系统根据厂商自动适配,例如华为设备执行
- 其他功能:
- 配置查询:基于备份数据进行关键字检索,快速查找关键配置、ARP 表、MAC 地址表等。
- 配置对比:提供文本对比工具。在左右两侧输入框分别粘贴变更前后的配置,点击“开始对比”,差异部分将高亮显示。

快速检索查找

文本对比

六、自动化巡检
自动化巡检是 NetClaw 的核心价值体现。通过高内聚、低耦合的设计思想,将业务逻辑和实现代码彻底解耦,采用模块化设计,将「检查什么、怎么判断」的专家经验沉淀为可复用的巡检模板,通过灵活的参数配置,即可适配不同设备与场景,实现对多种类型设备、多种业务维度的自动化合规检查,并支持生成可视化报告。
6.1 巡检任务管理
创建与执行
创建巡检任务时,除了基本设置,核心是添加一个巡检模板。执行时,系统将智能处理:
- 设备筛选:根据每个模板的“约束条件”,从选择的设备中自动匹配适用设备,精准下发。
任务详情与报告
- 详细日志:点击某台设备,会展开其详细的巡检过程。根据模板类型不同,展示内容侧重不同:
- 正则匹配:展示下发命令后的原始回显以及正则匹配的具体判定,让结论有据可循。
- TextFSM 解析:展示下发命令后的原始回显、解析出的结构化数据表格,以及每条规则在过滤后的数据上的具体判定。
- 网络编排:以工作流实例的方式展示编排的完整执行过程。包括:
- 全局执行结果:清晰展示工作流最终状态(成功、失败)。
- 节点状态拓扑:高亮每个原子节点的执行状态,可视化节点间的数据流向。对于条件分支等节点,会明确标记出本次实例实际执行的路径。
- 深度钻取分析:允许用户点击任一节点,查看其完整的执行信息快照,包括输入参数、结构化输出结果以及排错所需的详细执行日志。
-
- 自定义脚本:展示基于自定义脚本规则的判断回显,输出脚本中定义的任意自定义信息,更加灵活。日志中会打印脚本返回的
message内容,便于跟踪具体判定逻辑。
- 自定义脚本:展示基于自定义脚本规则的判断回显,输出脚本中定义的任意自定义信息,更加灵活。日志中会打印脚本返回的
- 巡检报告:点击“巡检报告”按钮,可一键生成包含巡检名称、评估标准及详细结果的 HTML 网页报告,方便存档与汇报。
6.2 巡检模板
巡检模板是自动化巡检的灵魂,它定义了“检查谁、检查什么、如何判定”的完整逻辑。
模板列表与管理
所有模板以卡片形式罗列,支持搜索、新增、编辑和删除。

创建与编辑模板
一个完整的巡检模板包含四个核心部分:
1. 基本信息
- 巡检名称:模板的唯一标识。
- 巡检描述:详述检查目的、检查内容和合规标准等,方便理解与复用。
2. 约束条件
精准定义模板的适用设备范围。系统会将目标设备的“厂商、型号、分区、角色”与此处设置比对,只有所有条件全部匹配(支持正则匹配,ALL 表示匹配所有)的设备,才会执行,从源头精准匹配。
| 字段 | 说明 | 默认值 |
|---|---|---|
| 设备厂商 | 如 华为 | ALL |
| 硬件型号 | 如 S[567]7 | ALL |
| 网络分区 | 如 测试区 | ALL |
| 设备角色 | 如 核心\|接入 | ALL |
3. 巡检模式
系统提供四种从简单到复杂的巡检模式,通过巡检模式按钮切换。
4. 业务逻辑配置
- 模式一:正则匹配: 适用于简单的文本匹配。
- 命令:执行的查询命令,如
display version。 - 锚点(可选):通过首尾锚点锁定文本范围,支持正则。
- 前置条件(可选):设置先决条件,如果满足先决条件才进行匹配信息的检查。
- 匹配规则:定义匹配信息正则,并选择“要求出现”(匹配到则合规,反之不合规)或“禁止出现”(匹配到则不合规,反之合规)。
- 命令:执行的查询命令,如
示例:检查设备版本是否为 5.1。命令:display version匹配信息:Version\s+5\.1,匹配类型:要求出现。
- 模式二:TextFSM 解析:TextFSM 是一种基于模板的文本解析引擎,可将半结构化的 CLI 回显(如
show命令输出)转换为结构化数据(字典格式)。NetClaw 在原生 TextFSM 基础上进行了扩展,不仅支持字符串、字符串列表的提取,还可自动识别并解析整数、浮点数、时间戳等多种数据类型,并引入数据过滤与合规巡检规则,使解析结果可直接用于自动化判定。适用于需要对回显进行结构化提取与复杂判定的场景。- 命令:支持多条命令,每行一条,回显将拼接后解析。
- TextFSM 模板:编写模板以提取变量,系统会自动识别变量类型。
- 数据过滤(可选):对解析出的结构化数据进行筛选。
- 巡检规则(必填):在数据过滤的基础上执行合规判定,支持值与值、值与变量的比较。
提示:您可以在「万能回显解析」模块中离线调试 TextFSM 模板与巡检规则,验证通过后再导入正式模板,大幅降低调试成本。
系统扩展后的数据类型与对应运算符如下:
| 数据类型 | 可用运算符 |
|---|---|
| 字符串 | 等于、不等于、包含、不包含、被正则匹配、以…开头、以…结尾 |
| 整数 | ==, !=, <, >, <=, >= |
| 浮点数 | ==, !=, <, >, <=, >= |
| 字符串列表 | 包含、不包含、元素个数等于 |
| 字符串集合 | 包含、不包含、元素个数等于 |
| 整数列表 | 包含、不包含、元素个数等于、最大值、最小值 |
| 浮点数列表 | 包含、不包含、元素个数等于、最大值、最小值 |
| 时间戳 | 时间间隔小于、时间间隔大于 |
类型识别规则:
- 字符串和字符串列表的识别与原生 TextFSM 一致,遵循标准 TextFSM 语法。
- 其他 6 种扩展类型需在
Value定义的option字段中添加Required,通过变量名后缀及变量对应的正则内容来识别:
- 若无
List字段:- 变量名以
Int结尾,且正则匹配-?\d+,则识别为整数。 - 变量名以
Flt结尾,且正则匹配-?\d+\.\d+,则识别为浮点数。 - 变量名以
Date结尾,且正则匹配((Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{1,2} \d{4} \d{2}:\d{2}:\d{2}|\d{4}-\d{1,2}-\d{1,2} \d{2}:\d{2}:\d{2}|\d{4}-\d{1,2}-\d{1,2}),则识别为时间戳。
- 变量名以
- 若有
List字段:- 变量名以
Int结尾,正则同整数,识别为整数列表。 - 变量名以
Flt结尾,正则同浮点数,识别为浮点数列表。 - 变量名以
Set结尾,则识别为字符串集合。
- 变量名以
示例:检查设备内存利用率是否低于 80%。
命令:display memory-usage
假设设备回显为:
Memory utilization statistics at 2026-06-04 15:23:49 676 ms
System Total Memory Is: 159383552 bytes
Total Memory Used Is: 128102308 bytes
Memory Using Percentage Is: 80%
对应的 TextFSM 模板可编写为:
Value Required UsageInt (-?\d+)
Start
^.*Memory Using Percentage Is:\s+${UsageInt}% -> Record
该模板将自动识别 UsageInt 为整数类型。巡检规则设置为:UsageInt < 80,即可判定合规。
- 模式三:网络编排: 选用在“网络编排”模块中设计的、包含合规巡检节点的工作流,详细教程见“网络编排”章节。
- 模式四:自定义脚本: 面向高级用户,提供最大灵活性。可编写自定义 Python 脚本,实现完全自由的巡检逻辑。
- 接口规范:脚本必须定义
main(devices)函数,并返回包含code("success"或"fail")和message的字典。您可以在函数内使用内置的execute_commands等方法与设备交互,无需处理连接池与多线程细节。 > 安全提示:请确保脚本来源可靠,避免执行未经验证的代码。
- 接口规范:脚本必须定义
代码示例(根据设备型号执行不同检查):
# 请参照以下格式自定义巡检脚本
def check_switch_version(devices):
"""
检查交换机固件版本是否符合标准: Version 5.1
"""
results = {}
# 执行命令,获取所有设备的输出
cmd_output_list = execute_commands(devices, ['display version'])
for item in cmd_output_list:
ip = item['IP']
if item['code'] != 'success':
results[ip] = {"code": "fail", "message": f"命令执行失败: {item['message']}"}
continue
if "Version 5.2" in item['message']:
results[ip] = {"code": "success", "message": "版本符合标准"}
else:
results[ip] = {"code": "fail", "message": "版本不符合标准"}
return results
def main(devices):
# 1. 按型号分流:型号为 'S5700' 的设备默认合规
default_devices = [dev for dev in devices if dev.get('型号') == 'S5700']
check_devices = [dev for dev in devices if dev.get('型号') != 'S5700']
results = {}
for dev in default_devices:
ip = dev.get('hostname')
results[ip] = {"code": "success", "message": "型号S5700默认合规"}
# 2. 对需要检查的设备进行版本检查
if check_devices:
check_results = check_switch_version(check_devices)
results.update(check_results)
return results
# 固定格式,devices巡检时传入,无需在代码中定义
result = main(devices)
操作示例:创建一个检查「华为设备版本合规」的巡检模板
- 进入「巡检模板」页面,点击「新增模板」。
- 基本信息:
- 巡检名称:
华为设备版本检查 - 巡检描述:
确保所有华为设备运行版本 5.1 - 约束条件:
- 设备厂商:选择
华为,其余保持默认ALL。 - 巡检模式:选择「正则匹配」。
- 业务逻辑配置:
- 命令:
display version - 匹配规则:添加规则,正则为
Version\s+5\.1,匹配类型为「要求出现」。 - 点击「保存」。之后在创建自动化巡检任务时,即可选择此模板,系统只会对华为设备执行该检查。

正则匹配类型巡检创建界面

TextFSM解析

网络编排巡检

自定义脚本巡检
七、快捷脚本
快捷脚本模块是一个集脚本存储、管理、执行于一体的轻量工作台。您可以将日常巡检、批量处理、数据分析等常用 Python 脚本保存为模板,随时检索、编辑并一键运行,无需反复编写或粘贴代码,显著提升重复性工作的处理效率。
与 AI 助手的区别:AI 智能助手中的“快捷脚本” Agent 侧重于即时生成代码并执行,而本模块侧重于手动创建、保存和复用您自己积累的脚本库,适合固化的运维流程。
7.1 新增与编辑脚本
- 脚本名称(必填):长度不超过 50 个字符,作为脚本的唯一标识。新增后名称不可修改。
- 脚本内容(必填):Python 代码区域,支持自由编辑。脚本可直接使用以下库:
- Python 内置库:如
os,sys,tkinter,json,datetime等。 - 软件内置第三方库:
customtkinter,pandas,numpy,openpyxl,textfsm,paramiko,netmiko,nornir,nornir-netmiko,scapy,pyshark,ping3,flask,requests,langchain,langchain-openai,langgraph,sqlalchemy,apscheduler,psutil,pillow,tabulate,pyyaml
- Python 内置库:如
7.2 执行脚本
在脚本列表中点击“查看”,打开脚本执行界面。界面分为左右两栏:
- 左侧:代码展示区
以只读模式展示当前脚本完整代码,具备 Python 语法高亮,便于确认脚本逻辑。 - 右侧:执行控制与日志区
- 开始执行:点击后,系统在独立子进程中运行脚本,标准输出(
print等)和错误信息将被实时捕获并显示在日志框中。 - 强制结束:脚本运行中时可点击,立即终止执行进程,避免死循环或超时等待。
- 日志输出:黑底白字日志框,带时间戳,错误信息为红色,系统提示为蓝色,并自动滚动至最新内容。
- 开始执行:点击后,系统在独立子进程中运行脚本,标准输出(

安全提示
代码通过独立进程执行,与主程序完全隔离,不会导致主界面卡顿或崩溃。为确保系统安全,请勿执行来源不明或包含高危操作(如文件删除、系统命令调用)的脚本。
7.3 使用场景举例
- 批量连通性测试:读取
devices.xlsx中的管理 IP,逐一 ping 并输出结果到 CSV。 - 日志格式化:将巡检原始回显解析为结构化表格,方便导出分析。
- 配置审计:自动对比备份配置与黄金模板,输出差异报告。
所有脚本均可重复使用,并可结合任务调度实现定时自动化运行。
八、网络编排
网络编排是 NetClaw 的高阶核心能力,以低代码/零代码的方式,将复杂的网络自动化任务抽象为直观的流程,通过串联可复用的“原子节点”并配置表单参数,像搭积木一样轻松构建自动化工作流。

8.1 编排设计态
全可视化流程编辑器,让您直观地“画”出自动化流程。
界面布局 采用经典的三栏式结构:
- 左侧 · 原子库:列出所有可用节点。
- 中间 · 编排画布:以纵向列表展示流程节点,箭头清晰指示路径流程,软件目前只支持单分支判断方式,后续计划在 Web 版本实现高级的拖拽式多分支方式。
- 右侧 · 配置面板:无需代码功底,通过表单方式配置当前选中节点的详细参数。
核心原子节点详细说明
系统提供六种原子节点,覆盖从数据获取、命令执行、文本解析、逻辑分支到最终巡检判定的完整网络自动化链路。
1. 获取 CMDB 信息
- 功能:从 NetClaw 内置的设备库中提取指定设备的属性信息(如管理IP、厂商、型号、角色、站点等),供下游节点引用,用于后续的分支控制、逻辑判断。
- 配置参数:
- 输出变量名:自定义变量名,下游节点通过下拉框直接选择引用。
- 输出变量类型:字典类型。
- 元数据类型:
manage_ip: 字符串device_name: 字符串manufacturer: 字符串device_model: 字符串device_site: 字符串net_partition: 字符串role: 字符串remarks: 字符串

2. 下发 CLI 命令
- 功能:向网络设备下发指定的CLI命令,也可引用上游节点产生的字符串类型的变量,输出是设备的原始回显。
- 配置参数:
- 命令内容:支持字符串CLI命令(每行一条命令),也可引用上游节点的输出字符串变量,下发时会按行分隔。
- 输出变量名:自定义变量名,下游节点通过下拉框直接选择引用。
- 输出变量类型:字符串类型。

3. 文本解析
- 功能:对指定的文本(通常来自“下发 CLI 命令”节点的输出)应用 TextFSM 模板,进行结构化解析与过滤。其底层解析逻辑与巡检模板中的 TextFSM 解析以及回显解析功能模块完全一致,支持同样的扩展数据类型和过滤规则。 > 提示:您可以在「万能回显解析」模块中离线调试 TextFSM 模板与过滤条件,确认无误后再配置到原子节点中。
- 配置参数:
- 输入文本源:下拉框方式选择上游节点的输出字符串变量,作为待解析文本。
- TextFSM 模板:输入解析模板。
- 数据过滤条件(可选):对解析后的结构化数据进行筛选。
- 输出变量名:自定义变量名,下游节点通过下拉框直接选择引用。
- 输出变量类型:字典列表。

4. 动态代码执行器
- 功能:嵌入一段自定义 Python 代码,对上游数据进行灵活加工与处理。代码运行在隔离的执行上下文中,代码中可通过
variables.get('变量名')方式引用上游节点产生的变量。 - 配置参数:
- 代码输入:编写 Python 脚本,可使用预置的
variables字典获取上游变量,通过result = 'xxx'方式返回处理结果(字符串)。 - 输出变量名:自定义变量名,下游节点通过下拉框直接选择引用。
- 输出变量类型:字符串类型。
- 代码输入:编写 Python 脚本,可使用预置的

- 代码规范:代码体必须以
result = 'xxx'结尾,返回值为result值。 - 典型场景:数值计算、格式转换、复杂条件组合、调用外部库进行高级分析等。
- 代码示例:改造一条新命令,传递给下游的下发 CLI 命令原子节点使用
# 可直接通过 variables.get的方式获取上游产生的数据
router_id = variables.get('bgp_output', '') # 假设上游节点 输出了名为 bgp_output 的变量
# ... ... 其他的代码逻辑
result = f'display ip routing {router_id}'
5. 条件分支
- 功能:对上游节点产生的变量进行逻辑判断,决定流程走向。匹配条件后则继续向下执行,否则走默认分支。
- 配置参数:
- 输入数据源:下拉框方式选择上游节点输出的
字典、字典列表类型的变量。 - 巡检规则:定义一条或多条规则,每条规则包含字段、运算符和阈值。
- 输入数据源:下拉框方式选择上游节点输出的

6. 合规巡检
- 功能:作为工作流的终点,对上游节点产生的变量进行规则判定,输出“合规”或“不合规”的结论。通常位于编排末尾,评估经过一系列处理后的数据是否满足合规标准。
- 配置参数:
- 输入数据源:下拉框方式选择上游节点输出的
字典、字典列表类型的变量。 - 巡检规则:定义一条或多条规则,每条规则包含字段、运算符和阈值。
- 输入数据源:下拉框方式选择上游节点输出的
- 与巡检模板的关系:该节点使整个编排可直接被自动化巡检任务调用,并在巡检报告中呈现最终判定和依据。

编排构建流程
- 新建:创建一个编排,系统自动生成“开始”和“结束”节点。
- 添加与排序:从原子库添加节点,系统会自动自上而下堆叠排列。
- 配置:点击节点,在右侧面板配置其参数。可引用前序节点的输出变量,实现数据传递流转。
- 保存与校验:保存时,系统将自动校验逻辑完整性(如必填项、变量引用、终点节点),确保编排逻辑可用。
重要提示:工作流具有“坍塌效应”——当您修改或删除某个原子节点时,该节点之后的所有下游节点配置将被自动重置,需重新配置,以确保数据引用与流向的正确性。建议在调整前做好记录。
操作示例:构建「检查设备内存利用率」的编排
- 在「网络编排」页面点击「新增编排」。
- 从原子库依次添加以下节点:
- 下发 CLI 命令
- 文本解析
- 合规巡检
- 配置下发 CLI 命令节点:
- 命令内容输入:
display memory-usage - 输出变量名:
mem_raw
- 配置文本解析节点:
- 输入文本源:选择
mem_raw(上一步的输出) - TextFSM 模板:编写解析模板,提取
UsageInt变量(自动识别为整数)。 - 输出变量名:
mem_parsed
- 配置合规巡检节点:
- 输入数据源:选择
mem_parsed - 巡检规则:添加规则
UsageInt < 80
- 点击「保存」。系统自动校验通过后,该编排即可在巡检模板中被选用。
8.2 编排执行态
将设计好的编排应用于巡检模板,并通过创建自动化巡检任务来实现编排工作流的实际执行。
- 执行入口:在设备巡检页面,选择编排巡检模板和设备(支持按条件批量或手动指定 IP)。
- 运行机制:引擎为每台设备创建隔离的执行上下文,支持多线程并行执行,高效处理大批量任务。执行引擎内置完善的异常捕获与重试机制,单台设备的失败不会影响整体任务进程,确保大批量执行的稳定可靠。
- 结果查看:执行完成后,展示每台设备的综合状态。点击设备,可展开详细执行日志,深度钻取每个节点的输入输出与耗时,便于排错。
- 报告导出:支持导出完整的 JSON 格式执行报告。
见巡检任务单台设备详细执行结果。
九、数据解析与转换
9.1 模板快测
一个集成测试环境,提供四类工具的快速验证:
- Jinja2 测试:输入模板和 JSON/YAML 变量,即刻预览渲染结果。
- TextFSM 测试:输入文本和模板,解析并输出结构化表格。
- 正则测试:在线测试正则表达式的查找与替换效果。
- JSON/YAML 互转:格式互转,并支持树形可视化展示。
9.2 万能回显解析
功能强大的离线解析与合规巡检工具。无需连接设备,即可对粘贴的 CLI 回显文本或上传的文本文件进行 TextFSM 解析、数据过滤和合规巡检。
底层的 TextFSM 解析逻辑及类型识别规则与巡检模板中的 TextFSM 解析以及网络编排中的文本解析原子节点完全一致,确保从调试到生产环境的无缝衔接。
主要功能:
- 多源输入:支持直接粘贴命令回显,或上传
.txt、.log等文本文件。 - TextFSM 解析:加载自定义 TextFSM 模板,将非结构化回显实时转化为结构化表格,并自动识别扩展数据类型。
- 数据过滤:对解析后的结构化数据进行条件筛选,快速定位关注记录。
- 合规巡检:直接在界面上配置巡检规则,对解析或过滤后的数据执行合规判定,无需创建正式巡检任务即可验证规则有效性。
- 结果导出:支持将解析结果或巡检结论导出为 Excel、JSON 等格式,便于归档、分享或进一步分析。
- 快速调试:非常适合在编写 TextFSM 巡检模板或网络编排相关原子节点前离线调试,所见即所得,极大降低试错成本。
典型应用场景:
- 从日常收集的
display命令日志中批量提取信息。 - 对历史配置备份文件进行离线合规审计。
- 在创建正式巡检模板、网络编排前快速验证 TextFSM 模板和巡检规则的准确性。

十、AI 智能助手
AI 智能助手是内嵌于 NetClaw 的对话式智能引擎。基于 LangChain 架构,将大语言模型与 NetClaw 的工具链深度整合,构建了多款高度垂直的专业 Agent。在统一的聊天界面下,只需用自然语言描述意图,Agent 即可自主规划、调用工具、分析结果,完成从生成到执行的复杂闭环。
10.1 界面与交互
- 界面布局:采用左右分栏设计。主页以卡片形式陈列 13 个独立 Agent,点击即可进入专属对话窗口。此外,在设备管理模块中还深度集成了「智能终端」Agent,提供与设备命令行联动的交互体验。
- 会话管理:每个 Agent 的对话基于独立的 SQLite 持久化存储,切换历史会话时可完整恢复上下文。点击“开启新会话”将生成新的
session_id并重建 Agent 实例,开始全新对话。 - 工具可视化:当 Agent 调用内置工具(如生成拓扑图、渲染配置、执行代码)时,对话窗口会以橙色标签同步显示调用过程,结果通过浏览器或内嵌服务展示,全程透明、可感知。

10.2 内置 Agent 详解
每个 Agent 均基于精心设计的系统指令与工具链,独立运行,互不干扰。以下详细介绍所有内置 Agent。
1. 日常对话
- 定位:基于大语言模型的纯对话助手,不挂载任何工具。
- 核心能力:可进行技术问答、概念解释、方案探讨等开放式交流。
- 输入示例:
“OSPF 的 LSA 类型有哪些?各有什么作用?” - 说明:适合常规技术咨询与知识拓展,所有回答均由模型自身知识驱动。

2. 网络架构设计
- 定位:资深网络架构师,输出结构化网络架构设计文档。
- 核心能力:分析需求与约束后,自动撰写包含总体架构概览、分区分模块容量设计、路由协议与流量调度策略、硬件选型建议等完整 Markdown 设计文档。
- 输入示例: 现网为三层架构,核心区两台华为 S12700,汇聚区四台 S6730,需新建一个容纳 500 个信息点的办公接入区。 要求:核心与汇聚间运行 OSPF,接入层堆叠,关键链路预留 30% 容量。
- 说明:适用于园区网改造、数据中心 Spine-Leaf 设计、广域网互联规划等场景。


3. 网络变更预案
- 定位:变更专家,输出标准化变更 SOP。
- 核心能力:解析变更目标与风险约束,生成涵盖备份策略、分步操作、详细回退方案、验证方法及风险矩阵的 Markdown 文档,确保割接安全可控。
- 输入示例: 将核心交换机 Core-SW1 的软件版本从 V200R019 升级至 V200R022。 变更窗口:周六凌晨 2:00-6:00,业务中断不超过 30 分钟。
- 说明:让每一次变更都有规可循、有案可查,降低人为失误。
4. eNSP 实验助手
- 定位:eNSP 仿真环境的多设备批量配置 Agent,适合学习辅助与实验快速开局。
- 核心能力:导入
.topo文件后,Agent 自动理解拓扑结构,随后您只需描述业务需求,即可完成批量配置下发、状态诊断等操作。 - 输入示例: 需求:AR1 和 AR2 之间运行 OSPF,Area 0,接口 IP 请自行规划。
- 说明:首次使用需点击“选择 eNSP 文件”导入拓扑。

5. 快捷脚本
- 定位:零门槛 Python 脚本生成与即时执行器。
- 核心能力:理解自然语言需求后,自动生成完整的 Python 代码,并调用内置环境运行,返回执行结果。生成后的代码可在左侧面板直接编辑修改。
- 输入示例: 写一个脚本,读取xxx目录下的 devices.xlsx,对“管理IP”列逐一 ping,将结果输出到 result.csv。
- 说明:内置
netmiko、pandas、textfsm、requests等丰富三方库,代码生成后即点即用,无需配置环境。


6. 生成巡检脚本
- 定位:合规巡检脚本生成器,输出符合 NetClaw 接口规范的 Python 代码。
- 核心能力:理解合规标准后,自动设计设备分组逻辑,生成包含
main(devices)函数的完整脚本,直接调用预置的execute_commands函数,无需处理连接池与多线程。 - 输入示例: 型号为 S5700 的设备默认合规。 其他设备执行 display version,回显含 Version 5.1 则合规,否则不合规。
- 说明:生成的脚本可直接导入自动化巡检模块,用于网络设备合规检查。
7. 生成 Jinja2 模板
- 定位:Jinja2 模板设计助手,支持多文件项目与即时渲染验证。
- 核心能力:根据配置需求与变量结构,设计模板文件体系,自动创建项目目录和文件,并可依据提供的测试数据即时渲染,验证模板正确性。
- 输入示例: 生成华为核心交换机的 OSPF 配置模板,要求支持多区域配置,并包含 全局网络管理类如 NTP、info-center、AAA 等基础配置。
- 说明:适合需要模块化模板组织的复杂配置场景,助力模板工程化。


8. 生成 TextFSM 模板
- 定位:CLI 回显解析专家,内置迭代验证闭环。
- 核心能力:接收待解析的回显样本,分析结构并自动生成 TextFSM 模板,随即调用解析工具实测;若失败则自动分析错误并修正,直至输出正确的结构化数据。
- 输入示例: 请解析以下回显,提取接口名、状态、VLAN: Interface Status VLAN GigabitEthernet0/0/1 up 10 GigabitEthernet0/0/2 down 20
- 说明:非常适合解析非标厂商或自定义命令的输出,降低模板编写门槛。
9. 演示文稿
- 定位:HTML 演示文稿设计专家。
- 核心能力:分析主题与内容结构,从多套专业模板中择优匹配,自动填充内容并生成可直接演示的 HTML 文稿。
- 输入示例: 做一个关于“OSPF 进阶”的技术分享 PPT,包含邻居建立过程、LSA 类型、区域类型三部分。
- 说明:使用github开源html-ppt-skill的部分模版,支持课程模块风、极简演讲风、技术白皮书风等多种视觉风格,演示即开即用。




course-module部分模板展示:






xhs-pastel-card部分模板展示:





10. 网络拓扑图
- 定位:网络拓扑图生成器。
- 核心能力:理解设备与连接描述,自动构造分层拓扑数据,调用工具渲染为可交互的可视化拓扑图,支持节点拖动与缩放。
- 输入示例: 双核心交换机 Core-SW1/Core-SW2,四台接入交换机,防火墙 FW-1 冗余连接电信和联通,服务器区挂两台 Server。
- 说明:输入文字即可出图,无需学习绘图软件。


11. Mermaid 图表
- 定位:图表生成助手。
- 核心能力:识别用户想要表达的图表类型(流程图、时序图、甘特图等),自动生成 Mermaid 语法并渲染为高清预览图。
- 输入示例: 画一个用户登录认证的流程图,包含校验、MFA 验证和失败处理分支。
- 说明:忘记 Mermaid 语法也能轻松绘制专业图表。
12. 思维导图
- 定位:思维导图一键生成。
- 核心能力:从文本或关键词中提取层级要点,构建 Markdown 大纲,并渲染为可展开、折叠的交互式思维导图。
- 输入示例: 帮我梳理一下网络故障排查的思路,从物理层到应用层。
- 说明:适合故障排查思路梳理、学习笔记整理、会议要点总结等场景。


13. 智能终端(设备管理)
- 定位:集成在设备管理模块中的场景化 Agent,专为单台设备的实时诊断和命令辅助而设计。
- 界面形态:左侧为设备 CLI 终端(自动登录),右侧为 AI 对话面板,两者紧密联动。
- 核心能力:用户可用自然语言提问,Agent 解析意图后在终端自动执行对应命令,辅助配置下发、状态查询与问题分析。
- 输入示例:
“查看当前设备的内存利用率,并判断是否超过阈值” - 说明:该 Agent 与设备命令行深度绑定,是排障和日常操作的得力参谋。请注意,智能终端的会话独立于主界面 Agent 列表,但同样具备持久化上下文能力。

10.3 使用提示
- 工具深度融合:每个 Agent 均直接调用 NetClaw 底层工具,调用过程在对话流中以橙色标签呈现,状态可感知。
- 自然语言驱动:与手动配置的传统模块不同,AI 助手允许用自然语言驱动相同的生成与分析能力,极大降低使用门槛。
- 多轮对话优化:面对复杂需求时,Agent 会主动询问缺失参数(如 IP 地址、接口编号),请配合提供以确保输出精准。
- 上下文持久化:每个 Agent 的对话历史通过
SqliteSaver持久化,关闭客户端后重新打开仍可继续上次对话(智能终端 Agent 和 eNSP 实验助手 除外)。 - 内容声明:所有 AI 输出仅供参考,请务必在现网实施前进行验证,确保准确性与安全性。
十一、网络工具箱
集成了网络工程师日常最常用的几款实用工具,无需额外安装,开箱即用。
11.1 子网工具
提供 6 个紧密协作的 IP 规划功能:
- IP 计算器:输入任意网段,瞬间输出网络地址、广播地址、子网掩码、可用 IP 范围等完整信息。
- IP 数量推算掩码:根据您需要的可用 IP 数量,自动推荐最佳子网掩码,告别手工推算。
- 掩码转换器:在掩码位数与点分十进制格式之间自由切换。
- 网段拆分:将一个大网段按需划分为多个等长或不等长的子网。
- 网段汇总:将一组零散网段聚合为最精简的 CIDR 地址块。
- 网段查重:检测多个网段是否存在重叠冲突,辅助地址规划审计。

11.2 Ping 监控
实时检测目标 IP 的连通性与延迟。支持两种输入方式(IP 段或列表)及两种探测模式:
- 单次扫描:一次性快速测试,即时返回通断状态与延迟。
- 持续监控:持续探测并记录变化,尤其适用于割接期间对关键业务的实时连通性监视,异常即时告警。

11.3 端口扫描
高效探测目标 IP 的 TCP 端口开放状态。输入方式灵活,可直接填写 IP 列表,或通过“IP 端口”绑定列表,支持端口范围(如 80,443,8000-9000)的批量扫描。
- 单次扫描:一次性获取端口开放情况。
- 持续监控:持续监视关键端口,在服务割接或故障排查时确保端口可达性。

11.4 Web 监控
为一组目标 IP 启动本地 Web 监控页面,以类似 Smokeping 的图表方式实时展示各节点的延迟与丢包率变化曲线,页面每 30 秒自动刷新,长期监控一目了然。

11.5 DHCP Server
快速启动一个轻量 DHCP 服务,绑定指定网卡,即可为所在网络提供动态地址分配,适用于临时测试环境或应急地址分配。
安全提示:请勿在未经授权的生产网络随意启动 DHCP 服务,可能导致地址冲突,影响业务。

11.6 报文分析
上传 .pcap、.pcapng 等格式的抓包文件,一键分析报文特征,输出协议分布统计、流量 Top 5 会话、环路检测结果、TCP 异常重传与握手分析等关键信息,是故障定位的快捷帮手。

十二、高效办公
一系列轻量内置工具,贴合网络工程师日常文档与图表处理需求,让您无需切换多个软件即可完成高效输出。
12.1 思维导图
在编辑器中使用简洁的 Markdown 大纲语法,一键生成交互式思维导图。支持节点展开/折叠、拖拽调整,是梳理故障排查思路、构建知识体系的得力助手。


12.2 Mermaid 图表
无需记忆繁杂语法,输入 Mermaid 文本,即时渲染为流程图、时序图、状态图等专业图表,可直接复制到方案文档或演示文稿中。


12.3 网络拓扑图
上传按规范填写的 Excel 表格(可先下载标准模板),一键生成包含设备连接关系与分层的网络拓扑图,支持交互式查看与导出。


12.4 待办事项
一个轻量的待办管理工具,支持添加、勾选完成和删除任务,帮助您跟踪日常运维计划、项目节点与临时事项,日程井井有条。


12.5 轻量 Markdown 编辑器
内置干净、无干扰的编辑器。左侧输入 Markdown 源码,右侧即时预览,中间分割线可自由拖动调节宽度。完整支持标题、列表、代码块、引用、表格等语法,并可将内容导出为 PDF 或 Word 文档,是撰写技术笔记、运维日报的便捷之选。

12.6 表格处理
- 表格合并:将多个结构相同的 Excel 文件快速合并为一个文件。
- 表格拆分:按指定列的条件将单个 Excel 文件拆分为多个文件,方便数据分拣与分发。


1508

被折叠的 条评论
为什么被折叠?



