【Mininet 路由實驗 — 2 router with 2 host】

我們上次在Mininet所模擬出來的拓墣是一個Router連接兩個不同網段,且每個網段各有一台host,現在則是使用兩台Router分別連接一台host,和上次不一樣的地方是,這次實驗有三個不同網段,而且不僅是host要設定路由外,Router的部分也要進行設定

006

實驗環境

  • ubuntu desktop 16.04
  • mininet 2.3.0

#執行mininet的拓墣檔案(router_2.py)

python ./router_2.py

Screenshot from 2017-12-02 03-23-03.png
拓墣檔案內容

# xterm開啟r1 r2 h1 h2

Screenshot from 2017-12-02 03-25-41.png
進入xterm後,左上是router1,右上是router2,左下是host1,右下是host2,建議視窗安排位置可以參考圖上拓墣,比較不會搞混,如果沒有特定指定IP,mininet預設使用10.0.0.1/8網段

#進行設備上IP的設定(有以下設定語法)

ifconfig [設備介面] [IP位址]/[遮罩數]
ifconfig [設備介面] [IP位址] netmask [子網路遮罩IP]
ip addr add [IP位址]/[遮罩數] brd + dev [設備介面]

Screenshot from 2017-12-02 03-32-04.png
將h1的h1-eth0介面設為192.168.10.1/遮罩255.255.255.0,h2的h2-eth0介面設為192.168.30.1/遮罩255.255.255.0,r1的r1-eth0介面設為192.168.10.254/遮罩255.255.255.0,r1的r1-eth1介面設為192.168.20.1/遮罩255.255.255.0,r2的r2-eth0介面設為192.168.30.254/遮罩255.255.255.0,r2的r2-eth1介面設為192.168.20.2/遮罩255.255.255.0

# 進行主機Ping測試
我們發現r1/r2/h1/h2只能ping到直連網路的網域

006_1
不同顏色的部分代表每台設備可以連到的範圍

Screenshot from 2017-12-02 03-37-52.png

Screenshot from 2017-12-02 03-38-37
#在還沒設定路由前,r1只認得192.168.10.0/24和192.168.20.0/24網域,r2只認得192.168.20.0/24和192.168.30.0/24網域

# 開啟路由轉發功能
echo 1 > /proc/sys/net/ipv4/ip_forward

# 設定h1和h2的路由
[h1]> ip route add default -via 192.168.10.254 dev h1-eth0
[h2]> ip route add default -via 192.168.30.254 dev h2-eth0

Screenshot from 2017-12-02 03-43-01.png

# 觀察Ping結果
006_2.png
中間r1和r2間無法通訊,需要在r1和r2設定路由

Screenshot from 2017-12-02 03-48-30.png

# 進行路由設定
[r1]> ip route add 192.168.30.0/24 via 192.168.20.2 dev r1-eth1
[r2]> ip route add 192.168.10.0/24 via 192.168.20.1 dev r2-eth1

Screenshot from 2017-12-02 03-56-53.png

# 小觀察:我們停用r1的轉發功能,看看結果
006_3.png

Screenshot from 2017-12-02 03-59-02
停用r1封包轉發

Screenshot from 2017-12-02 03-59-02-2.png

如果不想經過這麼繁雜的設定,可以將上面的設定寫成python檔案,再做執行

Screenshot from 2017-12-02 04-08-42.png

 

 

 

 

 

 

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s