实验2:Open vSwitch虚拟交换机实践

发布时间:2022-07-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了实验2:Open vSwitch虚拟交换机实践脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

实验2:OPEn vSwITch虚拟交换机实践

一、实验目的

能够对Open vSwitch进行基本操作; 能够通过命令行终端使用OVS命令操作Open vSwitch交换机,管理流表; 能够通过Mininet的Python代码运行OVS命令,控制网络拓扑中的Open vSwitch交换机

二、实验环境

下载虚拟机软件oracle VisualBox 或 VMware; 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;

三、实验要求

(一)基本要求

1.创建OVS交换机,并以ovs-switchxxx命名,其中xxx为本人在选课班级中的序号,例如ovs-switch001, ovs-switch088等。在创建的交换机上增加端口p0和p1,设置p0的端口号为100,p1的端口号为101,类型均为internal;为了避免网络接口上的地址和本机已有网络地址冲突,需要创建虚拟网络空间(参考命令netns)ns0和ns1,分别将p0和p1移入,并分别配置p0和p1端口的ip地址为190.168.0.100、192.168.0.101,子网掩码为255.255.255.0;最后测试p0和p1的连通性。

创建文件夹lab2以及创建ovs交换机

实验2:Open vSwitch虚拟交换机实践

添加p0、p1端口,并按要求配置交换机类型

实验2:Open vSwitch虚拟交换机实践

查看端口信息

实验2:Open vSwitch虚拟交换机实践

创建并配置虚拟空间

实验2:Open vSwitch虚拟交换机实践

使用 sudo ovs-vsctl show 查看ovs交换机、端口状态

实验2:Open vSwitch虚拟交换机实践

通过 sudo ip netns exec ns0 ing 192.168.0.101 测试p0、p1连通性

实验2:Open vSwitch虚拟交换机实践

(测试出的连通性良好)

2.使用Mininet搭建的SDN拓扑,如下图所示,要求支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确。

运行可视化界面搭建目标拓扑

实验2:Open vSwitch虚拟交换机实践

支持OpenFlow 1.3协议 (记得勾选start CLI选项

实验2:Open vSwitch虚拟交换机实践

保存为python脚本

实验2:Open vSwitch虚拟交换机实践

编辑python文件:主机名、交换机名以及端口对应正确

实验2:Open vSwitch虚拟交换机实践

运行python脚本生成拓扑

实验2:Open vSwitch虚拟交换机实践

3.通过命令行终端输入“ovs-ofctl”命令,直接在s1和s2上添加流表,划分出所要求的VLAN

@H_777_84@
VLAN_ID Hosts
0 h1 h3
1 h2 h4

命令行运行如下代码对s1,s2下发流表:

实验2:Open vSwitch虚拟交换机实践

使用 sudo ovs-sudo ovs-ofctl -O OpenFlow13 dump-flows s1 sudo ovs-sudo ovs-ofctl -O OpenFlow13 dump-flows s2 查看s1,s2流表

实验2:Open vSwitch虚拟交换机实践

4.主机连通性要求:

h1 – h3互通 h2 – h4互通 其余主机不通

实验2:Open vSwitch虚拟交换机实践

使用 mininet pingall,同时使用 sudo Wireshark 对s1或s2的3号端口进行wireshark抓包 (先点击开始抓包再pingall)

主机h2,h4之间的包标记为1

实验2:Open vSwitch虚拟交换机实践

主机h1,h3之间的包标记为0

实验2:Open vSwitch虚拟交换机实践

四、个人总结

遇到的问题

1.运行完可视化界面,并搭建目标拓扑之后。将文件保存为python脚本,但保存的python脚本是只读文件,无法直接修改 (虽然可以用命令行修改,但觉得将文件改为可读可改更好更方便些) 通过 sudo chmod 666 文件名.py 将文件成功该文可读可改

实验2:Open vSwitch虚拟交换机实践

2.添加p0、p1端口时有error,虽然不影响后续步骤,但原因不太清楚

实验2:Open vSwitch虚拟交换机实践

实验心得

本次实验我们学习了Open vSwitch的相关知识,学习在命令行中使用ovs-vsctl和ovs-ofctlOVS命令操作Open vSwitch交换机(包括创建交换机、创建端口、创建网络空间、配置ip地址等)、管理流表(流表的下发和查看)、划分VLAN。
这次实验中的很多东西也联系到了上学期所学的计算机网络课程,有种熟悉又陌生的感觉。

脚本宝典总结

以上是脚本宝典为你收集整理的实验2:Open vSwitch虚拟交换机实践全部内容,希望文章能够帮你解决实验2:Open vSwitch虚拟交换机实践所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。