2019 SDN上机第二次作业
2024-10-21 05:05:39
2019 SDN上机第二次作业
1.利用mininet创建如下拓扑,要求拓扑支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确,请给出拓扑Mininet执行结果,展示端口连接情况
1.1创建拓扑结构
1.2执行结果
1.3展示网络信息
1.4展示端口连接情况
2.直接在Open vSwitch下发流表,实现如下连通性要求,请逐条说明所下发的流表含义
2.1 s1流表
#s1将从端口号为1,2,3的主机发来的数据贴上相同的vlan tag,然后从4端口发往s2(vlan_id从0开始)
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=1,actions=push_vlan:0x8100,set_field:4096-\>vlan_vid,output:4
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=2,actions=push_vlan:0x8100,set_field:4097-\>vlan_vid,output:4
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=3,actions=push_vlan:0x8100,set_field:4098-\>vlan_vid,output:4
#s1将接收到的数据包去除vlan tag,然后根据dl_vlan(数据包原始的vlan_id),向指定端口转发
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,dl_vlan=0,actions=pop_vlan,output:1
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,dl_vlan=1,actions=pop_vlan,output:2
sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,dl_vlan=2,actions=pop_vlan,output:3
2.2 s2流表
#同上所述
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=1,actions=push_vlan:0x8100,set_field:4096-\>vlan_vid,output:4
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=2,actions=push_vlan:0x8100,set_field:4097-\>vlan_vid,output:4
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=3,actions=push_vlan:0x8100,set_field:4098-\>vlan_vid,output:4
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=0,actions=pop_vlan,output:1
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=1,actions=pop_vlan,output:2
sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=2,actions=pop_vlan,output:3
3.直接在Open vSwitch查看流表,提交OVS命令执行结果
3.1查询s1流表
sudo ovs-ofctl -O OpenFlow13 dump-flows s1
3.2查询s2流表
sudo ovs-ofctl -O OpenFlow13 dump-flows s2
4.提交主机连通性测试结果,验证流表的有效性
4.1测试其连通性
pingall
5.利用Wireshark抓包,分析验证特定报文
最新文章
- 用ProGet搭建内部的NuGet服务器
- 图解SQL的Join 转自coolshell
- Linux解决Device eth0 does not seem to be present
- leetcode 229 Majority Element II
- IOS中如何获取手机的当前IP
- error LNK2005 new,delete 等已经在LIBCMT.lib(delete.obj) 中定义 错误修正
- JDBC学习笔记(7)——事务的隔离级别&;批量处理
- 【BZOJ】1925: [Sdoi2010]地精部落 DP+滚动数组
- 字符编码知识:Unicode、UTF-8、ASCII、GB2312等编码之间是如何转换的?
- Swift 项目中常用的第三方框架
- 基于 HTML5 WebGL 的 3D SCADA 主站系统
- bzoj4152[AMPPZ2014]The Captain 最短路
- Android开发学习之路--MAC下Android Studio开发环境搭建
- kafka手动开启监听
- java前台线程和后台线程
- Dada_WenJian
- docker mysql Exit 1
- spring-boot(hello world)
- UML和模式应用5:细化阶段(5)---系统顺序图
- Linux后台运行进程