章节 01
导读 / 主楼:Nornir MCP Server:让大语言模型直接管理网络设备的开源工具
本文介绍 Nornir MCP Server,一个将大语言模型与网络自动化桥接的开源项目。该项目通过 Model Context Protocol (MCP) 协议,使 Claude 等 AI 助手能够直接查询网络设备状态、执行配置备份和管理任务,为网络工程师提供自然语言交互的网络运维新体验。
正文
本文介绍 Nornir MCP Server,一个将大语言模型与网络自动化桥接的开源项目。该项目通过 Model Context Protocol (MCP) 协议,使 Claude 等 AI 助手能够直接查询网络设备状态、执行配置备份和管理任务,为网络工程师提供自然语言交互的网络运维新体验。
章节 01
本文介绍 Nornir MCP Server,一个将大语言模型与网络自动化桥接的开源项目。该项目通过 Model Context Protocol (MCP) 协议,使 Claude 等 AI 助手能够直接查询网络设备状态、执行配置备份和管理任务,为网络工程师提供自然语言交互的网络运维新体验。
章节 02
网络运维一直是 IT 基础设施管理中最复杂、最耗时的环节之一。传统网络管理需要工程师熟练掌握各种厂商的 CLI 命令,面对多厂商环境时,这种复杂性更是成倍增加。随着大语言模型(LLM)技术的快速发展,一个自然的问题浮现出来:能否让 AI 助手直接理解和操作网络设备?
Nornir MCP Server 正是为解决这一问题而生。该项目由开发者 sydasif 创建,通过实现 Model Context Protocol (MCP) 服务器,成功将 Nornir 网络自动化框架的能力开放给 Claude 等大语言模型。这意味着网络工程师现在可以用自然语言与 AI 对话,让 AI 自动完成设备查询、配置备份、状态监控等任务。
章节 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 的灵活性,可以处理各种边缘场景和特殊需求。
章节 04
MCP 是 Anthropic 推出的开放协议,旨在标准化大语言模型与外部工具的交互方式。Nornir MCP Server 完整实现了 MCP 规范,向 LLM 暴露了 7 个核心工具:
每个工具调用都会重新加载配置文件和库存数据,确保操作的是最新的网络拓扑信息。
章节 05
网络设备的操作具有高风险性,一次错误的配置可能导致严重的网络中断。Nornir MCP Server 在设计上将安全性放在首位,实现了多层防护机制。
章节 06
服务器内置了多层命令验证引擎,在命令执行前进行三重检查:
精确命令匹配:直接阻止已知的危险命令,如 reload、write erase、erase startup-config 等。
关键字过滤:识别并阻止包含危险关键字的命令,如 erase、format、delete 等。
模式匹配:防止命令链和重定向操作,阻止使用 ;、&&、>、>> 等 shell 元字符。
章节 07
配置备份功能被限制在预定义的根目录内,防止路径遍历攻击。即使 AI 或用户尝试通过相对路径访问敏感文件,系统也会拒绝执行。
章节 08
所有输入都经过 Pydantic 模型验证,确保数据类型和格式符合预期,防止注入攻击。