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

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

一、實驗目的

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

二、試驗任務

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

三、實驗步驟

1.實驗環境

安裝了 Ubuntu 16.04.6 Desktop amd64 的虛擬機器(使用18版本的並未成功完成實驗)

2.實驗過程

  • (1)原始碼安裝

    由於使用的16版本,需要換源
    $ sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak    //備份源列表
    $ sudo gedit /etc/apt/sources.list    //命令列開啟sources.list檔案
    //此步替換為國內源 省略
    $ sudo apt-get update && sudo apt-get upgrade    //升級並更新
    此時便可以使用了
    
    原始碼安裝過程中可能使用到的命令
    $ mkdir sdn      //新建 sdn 目錄(名稱可自定義),所有的應用安裝在該目錄下
    $ sudo apt-get install git
    $ cd zt          //先前的建立的目錄命名為zt
    $ git clone git://github.com/mininet/mininet      //下載 mininet 原始碼
    $ cd mininet
    $ sudo util/install.sh -a    //在 mininet 目錄下執行,-a 表示完整安裝
    $ sudo mn --version    //檢視版本
    
  • (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 等擴充套件設定。
每臺主機逐臺操作輸入10.0.0.1、10.0.0.2、10.0.0.3、10.0.0.4;Controller 部分主要是設定控制器型別,此處可按預設設定,如果是外部控制器,要選擇 RemoteController,之後填上 Controller 的 ip,如果是本機則按照預設的 127.0.0.1 即可。
點選左上角的 Edit,進行全域性設定,此時在預設設定的基礎上,勾選“Start CLI”,將 OpenFlow 1.1 1.2 1.3 全部勾選。
再點選左下角的 Run 執行拓撲,用pingall命令測試主機的連通性,並作其他擴充套件操作。

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

四、總結

18.04版本無法解決就換16.04,輸入指令的時候注意空格,換源時用自帶的火狐瀏覽器方便操作