一、背景
在Ubuntu 20.04系统中,默认情况下安装的Python版本是Python 3.8版本,因此在安装mininet时注意要使用python3安装命令:
PYTHON=python3 mininet/util/install.sh -nfv
但是,mininet的很多模块是用python2 开发的,所以在实际中,用python3进行开发实践中要注意可能会因为python2 python3两者语法不同出错,如mininet中的可视化模块miniedit.py。Miniedit是Mininet的图形化用户界面(GUI),它提供了一种可视化的方式来创建和编辑Mininet网络拓扑。通过Miniedit,用户可以使用简单的拖放操作来添加和连接不同的网络组件,设置主机的IP地址和控制器等参数,并快速构建复杂的网络拓扑。但是用python3打开时,可能会出现语法错误
1 【Miniedit】打开.mn文件报错
2保存mn与py文件时终端如下报错:a bytes-like object is required,not ‘str’
转到miniedit.py所在的位置,然后使用文本ubuntu自带的编辑器nano将其打开
①转到第1702行左右并更改为:
f = open(fileName, ‘w’)
②将第1452行左右的代码更改为:
self.appPrefs.update(loadedTopology[‘application’])
③以及第1686行和第1705行至:
f = open(fileName, ‘w’)
二、Mininet可视化编辑界面的使用方式
1 在终端中输入命令:在终端中找到mininet安装路径后,输入以下命令python3 miniedit.py
文件存储
三、总结
Miniedit是一个用于创建、编辑和可视化网络拓扑的图形用户界面(GUI)工具,它是Mininet的一部分。其主要功能:
创建网络拓扑:Miniedit使用图形界面直观地创建网络拓扑。可以添加和配置主机、交换机、控制器等网络组件,并使用简单的拖放操作来连接。
编辑网络拓扑:使用Miniedit来打开编辑已有的网络拓扑。可以添加、删除或修改网络组件,调整连接,以及更改主机的IP地址、交换机的转发规则等参数。
Miniedit提供了可视化展示编辑网络拓扑的功能同时其还可以将在界面上创建的拓扑直接保存为Mininet定义的文件(.mn格式)或者导出为Python脚本,以便在后续python开发环境中使用。