當你在 VirtualBox 虛擬機軟件 中安裝了各種操作系統時,你可能需要實現宿主機與虛擬機之間的相互訪問。
在這篇文章中,我們將會以最簡單明了的方式來說明如何配置客戶機與 Linux 宿主機的網絡,以實現兩者相互訪問或者讓客戶機連接到外網。(LCTT 譯注:客戶機指 Oracle VirtualBox 虛擬機軟件中安裝的操作系統,如本文中用到的 CentOS 7 和 Ubuntu 16.10 。宿主機就是你自己的筆記本電腦或臺式機,注意這篇文章中作者的宿主機上安裝的操作系統是 Linux Mint 18 ,而不是我們平時使用的 Windows 系統。)
本文測試環境: 1、宿主機操作系統—— Linux Mint 18 2、客戶機操作系統—— CentOS 7 和 Ubuntu 16.10
要求
宿主機上安裝的 VirtualBox 虛擬機 能正常使用。
你得事先在 Oracle virtualBox 虛擬機軟件中安裝好客戶機操作系統,比如 Ubuntu、Fedora、CentOS、 Linux Mint 或者其它的 Linux 系統也行。
在你配置網絡前,請先關閉客戶機。
為了讓宿主機和客戶機能夠互相聯通,這兩個機器的默認網卡 IP 必須設置在同一網段,你可以為客戶機添加多達 4 塊網卡。
默認網卡(網卡 1)通常用于使用 NAT 連接方式連接到宿主機進行上網。
重要提示:通常總是設置第一塊網卡與宿主機通信,第二塊網卡連接到外網。
為客戶機和宿主機創建網卡
在下面的 VirtualBox 管理器界面,創建客戶機和宿主機之間的通信網卡。
打開文件->首選項配置,或者使用組合鍵 Ctrl + G :
在下圖中有兩個選項,單擊并選擇僅主機 Host-only 網絡。然后使用右側的 + 按鈕來添加一個新的僅主機網絡。
這樣就創建好了一個名為 vboxnet0 的新的僅主機模式網卡。
如果你愿意,你可以使用中間的 - 按鈕來刪除這個網卡,你可以單擊編輯按鈕來查看這個網卡的詳細配置信息。
你也可以根據自己的實際環境修改配置信息,比如網絡地址,子網掩碼等等。
注意:下圖中的 IPv4 地址就是你的宿主機的 IP 地址。
下圖中,如果你想讓客戶機使用動態 IP 地址,你可以通過配置 DHCP 服務來完成(在使用前請確保啟用 DHCP )。但是我建議你為客戶機配置一個靜態 IP 地址。
在下面的設置所有網絡界面單擊 OK 按鈕來保存修改的配置。
配置客戶機網絡設置
注意:你可以根據下面的步驟來為任何需要與宿主機通信的客戶機添加網卡。
回到 VirtualBox 管理器界面,選擇客戶機,比如 Ubuntu 16.10 Server 或者 CentOS 7 ,然后單擊設置菜單。
配置客戶機網卡以連接到宿主機
從下圖的界面中選擇網絡選項。然后配置第一塊網卡( 網卡 1 )的信息如下:
如下圖所示,單擊 OK 來保存設置:
配置客戶機網卡連接外網
之后添加第二塊網卡(網卡 2 )來讓客戶機連接到宿主機進行上網。使用下面的設置:
為客戶機啟用網絡連接
為客戶機設置靜態 IP 地址
啟動客戶機,登錄系統并配置靜態 IP 地址。在客戶機上執行下面的命令來查看所有網卡配置信息,然后分配一個 IP 地址:
$ ip add
從上面的截圖中可以看出客戶機已啟用了三塊網卡:
在 Debian/Ubuntu/Linux Mint 系統下的配置
重要提示: 這里我使用的是 Ubuntu 16.10 Server , IP 地址為 192.168.56.5 。
使用你喜歡的編輯器及管理員賬號打開 /etc/network/interfaces 配置文件:
$ sudo vi /etc/network/interfaces
修改網卡 enp0s3 的配置信息如下(根據你的實際環境進行修改):
auto enp0s3iface enp0s3 inet staticaddress 192.168.56.5network 192.168.56.0netmask 255.255.255.0gateway 192.168.56.1dns-nameservers 8.8.8.8 192.168.56.1
保存并退出。
然后使用下面的命令來重啟網絡服務:
$ sudo systemctl restart networking
或者,正常重啟系統,然后檢查網絡配置是否為新的 IP 地址:
$ ip add
在 RHEL/CentOS/Fedora 系統下的配置
重要提示: 這里我使用的是 CentOS 7 系統, IP 地址為: 192.168.56.10 。
使用管理員帳號及你喜歡的編輯器打開 enp0s3 (僅主機網絡)的網卡配置文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3 :
$ sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
創建或修改配置文件信息如下(根據你實際的環境進行修改):
BOOTPROTO=staticONBOOT=yesIPADDR=192.168.56.10NETWORK=192.168.56.0NETMASK=255.255.255.0GATEWAY=192.168.56.1DNS=8.8.8.8 192.168.56.1NM_CONTROLLED=no #use this file not network manager to manage interface
保存并退出。然后使用下面的命令重啟網絡服務(也可以重啟系統):
$ sudo systemctl restart network.service
檢查修改的配置地信息是否生效:
$ ip add
在宿主機上使用 SSH 工具來管理客戶機
在宿主機上使用 SSH 工具來管理你的客戶機。在下面的實例中,我將使用 SSH 工具連接到 CentOS 7 服務器(192.168.56.10):
$ ssh tecmint@192.168.56.10$ who
就寫到這里吧!在這篇文章中,我們用簡單易懂的方法講述了如何在宿主機與客戶機之間設置網絡連接方式。請在下面的評論區跟大家分享下你的想法。也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答
圖片精選