【實體host與虛擬host通訊 — 不同網段】

今天的研究目標是讓實體主機(執行虛擬機的host)和虛擬主機(執行在Mininet上的主機)進行通訊,在環境上面的設定其實不難,其中最關鍵的地方在於「路由表」的設定,我們要告知實體主機目標網址(Mininet上的主機)的走向,否則封包會找不到,而導致無法通訊的情形發生

環境建置如下
routing_002.png

  • 實體主機(IP: 192.168.1.7)
  • 虛擬主機(IP: 192.168.1.5) –> 使用橋接網路,網段會落在192.168.1.0/24
  • 虛擬主機(IP: 10.211.55.5) –> 使用NAT網路,網段會落在10.211.55.0/24
  • Mininet主機共10台(IP: 192.168.80.1 ~ 192.168.80.10)

介面設定如下

螢幕快照 2017-12-07 上午12.57.56.png
橋接介面(實體端)
Screenshot from 2017-12-06 08-52-53.png
橋接介面(虛擬端)
螢幕快照 2017-12-07 上午1.08.21.png
NAT網路(實體端)
Screenshot from 2017-12-06 08-51-46.png
NAT網路(虛擬端)
Screenshot from 2017-12-06 08-57-16.png
Mininet host的IP從192.168.80.1 ~ 192.168.80.10

執行過程

# 執行Controller 和 Mininet
利用ipbase指令來分派host的IP

Screenshot from 2017-12-06 08-56-20.png

進行路由表設定[橋接網路]

未設定前,無法ping通虛擬主機

螢幕快照 2017-12-07 上午12.59.15.png
無法ping通192.168.80.1

螢幕快照 2017-12-07 上午12.59.35
routing_003.png

螢幕快照 2017-12-07 上午1.13.18.png
路由表中沒有192.168.80.0/24網段,故往192.168.1.1預設閘道出去

開始設定實體主機路由表
netstat -r  #查看路由表
route -n add 192.168.80.0/24 192.168.1.5
[PS] 新增通往192.168.80.0網段經由192.168.1.5介面出去

螢幕快照 2017-12-07 上午12.59.35-2.png

螢幕快照 2017-12-07 上午1.01.37
新增路由表
螢幕快照 2017-12-07 上午1.01.51.png
已新增至路由表中

# 測試與虛擬主機的連線

螢幕快照 2017-12-07 上午1.03.40.png
可與192.168.80.0/24的虛擬主機聯通了
Routing_004
封包路徑

成功進行橋接網路的設定後,再來換試試NAT網路

進行路由表設定[NAT網路]

開始設定實體主機路由表
route -n delete 192.168.80.0/24     # 先刪除剛剛設定的路由表規則
netstat -r  #查看路由表
route -n add 192.168.80.0/24 10.211.55.5
[PS] 新增通往192.168.80.0網段經由10.211.55.5介面出去,和橋接網路不同的地方在於出去的介面IP

螢幕快照 2017-12-07 上午1.04.33.png

螢幕快照 2017-12-07 上午1.09.39.png

螢幕快照 2017-12-07 上午1.10.54.png
測試可ping通虛擬主機
螢幕快照 2017-12-07 上午1.13.59
經由10.211.55.5介面送往192.168.80.1主機
Routing_005
封包路徑

發表迴響

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

WordPress.com 標誌

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

Google photo

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

Twitter picture

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

Facebook照片

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

連結到 %s