一、安装Virtual Box步骤

至于VMware,当然也可以,二者都是虚拟机软件。但是VMware的安装文件很大,安装相对麻烦,而virtual box安装过程中,是中文的,安装较快且方便,比较适合新手学习使用。

安装过程:

  1. 下载virtual box安装程序,官网下载对应的版本,比如windows版本的。
  2. 安装过程基本就是fool式操作,按着提示直接默认安装就行,当然也可以修改安装的位置。

这里就不过多赘述virtual box的安装过程了。

二、在虚拟机中的Ubuntu安装步骤

1,点击新建,设置虚拟机的名字mininet,位置,以及版本等,由于我安装的是64位的Ubuntu系统,所有选择Linux和64bit,配置完成后点下一步。

2,分配运行内存,一般来说2G足够了,配置完成后点击下一步。

3,创建虚拟硬盘,选择VDI磁盘映像,然后选择动态分配,20G就可以,配置完成后点击创建。

4,这一步需要用到刚才下载的Ubuntu镜像,点击存储,选择第二IDE控制器主通道,然后选择刚才下载的Ubuntu镜像文件,配置完成后点击OK。

5,点击启动,开始启动安装过程,选择中文简体,如果其他语言对你来说so easy,那么完全没问题,然后选择安装Ubuntu,键盘模式选择美式键盘,配置完成后按提示继续。

6,根据个人习惯选择正常安装和最小安装都行,只不过最小窗口是在命令行模式下的,如果水平还可以,命令行模式充满了神秘感,我是一个小菜鸟所以我选择了正常安装,然后点击继续。

7,这一步需要配置系统的分区,选择其他选项,当然选择第一个也可以,根据个人配置需要,创建一个swap分区和一个/分区,如图的大小和选择进行,配置完成后点击下一步。

注意:在安装Linux系统的时候,由于虚拟机和本机的分辨率的不同可能造成界面显示不完全,看不见下一步等操作按钮,此时可以使用ctrl+鼠标左键拖动或win+鼠标左键拖动显示其余部分。

当出现键盘锁定在virtual box里面时,可以点右边的ctrl解除锁定。

8,时区选择,我们当然选择北京时间咯,也就是东8区,选择其他时间也许,比如美国时间。配置完成后,点击继续。

9,这一步,我们配置用户名,密码一类的,密码123456就行,不用过于复杂,带来一系列的麻烦,配置完成后,点击安装。

10,到这一步,恭喜你,接近成功啦,这时候休息一会吧,因为可能需要等上10分钟。安装成功后,会提醒重启,这时候重启就行,稍等片刻,linux系统安装成功,这时候一个虚拟机的Ubuntu就安装完成了。

三、Ubuntu环境下搭建SDN网络实验平台

1,首先根据步骤二,在虚拟机上安装两个Ubuntu操作系统,一个命名mininet用于安装mininet网络仿真器,一个命名FloodLight/openDaylight用于安装FloodLight/openDaylight控制器。

2,配置虚拟机网络,实现主机和虚拟机之间的网络通信,并做ping测试。首先,启动虚拟机后,我们进入命令行模式(ctrl+shift+t)输入ifconfig,我们可以看见配置网络之前的虚拟机网络。然后关闭虚拟机系统,在virtual box中进行配置,点击设置—>网络—>连接方式为NAT—>选择网卡2—>连接方式为仅主机(host-only)网络—>OK。

3,重启Ubuntu系统后,在Windows的命令行模式下输入ipconfig查看本机ip和虚拟机ip,可以看到本机的ip地址10.50.157.192,虚拟机的ip为192.168.56.1,要注意哟,我连的是无线网所以本机地址看无线局域网适配器,如果你用的网线就要看以太网适配器哟。

4,接下来,我们在命令行下看看是否可以和虚拟机通信,来ping一下吧。看图,有回复的,证明网络是正常的。

5,然后,在Ubuntu的命令行模式下,输入ifconfig可以查看虚拟机的IP网络配置,可以发现此时虚拟机有两个网卡,说明虚拟机的网卡2配置成功。注意,也许输入ifconfig命令,系统不能识别这个命令,那么就需要我们安装一下,在命令行使用sudo apt install net-tools。

6,接下来我们在虚拟机系统的命令行模式下,看看虚拟机系统是否可以和Windows主机连通,在命令行下ping一下。可以发现win主机有回复,到这一步,说明主机和虚拟机之间的虚拟网络配置成功。

四、在mininet虚拟机上本地安装mininet源码

1,首先,需要安装git,在GitHub上复制mininet,在Ubuntu的命令行模式下使用命令sudo spt-get install git。

2,在GitHub上获取源代码,命令git clone git://github.com/mininet/mininet。

3,获取源码成功后,在虚拟机上安装mininet,命令mininet/util/install.sh -nfv。

4, 安装成功之后,验证openvswitch-controller是否在运行,如果正在运行,应将其停止,以确保Mininet在启动时可以指定自己的控制器。

5,测试mininet是否安装成功,在Ubuntu命令行中输入命令sudo mn --test pingall。

五、在虚拟机上安装jdk和配置Java环境变量

(参考https://jingyan.baidu.com/article/25648fc1797a649191fd00ca.html)

1,由于floodlight或者openDaylight的使用需要提前配置jdk和Java环境变量,所以第一步我们需要在linux系统中配置好Java环境变量。首先,我们需要下载jdk,在命令行中输入sudo apt-get install openjdk-8-jdk。

2,配置环境变量JAVA_HOME 和PATH,使用命令sudo gedit /etc/environment在文本中配置环境,配置完成后保存。使用命令source /etc/environment使环境生效,然后可以查看环境,输入命令cat /etc/environment。

3,由于当虚拟机系统关闭后,可能再次打开会出现配置的环境变量无效,因此配置所有用户的环境变量,使用命令打开文本sudo gedit /etc/profile,在文本末尾添加截图所示代码。添加完成后保存,在命令行执行全局设置立刻生效命令source /etc/profile。

4,上述操作完成后,重启Ubuntu系统,并且在命令行输入命令java -version检查环境变量是否配置成功。

六、在虚拟机上安装floodlight控制器

1, 先安装 ant,命令行输入命令 sudo apt-get install ant。(Apache Ant,是一个将软件编译、测试 bai、部署等步骤联系在 一起加以自动化的一个工具,大多用于 daoJava 环境中的软件开发。)

2, 先安装 git,从中获取 floodlight,在命令行中输入命令 sudo apt-get install build-essentialpython-dev。执行完毕后,安装 git,在命令行输入命令 sudo apt-get install git。

3,安装curl,在命令行中执行命令sudo apt-get install curl。

4,从github克隆floodlight,输入命令git clone git://github.com/floodlight/floodlight.git,下载安装完成之后,进入floodlight,输入命令cd floodlight,最后验证ant。可能发现出现一系列的报错,然后根据提示下载安装thrift包。

5,运行floodlight,安装成功后(前提是装好了jdk并且成功配置了Java环境变量),执行命令java -jar target/floodlight.jar,此时可以看到一系列的输出,说明运行成功。

七、在虚拟机上安装openDaylight控制器

1,下载openDaylight,下载地址https://nexus.opendaylight.org/content/groups/public/org/opendaylight/integration/distribution-karaf/0.6.4-Carbon/distribution-karaf-0.6.4-Carbon.tar.gz。

2,下载完成后将压缩包移动到/usr/local/openDaylight目录下,当然移动需要权限,首先我们输入命令sudo nautilus,此时看见系统进入一个有权限的文件管理上,这时候就可以在里面创建文件夹和移动文件。       

3,需要对下载的openDaylight安装包进行解压,我们可以先确认文件夹内是否存在安装包,输入命令cd /usr/local/openDaylight,此时我们就进入了这个文件夹下,在命令行上输入命令ls,就可以查看此目录下的全部文件。由于我们的压缩包后缀为tar,所以输入命令sudo tar -xvf distribution-karaf-*.tar.gz进行解压。

4,解压完成后,我们进入解压的目录下,输入命令cd distribution-karaf-0.6.4-Carbon。然后输入命令sudo gedit etc/org.apache.karaf.management.cfg修改文件中的ip为127.0.0.1,方便本机测试使用。

5,接下来需要执行openDaylight,但是执行需要root权限,不然会提示权限不够,这时我们需要进入root,但是如果之前没有设置root密码,是无法进入,输入命令sudo passwd root,设置密码,注意Linux系统输入密码不会在屏幕显示。密码修改完成后,我们就可以进入root用户了,输入命令su root(注意:su就是用来切换用户,也可以su 用户名,切换已有的如何用户),再输入密码进入root用户,注意root用户和普通用户之间有明显的标志区别$和#。

6,执行openDaylight,先cd到安装openDaylight的目录下,然后输入命令./bin/karaf执行openDaylight。如下图表示执行成功。

7,安装各种openDaylight使用到的插件。

八、启动mininet,设置远程控制器,在openDaylight中查看拓扑图

1,启动在openDaylight虚拟机中启动openDaylight,具体操作先进入root用户,然后cd到openDaylight目录下,如第七节启动步骤。

2,打开mininet虚拟机,并启动mininet,由于设置topo需要root权限,所以首先我们进入root,然后构建自定义拓扑,输入命令mn - -topo single,3 - -controller=remote,ip=192.168.56.105,port=6633  - -switch ovsk,protocols=OpenFlow13。然后输入命令pingall,查看连接情况。

3,进入openDaylight虚拟机中,通过OpenDayLight控制器,查看网络拓扑;正在运行opendaylight虚拟机的IP是192.168.56.105,opendaylight的端口是8181,通过浏览器访问:http://192.168.56.105:8181/index.html,用户名和密码均为admin。

利用虚拟机配置SDN网络实验平台(virtual box+Ubuntu+jdk配置+mininet+floodlight/openDaylight)相关推荐

  1. sdn网络实验的搭建--mininet

    sdn实验 第一章 sdn网络实验的搭建–mininet 文章目录 sdn实验 前言 一. mininet是什么? 二.搭建步骤 1.mininet安装 2.ovs安装 总结 前言 mininet搭建 ...

  2. 初涉网络实验-路由器端口的开启与配置

    实验一:路由器端口的开启与配置 第一次做网络实验,感觉还是蛮新鲜的,以前只能看理论,对路由器.交换机只有个图像印象,今天终于看到其真面目了,爽! 今天的实验主要是用Packet Tracer 5.0来 ...

  3. 静态配置_【实验】华为静态路由基础配置

    关注我,你的眼睛会怀孕 一.静态路由功能介绍 静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络.当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要 ...

  4. linux Ubuntu网卡配置,Windows 7下用VirtualBox安装Ubuntu网卡配置

    Windows 7下用VirtualBox安装Ubuntu,要求Ubuntu能连上互联网,同时在Ubuntu中配置SSH.FTP.NFS服务,能从Win7进行访问. 此时Linux虚拟机需要两块网卡, ...

  5. virtual box Ubuntu 连接手机

    引自:http://blog.163.com/squall_smile/blog/static/603498402013741005176/ ubuntu 12.10的vmware虚拟机中连接andr ...

  6. virtual box ubuntu鼠标点进去不反应

    该贴不是记载的常规操作. 如果读者是刚刚使用virtual box鼠标不好使,那么点击设备->增强功能就好了() 如果还不行,设置改一下: 但是我是属于在系统里不知道搞了什么骚操作,导致看起来我 ...

  7. 华为模拟器eNSP配置NAT网络实验

    NAT(Network Address Translation,网络地址转换) 首先了解现在IP地址的使用情况,私有 IP 地址是指内部网络或主机的IP 地址,公有IP 地址是指在因特网上全球唯一的I ...

  8. 微信公纵平台基本配置php_php微信公众平台开发(一) 配置接口

    一.简介 微信公众平台是腾讯公司在微信的基础上新增的功能模块,通过这一平台,个人和企业都可以打造一个微信的公众号,并实现和特定群体的文字.图片.语音的全方位沟通.互动. 二.通讯机制 三.注册微信平台 ...

  9. 安装U盘版Ubuntu20.04(virtual box+Ubuntu安装光盘镜像文件)

    转载自:https://zhuanlan.zhihu.com/p/365217744 成品效果: 可以通过U盘启动Ubunut,和安装在电脑硬盘的使用效果一样; 可以作为普通U盘使用,不影响Ubunt ...

最新文章

  1. 苹果曝光无人车新进展,这名华人工程师是主要贡献者
  2. 后端必备 Git 分支开发:规范指南
  3. flex(入门)之timer的使用,键盘,鼠标的监听
  4. .net 序列化与反序列化
  5. nextcloud icon_吉利ICON的提车日记,这是一个不错的选择
  6. DataX不支持Mysql8.x
  7. 题解报告:hdu1205吃糖果(插空法)
  8. BZOJ 1036 [ZJOI2008]树的统计Count (树链剖分 - 点权剖分 - 单点权修改)
  9. 完美破解nbsp;iPhone“一键解锁”新手教程
  10. win7主题破解_VM 15.5虚拟机安装win7系统的流程
  11. antDesign Drawer
  12. jBPM4的PVM实现解析
  13. Windows10常用快捷键+cmd常见命令码
  14. dos2unix install on mac_好用到叫出声!强烈推荐 10 款 Mac 软件!
  15. python 峰_python-如何在具有多个峰的数据集中查找FWH...
  16. shell去掉输出的末尾换行符
  17. 上古卷轴nmm_您在《上古卷轴》中认识的人
  18. 联邦学习中的non-iid总结
  19. java 移动支付_如何在java中使用J2ME实现移动支付
  20. 软件智能:aaas系统设计之一、A语言:默认逻辑家族置标语言中语义标记的标记-“除外”的名和“除内”的相 之1

热门文章

  1. jquery 入门(jquery是什么/与JavaScript的联系与区别/jquery版本/引包/入口函数)
  2. Blood Cousins (dsu on tree + 求第k级祖先)
  3. [QMT]01-我的第一个Python策略
  4. ssssssssss
  5. ssssssssssss
  6. matlab常用函数与常用指令大全
  7. TM1638快速开发教程(基于正点原子mini板stm32f103rc)
  8. TM1638模块驱动(stm32,可以显示led灯,数码管,按键操作)(包含全部功能)
  9. SAP770系统FI模块配置(给科目表分配公司代码)
  10. win10修改桌面图标大小