2020 SDN实验 1:Mininet 源码安装和可视化拓扑工具
1.更换国内源
由于系统自带源下载速度过慢我选择更换阿里源。
(1)来更改文件权限使其可编辑
$ sudo chmod 777 /etc/apt/sources.list
(2) 打开文件进行编辑
$ sudo gedit /etc/apt/sources.list
(3)删除原来的文件内容,复制阿里云源
(4) 新软件列表,换源完成
$ sudo apt update
2.创建目录,安装git
$ mkdir 031802220 //新建 sdn 目录(名称可自定义),所有的应用安装在该目录下
$ sudo apt-get install git //安装 git
$ cd 031802220 //进入 sdn 目录
3. 安装轻量级网络仿真工具Mininet
使用GitHub源码安装:
(1)从GitHub上获取mininet源码:
$ git clone https://github.com/mininet/mininet.git
(2)输入如下命令进行安装:
$ cd mininet
$ sudo util/install.sh -a //在 mininet 目录下执行,-a 表示完整安装
出现enjoy mininet!则安装成功
(3)安装完成后使用mn --version查看所安装mininet的版本信息:
$ mn --version
(4)使用 Mininet 的 CLI 命令行测试基本功能
$ sudo mn --test pingall
4.使用可视化工具建网络拓扑
$ sudo ./mininet/examples/miniedit.py //在 Mininet 安装目录下执行
执行界面如下,可以拖动左侧边栏的主机 Host、交换机 Switch、路由器 Router、网络链路 NetLink、控制器 Controller 等组件到右侧空白处,实现网络拓扑的可视化仿真。将 4 台 Host、2 台 Switch 和 1 台 Controller 拖出,并用 NetLink 连接,形成下图所示的网络拓扑
鼠标右键点击 Host 和 Controller,选择设置属性(Properties): Host 部分主要是设置主机 ip,以及 VLAN 等扩展设置。每台主机逐台操作;Controller 部分主要是设置控制器类型,此处可按默认设置,如果是外部控制器,要选择 Remote Controller,之后填上 Controller 的 ip,如果是本机则按照默认的 127.0.0.1 即可。
点击左上角的 Edit,进行全局设置,此时在默认设置的基础上,勾选“Start CLI”,将 OpenFlow 1.1 1.2 1.3 全部勾选。
点击左下角的 Run,运行拓扑,由于开启了 CLI,使用 pingall 命令测试主机的连通性,并做其他扩展操作。
拓扑生成并确认无误之后,可以点击 miniedit 左上角的 File 菜单,选择 Export Level 2 Script,将拓扑保存为 work1.py,方便之后执行脚本一键生成。
5.感想
这次实验中基本上还是比较顺利的,我通过换源使后续的步骤变得更加地快速,节约了大部分时间。