虛擬機不能上網(wǎng)?虛擬機和宿主機不能互通?一文搞定網(wǎng)絡(luò)問題
為了學(xué)習(xí)和使用Linux,多數(shù)人選擇了使用虛擬機的方式來安裝Linux系統(tǒng)。這樣我們就可以在windows系統(tǒng)中安裝Linux系統(tǒng)了,其中windows機器系統(tǒng)本身我們稱作宿主機,安裝的虛擬機系統(tǒng)我們簡稱虛擬機。
由于虛擬機提供的幾種網(wǎng)絡(luò)方式,要么是虛擬機可以ping通宿主機反之不行,要么是虛擬機之間可以互通但宿主機不能訪問虛擬機,所以在實際應(yīng)用中多數(shù)被兩者間的網(wǎng)絡(luò)互通和是否能上網(wǎng)的問題所困擾。
本文將介紹三種網(wǎng)絡(luò)配置方式,實現(xiàn)虛擬機和宿主機之間互通并且可以訪問互聯(lián)網(wǎng)。首先我宿主機的IP地址為:192.168.1.117。

查看宿主機網(wǎng)絡(luò)IP地址
一、直接使用橋接的方式
橋接方式下,不用做太多設(shè)置,虛擬機會自動獲取和宿主機同網(wǎng)段的IP,和宿主機網(wǎng)絡(luò)中的其他主機處于同等地位,所以虛擬機和宿主機可以互相直接通信,且只要宿主機可以上網(wǎng),虛擬機即可上網(wǎng)。

設(shè)置虛擬機網(wǎng)絡(luò)連接方式為橋接
經(jīng)過上面的網(wǎng)絡(luò)設(shè)置后,我們進入虛擬機系統(tǒng),查看IP地址為192.168.1.220,且可以ping通www.baidu.com,可以實現(xiàn)和宿主機互通也可以實現(xiàn)上網(wǎng)。如圖:

虛擬機centos系統(tǒng)中設(shè)置網(wǎng)絡(luò)IP地址
在宿主機中通過ping命令,測試虛擬機中的ip地址設(shè)置是否成功,ping通則說明設(shè)置成功。宿主機和虛擬機可以互通!

二、使用網(wǎng)絡(luò)地址轉(zhuǎn)換NAT+端口轉(zhuǎn)發(fā)的方式
使用網(wǎng)絡(luò)地址轉(zhuǎn)換加端口轉(zhuǎn)發(fā)的方式,虛擬機可以直接ping通宿主機,但是宿主機無法直接ping通虛擬機。不過宿主機可以通過類似Xshell的遠程連接軟件,設(shè)置相關(guān)參數(shù)后即可訪問虛擬機。且只要宿主機可以上網(wǎng),虛擬機即可直接上網(wǎng)。注意是網(wǎng)絡(luò)地址轉(zhuǎn)換NAT,不是NAT網(wǎng)絡(luò)。配置如下:

配置虛擬機網(wǎng)絡(luò)連接為NAT方式,并設(shè)置端口轉(zhuǎn)發(fā)
設(shè)置后,虛擬機獲取的IP地址為10.0.2.15。經(jīng)過測試可以ping通宿主機IP,可以ping通www.baidu.com。

在虛擬機的centos中設(shè)置ip地址
在Xshell中的配置端口轉(zhuǎn)發(fā)的相關(guān)參數(shù):

xshell中配置端口轉(zhuǎn)發(fā)參數(shù)
配置完成后,登陸虛擬機,測試連接訪問情況,效果圖如下:

通過xshell登陸虛擬機centos系統(tǒng)
三、NAT網(wǎng)絡(luò)+host-only雙網(wǎng)卡方式
此種雙網(wǎng)卡的方式,結(jié)合了NAT可以訪問外網(wǎng)的優(yōu)點和host-only可以實現(xiàn)虛擬機之間互通且宿主機可以訪問虛擬機的特長,實現(xiàn)了兩者的互通且可以上網(wǎng)的功能。具體配置如下:
需要先配置VirtualBox的全局變量,通過“管理”-->“全局設(shè)定”選項配置NAT和host-only的雙網(wǎng)卡。
1、配置NAT網(wǎng)卡,我們使用IP地址為10.0.2.X的網(wǎng)段,記得開啟DHCP服務(wù)。

虛擬機中設(shè)置網(wǎng)絡(luò)連接方式為nat+host only
2、配置host-only網(wǎng)卡,由于host-only方式會在本機網(wǎng)絡(luò)中新增一塊網(wǎng)卡,這里我們設(shè)置其IP地址段為192.168.65.X,其中此塊網(wǎng)卡IP地址為192.168.65.1,并且開啟DHCP服務(wù)。

配置虛擬機的網(wǎng)絡(luò)連接host only
虛擬機中DHCP服務(wù)器配置如下:

虛擬機中配置dhcp服務(wù)
全局配置完畢后,需要對虛擬機進行雙網(wǎng)卡配置,分別為虛擬機添加NAT和host-only網(wǎng)卡。先配置nat網(wǎng)卡1:

虛擬機中配置網(wǎng)卡1為NAT
再配置網(wǎng)卡2為host-only:

虛擬機中配置網(wǎng)卡2為host only
至此雙網(wǎng)卡配置完畢,我們可以打開虛擬機進行網(wǎng)絡(luò)驗證。
首先看到虛擬機中的網(wǎng)卡變成了兩塊:eth0(10.0.2.8)和eth1(192.168.65.2)。

虛擬機centos系統(tǒng)中查看網(wǎng)卡
虛擬機ping通宿主機192.168.1.117,虛擬機ping通www.baidu.com。

虛擬機centos系統(tǒng)中ping命令測試互通
宿主機可以ping通虛擬機的192.168.65.2的地址:

宿主機中通過ping命令測試互通
以上就是三種可以實現(xiàn)宿主機和虛擬機互相訪問通信的且保證可以上網(wǎng)的實現(xiàn),大家可以根據(jù)自己的需要選擇合適的方式。