Cisco Modeling Labs (CML) 2.9.0 - 网络仿真工具
思科建模实验室 (CML)
请访问原文链接:https://sysin.org/blog/cisco-modeling-labs-2/ 查看最新版。原创作品,转载请保留出处。
作者主页:sysin.org
Cisco Modeling Labs 是我们用于网络仿真的首要平台。凭借易于使用的 HTML5 UI 和全面的 API,思科建模实验室使设计、测试、故障排除和学习变得有趣。
欢迎来到网络仿真世界
Cisco Modeling Labs 是一种在工作站和服务器上运行的内部部署网络模拟工具。借助 Cisco Modeling Labs,您可以使用真实的 Cisco 映像快速轻松地模拟 Cisco 和非 Cisco 网络 (sysin)。这为您提供了用于设计、测试和故障排除的高度可靠的模型。与构建真实世界的实验室相比,思科建模实验室可以更快、更轻松地返回结果,而且成本只是其中的一小部分。
CML 2.9.0 新增功能
本节详细介绍了此版本中的新增与更改功能,包括 API 的完整表格。有关 Bug 修复内容,请参见官方文档。
支持 Docker 容器镜像
从 CML 2.9.0 起,新增对 Docker 容器的支持。
在此版本之前,CML 支持以下节点类型:
- KVM 虚拟机:完整的 x86 虚拟机,自带内核和虚拟设备
- IOL:基于 libvirt 的 LXC 容器,仅适用于 IOL 和 IOL‑L2 节点类型
- 内建支持节点类型:External Connector 与 Unmanaged Switch
从 CML 2.9.0 起,创建或导入节点定义时,Domain Driver 可选择为 KVM 虚拟机、IOL 或 Docker 容器。支持在 CML 实验中使用自定义 Docker 容器。参考平台 ISO 还新增多个容器节点类型:
容器名称 | 描述 |
---|---|
chrome | Chrome 浏览器,通过 VNC 控制台访问 |
dnsmasq | 默认启用 DNS,DHCP/TFTP 默认关闭 |
firefox | Firefox 浏览器,通过 VNC 控制台访问 |
freeradius | 服务容器,提供 FreeRADIUS 服务 |
frr | 服务容器,提供 FRR(Free Range Routing) |
net-tools | 网络工具容器,包含 tcpdump、tshark、traceroute 等 |
nginx | Web 服务器容器,运行 nginx |
splunk | Splunk Universal Forwarder 服务容器 |
syslog | syslog‑NG 服务容器 |
tacplus | TACACS+ 服务容器 |
thousandeyes‑ea | ThousandEyes 企业代理容器 |
示例实验室改进
- 新增更多示例实验室,可在 Tools > Sample Labs 中访问
- 管理员可使用实验室仓库替换或补充默认实验室
- 支持 Git 仓库同步和缓存展示,预配置了 cml‑community 仓库内容
控制台面板字体自定义
在 Workbench 的 Console 面板中,可通过 Global Console Settings 配置终端字体。
接口页可见 IP 与 MAC 地址
- 若节点与启用 IP 嗅探器(例如 NAT external connector)相邻,Interfaces 面板将显示嗅探到的 IP 地址
- 若 CML 随机分配 MAC,Interfaces 面板也将显示该 MAC 地址,以前仅手动设置时才显示
节点磁盘镜像克隆功能
新增 "Clone Image" 功能:管理员可从已停止节点的磁盘镜像创建新的镜像定义,便于创建预装特定软件的自定义镜像(如 Ubuntu),供所有用户使用。
实验共享与权限细化
- 引入更多权限级别:View、Exec、Edit、Admin
- 支持直接与个人用户共享实验,不再仅限于组共享
支持串口接口的 IOL 节点
新增 iol‑xe‑serial‑4eth
类型节点:包含 4 个 Ethernet 接口,其余为串口(支持 FrameRelay、HDLC、PPP)。需在升级后添加对应节点定义与镜像。
注意:Cisco 提供的 VM 与容器镜像仅限用于 CML 实验使用。
Catalyst 9800‑CL 与 ISE 镜像
补充参考平台 ISO 包含两个新镜像:
- Catalyst 9800‑CL(基于 IOS‑XE 虚拟无线控制器)
- Cisco Identity Services Engine (ISE)
注意:CML‑Free 用户无法访问补充 ISO。
重要:原上传的refplat‑20250718‑supplemental‑iso.zip
文件损坏,请勿使用,修复版本即将发布。
:contentReference[oaicite:0]{index=0}
API 变更概览
请登录 CML UI 并打开 Tools > API Documentation 查看完整细节。主要变化包括:
- 新增
associations
属性,取代旧的groups
属性 - 支持将实验直接共享给用户,实现更细粒度的权限控制
- 移除多个冗余 API,例如 PUT /labs/{lab_id}/title,改用 PATCH /labs/{lab_id}
✅ 已移除的 API 接口
原接口 | 替代接口 |
---|---|
GET /diagnostics |
GET /diagnostics/computes , GET /diagnostics/labs … |
GET /labs/{lab_id}/nodes/{node_id}/tags |
GET /labs/{lab_id}/nodes/{node_id} |
POST /labs/{lab_id}/nodes/{node_id}/tags/{tag} |
PATCH /labs/{lab_id}/nodes/{node_id} |
DELETE /labs/{lab_id}/nodes/{node_id}/tags/{tag} |
PATCH /labs/{lab_id}/nodes/{node_id} |
DELETE /licensing/reservation/discard |
POST /licensing/reservation/discard |
PUT /labs/{lab_id}/description |
PATCH /labs/{lab_id} |
PUT /labs/{lab_id}/title |
PATCH /labs/{lab_id} |
PUT /labs/{lab_id}/notes |
PATCH /labs/{lab_id} |
GET /labs/{lab_id}/nodes/{node_id}/image_definition |
GET /labs/{lab_id}/nodes/{node_id} |
PUT /labs/{lab_id}/nodes/{node_id}/image_definition |
PATCH /labs/{lab_id}/nodes/{node_id} |
GET /labs/{lab_id}/nodes/{node_id}/config |
GET /labs/{lab_id}/nodes/{node_id} |
PUT /labs/{lab_id}/nodes/{node_id}/config |
PATCH /labs/{lab_id}/nodes/{node_id} |
PUT /labs/{lab_id}/links/{link_id} |
无替代 |
✅ 弃用的 API 接口
已弃用接口 | 替代接口 |
---|---|
GET /users/{user_id}/groups |
GET /users/{user_id} |
GET /groups/{group_id}/labs |
GET /groups/{group_id} |
GET /groups/{group_id}/members |
GET /groups/{group_id} |
GET /system_archive |
使用多个 endpoint 组合获取归档数据 |
GET /labs/{lab_id}/groups |
GET /labs/{lab_id}/associations |
PUT /labs/{lab_id}/groups |
PATCH /labs/{lab_id}/associations 或 PATCH /labs/{lab_id} |
✅ CML 2.10 中计划移除的 API
计划移除接口 | 替代接口 |
---|---|
GET /licensing/features |
GET /licensing |
GET /build_configurations |
PUT /labs/{lab_id}/bootstrap |
PUT /system/auth/config |
PATCH /system/auth/config |
✅ 新增 API 接口
新接口 | 描述 |
---|---|
PUT /labs/{lab_id}/nodes/{node_id}/clone_image |
从已停止节点克隆镜像创建新镜像定义 |
GET /labs/{lab_id}/associations |
获取实验与用户/组的权限关联 |
PATCH /labs/{lab_id}/associations |
添加或更新关联权限 |
GET /pcap/{link_capture_key}/packets |
获取指定链接的 PCAP 数据包列表 |
GET /lab_repos |
获取配置的实验室仓库列表 |
POST /lab_repos |
添加新的实验仓库 |
PUT /lab_repos/refresh |
对仓库执行 git pull 并返回结果 |
DELETE /lab_repos/{repo_id} |
删除指定仓库 |
GET /sample/labs/{sample_lab_id} |
获取某个示例实验室的详情 |
✅ 更改的 API 接口
多个接口增加或删除了以下字段:
- 新增属性:
associations
effective_permissions
pubkey
node_counts
allow_ssh_pubkey_auth
sim.linux_native.enable_tpm
device.interfaces.default_console
device.interfaces.iol_static_ethernets
efi_boot
sha256
- 移除属性:
disk_subfolder
其他更新
更多功能与体验增强包括:
- 支持 SSH 公钥登录(Console Server 与 SCP)
- 在 Workbench 侧面板显示节点 IP / MAC 地址,并支持刷新
- 运行节点状态下可查看镜像定义与资源配置
- PCAP 支持指定链路封装类型(如串口 Frame Relay)
- 支持 Windows 11 VM(需 Secure Boot、TPM)
- 新增默认控制台接口配置选项
- 支持通过 ext4 格式磁盘传递 day0 配置
- 自动删除旧的
disk_subfolder
属性 - 自动生成且续签部署时的自签名证书
- 在 Cockpit UI 配置 MAC 前缀、SSH 公钥认证、自定义脚本
/etc/virl2/defaults
中新增资源阈值与统计间隔配置- 在 System Administration 显示所有运行与孤立节点
- 支持终止断连主机上的链路(集群场景)
- 向 REGISTERED 状态迁移计算主机前提示正在运行的节点
- 安装时可启用 SSH 与 PATty 转发服务(默认关闭)
下载地址
Modeling Labs 2.9.0 free-tier version (允许没有许可证的情况下启动多达 5 个节点)
Images | File Information | Release Date | Size |
---|---|---|---|
Cisco Modeling Labs 2.9.0 server. This image is for bare metal deployment. For VMware Installation use the (.ova) VMWare Installation Image found of Software Center. | cml2_f_2.9.0-3_amd64-3-iso.zip | 18-Jul-2025 | 3377.84 MB |
Cisco Modeling Labs 2.9.0 server (upgrade). Use this file for an in-place upgrade of an existing CML server. See the CML 2.9 Release Notes for details on which CML releases are compatible with this upgrade package. | cml2_f_2.9.0-3_amd64-3-pkg.zip | 18-Jul-2025 | 143.96 MB |
Cisco Modeling Labs 2.9.0 server. This image is for deployment on VMware. Supported Hypervisors can be found in the CML Installation Guide. For Bare Metal Installation use the bare metal (.iso) installation file found in software center. | cml2_f_2.9.0-3_amd64-3.ova | 18-Jul-2025 | 1333.04 MB |
Cisco Modeling Labs reference platform ISO file (June 2025). This file is a required file for users who are not migrating from an existing installation. | refplat-20250616-free-iso.zip | 18-Jul-2025 | 2657.35 MB |