SDN第三次上机做业

标签(空格分隔): SDNpython

做业连接测试

实验目的

在给定如上实验拓扑状况下,用vlan获得下列虚拟网段.net

h1--h4互通
h2--h5互通
h3--h6互通
其他主机间没法通讯

实验步骤

1.建立如下拓扑(可采用任意方式)

from mininet.topo import Topo

class MyTopo(Topo):

    def __init__(self):

        # initilaize topology
        Topo.__init__(self)

        # add hosts and switches
        host1 = self.addHost('h1')
        host2 = self.addHost('h2')
        host3 = self.addHost('h3')
        host4 = self.addHost('h4')
        host5 = self.addHost('h5')
        host6 = self.addHost('h6')
       
        switch1 = self.addSwitch('s1')
        switch2 = self.addSwitch('s2')

        # add links
        self.addLink(host1, switch1, 1, 1)
        self.addLink(host2, switch1, 1, 2)
        self.addLink(host3, switch1, 1, 3)
        self.addLink(host4, switch2, 1, 1)
        self.addLink(host5, switch2, 1, 2)
        self.addLink(host6, switch2, 1, 3)
        self.addLink(switch1, switch2, 4, 4)
        
topos = {'mytopo': (lambda: MyTopo())}

提交要求:截图证实拓扑的正确性3d

二、利用OVS命令下发流表,实现VLAN功能

参考连接:http://blog.csdn.net/rocson001/article/details/73163041
提交要求:贴出OVS下发流表的命令
下发s1流表
code

下发s2的流表

blog

注意
在第一次的时候输入sudo mn --custom ./sj3_1.py --topo mytopo --controller=remote,ip=127.0.0.1,port=6653失败了,由于使用的是1.1版本,好像?后来就指定openflow协议是1.3版本的。sudo mn --custom ./sj3_1.py --topo mytopo --controller=remote,ip=127.0.0.1,port=6653 --switch ovsk,protocols=OpenFlow13以后就能够了。ip

三、利用OVS命令查看流表

参考连接:http://blog.csdn.net/rocson001/article/details/73163041
提交要求:截图查看步骤2所下发的流表
ovs-ofctl dump-flow s1rem

ovs-ofctl dump-flow s2get

四、验证性测试

截图验证:it

h1--h4互通
h2--h5互通
h3--h6互通
其他主机间没法通讯

如图所示:

五、Wireshark抓包验证

提交要求:使用wireshark抓取,包含有VLAN tag的数据包,并截图验证
首先是开启wireshark

选要抓的包是从哪到哪的,而后开启抓包,同时也要在Mininet下相应的ping。
抓到的包以下:

相关文章
相关标签/搜索