VirtualBox網路之僅主機(Host-Only)網路
當建立好僅主機(Host-Only)網路後,在同一臺宿主機中,聯接其上的不同虛擬機器可以互通,虛擬機器主宿主機之間也可以互通,當在宿主機中設定了Internet連線共享,也可以訪問外網。
1.建立僅主機(HOST-ONLY)網路。
VirtualBox預設自帶名為"VirtualBox Host-Only Ethernet Adapter"的僅主機網路,為了演示的完整性,建立自己的僅主機網路。
開啟VirtualBox後,點選選單欄上的管理按鍵,然後選擇主機網路管理器,彈出如下圖1所示的對話方塊,可以看到VirtualBox預設自帶的僅主機網路。
圖1
然後點選圖1中對話方塊的建立按鍵,彈出如下圖2所示的對話方塊。
圖2
選中手動配置網絡卡,按自己的規劃填入值,這裡採用預設配置。點選DHCP伺服器選項卡,彈出如下圖3所示的對話方塊。
圖3
勾選啟用伺服器,按規劃填入值,同樣這裡採用預設配置,同時在圖3中紅框的位置打勾,現在一個帶DHCP功能的僅主機網路已建建立完成。開啟宿主機“控制面板\網路和 Internet\網路連線",如下圖4紅框所示,可以看到新創建出來的網路虛擬裝置。
圖4
開啟宿主機的命令列視窗,執行ipconfig /all命令,能看到如下圖5所示的輸出,證明虛擬裝置的IP地址已經被正確分配,IP地址是192.168.187.1,就是在圖2中裝置的值。
圖5
2.設定Internet連線共享(非必需)
完成以上步驟後,創建出來的僅主機網路還不能連線外網,如果想連通外網的話,需要設定連線共享,操作如下。在宿主機中開啟"控制面板\網路和 Internet\網路連線",右鍵點選處於連線狀態的網路,本例中是"無線網路連線"。選擇屬性,然後選擇共享選項卡,在Internet連線共享中將第一個複選項選中,在"請選一個專用網路連線"選擇前剛才建立的僅主機網路,如下圖6所示,點選確定。
圖6
點選確定後,會彈出如下圖7所示的提示框。windows會強制將在圖2中設定好的IP,換成下圖中的IP,也就是將"192.168.187.1"換成下圖7中的"192.168.137.1",而不是主動適配已經設定好的IP。接下來,再改回已經設定好的那個IP。
按開啟圖2的步驟再次開啟,如下圖8所示,將其中的"192.168.137.1"改成原來的"192.168.187.1",按應用鍵生效,就會恢復已經規劃好的配置。
圖8
目前建立的僅主機網路,具備DHCP功能,也能連線外部網路。
3.將虛擬機器接入建立好的僅主機網路。
如下圖9。啟用網絡卡1的網路連線,連線方式選擇"僅主機(Host-Only)網路,介面名稱選擇剛才建立的網路名稱,然後點OK。這樣的話虛擬機器ubuntu-02的網絡卡1就連線進入剛才建立的僅主機網路。因為網絡卡1是虛擬機器的主網絡卡,它會自動以DHCP的方式取得IP地址。啟動虛擬機器,確認一下它的網路情況。在此之前,先關閉宿主機的防火牆,否則PING不通宿主機。
圖9
因為網絡卡1是虛擬機器的主網絡卡,它會自動以DHCP的方式取得IP地址。啟動虛擬機器,確認一下它的網路情況。在此之前,先關閉宿主機的防火牆,否則PING不通宿主機。如下圖10.
圖10
由上圖可知道,網絡卡1就是enp0s3已分配到IP地址192.168.187.3,能PING通本網段的其它網址。從route命令的輸出與resolv.conf內容可以看出,虛擬機器現在還不能連線外網(因為沒有預設路由),也不能正確解析域名(因為沒有域名伺服器地址)。可見,僅主機(Host-Only)網路,並沒有為連線其上的虛擬機器自動配置路由及域名解析伺服器。
執行命令route add defalut gw 192.168.187.1新增預設路由,其中192.168.187.1就是位於宿主機中虛擬裝置的IP地址。修改/etc/resolv.conf檔案,增加一條可用的域名伺服器,如nameserver 8.8.8.8。再確認一下連線外網的能力,如下圖11,證明已能連線外網,也能解析域名。
圖11