首頁 > 軟體

如何設定 Oracle VirtualBox 中的客戶機與物理機網路

2020-06-16 17:20:43

當你在 Oracle VirtualBox 虛擬機器軟體 中安裝了各種作業系統時,你可能需要實現物理機與虛擬機器之間的相互存取。

在這篇文章中,我們將會以最簡單明瞭的方式來說明如何設定客戶機與 Linux 物理機的網路,以實現兩者相互存取或者讓客戶機連線到外網。(註:客戶機指 Oracle VirtualBox 虛擬機器軟體中安裝的作業系統,如本文中用到的 CentOS 7 和 Ubuntu 16.10 。物理機就是你自己的筆記型電腦或桌上型電腦,注意這篇文章中作者的物理機上安裝的作業系統是 Linux Mint 18 ,而不是我們平時使用的 Windows 系統。)

本文測試環境:
1、物理機作業系統—— Linux Mint 18
2、客戶機作業系統—— CentOS 7 和 Ubuntu 16.10

要求

1、物理機上安裝的 Oracle VirtualBox 虛擬機器 能正常使用。
2、你得事先在 Oracle virtualBox 虛擬機器軟體中安裝好客戶機作業系統,比如 Ubuntu , Fedora , CentOS , Linux Mint 或者其它的 Linux 系統也行。
3、在你設定網路前,請先關閉客戶機。

為了讓物理機和客戶機能夠互相聯通,這兩個機器的預設網絡卡 IP 必須設定在同一網段,你可以為客戶機新增 4 塊網絡卡。

預設網絡卡(網絡卡 1 )通常用於使用 NAT 連線方式連線到物理機進行上網。

重要提示:設定第一塊網絡卡與物理機通訊,第二塊網絡卡連線到外網。

為客戶機和物理機建立網絡卡

在下面的 VirtualBox 管理器介面,建立客戶機和物理機有通訊網絡卡。

開啟檔案->偏好設定設定或者使用組合鍵 Ctrl + G :

Virtualbox 偏好設定設定介面

在下圖中有兩個選項,單擊並選擇僅主機( Host-only )網路。然後使用右側的 + 號來新增一個新的僅主機網路。

設定客戶機網路

下圖顯示一個名為 vboxnet0 的新的僅主機模式網絡卡已經被建立。

VirtualBox 偏好設定介面

如果你願意,你可以使用中間的 - 按鈕來刪除這個網絡卡,你可以單擊編輯按鈕來檢視這個網絡卡的詳細設定資訊。

你也可以根據自己的實際環境修改設定資訊,比如網路地址,子網掩碼等等。

注意:下圖中的 IPv4 地址就是你的物理機的 IP 地址。

物理機網路資訊

下圖中,如果你想讓客戶機使用動態 IP 地址,你可以通過設定 DHCP 服務來完成(在使用前請確保啟用 DHCP )。但是我建議你為客戶機設定一個靜態 IP 地址。

在下面的設定所有網路介面單擊 OK 按鈕來儲存修改的設定。

為客戶機設定靜態 IP 地址

設定客戶機網路設定

注意:你可以根據下面的步驟來為任何需要與物理機通訊的客戶機新增網絡卡。

回到 VirtualBox 管理器介面,選擇客戶機,比如 Ubuntu 16.10 Server 或者 CentOS 7 ,然後單擊設定選單。

設定客戶機網路設定

設定客戶機網絡卡以連線到物理機

從下圖的介面中選擇網路選項。然後設定第一塊網絡卡( 網絡卡 1 )的資訊如下:
1、檢查選項:“啟用網絡卡”來開啟該網絡卡。
2、在連線方式選項:選擇僅主機( Host-only )網路。
3、然後選擇網絡卡名稱:vboxnet0

如下圖所示,單擊 OK 來儲存設定:

啟用客戶機網路

設定客戶機網絡卡連線外網

之後新增第二塊網絡卡(網絡卡 2 )來讓客戶機連線到物理機進行上網。使用下面的設定:

1、檢查選項:“啟用網路連線”來啟用這塊網絡卡。
2、在連線方式選項:選擇 NAT 方式。

為客戶機啟用網路連線

為客戶機設定靜態 IP 地址

啟動客戶機,登入系統並設定靜態 IP 地址。在客戶機上執行下面的命令來檢視所有網絡卡設定資訊,然後分配一個 IP 地址:

$ ip add

為客戶機設定靜態 IP 地址

從上面的截圖中可以看出客戶機已啟用了三塊網絡卡:
1、 lo ——回環網路介面
2、 enp0s3 (網絡卡 1)—— 前一步我們設定的連線方式為僅主機( Host-Only)模式並且已啟用 DHCP 的網絡卡,之後我們又設定成了靜態 IP 地址。
3、 enp0s8 (網絡卡 2 )—— 用於連線到外網。該網絡卡預設情況下使用 DHCP 來動態獲取 IP 地址。

Debian/Ubuntu/Linux Mint 系統下的設定

重要提示: 這裡我使用的是 Ubuntu 16.10 Server , IP 地址為 192.168.56.5 。

使用你喜歡的編輯器及管理員賬號開啟 /etc/network/interfaces 組態檔:

$ sudo vi /etc/network/interfaces

修改網絡卡 enp0s3 的設定資訊如下(根據你的實際環境進行修改):

auto enp0s3

iface enp0s3 inet static

address 192.168.56.5

network 192.168.56.0

netmask 255.255.255.0

gateway 192.168.56.1

dns-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=static

ONBOOT=yes

IPADDR=192.168.56.10

NETWORK=192.168.56.0

NETMASK=255.255.255.0

GATEWAY=192.168.56.1

DNS=8.8.8.8 192.168.56.1

NM_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


使用 SSH 工具連線客戶機

就寫到這裡吧!在這篇文章中,我們用簡單易懂的方法講述了如何在物理機與客戶機之間設定網路連線方式。請在下面的評論區跟大家分享下你的想法。

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-02/141176.htm


IT145.com E-mail:sddin#qq.com