zoukankan      html  css  js  c++  java
  • 2019 SDN上机第2次作业

    1. 利用mininet创建如下拓扑,要求拓扑支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确,请给出拓扑Mininet执行结果,展示端口连接情况

    用可视化工具miniedit创建:

    输入net命令和pingall命令查看网络端口状况及连通状况:

    由上图可知,s1的端口2与s2的端口1相连,h1,h2,h3分别与s1的1,4,3端口相连,h4,h5,h6分别与s2的2,3,4端口相连,如下图所示:

    2. 直接在Open vSwitch下发流表,用vlan得到下列虚拟网段,请逐条说明所下发的流表含义

    sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=1,actions=push_vlan:0x8100,set_field:4096->vlan_vid,output:2
    sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=4,actions=push_vlan:0x8100,set_field:4097->vlan_vid,output:2
    sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=3,actions=push_vlan:0x8100,set_field:4098->vlan_vid,output:2
    //将三台主机各设在一个vlan网络内(独立的vid),s1的数据包打上vlan tag从端口2向s2转发
    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:4
    sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,dl_vlan=2,actions=pop_vlan,output:3
    //接受从s2传来的数据包,去除vlan tag,分别根据dl_vlan(数据包原始的 VLAN ID)传送给同一vlan网络内的主机
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=2,actions=push_vlan:0x8100,set_field:4096->vlan_vid,output:1
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=3,actions=push_vlan:0x8100,set_field:4097->vlan_vid,output:1
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,in_port=4,actions=push_vlan:0x8100,set_field:4098->vlan_vid,output:1
    //将三台主机各设在一个vlan网络内(独立的vid),s2的数据包打上vlan tag从端口1向s1转发
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=0,actions=pop_vlan,output:2
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=1,actions=pop_vlan,output:3
    sudo ovs-ofctl -O OpenFlow13 add-flow s2 priority=1,dl_vlan=2,actions=pop_vlan,output:4
    //接受从s1传来的数据包,去除vlan tag,分别根据dl_vlan(数据包原始的 VLAN ID)传送给同一vlan网络内的主机
    

    3. 直接在Open vSwitch查看流表,提交OVS命令执行结果

    sudo ovs-ofctl -O OpenFlow13 dump-flows s1
    sudo ovs-ofctl -O OpenFlow13 dump-flows s2
    

    4. 提交主机连通性测试结果,验证流表的有效性

    使用pingall命令查看主机连通性

    5. 利用Wireshark抓包,分析验证特定报文

    选择s2-eth1接口进行抓包
    查看h1和h4之间的报文

  • 相关阅读:
    Mongo 配置文件 [www]
    网络上最完整的网络克隆教程
    perl操作MongoDB
    [C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)
    maven ClassNotFoundException: org.springframework.web.context.ContextLoader
    执行update操作的话,就会报“Connection is read-only. Queries leading to data modification are not allowed”的异常。
    解压war包
    删除文件夹
    查看端口是否被占用
    springmvc 注解
  • 原文地址:https://www.cnblogs.com/tinygod/p/11809701.html
Copyright © 2011-2022 走看看