前言
IOL(IOS on Linux)是思科网络设备的轻量级模拟镜像,广泛用于路由交换实验。E-NetDev 模拟器支持通过 FTP 方式上传 IOL 镜像,实现快速部署和批量管理。本文详细介绍完整的 FTP 上传流程。
第一章:IOL 镜像基础
1.1 IOL 镜像类型
| 类型 | 文件标识 | 功能说明 |
|---|---|---|
| IOL | i86bi-linux-l3-xxx | 三层路由镜像(支持路由协议) |
| IOLL2 | i86bi-linux-l2-xxx | 二层交换镜像(支持交换功能) |
| IOL-L3 | i86bi-linux-l3-adventerprise | 高级企业版路由功能 |
1.2 文件命名规范
IOL 镜像文件名需符合特定格式才能被系统识别:
正确示例:
i86bi-linux-l3-adventerprisek9-15.4.1T.bin
i86bi-linux-l2-ipbasek9-15.2d.bin
关键要素:
- i86bi-linux-l3/l2 前缀(标识层级)
- 功能集标识(ipbase/adventerprise)
- 版本号(15.4.1T)
- .bin 后缀
第二章:FTP 上传前准备
2.1 确认 FTP 服务状态
通过 SSH 登录 E-NetDev 服务器,检查 FTP 服务:
# 检查 vsftpd 服务状态
systemctl status vsftpd
# 如未运行,启动服务
systemctl start vsftpd
systemctl enable vsftpd
2.2 确认目标目录
| 镜像类型 | 存放路径 | 权限要求 |
|---|---|---|
| IOL 镜像 | /opt/unetlab/addons/iol/bin/ | root:unl 755 |
| IOL 配置文件 | /opt/unetlab/addons/iol/ | 自动生成 |
2.3 准备上传工具
| 操作系统 | 推荐工具 |
|---|---|
| Windows | FileZilla、WinSCP、FlashFXP |
| macOS | FileZilla、Transmit、命令行 ftp |
| Linux | lftp、FileZilla、命令行 ftp |
第三章:FTP 上传步骤
步骤一:连接 FTP 服务器
使用 FileZilla 图形界面:
- 打开 FileZilla → 站点管理器
- 新建站点,填写连接信息:
| 参数 | 示例值 |
|---|---|
| 主机 | 192.168.1.100(E-NetDev 服务器 IP) |
| 端口 | 21(默认 FTP 端口) |
| 协议 | FTP – 文件传输协议 |
| 加密 | 使用明文 FTP(或使用 FTPS) |
| 登录类型 | 正常 |
| 用户 | root(或具有写入权限的用户) |
| 密码 | 服务器 root 密码 |
- 点击连接
步骤二:导航至目标目录
连接成功后,在远程站点面板导航至:
/opt/unetlab/addons/iol/bin/
若目录不存在,手动创建:
mkdir -p /opt/unetlab/addons/iol/bin/ chown root:unl /opt/unetlab/addons/iol/bin/ chmod 755 /opt/unetlab/addons/iol/bin/
步骤三:上传 IOL 镜像文件
拖拽上传方式:
- 在本地站点找到 IOL 镜像文件(
.bin) - 选中文件,拖拽至远程站点的
/opt/unetlab/addons/iol/bin/目录 - 等待上传完成(进度条显示 100%)
批量上传:
选中多个 .bin 文件,一次性拖拽上传,适合批量部署场景。
步骤四:验证文件完整性
上传完成后,通过 SSH 检查文件:
# 列出已上传的 IOL 镜像
ls -la /opt/unetlab/addons/iol/bin/
# 预期输出:
-rwxr-xr-x 1 root unl 104857600 May 8 00:15 i86bi-linux-l3-adventerprisek9-15.4.1T.bin
-rwxr-xr-x 1 root unl 89128960 May 8 00:16 i86bi-linux-l2-ipbasek9-15.2d.bin
确保文件权限为
755(所有者可读写执行,组和其他用户可读执行),属主为root:unl。
第四章:生成 IOL 配置
4.1 运行配置生成脚本
E-NetDev 提供自动配置生成工具,根据上传的镜像自动生成运行参数:
# 进入 IOL 配置目录
cd /opt/unetlab/addons/iol/
# 运行配置生成脚本
python3 /opt/unetlab/scripts/iol_generator.py
# 或执行系统自带修复命令
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
4.2 检查生成的配置文件
配置生成后,检查以下文件:
# 查看 IOL 配置文件
cat /opt/unetlab/addons/iol/iourc
# 内容示例:
[iol]
license = xxxx-xxxx-xxxx-xxxx type = 0
iourc文件包含 IOL 运行所需的授权信息,由系统自动生成或需手动配置。
4.3 修复权限(关键步骤)
每次上传新镜像后必须执行:
# 命令行修复
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
# 或 Web 界面修复
# System → System Settings → Fix Permissions
此操作确保:
- 文件权限正确(
root:unl 755) - 系统数据库更新镜像列表
- Web 界面可识别新上传的 IOL 镜像
第五章:Web 界面验证
5.1 刷新镜像列表
- 登录 E-NetDev Web 界面
- 进入任意实验室编辑页面
- 右键点击画布 → Add Node(添加节点)
- 在设备类型列表中查找 IOL 设备
5.2 确认镜像可用
| 检查项 | 预期结果 |
|---|---|
| 设备列表显示 | 出现 “IOL” 或 “Cisco IOL” 分类 |
| 镜像版本显示 | 列出已上传的版本号(如 15.4.1T) |
| 节点添加测试 | 成功添加节点并启动运行 |
第六章:高级技巧与故障排查
6.1 命令行 FTP 上传(无图形界面场景)
# 连接 FTP 服务器
ftp 192.168.1.100
# 登录
Name: root
Password: [输入密码]
# 切换至二进制模式(防止文件损坏)
ftp> binary
# 导航至目标目录
ftp> cd /opt/unetlab/addons/iol/bin/
# 上传文件
ftp> put /本地路径/i86bi-linux-l3-adventerprisek9-15.4.1T.bin
# 退出
ftp> quit
# 修复权限
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
6.2 FTPS 安全传输
若服务器启用 FTPS,使用 lftp 工具:
lftp -u root ftps://192.168.1.100
set ssl:verify-certificate no
cd /opt/unetlab/addons/iol/bin/
put i86bi-linux-l3-adventerprisek9-15.4.1T.bin
bye
6.3 常见问题排查
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| FTP 连接失败 | 服务未启动 | systemctl start vsftpd |
| 上传权限拒绝 | 目录权限不足 | chmod 755 /opt/unetlab/addons/iol/bin/ |
| Web 界面不显示镜像 | 未修复权限 | 执行 unl_wrapper -a fixpermissions |
| 镜像启动报错 | 文件传输模式错误 | 重新以 binary 模式 上传 |
| 版本号识别错误 | 文件名不规范 | 按 i86bi-linux-lx-功能集-版本.bin 格式重命名 |
| IOL 授权失败 | iourc 文件缺失 | 运行配置生成脚本或手动创建 |
第七章:IOL 与 QEMU 镜像对比
| 特性 | IOL 镜像 | QEMU 镜像 |
|---|---|---|
| 文件大小 | 较小(50-150MB) | 较大(500MB-数GB) |
| 启动速度 | 快(秒级) | 较慢(分钟级) |
| 功能完整度 | 基础路由交换 | 完整设备功能 |
| 资源占用 | 低(CPU/内存少) | 高(需分配更多资源) |
| 适用场景 | 大规模拓扑、快速测试 | 复杂功能验证、生产模拟 |
| 上传方式 | FTP 直接上传 | FTP/SFTP/ishare 均可 |
文件路径速查表
| 用途 | 绝对路径 |
|---|---|
| IOL 镜像存放 | /opt/unetlab/addons/iol/bin/ |
| IOL 配置文件 | /opt/unetlab/addons/iol/iourc |
| 权限修复命令 | /opt/unetlab/wrappers/unl_wrapper -a fixpermissions |
| 配置生成脚本 | /opt/unetlab/scripts/iol_generator.py |
E-NetDev 模拟器的 IOL 镜像 FTP 上传遵循”连接 → 上传 → 修复权限 → 验证”四步流程。FTP 方式传输效率高、操作直观,特别适合批量镜像的快速部署场景。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END

















私信站长