Ubuntu22.04安装mininet和ryu

这篇具有很好参考价值的文章主要介绍了Ubuntu22.04安装mininet和ryu。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本篇博客是自己亲身实践所得。安装过程中会遇到很多问题,搜一搜试一试基本都能解决,感谢各位大佬的博客。作为入门小白,才疏学浅,文中难免有误,还望各位大佬在评论区不吝赐教。

有可能把Ubuntu搞崩溃,所以建议每到一个阶段给虚拟机拍一个快照(下面有具体方法)

一,VMware虚拟机安装

较为简单,可参考其他博客

二,Ubuntu22.04安装

1.Ubuntu系统下载官方链接:Ubuntu系统下载

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

2.打开虚拟机,点击创建新的虚拟机

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

以下几步仅供参考,像命名,文件目录等根据自己需要设置,也可参考其他博客。

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

之后步骤按照博客

VMware虚拟机安装Ubuntu20.04详细图文教程_vmware ubuntu-CSDN博客

虚拟机拍快照方法

快照是对虚拟机当下状态的存储,如果之后把系统搞崩了可以再回到快照时的状态,避免重装系统浪费时间,建议到关键阶段且之前的操作没有问题就拍一个。

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

注意左下角会有进度,需要等待。

以下是我拍的一些快照(该命令在上图的快照管理中)

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

三,Ubuntu安装Mininet

首先提醒一下大家在运行代码时一定要注意是否该有空格,!!!多一个或少一个都可能会出错。

同时很多命令有sudo,sudo具体什么意思可以搜一下,部分命令加上sudo就可运行。

代码建议逐条运行。

我提供的方法是用源码安装,也可采用其他方法,首先打开终端

1.安装git

更新apt

sudo apt-get update
sudo apt-get upgrade

安装git(在安装时选择y,不要选择n,否则会安装失败,自己感觉y是yes,n是no)

sudo apt-get install git

  如果不知道安装是否成功可以通过这个代码查询,如果出现版本就是成功了,没有则是失败

git --version

2.获取源码

git clone https://gitclone.com/github.com/mininet/mininet
cd mininet
git tag
git checkout -b mininet-2.3.0
cd ..
mininet/util/install.sh -a

等待,出问题

(正克隆到 'openflow'...fatal: 无法访问 'https://github.com/mininet/openflow/':Failed to connect to github.com port 443 after 21288 ms: 拒绝连接)

git config --global url.https://github.com/.insteadOf git://github.com/
mininet/util/install.sh -a

执行后(正克隆到 'openflow'...

fatal: 无法访问 'https://github.com/mininet/openflow/':Failed to connect to github.com port 443 after 21075 ms: 拒绝连接)

检测

sudo mn --switch ovsbr --test pingall

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

sudo apt-get install mininet
sudo mn#验证

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

成功

四,安装ryu

1.我出过的一些其他问题(可先忽略不看)

E: 无法定位软件包

暂时不能解析域名

root使用,设密码

虚拟机联网

等,搜一搜试一试都已解决。

2.概述

我安装ryu用的是Ubuntu22.04.3版本自带python3(3.10)(不能删除,删除了系统图形化界面会崩溃)

参考的是Ubuntu22.04.3 TLS安装部署mininet,ryu_ubuntu22.04.3怎么用-CSDN博客

中的ryu的安装步骤,但不完全一样。其他方法可参考其他博客。

3.步骤

(1)python自带的查询版本命令。
可能会提示需要下载某个包,直接下载即可。

python3 --version    //python3版本查询

(2)更新apt,安装pip3

        首先在下载软件之前更新下apt以及下载更新pip,避免因为版本引起的报错(建议普通用户加上sudo,否则在更新的时候有些文件无法访问)

sudo apt-get update
sudo apt-get upgrade 
sudo apt install python3-pip

(3)安装ryu以及依赖

首先获取ryu源码使用与之前mininet相同的方法

git clone https://gitclone.com/github.com/osrg/ryu

 之后,使用该命令下载ryu

pip3 install ryu

获取成功之后,我们就需要进入ryu的文件夹下,安装相关依赖文件工具

cd ryu
sudo pip3 install -r tools/pip-requires

执行命令,安装

sudo python3 setup.py install

(4)检测ryu安装是否成功

若未报错,就是安装成功,若报错,根据报错内容进行更改

sudo ryu-manager

(5)出现问题和对应问题的解决方案

问题1

eventlet文件版本过低,这就是版本问题,我们可以将原本的eventlet删除,之后安装最新版本,之后问题就解决了

sudo pip uninstall eventlet
sudo pip install eventlet==0.33.3
问题2

AttributeError: module 'collections' has no attribute 'MutableMapping'

我参考了一篇博客AttributeError: module ‘collections‘ has no attribute ‘MutableMapping‘_attributeerror: module 'collections' has no attrib-CSDN博客

方法略有不同,我是打开文件改完后保存的,这样可能存在一个问题是没有权限,可以搜索一下如何获取编辑文件的权限类似的博客。

解决完问题后继续运行

sudo ryu-manager

出现ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

是成功,如果有问题继续搜一搜。

五,Ryu GUI安装

Ryu GUI是一个用于创建图形用户界面(GUI)的Python库。

参考博客Mininet+Ryu安装教程_ubuntu安装mininet和ryu最新csdn-CSDN博客

中该部分但不完全一样。(此安装可以参考上述博客)

Ryu GUI所需要的webob和routes库已经在下面的命令中安装完毕:

pip install -r tools/pip-requires


测试Ryu的GUI,注意,你的路径和我的不一样!!!

添加路径然后开启界面

cd /usr/local/lib/python3.10/dist-packages/ryu/app/gui_topology
sudo ryu-manager --observe-links --verbose gui_topology.py

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

鼠标指到该网址按Ctrl并点击。

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

这里我解释一下:

Ryu GUI安装我是参考了那篇博客,首次运行时我运行完我这篇博客上面的步骤后只有一个空的框,也就是框里没有三个网络图标。(我之所以这样我猜测是我没有完全删除之前的操作,但不确定,具体原因还望诸位大佬在评论区指教)

三个图标是我运行完以下步骤才有的

即要实现

Mininet和Ryu联动

继续在上面的路径里,运行openflow1.3的交换机:

新建一个终端窗口

cd /usr/local/lib/python3.10/dist-packages/ryu/app/gui_topology
sudo ryu-manager --observe-links /home/ubuntu/ryu/ryu/app/gui_topology/gui_topology.py /home/ubuntu/ryu/ryu/app/simple_switch_13.py
#中间隔一个空格,左右是两个地址。

另外新建一个终端窗口,输入Mininet的语句:

sudo mn --controller remote,ip=127.0.0.1 --topo linear,3 --mac --switch ovsk --link tc

刷新一下浏览器,看到类似以下界面就大功告成。

ubuntu22.04 ryu,网络安全,计算机网络,ubuntu

以上是我的安装过程,希望大家批评指正。文章来源地址https://www.toymoban.com/news/detail-847657.html

到了这里,关于Ubuntu22.04安装mininet和ryu的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 安装Ubuntu22.04系统

    (1)下载Ubuntu22.04.01的ISO镜像文件 (2)通过UltraISO工具制作U盘启动盘 (3)安装系统,根据不同厂家类型按对应按键,进入启动界面选择安装(可以通过安装双系统方式,以可以整个格式化磁盘进行安装) (4)系统安装完成后,如果是比较新的硬件,可能某些驱动默认没有

    2024年02月14日
    浏览(55)
  • ubuntu 22.04 图文安装

    选择第一个选项开始安装 选择English语言 选择中间选项不更新安装,这是因为后续通过更换源之后再更新会比较快 键盘设计继续选择英文,可以通过语言选择那里更换成中文,只是我觉得中文字符识别会有一定的麻烦所以这里继续选择了英文 继续默认选择下一步 配置网络,

    2024年02月22日
    浏览(52)
  • ubuntu 22.04 -- cmake安装

    官网下载:下载链接:https://cmake.org/download/ 也可以使用命令行下载 2.1 在系统环境中指定cmake的位置(可选) Could not find OpenSSL 错误描述 解决方案 缺少 openssl 的编译依赖,安装即可 sudo apt-get install libssl-dev 其他解决方案参考资料:安装cmake,没有sudo权限,cannot find openssl;

    2024年02月10日
    浏览(35)
  • Ubuntu 22.04 安装docker

    如果之前有安装过旧版本,则通过此命令删除旧版本 Windows 10 子系统Ubuntu 22.04 按以上步骤安装完docker后,启动 docker 可能会报错 以上可以通过将 iptables 切回 iptables-legacy

    2024年02月14日
    浏览(42)
  • 【Ubuntu 22.04安装CUDA】

    步骤1:更新系统 在终端中运行以下命令,确保系统已更新到最新版本: 步骤2:安装NVIDIA显卡驱动* 要使用CUDA,您需要安装NVIDIA的专有GPU驱动。运行以下命令来安装: 在安装驱动程序后,重启计算机以应用更改: 如何确定安装驱动版本 步骤3:添加NVIDIA CUDA存储库 在终端中

    2024年02月13日
    浏览(49)
  • ubuntu 22.04安装PostgreSQL

    关系数据库管理系统是许多网站和应用程序的关键组件。 它们提供了一种结构化的方式来存储、组织和访问信息。 PostgreSQL 或 Postgres 是一种关系数据库管理系统,它提供 SQL 查询语言的实现。 它符合标准并具有许多高级功能,例如可靠的事务处理和没有读锁的并发性。 本文

    2024年02月09日
    浏览(35)
  • Ubuntu22.04 安装Anaconda

    (1)下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=MO=D (2)选择适合您操作系统的版本进行下载 (3)下载方式有两种: 方式一,使用wget下载(注:先下载wget): 方式二:在本机下载后,通过xftp等文件上传工具,将工具包上传到服务器 (4)使用 uname -m 可以查询

    2024年02月15日
    浏览(49)
  • 电脑安装ubuntu22.04系统

    关于我 🏠 工作 | 杭州 ⭐ framework开发工程师(嵌入式软件开发工程师) ✈️公众号 | 好学程序员 ✈️微信 | l15228913797 🚀 邮箱 | 394651421@qq.com 安装系统就是从U盘启动盘去启动,利用U盘中的镜像来为电脑安装系统 不同电脑从U盘启动的方式可能不一样,一般也就两种方式 方

    2024年04月22日
    浏览(73)
  • Ubuntu 22.04 安装MySql

    MySQL是非常常用的关系型数据库,无论是大厂还是小厂,都有它的身影。最大的优点是免费,安装起来也比较简单。 画了个简图,描述了下MySQL的架构。 其中的比较有趣的点在于 连接池 和 存储引擎 。 连接池 缓存了数据库和客户端的 TCP连接 ,以减少建立连接的开销。 存储

    2024年01月21日
    浏览(54)
  • Ubuntu 22.04 安装 Terraform

    完结!

    2024年02月06日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包