eNSP AutoConfig 是一款面向 数据通信课程教学 与华为 eNSP 实验的自动化配置助手。学生通过表单完成 VLAN、OSPF、ACL、WLAN 等配置,右侧实时对照 VRP 命令与中文释义,既降低配置门槛,又能看懂每条命令在做什么。
- 教学双栏对照 - 左侧填参,右侧实时显示命令 + 逐条释义 + 知识点 / 常见错误
- 课程模块导航 - 按二层交换、三层路由、网络服务、安全与无线组织技术项
- VLAN / 接口表格 - 资源表 + 弹窗新建/配端口(支持批量端口),降低交换实验上手难度
- 拓扑自动识别 - 导入 eNSP
.topo文件,解析设备与 Console 端口 - 设备智能分类 - 交换机 / 三层交换机 / 路由器 / 防火墙 / AC,动态过滤可用技术
- 可视化配置下发 - 15 种技术生成华为 VRP 命令,经本机 Console Socket 推送
- 批量配置 / CLI / 模板 / 历史 - 实验环境快速配通与复用
| 技术 | 说明 | 适用设备 |
|---|---|---|
| VLAN | 创建/端口 Access·Trunk·Hybrid,支持批量端口 | 交换机 / 三层交换机 |
| 接口 IP | 含三层交换机 undo portswitch |
路由器 / 三层交换机 |
| 静态路由 | 单条或多行批量 | 路由器 / 三层交换机 |
| OSPF | 多区域/多网段、Stub/NSSA、静默接口 | 路由器 / 三层交换机 |
| RIP | 版本、多网段、静默接口 | 路由器 / 三层交换机 |
| BGP | 邻居与网段(支持多条) | 路由器 |
| IS-IS | NET、级别、多接口启用 | 路由器 |
| STP/MSTP | 模式、优先级、边缘端口、域/实例 | 交换机 |
| Eth-Trunk | 成员口、LACP、负载分担 | 交换机 / 路由器 |
| DHCP | 接口池 / 全局池 | 交换机 / 路由器 |
| 虚拟接口 | Vlanif / Loopback | 交换机 / 路由器 |
| ACL | 规则 + 应用到接口(入/出方向) | 多类设备 |
| NAT | Easy IP / NAT Server | 路由器 / 防火墙 |
| VRRP | 虚拟网关、抢占、追踪 | 路由器 / 三层交换机 |
| WLAN | SSID/安全/VAP/AP 组(最小可用流程) | AC |
- 实验包向导 - 单臂路由 / OSPF 多区域 / VRRP 双机,分步生成、分设备写入
- 验证助手 - 写入后一键执行
display并对照期望关键字 - WLAN 进阶 - AP 上线、射频信道/功率、WPA2/WPA3、隧道/直接转发
- BGP / IS-IS / 防火墙策略 - 多跳建邻、电路类型/开销、安全域与安全策略
- 多模型支持 - DeepSeek / OpenAI / 通义千问 / 智谱 GLM / Moonshot / Ollama 本地
- 教学向提示 - 可生成配置,也可解释原理与常见错误
- 一键应用 - 生成结果可写入编辑器或设备
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 7+ |
| Python | 3.8+ |
| eNSP | V100R003C00 及以上 |
| 浏览器 | Chrome / Edge / Firefox |
- 从 Releases 下载最新版
eNSP_AutoConfig.exe - 双击运行,等待服务启动
- 浏览器自动打开 http://127.0.0.1:5001
- 在 eNSP 中启动目标设备(设备图标变绿)
- 导出拓扑文件并上传到页面
pip install -r requirements.txt
python app.py浏览器访问 http://127.0.0.1:5001
pip install pyinstaller
python build.py生成的 EXE 位于 dist/ 目录。
eNSP_AutoConfig/
├── LICENSE # Apache License 2.0
├── NOTICE # 版权与归属说明
├── app.py # Flask 应用入口
├── core_logic.py # 拓扑解析、推送、校验
├── generators/ # 配置生成(交换/路由/服务)+ 命令注解
├── teaching/ # 知识点 + 实验包 JSON
├── lab_packs.py # 实验包向导
├── verify_helper.py # 下发后 display 验证
├── network_utils.py # Console Socket 通信
├── device_info_reader.py # 设备信息读取
├── ai_handler.py # AI 助手
├── template_manager.py # 模板管理
├── history_manager.py # 历史记录
├── config.py # 集中配置
├── console_session.py # 交互式 Console
├── build.py # PyInstaller 打包
├── templates/index.html # 教学工作台主页面
└── static/
├── css/ # style.css + teach-layout.css
└── js/ # state / api / command-annotate / resource-table /
# script / tech-forms-enhance / ui-bridge
| 层级 | 技术 | 说明 |
|---|---|---|
| 前端 | HTML + CSS + Vanilla JS | 零框架依赖,轻量高效 |
| 后端 | Flask | Python Web 框架 |
| 通信 | Socket TCP | 连接 eNSP Console 端口 |
| AI | OpenAI 兼容 API | 零额外依赖 |
| 打包 | PyInstaller | 生成 Windows 单文件 EXE |
本项目基于 Apache License 2.0 开源。
版权所有 © 2026 zcandhl
根据 Apache License 2.0,您可以自由使用、修改和分发本项目,但须:
如果这个项目对你有帮助,请给一个 ⭐ Star