网工必看!一个让运维效率原地起飞的网络自动化工具【NetClaw】

快速使用

一、产品简介与安装

产品定位

NetClaw 是一款专为网络工程师设计的现代化 Windows 桌面应用。无需复杂部署,开箱即用,集设备纳管、配置自动化、智能巡检、任务调度、可视化编排与 AI 智能助手等核心能力于一体,同时内置子网计算、连通性探测、报文分析等多种常用网络工具,是实现网络运维自动化、提升网络运维效率的得力助手。

安装步骤

  1. 访问 https://netclaw.site 获取安装包 netclaw_1.0.3_setup.exe,双击启动安装向导。
  2. 按向导提示完成安装,双击桌面快捷方式启动 NetClaw。
  3. 登录界面输入密码完成登录,初始密码为 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」

  1. 进入「信息维护」页面,点击「厂商」标签页。
  2. 点击「新增厂商」按钮,弹出配置窗口。
  3. 填写厂商名称:Juniper
  4. 在「netmiko 平台类型」中选择 juniper_junos
  5. 填写关键查询命令(以 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 配置渲染

  1. 准备数据与模板:准备好 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"}
         ]
       }
     }
   }
  1. 执行渲染:选择主模板和对应数据文件,系统将自动渲染。若模板存在引用层级,只需选择主模板,其 {% include %} 的子模板会被自动加载。
  2. 查看与导出:渲染结果按设备分页展示。点击“导出结果”,所有设备的配置文件将打包为一个 .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 创建任务

创建一个自动化任务的步骤:

  1. 基本信息设置
  • 任务名称:为任务指定一个唯一的名称,长度不超过 30 个字符。
  • 执行方式:支持三种模式。
    • 立即执行:保存任务后立刻启动。
    • 定时执行:在指定的未来时间点(格式如 YYYY-MM-DD HH:MM,例如 2026-06-01 15:26)自动执行一次。
    • 周期执行:按设定的频率(如每天几点,或每隔 N 小时)周期性自动执行。

 

 

  1. 选择目标设备 点击“选择设备”按钮,在弹出的窗口中批量选择要执行任务的设备。按钮上将实时显示已选设备数量。
  2. 配置执行内容(根据任务类型而异)
  • 配置备份:无需额外配置,系统自动执行预设的命令进行全量配置、ARP 表项、MAC 表项的备份。
  • 配置下发:需点击“添加配置”,为设备选择自定义的配置文件或预设的配置模板。
  • 自动化巡检:需点击“选择巡检模板”,添加一个已预设好的巡检模板。

 

创建任务

 

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

 

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

 

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

 

任务的执行详情

 

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

 

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

 

自动生成的巡检报告

 

配置并启用邮件通知

 

任务完成后将自动发送邮件

操作示例一:创建每日自动备份任务

需求:每天凌晨 2:00 对核心区交换机执行配置备份。

  1. 在「配置下发」页面创建任务。
  2. 基本信息
  • 任务名称:核心区每日备份
  • 执行方式:选择「周期执行」,设置频率为「每天」,时间为 02:00

 

  1. 选择设备:点击「选择设备」,在弹出页面的分区筛选条件中选择「核心区」,点击 选择按钮 勾选框,确认后按钮显示“已选 2 台”。
  2. 点击「创建任务」。任务将出现在任务列表中,状态为“挂起”,到次日凌晨 2:00 自动执行。可在任务详情中查看备份结果和日志。

操作示例二:批量下发 VLAN 配置

需求:为所有接入层交换机统一下发一组 VLAN 创建命令。

  1. 在「配置下发」页面,任务名称填写 接入层VLAN批量下发
  2. 执行方式选择「立即执行」。
  3. 选择设备:筛选角色为「接入交换机」,全选并确认。
  4. 点击「添加配置」,在弹出配置选择界面选择「固定配置」,然后选用预先保存的名为“VLAN批量创建”的模板(也可选择自定义配置文件)。
  5. 点击「创建任务」后任务将开始执行。执行结束后,可在任务详情中双击任意设备查看命令回显,验证 VLAN 是否成功创建。

操作示例三:定时自动化巡检

需求:每周一上午 9:00 对所有核心与汇聚设备执行一次合规巡检。

  1. 在「设备巡检」页面,任务名称填写为 每周合规巡检
  2. 执行方式选择「周期执行」,频率设为「每周」,时间 09:00,勾选“周一”。
  3. 选择设备:筛选角色包含「核心」和「汇聚」,选中全部。
  4. 点击「选择巡检模板」,选择已创建的“核心设备xxx基线巡检”模板。
  5. 创建任务后,任务将按周期自动运行。巡检完成后可进入详情页面查询执行结果,支持一键导出 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]7ALL
网络分区如 测试区ALL
设备角色如 核心\|接入ALL

3. 巡检模式

系统提供四种从简单到复杂的巡检模式,通过巡检模式按钮切换。

4. 业务逻辑配置

  • 模式一:正则匹配: 适用于简单的文本匹配。
    • 命令:执行的查询命令,如 display version
    • 锚点(可选):通过首尾锚点锁定文本范围,支持正则。
    • 前置条件(可选):设置先决条件,如果满足先决条件才进行匹配信息的检查。
    • 匹配规则:定义匹配信息正则,并选择“要求出现”(匹配到则合规,反之不合规)或“禁止出现”(匹配到则不合规,反之合规)。
示例:检查设备版本是否为 5.1。 命令display version 匹配信息Version\s+5\.1,匹配类型:要求出现。
  • 模式二:TextFSM 解析:TextFSM 是一种基于模板的文本解析引擎,可将半结构化的 CLI 回显(如 show 命令输出)转换为结构化数据(字典格式)。NetClaw 在原生 TextFSM 基础上进行了扩展,不仅支持字符串、字符串列表的提取,还可自动识别并解析整数、浮点数、时间戳等多种数据类型,并引入数据过滤与合规巡检规则,使解析结果可直接用于自动化判定。适用于需要对回显进行结构化提取与复杂判定的场景。
    • 命令:支持多条命令,每行一条,回显将拼接后解析。
    • TextFSM 模板:编写模板以提取变量,系统会自动识别变量类型。
    • 数据过滤(可选):对解析出的结构化数据进行筛选。
    • 巡检规则(必填):在数据过滤的基础上执行合规判定,支持值与值、值与变量的比较。
提示:您可以在「万能回显解析」模块中离线调试 TextFSM 模板与巡检规则,验证通过后再导入正式模板,大幅降低调试成本。

系统扩展后的数据类型与对应运算符如下:

数据类型可用运算符
字符串等于、不等于、包含、不包含、被正则匹配、以…开头、以…结尾
整数==, !=, <, >, <=, >=
浮点数==, !=, <, >, <=, >=
字符串列表包含、不包含、元素个数等于
字符串集合包含、不包含、元素个数等于
整数列表包含、不包含、元素个数等于、最大值、最小值
浮点数列表包含、不包含、元素个数等于、最大值、最小值
时间戳时间间隔小于、时间间隔大于

类型识别规则

  1. 字符串和字符串列表的识别与原生 TextFSM 一致,遵循标准 TextFSM 语法。
  2. 其他 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) 

操作示例:创建一个检查「华为设备版本合规」的巡检模板

  1. 进入「巡检模板」页面,点击「新增模板」。
  2. 基本信息
  • 巡检名称:华为设备版本检查
  • 巡检描述:确保所有华为设备运行版本 5.1
  • 约束条件
  • 设备厂商:选择 华为,其余保持默认 ALL
  • 巡检模式:选择「正则匹配」。
  • 业务逻辑配置
  • 命令:display version
  • 匹配规则:添加规则,正则为 Version\s+5\.1,匹配类型为「要求出现」。
  • 点击「保存」。之后在创建自动化巡检任务时,即可选择此模板,系统只会对华为设备执行该检查。

 

 

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

 

TextFSM解析

 

网络编排巡检

 

自定义脚本巡检

 


 

七、快捷脚本

快捷脚本模块是一个集脚本存储、管理、执行于一体的轻量工作台。您可以将日常巡检、批量处理、数据分析等常用 Python 脚本保存为模板,随时检索、编辑并一键运行,无需反复编写或粘贴代码,显著提升重复性工作的处理效率。

与 AI 助手的区别:AI 智能助手中的“快捷脚本” Agent 侧重于即时生成代码并执行,而本模块侧重于手动创建、保存和复用您自己积累的脚本库,适合固化的运维流程。

7.1 新增与编辑脚本

  • 脚本名称(必填):长度不超过 50 个字符,作为脚本的唯一标识。新增后名称不可修改
  • 脚本内容(必填):Python 代码区域,支持自由编辑。脚本可直接使用以下库:
    • Python 内置库:如 ossystkinterjsondatetime 等。
    • 软件内置第三方库: customtkinterpandasnumpyopenpyxltextfsmparamikonetmikonornirnornir-netmikoscapypysharkping3flaskrequestslangchainlangchain-openailanggraphsqlalchemyapschedulerpsutilpillowtabulatepyyaml

 

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' 方式返回处理结果(字符串)。
    • 输出变量名:自定义变量名,下游节点通过下拉框直接选择引用。
    • 输出变量类型:字符串类型。

 

  • 代码规范:代码体必须以 result = 'xxx' 结尾,返回值为 result 值。
  • 典型场景:数值计算、格式转换、复杂条件组合、调用外部库进行高级分析等。
  • 代码示例:改造一条新命令,传递给下游的下发 CLI 命令原子节点使用
# 可直接通过 variables.get的方式获取上游产生的数据
router_id = variables.get('bgp_output', '')  # 假设上游节点 输出了名为 bgp_output 的变量
# ... ... 其他的代码逻辑
result = f'display ip routing {router_id}'

5. 条件分支

  • 功能:对上游节点产生的变量进行逻辑判断,决定流程走向。匹配条件后则继续向下执行,否则走默认分支。
  • 配置参数
    • 输入数据源:下拉框方式选择上游节点输出的字典 、 字典列表 类型的变量。
    • 巡检规则:定义一条或多条规则,每条规则包含字段、运算符和阈值。

 

6. 合规巡检

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

 

编排构建流程

  1. 新建:创建一个编排,系统自动生成“开始”和“结束”节点。
  2. 添加与排序:从原子库添加节点,系统会自动自上而下堆叠排列。
  3. 配置:点击节点,在右侧面板配置其参数。可引用前序节点的输出变量,实现数据传递流转。
  4. 保存与校验:保存时,系统将自动校验逻辑完整性(如必填项、变量引用、终点节点),确保编排逻辑可用。
重要提示:工作流具有“坍塌效应”——当您修改或删除某个原子节点时,该节点之后的所有下游节点配置将被自动重置,需重新配置,以确保数据引用与流向的正确性。建议在调整前做好记录。

操作示例:构建「检查设备内存利用率」的编排

  1. 在「网络编排」页面点击「新增编排」。
  2. 从原子库依次添加以下节点:
  • 下发 CLI 命令
  • 文本解析
  • 合规巡检

 

  1. 配置下发 CLI 命令节点
  • 命令内容输入:display memory-usage
  • 输出变量名:mem_raw

 

  1. 配置文本解析节点
  • 输入文本源:选择 mem_raw(上一步的输出)
  • TextFSM 模板:编写解析模板,提取 UsageInt 变量(自动识别为整数)。
  • 输出变量名:mem_parsed

 

  1. 配置合规巡检节点
  • 输入数据源:选择 mem_parsed
  • 巡检规则:添加规则 UsageInt < 80

 

  1. 点击「保存」。系统自动校验通过后,该编排即可在巡检模板中被选用。

8.2 编排执行态

将设计好的编排应用于巡检模板,并通过创建自动化巡检任务来实现编排工作流的实际执行。

  • 执行入口:在设备巡检页面,选择编排巡检模板和设备(支持按条件批量或手动指定 IP)。
  • 运行机制:引擎为每台设备创建隔离的执行上下文,支持多线程并行执行,高效处理大批量任务。执行引擎内置完善的异常捕获与重试机制,单台设备的失败不会影响整体任务进程,确保大批量执行的稳定可靠。
  • 结果查看:执行完成后,展示每台设备的综合状态。点击设备,可展开详细执行日志,深度钻取每个节点的输入输出与耗时,便于排错。
  • 报告导出:支持导出完整的 JSON 格式执行报告。

见巡检任务单台设备详细执行结果。


九、数据解析与转换

9.1 模板快测

一个集成测试环境,提供四类工具的快速验证:

  1. Jinja2 测试:输入模板和 JSON/YAML 变量,即刻预览渲染结果。
  2. TextFSM 测试:输入文本和模板,解析并输出结构化表格。
  3. 正则测试:在线测试正则表达式的查找与替换效果。
  4. JSON/YAML 互转:格式互转,并支持树形可视化展示。

9.2 万能回显解析

功能强大的离线解析与合规巡检工具。无需连接设备,即可对粘贴的 CLI 回显文本或上传的文本文件进行 TextFSM 解析、数据过滤和合规巡检

底层的 TextFSM 解析逻辑及类型识别规则与巡检模板中的 TextFSM 解析以及网络编排中的文本解析原子节点完全一致,确保从调试到生产环境的无缝衔接。

主要功能

  • 多源输入:支持直接粘贴命令回显,或上传 .txt.log 等文本文件。
  • TextFSM 解析:加载自定义 TextFSM 模板,将非结构化回显实时转化为结构化表格,并自动识别扩展数据类型。
  • 数据过滤:对解析后的结构化数据进行条件筛选,快速定位关注记录。
  • 合规巡检:直接在界面上配置巡检规则,对解析或过滤后的数据执行合规判定,无需创建正式巡检任务即可验证规则有效性。
  • 结果导出:支持将解析结果或巡检结论导出为 ExcelJSON 等格式,便于归档、分享或进一步分析。
  • 快速调试:非常适合在编写 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。
  • 说明:内置 netmikopandastextfsmrequests 等丰富三方库,代码生成后即点即用,无需配置环境。

 

 

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 文件拆分为多个文件,方便数据分拣与分发。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值