zoukankan      html  css  js  c++  java
  • mininet可视化(2021.6.25)

    相关的配置有很多教程,一笔带过。

    cd mininet/examples

    sudo python miniedit.py

    1.右击长按图标可配置控制器,交换机,主机。上方菜单栏Edit配置。

    下面是需要详细介绍的内容。

    2.左下角run运行

    3.此时右击长按图标可查看图标信息

    纠错!:下面的s1和s2之间需要链路,不然h3与h1h2ping不通,忘记连了。

    这里s1s2需要连接的原因:虽然s1与s2通过c0相连,但控制器c0只具备控制功能,不具备转发功能。

     

     相关的操作都可以右击长按打开主机图标进行操作。

     把topo保存成py文件。

     

     zj.py

    #!/usr/bin/python
    
    from mininet.net import Mininet
    from mininet.node import Controller, RemoteController, OVSController
    from mininet.node import CPULimitedHost, Host, Node
    from mininet.node import OVSKernelSwitch, UserSwitch
    from mininet.node import IVSSwitch
    from mininet.cli import CLI
    from mininet.log import setLogLevel, info
    from mininet.link import TCLink, Intf
    from subprocess import call
    
    def myNetwork():
    
        net = Mininet( topo=None,
                       build=False,
                       ipBase='10.0.0.0/8')
    
        info( '*** Adding controller
    ' )
        c0=net.addController(name='c0',
                          controller=RemoteController,
                          ip='127.0.0.1',
                          protocol='tcp',
                          port=6653)
    
        info( '*** Add switches
    ')
        s1 = net.addSwitch('s1', cls=OVSKernelSwitch, dpid='0000000000000001')
        s2 = net.addSwitch('s2', cls=OVSKernelSwitch, dpid='0000000000000002')
    
        info( '*** Add hosts
    ')
        h3 = net.addHost('h3', cls=Host, ip='10.0.0.3', defaultRoute=None)
        h2 = net.addHost('h2', cls=Host, ip='10.0.0.2', defaultRoute=None)
        h1 = net.addHost('h1', cls=Host, ip='10.0.0.1', defaultRoute=None)
    
        info( '*** Add links
    ')
        net.addLink(s1, h1)
        net.addLink(s1, h2)
        net.addLink(s2, h3)
        net.addLink(s1, s2)
    
        info( '*** Starting network
    ')
        net.build()
        info( '*** Starting controllers
    ')
        for controller in net.controllers:
            controller.start()
    
        info( '*** Starting switches
    ')
        net.get('s1').start([c0])
        net.get('s2').start([c0])
    
        info( '*** Post configure switches and hosts
    ')
    
        CLI(net)
        net.stop()
    
    if __name__ == '__main__':
        setLogLevel( 'info' )
        myNetwork()

    需要执行zj.py脚本,使用sudo python zj.py命令就可以执行。

    作者:天际使徒
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    部署时,出现用户代码未处理 System.Security.Cryptography.CryptographicException 错误解决方法
    sqlserver学习笔记(三)—— 为数据库添加新的用户
    [.Net MVC] Win7下IIS部署
    CSS的4种引入方式及优先级
    阿里巴巴图标库全部下载
    div的默认position值是静态的static
    阿里巴巴图标库iconfont上传svg后,显示不了图片
    ext.net单元格内容换行显示
    WEB内容换行
    SQL修改日期类型字段为字符串类型
  • 原文地址:https://www.cnblogs.com/Horizon-asd/p/14929719.html
Copyright © 2011-2022 走看看