VirtualBox虛擬機(jī)網(wǎng)卡配置實踐
之前用虛擬機(jī)一直使用的是橋接網(wǎng)卡+靜態(tài)ip的配置方式,但是訪問部署在虛擬機(jī)上的服務(wù)時需要使用虛擬機(jī)橋接網(wǎng)卡的靜態(tài)ip,該靜態(tài)ip依賴宿主機(jī)的網(wǎng)絡(luò)ip,而宿主機(jī)的網(wǎng)絡(luò)ip可能存在變化,因此花費半天設(shè)置了虛擬機(jī)的三種網(wǎng)卡,以此來靈活應(yīng)對各種網(wǎng)絡(luò)通信情況。
1 VirtualBox配置
1.1 網(wǎng)卡1:NAT網(wǎng)絡(luò)
1.1.1 概念介紹
NAT網(wǎng)絡(luò)地址轉(zhuǎn)換,是讓虛擬機(jī)通過主機(jī)訪問外部網(wǎng)絡(luò)的方式。在VirtualBox中對應(yīng)兩種網(wǎng)卡:

網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT):每臺虛擬機(jī)都有獨立的NAT設(shè)備,虛擬機(jī)之間相互隔離,無法直接通信。
NAT網(wǎng)絡(luò):多個配置NAT網(wǎng)絡(luò)網(wǎng)卡的虛擬機(jī)可以共享同一個NAT設(shè)備,此時這些虛擬機(jī)組成局域網(wǎng),可以相互通信。
無論是網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT),還是NAT網(wǎng)絡(luò),外部網(wǎng)絡(luò)和主機(jī)都無法直接訪問虛擬機(jī),需要配置端口轉(zhuǎn)發(fā)來實現(xiàn)。
1.1.2 設(shè)置流程
這里使用NAT網(wǎng)絡(luò)作為網(wǎng)卡1,操作如下:
首先需要配置全局的NAT網(wǎng)絡(luò),依次點擊“管理”=>“工具”=>“Network Manager”:

然后點擊“創(chuàng)建”,得到名為“NatNetwork”的網(wǎng)絡(luò),默認(rèn)ip為10.0.2.0/24:

接著選中對應(yīng)虛擬機(jī),點擊“設(shè)置”:

點擊網(wǎng)絡(luò),配置網(wǎng)卡1為NAT網(wǎng)絡(luò),名稱選中剛剛創(chuàng)建的全局NAT網(wǎng)絡(luò):

點擊OK即可。
1.2 網(wǎng)卡2:橋接網(wǎng)卡
1.2.1 概念介紹
橋接網(wǎng)卡:虛擬機(jī)通過宿主機(jī)的網(wǎng)卡建立連接,即虛擬機(jī)與宿主機(jī)組成局域網(wǎng),為虛擬機(jī)分配與宿主機(jī)在同一個網(wǎng)段下的ip(網(wǎng)絡(luò)號相同,設(shè)備號不同)。虛擬機(jī)在該局域網(wǎng)中可以訪問主機(jī)或位于同一個網(wǎng)段的其它設(shè)備。
1.2.2 設(shè)置流程
仍然選中虛擬機(jī),點擊“設(shè)置”,配置網(wǎng)卡2為橋接網(wǎng)卡

點擊OK完成配置。
1.3 網(wǎng)卡3:僅主機(jī)(Host-Only)網(wǎng)絡(luò)
1.3.1 概念介紹
僅主機(jī)(Host-Only)網(wǎng)絡(luò):虛擬機(jī)和宿主機(jī)位于同一個網(wǎng)段,允許互相訪問,但是屏蔽外部網(wǎng)絡(luò)和其它位于同一個網(wǎng)段的網(wǎng)絡(luò)設(shè)備,就好像該局域網(wǎng)中強(qiáng)制只有虛擬機(jī)和宿主機(jī)。
1.3.2 設(shè)置流程
依次點擊“管理”=>“工具”=>“Network Manager”,然后在“Host-only Networks”選項下點擊“創(chuàng)建”,得到一個名為VirtualBox Host-Only Ethernet Adapter的網(wǎng)絡(luò),ip默認(rèn)為192.168.56.x(如果之前創(chuàng)建過并刪除,可能就會和我一樣ip就會變):

于此同時,宿主機(jī)也會多一個網(wǎng)絡(luò)適配器,該網(wǎng)絡(luò)適配器名稱也是VirtualBox Host-Only Ethernet Adapter,這正是宿主機(jī)和虛擬機(jī)通過“僅主機(jī)(Host-Only)網(wǎng)絡(luò)”方式通信的專用網(wǎng)絡(luò):

然后選中虛擬機(jī),配置網(wǎng)卡3為僅主機(jī)(Host-Only)網(wǎng)絡(luò),名稱選擇剛剛創(chuàng)建的VirtualBox Host-Only Ethernet Adapter:

點擊OK完成配置。
2 虛擬機(jī)內(nèi)部配置
2.1 查詢網(wǎng)卡信息
啟動虛擬機(jī),輸入如下名查看網(wǎng)卡信息:
ip addr

確認(rèn)各個網(wǎng)卡的名稱,默認(rèn)是enp0s3對應(yīng)網(wǎng)卡1(NAT),enp0s8對應(yīng)網(wǎng)卡2(橋接網(wǎng)卡),enp0s9對應(yīng)網(wǎng)卡3(僅主機(jī))。上圖是我配置好的網(wǎng)卡信息,因此如果不同先不用關(guān)注。
2.2 配置ifcfg-enp0s3文件(網(wǎng)卡1)
系統(tǒng)默認(rèn)是存在ifcfg-enp0s3文件,通常在/etc/sysconfig/network-scripts目錄下,輸入命令打開文件:
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

DEVICE和NAME和網(wǎng)卡enp0s3一樣。
ONBOOT=yes 表示開機(jī)啟動。
NM_CONTROLLED=no表示禁用NetworkManager管理
BOOTPROTO=dhcp表示DHCP自動獲取IP。
DEFROUTE=yes表示設(shè)為默認(rèn)路由(優(yōu)先通過此網(wǎng)卡訪問外網(wǎng))
2.3 配置ifcfg-enp0s8文件(網(wǎng)卡2)
系統(tǒng)可能不存在ifcfg-enp0s8文件,需要復(fù)制ifcfg-enp0s3文件,命令如下:
cd /etc/sysconfig/network-scripts/ # 復(fù)制enp0s3配置文件為enp0s8 cp ifcfg-enp0s3 ifcfg-enp0s8
然后編輯enp0s8文件:

BOOTPROTO=static設(shè)置靜態(tài)IP。
NM_CONTROLLED=no表示禁用NetworkManager管理。
修改NAME和DEVICE為網(wǎng)卡enp0s8。
修改UUID,保證UUID的唯一性,僅需修改一位和enp0s3不同。
IPADDR與宿主機(jī)同網(wǎng)段,比如宿主機(jī)IP為192.168.144.231,那IPADDR可以修改為192.168.144.150(主機(jī)號不同,并且確保局域網(wǎng)內(nèi)該IP沒有被占用)。
NETMASK子網(wǎng)掩碼255.255.255.0。
GATEWAY與宿主機(jī)網(wǎng)關(guān)一致。
DNS1=114.114.114.114配置DNS服務(wù)器(常見114.114.114.114或8.8.8.8)。
上述宿主機(jī)的ip信息可以打開cmd,輸入ipconfig查看。
2.4 配置ifcfg-enp0s9文件(網(wǎng)卡3)
同理,對于ifcfg-enp0s9文件也需要通過復(fù)制創(chuàng)建出來:
cd /etc/sysconfig/network-scripts/ # 復(fù)制enp0s3配置文件為enp0s9 cp ifcfg-enp0s3 ifcfg-enp0s9
編輯enp0s9文件:

NAME和DEVICE需要修改為enp0s9。
BOOTPROTO=static設(shè)置靜態(tài)IP。
NM_CONTROLLED=no表示禁用NetworkManager管理。
修改UUID,保證UUID的唯一性,僅需修改一位和enp0s3、enp0s8不同。
IPADDR與VirtualBox Host-Only Ethernet Adapter網(wǎng)絡(luò)同網(wǎng)段。
NETMASK子網(wǎng)掩碼255.255.255.0,IPPADDR和NETMASK通過上文的VirtualBox Host-Only Ethernet Adapter網(wǎng)絡(luò)的設(shè)置來配置的。
注意:不需要配置GATEWAY網(wǎng)關(guān),否則就會覆蓋NAT的網(wǎng)關(guān)導(dǎo)致無法訪問外網(wǎng)。
2.5 重啟網(wǎng)絡(luò)配置并驗證網(wǎng)卡配置
在虛擬機(jī)輸入如下命令重啟網(wǎng)絡(luò)配置和驗證網(wǎng)卡配置是否成功:
systemctl restart network # 重啟網(wǎng)絡(luò)服務(wù) ping www.baidu.com # 測試NAT網(wǎng)絡(luò)是否配置成功

在宿主機(jī)輸入如下評論驗證橋接網(wǎng)卡和僅主機(jī)網(wǎng)卡是否配置成功:
ping 192.168.144.150 # 驗證虛擬機(jī)橋接網(wǎng)卡是否配置成功 ping 192.168.84.250 # 驗證虛擬機(jī)僅主機(jī)網(wǎng)卡是否配置成功

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
VirtualBox安裝Archlinux并配置桌面環(huán)境
這篇文章主要介紹了VirtualBox安裝Archlinux并配置桌面環(huán)境2017-06-06
virtualbox win7 iis 由于擴(kuò)展配置問題而無法提供您請求的頁面
這篇文章主要介紹了virtualbox win7 iis 由于擴(kuò)展配置問題而無法提供您請求的頁面,需要的朋友可以參考下2017-06-06
VirtualBox下Host Only+NAT方式的網(wǎng)絡(luò)配置
這篇文章主要為大家詳細(xì)介紹了VirtualBox下Host Only+NAT方式的網(wǎng)絡(luò)配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03
VirtualBox創(chuàng)建的Debian虛擬機(jī)與Windows宿主共享文件
這篇文章主要介紹了VirtualBox創(chuàng)建的Debian虛擬機(jī)與Windows宿主共享文件 的相關(guān)資料,需要的朋友可以參考下2019-05-05
virtualbox虛擬機(jī)上安裝centOS的網(wǎng)絡(luò)配置詳解
本文主要是介紹了virtualbox虛擬機(jī)上安裝centOS的網(wǎng)絡(luò)配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-10-10
VirtualBox虛擬機(jī)安裝CentOS 7詳細(xì)教程
這篇文章主要介紹了VirtualBox虛擬機(jī)安裝CentOS 7詳細(xì)教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12
VirtualBox網(wǎng)絡(luò)之nat網(wǎng)絡(luò)使用及說明
該文章描述了如何使用NAT網(wǎng)絡(luò)在VirtualBox中創(chuàng)建和配置虛擬機(jī),包括設(shè)置默認(rèn)存儲位置、創(chuàng)建NAT網(wǎng)絡(luò)、創(chuàng)建虛擬機(jī)、安裝操作系統(tǒng)以及解決常見網(wǎng)絡(luò)問題2026-03-03
VirtualBox實現(xiàn)虛擬機(jī)中共享本地目錄的方法
VirtualBox 是一款開源虛擬機(jī)軟件。VirtualBox 是由德國 Innotek 公司開發(fā),由Sun Microsystems公司出品的軟件,使用Qt編寫,在 Sun 被 Oracle 收購后正式更名成 Oracle VM VirtualBox這篇文章主要介紹了VirtualBox實現(xiàn)虛擬機(jī)中共享本地目錄的方法,需要的朋友可以參考下2017-11-11

