zoukankan      html  css  js  c++  java
  • SDN练习一

    SDN练习第一题

    题目描述


    实现网络拓扑:

    具体要求:

    • 南向接口采用OpenFlow 协议。
    • 可查看网络的拓扑信息视图。
    • H1、H2、H3、H4 任意两两可互通。

    实现思路


    • 利用mininet可视化图形界面miniedit画出网络拓扑以及实现openflow协议,之后导出python脚本。
    • 运行floodlight控制器。
    • 运行python脚本并连接floodlight控制器。
    • ping以及拓扑信息视图获取。

    miniedit


    • 使用以下命令运行miniedit:
    root@ubuntu:/home/liuhy# cd mininet/
    root@ubuntu:/home/liuhy/mininet# cd examples/
    root@ubuntu:/home/liuhy/mininet/examples# ./miniedit.py 
    
    

    • 画出拓扑:

    • 右键点击控制器c0选择Preferences修改信息如下:

    说明:1.2版本的flood了light控制器默认端口为6653。不修改会造成端口冲突等问题。

    • 左上角Edit→Preferences来编辑协议等信息。

    • 左上角File→Expoet Level 2 Script储存python脚本。

    运行floodlight控制器


    • 通过以下命令来创建floodlight控制器,默认端口6653
    root@ubuntu:/home/liuhy# cd floodlight/
    root@ubuntu:/home/liuhy/floodlight# java -jar target/floodlight.jar
    
    

    运行脚本


    • 为了确保准确无误,我们来检查脚本。
    root@ubuntu:/home/liuhy/mininet# vim sdn1.py
    
    

    • 保存

    运行脚本连接控制器


    • 注意:脚本直接运行,不用像实验三那样子配置参数,因为脚本中已经配置完毕。
    root@ubuntu:/home/liuhy/mininet# sudo python sdn1.py
    
    
    • 效果如图
      • mininet

      • floodlight

    信息获取


    • 连接状态
    mininet> pingall
    

    • 拓扑信息

    遇到的问题


    • 安装floodlight时环境变量出现问题,管态下命令丢失。

    • /bin 不在PATH 环境变量中,故无法找到该命令

      • 原因:配置java环境变量时,不小心把系统的PATH变量弄丢了(或者说覆盖掉)。
      • 解决方法:
        • 打开 ~/.bashrc 进行修改。
        • 运行 gedit ~/.bashrc
        • 如果碰到:“/gedit 不在PATH 环境变量中,故无法找到该命令”,问题,可以先设置临时的PATH变量。
        • 贴出设置环境变量方法
    • 连接floodlight控制器时连接失败问题

      • 原因:端口错误。
      • 解决办法:
        • 查看相关版本生成控制器的端口号。
        • 理解脚本创建拓扑的原理,修改脚本。
  • 相关阅读:
    linux安装python3
    web模拟终端 --使用shellinabox
    linux防火墙和xshell的链接
    Linux安装在虚拟机上
    DRF(django-rest_framework)框架
    Pycharm常用快捷键
    普通脚本调用django程序
    Pycharm安装模块提示module 'pip' has no attribute 'main'的问题
    Django的ModelForm
    面向对象(常用和特殊的创建类)
  • 原文地址:https://www.cnblogs.com/031602523liu/p/8859786.html
Copyright © 2011-2022 走看看