Mininet is a network emulator which creates a network of virtual hosts, switches, controllers, and links. Mininet hosts run standard Linux network software, and its switches support OpenFlow for highly flexible custom routing and Software-Defined Networking.
Mininet supports research, development, learning, prototyping, testing, debugging, and any other tasks that could benefit from having a complete experimental network on a laptop or other PC.
根據mininet官方網站的說法,mininet是一個執行在Linux平台中的網路拓墣模擬器,可以同時產生多個虛擬主機 / 交換機 / 控制器,並將其串接起來,由於其交換機支持OpenFlow的協定,更有助於軟體定義網路(Software Defined Networking)的模擬環境開發
———————————– 安裝流程 ——————————–
現在我們就直接來看看要怎麼安裝吧,首先我們先安裝好Ubuntu 16.04(在這裡示範的是16.04的版本,其他版本沒有測試過)
- 安裝好Ubuntu 16.04後,我們先來更新一下套件源的列表(update)和套件的升級(upgrade)
- 更新和升級好後重新啟動
sudo apt-get update
sudo apt-get upgrade
reboot下完指令後就開始進行套件清單比對 系統檢查要升級的套件列表,輸入“y”等他升級完成吧 升級完成後如果沒有錯誤訊息,基本上是算升級成功,接著重新啟動讓Ubuntu載入新設定 小知識:
- update
更新我們的套件清單 /etc/apt/sources.list,這樣在我們更新時才能比對最新的套件清單,決定是否更新
- upgrade
根據前述的更新清單 /etc/apt/sources.list,比對是否更新套件。若有相依性問題,則放棄更新。 - dist-upgrade
根據前述的更新清單 /etc/apt/sources.list,比對是否更新套件。若有相依性問題,會嘗試做安裝/移除,將相依性問題解決並更新。
PS. 通常視為較危險的更新
- update
- 重新開機後,我們先下載git的套件
- 切換到/home/[用戶帳戶名稱] 目錄底下 (用戶帳戶名稱要替換成你的帳戶名稱)
- 在到放置mininet相關套件的github中clone到本機端
#如果覺得每次都要一直打sudo很麻煩,可以直接打“sudo -i”或“sudo su”直接取得
#super user 權限,之後的指令就不需要再打sudosudo apt-get install git
sudo cd /home/[用戶帳戶名稱]
sudo git clone git://github.com/mininet/mininet安裝git套件 切換到/home/parallels目錄底下(此處的帳戶名稱為parallels),切換到此目錄的原因是我們都把下載下來的套件統一放置較好管理 將mininet的套件clone下來,利用ls檢查目錄底下多了mininet資料夾就代表已經下載下來了
-
- 進入mininet/util目錄
- 利用shell檔案安裝mininet
sudo cd mininet/util/
sudo ./install.sh -a# mininet 安裝選項
install.sh -a 安裝所有mininet的套件
install.sh -s 指定目錄 -a 在指定目錄下安裝所有mininet的套件
install.sh -nfv 安裝mininet + 自訂switch + Open vSwitch進入mininet/util 目錄,並進行安裝 看到Enjoy mininet 就代表安裝完成 注意
官網上提到可用git tag指令查看有哪些版本可以安裝,但實際測試下2.2.1和2.2.2的版本安裝時都會有錯誤,因此就不要在此選擇版本,直接用預設的版本 用預設安裝mininet後的版本為2.3.0
- 可以簡單進行幾個指令測試
sudo mn –test pingall
pingall 測試成功