Skip to content

Latest commit

 

History

History
88 lines (86 loc) · 5.22 KB

Week 4.md

File metadata and controls

88 lines (86 loc) · 5.22 KB

第四週筆記

安裝 mininet-wifi

  1. Open VirtualBox
  2. Open Ubuntu 16.04 LTS
  3. Open terminal
  4. Switch to Super User: su
  5. Enter Super User Password
  6. Clone the project of mininet-wifi: git clone https://github.com/mininet/mininet.git
  7. Change Directory: cd mininet
  8. Install: sudo util/install.sh

mininet 指令介紹

  1. 開始 mininet:mn
    • 由下圖可看出此基本網路拓樸中包含兩個虛擬 host(h1、h2)、一個 switch(s1)與一個 controller(c0)
  2. 查看 mininet 環境下所有可用指令:help
  3. 顯示所有網路的連接情況:net
  4. 列出所有節點:nodes
  5. 列出所有節點的連線狀態:links
  6. 查看各節點的訊息:dump
  7. 查看交換機連接 ports:ports
  8. 測試 h1 節點 ping h2 節點:h1 ping -c 3 h2
  9. 叫出兩個節點的命令視窗:xterm h1 h2
  • 若無反應代表環境未安裝 xterm,需先安裝:開啟一個新的 terminal -> su -> apt-get install xterm
  1. 安裝 wireshark 觀察封包轉發情形:開啟一個新的 terminal -> su -> apt-get install wireshark

11. 開啟 wireshark 選擇 s1-eth1,h2 節點 ping h1 節點,觀察封包轉發情形 - xterm h1:`ifconfig`(得知 IP 為 10.0.0.1) - xterm h2:`ifconfig`(得知 IP 為 10.0.0.2) - xterm h2:`h2 ping -c 4 h1`(h2 ping h1 四次)

12. 兩節點之間進行 iperf TCP 測試:`iperf`

13. 執行 python 指令:`py + 指令/[檔案名].py`

14. 離開 mininet:`exit`

mininet 參數模式

  • 指令格式化:mn [-topo] [-controller] [-link] [-switch] [-mac] [-nat] [-ipbase]
    • --topo:自定義拓樸,如 linearminimalreversedsingletorus(較少用)、tree
      • linear:線性的,每個交換機連接一個主機,範例 mn --topo=linear,2
      • minimal:最小的網路拓樸,範例 mn --topo=minimal
      • reversed:主機埠號大小與交換機埠號大小正好相反,即最小埠號對應交換機最大埠號,範例 mn --topo=reversed,3
      • single:單個交換機,每個主機都連到同一個交換機上,範例 mn --topo=single,3
      • tree:數狀拓樸,範例 mn --topo=tree,fanout=2,depth=2(扇出 = 2,深度 = 2;第一層一個交換機,第二層兩個交換機,主機 2 * 2 = 4)
    • --link:自定義網路參數,如 defaultovstc
    • --switch:自定義虛擬交換機,如 defaultivslxbrovsovsbrovskuser
    • --controller:自定義控制器,如 defaultnonenoxovscrefremoteryu
    • --nat:自動設置 NAT
    • --cluster:集群模式,將網路拓樸運行在多台主機上
    • --mac:自動設置主機 MAC
    • --arp:自動設置 ARP 表
  1. 清除 mininet 設定,目的是清除上一個執行完的拓樸,避免下一個在執行時出錯:mn -c
  2. 比較有無 --nat 參數的差異:mn vs. mn --nat
    • mn:h1 主機無法 ping 8.8.8.8
    • mn --nat:自動設置 NAT,h1 主機可以 ping 8.8.8.8
  3. 建立拓樸,拓樸架構如下圖所示:mn --topo single,3 --mac --switch ovsk --controller remoteremote 表示連接外部 controller)

延伸學習

  1. Lab 1-mininet 介紹、安裝與使用方法
  2. 【Mininet指令介紹】
  3. Mininet
  4. Mininet 系列实验(二)