Mininet自定义网络拓扑

在Mininet上的网络拓扑有两种方式

  • 第一种 用mininet自带的miniedit可视化工具,在mininet/mininet/examples/的目录下的一个miniedit.py,运行这个文件就会出现

  • 这个工具让底层网络生动形象,我现在个人比较喜欢这种方式。这是miniedit的基本教程参照Mininet可视化应用

  • 第二种用代码,通过编写python文件来自定义网络拓扑,下面就是关于拓扑的基本代码

    1,增加主机

    addHost('hostname')
> 2,增加交换机
    addSwitch('switchname')
> 3,增加链路
    addLink(node1,node2,node1_port,node2_port)
> 4,我建了个mininet_topo.py的文件


> 5,然后mininet输入以下指令

    sudo mn --custom mininet_topo.py --topo mytopo  --controller=remote,ip=192.168.138.128,port=6633
注意:
* ip地址为你主机的ip地,这样拓扑需要远程控制器(例如OpenDaylight,Ryu等)
> 6,结果
![](http://images2015.cnblogs.com/blog/885895/201704/885895-20170413214104501-917027370.png)

各个主机连不通,是因为还没给交换机下流表,我这里用ovs给s1,s2下流表以供参考

![](http://images2015.cnblogs.com/blog/885895/201704/885895-20170413215203939-792649888.png)

再次测试

![](http://images2015.cnblogs.com/blog/885895/201704/885895-20170413215253455-839588523.png)

最后

  • 我在远程控制器是用的ryu,在ryu的使用和ovs下流表的过程中我也遇到很多难题不懂,这里多谢学长的帮忙,流表中的Apr十分重要,以及互ping的协议要icmp,还有关于流表中的table之间的问题。
  • 附相关网站
    1,Arp
    2,Icmp
    3,Ryu的安装
    4,ovs流表table之间的转换

posted @ 2017-04-20 20:05  Smnouy  阅读(2567)  评论(0编辑  收藏  举报