1. 程式人生 > 實用技巧 >實驗 1 : Mininet 原始碼安裝和視覺化拓撲

實驗 1 : Mininet 原始碼安裝和視覺化拓撲

實驗 1 : Mininet 原始碼安裝和視覺化拓撲工具

一 、實驗目的

掌握 Mininet 的原始碼安裝方法和 miniedit 視覺化拓撲生成工具。

二 、實驗任務

使用原始碼安裝 Mininet 的 2.3.0d6 版本,並使用視覺化拓撲工具生成一個最簡拓撲(1 臺交換機連線 2 臺主機)。

三 、實驗步驟

  1. 實驗環境

    安裝了 Ubuntu 18.04.5 Desktop amd64 的虛擬機器

  2. 實驗過程

    (1)原始碼安裝

    原始碼安裝過程中可能使用到的命令

    $ mkdir sdn    // 新建 sdn 目錄(名稱可自定義),所有的應用安裝在該目錄下
    $ sudo apt-get install git    // 安裝 git
    

    $ cd sdn    // 進入 sdn 目錄
    $ git clone git://github.com/mininet/mininet    //下載 mininet 原始碼
    $ cd mininet
    $ sudo util/install.sh -a    //在 mininet 目錄下執行,-a 表示完整安裝
    


    $ sudo mn --version    // 檢視版本
    

    提示:安裝時間較長,請耐心等待。安裝過程中需要從 github 上獲取 openflow、pox、oftest、oflops 等元件,當出現 Enjoy Mininet! 字樣時,安裝完成。
    使用 Mininet 的 CLI 命令列測試基本功能:

    $ sudo mn --test pingall
    

    注意:如果執行上述命令提示:“Cannot find required executable ifconfig.”執行下面的命令安裝網路工具 net-tools。

    $ sudo apt install net-tools
    
    (2)使用視覺化工具

    使用到的命令

    $ sudo ./mininet/examples/miniedit.py    //在 Mininet 安裝目錄下執行
    

    執行介面如下,可以拖動左側邊欄的主機 Host、交換機 Switch、路由器 Router、網路鏈路 NetLink、控制器 Controller 等元件到右側空白處,實現網路拓撲的視覺化模擬。

    將 4 臺 Host、2 臺 Switch 和 1 臺 Controller 拖出,並用 NetLink 連線,形成下圖所示的網路拓撲

    滑鼠右鍵點選 Host 和 Controller,選擇設定屬性(Properties):Host 部分主要是設定主機 ip,以及 VLAN 等擴充套件設定。每臺主機逐臺操作;Controller 部分主要是設定控制器型別,此處可按預設設定,如果是外部控制器,要選擇 Remote Controller,之後填上 Controller 的 ip,如果是本機則按照預設的 127.0.0.1 即可。
    點選左上角的 Edit,進行全域性設定,此時在預設設定的基礎上,勾選“Start CLI”,將 OpenFlow 1.1 1.2 1.3 全部勾選。
    系統的 Terminal 上會顯示當前確認的設定。

    點選左下角的 Run,執行拓撲,由於開啟了 CLI,可使用 pingall 命令測試主機的連通性,並做其他擴充套件操作。

    拓撲生成並確認無誤之後,可以點選 miniedit 左上角的 File 選單,選擇 Export
    Level 2 Script,將拓撲儲存為 Python 指令碼,方便之後執行指令碼一鍵生成。