Mininet教程
mininet的安装
1.前言
1、本次安装环境为ubuntu20.04。
2、mininet 为 github上的最新版,我已经修改镜像地址并克隆到了gitee,只需要从我的gitee仓库克隆即可。
3、mininet安装中需要自动使用apt安装额外依赖,为了确保稳定性,需要对ubuntu进行换源(按照ubuntu教程即可)。
2.克隆mininet源码
打开Ubuntu中的终端(Terminal)为了方便起见,CD到桌面
cd Desktop
git clone https://gitee.com/lpm-123/mininet

3.安装mininet
进入安装文件夹,进行安装。之后会自动进行安装
cd mininet/util
sudo ./install.sh -a

出现enjoy mininet安装成功
Mininet安装完成后就可以连接ryu和sflow-rt进行更多的操作了
mininet的使用
1.快捷键
常见mininet指令可以在网络上自行查找
ctrl + c 中断mininet当前执行的指令
ctrl + d 中断mininet
中断mininet之后不要忘了执行sudo mn -c清除拓扑
2.测试mininet
sudo mn

3.清理现有的 ovs 网桥和命名空间
注意:有时我们错误地关闭了mininet shell,或者mininet崩溃了。但拓扑组件(虚拟网卡)将继续存在,若不清理,会导致下次搭建拓扑异常。要避免这些问题,请务必使用清理命令。
sudo mn -c
4.创建拓扑
树形拓扑举例
sudo mn --topo=tree,fanout=2,depth=2
sudo mn --topo=tree,fanout=2,depth=2 --controller=remote,ip=127.0.0.1
5.创建自定义拓扑
sudo mn --custom ./123123.py --topo=mytopo
sudo mn --custom ./123123.py --topo=mytopo --controller=remote,ip=127.0.0.1
from mininet.topo import Topo
class MyTopo( Topo ):
def build(self):
# 从这里进行修改
h1 = self.addHost('h1', ip='10.0.0.1') # addHost添加主机
h2 = self.addHost('h2', ip='10.0.0.2')
h3 = self.addHost('h3', ip='10.0.0.3')
h4 = self.addHost('h4', ip='10.0.0.4')
s1 = self.addSwitch('s1') # addSwitch添加交换机
s2 = self.addSwitch('s2')
self.addLink(h1, s1) # addLink添加连接
self.addLink(h2, s1)
self.addLink(h3, s2)
self.addLink(h4, s2)
self.addLink(s1, s2)
topos = { 'mytopo': ( lambda: MyTopo() ) }
拓扑py文件目录要和终端路径一致才能直接执行以上代码
Mininet教程的更多相关文章
- ubuntu12.04安装mininet
网上安装mininet教程有很多,都是通过git命令安装,但有一个坑,安装到./install.sh时会报错,记录下来 1.通过git 下载mininet git clone git://github ...
- OVS 精确删除流表
OVS 精确删除流表 前言 今天看了sdnlab小姐姐的mininet教程之后,看到有一个下流表的操作,优先级没能下成功,然后回来实验一下,这个问题是解决了,不过遇到了一个小问题,ovs如何精确删除流 ...
- Mininet VM设置笔记
Mininet VM是为了加快Mininet安装,而且可以很容易在linux平台上运行. VM运行在Windows,Mac,Linux,通过VMware.VirtualBox,QEMU和KVM. 下载 ...
- Mininet安装及使用
最简单的方法是开始 下载一个预包装Mininet / Ubuntu VM . 这个虚拟机包括Mininet本身,所有预装OpenFlow二进制文件和工具,调整内核配置,以支持更大的Mininet网络. ...
- Ubuntu16.04安装Mininet
Ubuntu16.04源码安装Mininet 本文介绍了VMware虚拟机ubuntu16.04中安装Mininet的方法,物理机中的方法与之相同.主要参考了Mininet官方的教程.官方提供了四种安 ...
- Mininet安装,简单实现一个网络拓扑结构
安装mininet Mininet安装教程,可以按照这个来,然而这个虚拟机有时会很难装.可以考虑如下的做法:先 git clone,cd mininet 和 cat INSTALL之后,可以在提示信息 ...
- Mininet自定义网络拓扑
在Mininet上的网络拓扑有两种方式 第一种 用mininet自带的miniedit可视化工具,在mininet/mininet/examples/的目录下的一个miniedit.py,运行这个文件 ...
- P4开源Tutorials教程样例实战及对P4v1.1规范的初分析
Github链接:Github-P4Lang-Tutorials-p4v1.1 前言 本文主要对Barefoot开源教程中的p4v1.1实例simple_router的实战步骤进行记录与阐述,希望能帮 ...
- mininet的安装
安装Mininet主要参照李呈的教程 http://www.sdnlab.com/11495.html 我的做法是: 安装虚拟机VM(很容易查找). 需要开启虚拟化: BIOS中依次选择:Advanc ...
- mininet、floodlight在第一次SDN上机作业中出现的一些问题
mininet.floodlight在第一次SND上机作业中出现的一些问题 首先给出链接 VMware安装 mininet安装 floodlight安装及问题,各个版本Ubuntu SDN第一次上机作 ...
随机推荐
- python入门教程之十七进程、线程和协程
进程 要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识. Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊.普通的函数调用,调用一次 ...
- android studio 做登陆界面
先来一个最简单的 AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> &l ...
- jenkins的安装和配置(flask结合jenkins半自动化部署流程)
jenkins在虚拟机中安装 1.1 背景介绍 Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建.测试和部署等功能. Je ...
- 数据库定时备份winserver2012篇
目录 1 序言 2 任务计划相关知识点介绍 2.1 任务计划 是什么? 2.2 批处理文件 2.2.1 批处理文件简介 2.2.2 批处理常用命令介绍 3 各个数据库备份脚本 3.1 Oracle数据 ...
- 2023-02-12:给定正数N,表示用户数量,用户编号从0~N-1, 给定正数M,表示实验数量,实验编号从0~M-1, 给定长度为N的二维数组A, A[i] = { a, b, c }表示,用户i报
2023-02-12:给定正数N,表示用户数量,用户编号从0~N-1, 给定正数M,表示实验数量,实验编号从0~M-1, 给定长度为N的二维数组A, A[i] = { a, b, c }表示,用户i报 ...
- 2022-12-22:给定一个数字n,代表数组的长度, 给定一个数字m,代表数组每个位置都可以在1~m之间选择数字, 所有长度为n的数组中,最长递增子序列长度为3的数组,叫做达标数组。 返回达标数组的
2022-12-22:给定一个数字n,代表数组的长度, 给定一个数字m,代表数组每个位置都可以在1~m之间选择数字, 所有长度为n的数组中,最长递增子序列长度为3的数组,叫做达标数组. 返回达标数组的 ...
- 2022-01-11:给定一个正数数组arr长度为n、正数x、正数y。 你的目标是让arr整体的累加和<=0, 你可以对数组中的数num执行以下三种操作中的一种,且每个数最多能执行一次操作 : 1.
2022-01-11:给定一个正数数组arr长度为n.正数x.正数y. 你的目标是让arr整体的累加和<=0, 你可以对数组中的数num执行以下三种操作中的一种,且每个数最多能执行一次操作 : ...
- 华为Atlas 200I DK A2开箱!
摘要:Atlas 200I DK A2是Atlas 200DK之后的一款产品,从2022年一直酝酿至今,终于在2023年5月6日-7日昇腾AI开发者峰会2023正式发布. 本文分享自华为云社区< ...
- (偶尔更新)【Linux】Linux常见不常用命令收集
本文时间 2023-05-20 作者:sugerqube漆瓷 cd,vi,clear这些属于常见常用命令本文不再赘述. 安装命令 yum install vim举例安装vim rpm -ivh a.r ...
- flutter中使用pubspec.yaml更改package name
在flutter 项目中使用pubspec.yaml文件进行依赖资源相关配置是常有的事 但是刚发现它可以修改name来控制项目包名称,当初创建了不同的项目名git后还到每个文件里去修改import(麻 ...