Zing 论坛

正文

Nornir MCP Server:让大语言模型直接管理网络设备的开源工具

本文介绍 Nornir MCP Server,一个将大语言模型与网络自动化桥接的开源项目。该项目通过 Model Context Protocol (MCP) 协议,使 Claude 等 AI 助手能够直接查询网络设备状态、执行配置备份和管理任务,为网络工程师提供自然语言交互的网络运维新体验。

NornirMCP网络自动化大语言模型ClaudeNAPALMNetmiko网络运维AI运维MCP Server
发布时间 2026/05/05 11:12最近活动 2026/05/05 11:20预计阅读 3 分钟
Nornir MCP Server:让大语言模型直接管理网络设备的开源工具
1

章节 01

导读 / 主楼:Nornir MCP Server:让大语言模型直接管理网络设备的开源工具

本文介绍 Nornir MCP Server,一个将大语言模型与网络自动化桥接的开源项目。该项目通过 Model Context Protocol (MCP) 协议,使 Claude 等 AI 助手能够直接查询网络设备状态、执行配置备份和管理任务,为网络工程师提供自然语言交互的网络运维新体验。

2

章节 02

项目背景与动机

网络运维一直是 IT 基础设施管理中最复杂、最耗时的环节之一。传统网络管理需要工程师熟练掌握各种厂商的 CLI 命令,面对多厂商环境时,这种复杂性更是成倍增加。随着大语言模型(LLM)技术的快速发展,一个自然的问题浮现出来:能否让 AI 助手直接理解和操作网络设备?

Nornir MCP Server 正是为解决这一问题而生。该项目由开发者 sydasif 创建,通过实现 Model Context Protocol (MCP) 服务器,成功将 Nornir 网络自动化框架的能力开放给 Claude 等大语言模型。这意味着网络工程师现在可以用自然语言与 AI 对话,让 AI 自动完成设备查询、配置备份、状态监控等任务。

3

章节 03

双引擎设计

Nornir MCP Server 的核心架构采用了双引擎设计,结合了两种强大的网络自动化工具:

NAPALM(Network Automation and Programmability Abstraction Layer with Multivendor support) 提供了标准化的数据获取接口。它支持 Cisco IOS/NX-OS/XR、Arista EOS、Juniper Junos 等 100 多种网络设备平台,能够将不同厂商的专有命令转换为统一的数据结构。

Netmiko 则负责灵活的 SSH 命令执行。当需要执行特定的 show 命令或配置变更时,Netmiko 提供了可靠的连接管理和命令发送机制。

这种双引擎架构的优势在于:既保留了 NAPALM 的标准化数据抽象能力,又保留了 Netmiko 的灵活性,可以处理各种边缘场景和特殊需求。

4

章节 04

Model Context Protocol 集成

MCP 是 Anthropic 推出的开放协议,旨在标准化大语言模型与外部工具的交互方式。Nornir MCP Server 完整实现了 MCP 规范,向 LLM 暴露了 7 个核心工具:

  • list_devices:列出所有主机、组和元数据
  • get_facts:获取设备基本信息(厂商、型号、运行时间)
  • get_configs:检索运行配置、启动配置或候选配置
  • run_napalm_getter:通用 NAPALM 数据获取接口(ARP 表、VLAN 信息等)
  • run_show_commands:安全执行任意 show 命令
  • send_config_commands:部署配置变更并进行验证
  • backup_device_configs:将配置安全备份到本地磁盘

每个工具调用都会重新加载配置文件和库存数据,确保操作的是最新的网络拓扑信息。

5

章节 05

安全机制设计

网络设备的操作具有高风险性,一次错误的配置可能导致严重的网络中断。Nornir MCP Server 在设计上将安全性放在首位,实现了多层防护机制。

6

章节 06

命令黑名单系统

服务器内置了多层命令验证引擎,在命令执行前进行三重检查:

精确命令匹配:直接阻止已知的危险命令,如 reloadwrite eraseerase startup-config 等。

关键字过滤:识别并阻止包含危险关键字的命令,如 eraseformatdelete 等。

模式匹配:防止命令链和重定向操作,阻止使用 ;&&>>> 等 shell 元字符。

7

章节 07

路径沙箱

配置备份功能被限制在预定义的根目录内,防止路径遍历攻击。即使 AI 或用户尝试通过相对路径访问敏感文件,系统也会拒绝执行。

8

章节 08

输入验证

所有输入都经过 Pydantic 模型验证,确保数据类型和格式符合预期,防止注入攻击。