一、实验目的
回顾 JDK 安装配置,了解 OpenDaylight 控制的安装,以及 Mininet 如何连接;
通过抓包获取 OpenFlow 协议,验证 OpenFlow 协议和版本,了解协议内容。
二、实验要求
1. 安装 OpenDaylight 控制器
$ sudo sudo mkdir /home/hpp/031802220/java
$ sudo tar -zxvf jdk-8u251-linux-x64.tar.gz
$ gedit ~/.bashrc
在文件末尾追加内容如下:
$ export JAVA_HOME=/home/hpp/031802220/java/jdk1.8.0_251
$ export JRE_HOME=${JAVA_HOME}/jre
$ export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
$ export PATH=${JAVA_HOME}/bin:$PATH
$ source ~/.bashrc
$ java -version //验证安装版本
解压安装
$ tar -zxvf distribution-karaf-0.6.4-Carbon.tar.gz //Carbon 版本
运行 karaf
$ ./distribution-karaf-0.6.4-Carbon/bin/karaf //Carbon 版本
$ feature:install odl-restconf odl-l2switch-switch-ui odl-openflowplugin-flow-services-ui odl-mdsal-apidocs odl-dluxapps-applications
2. 启动 Mininet 虚拟机,生成一个最简拓扑并连接 OpenDaylight
运行命令生成拓扑并连接控制器:
$ sudo mn --switch ovs,protocols=OpenFlow13 --controller=remote,ip=127.0.0.1,port=6633
2. 启动 Mininet 虚拟机,生成一个最简拓扑并连接 OpenDaylight
$ sudo wireshark
利用 openflow_v4 过滤出 OpenFlow 1.3 协议
用 OVS 命令查看交换机中确实存在相应版本的流表,cookie、priority 等信息可以
上面的抓包能够对应上。
三、遇到的问题
1、解压时出现报错:cannot execute binary file: 可执行文件格式错误
这个是16安装*64版本出现的问题,我想应该是不兼容的问题,我选择换18简易安装版本继续完成,或是使用i586版本镜像即可完成安装,这边顺便说一下,我使用java i tell you这个网址下载镜像,这个下载速度会相对快一些。
2、选择自定义路径解压JDK
由于原路径需要一些权限对解压造成一些不利的影响,我选择在自己的目录下建立java文件夹,随后按照路径解压,值得注意的是,路径中间会有一个用户目录,因此如果我们缺少目录将安装失败,因此解压前应当使用pwd看清楚自己存储的路径。
下图是解压安装失败的样图:
下图为pwd找到隐藏路径的图