1. 程式人生 > >VirtualBox上Centos7的網路配置(物理機與虛擬機器,虛擬機器與外網)

VirtualBox上Centos7的網路配置(物理機與虛擬機器,虛擬機器與外網)

Virtual Box可選的網路接入方式包括:

  • NAT 網路地址轉換模式(NAT,Network Address Translation)
  • Bridged Adapter 橋接模式
  • Internal 內部網路模式
  • Host-only Adapter 主機模式

具體的區別網上的資料很多,就不再描述了,下面是一個最直接有效的配置,配置CentOS7虛擬機器裡面能上外網,而主機與CentOS7虛擬機器也能連通。不論是學習還是使用,基本都能夠滿足。不廢話,直接上圖!

設定Virtual Box

最好的辦法就是使用兩塊網絡卡,nat(虛擬機器訪問網際網路,使用10.0.2.x段)和host-only(虛擬機器和主機互相通訊,使用192.168.56.x段)。在偏好設定裡面設定網路。如下圖配置:

接下來對CentOS7虛擬機器網路設定,新增網絡卡1和網絡卡2,分別選擇連線方式和對應的網絡卡:

注意記下兩個MAC地址,後面需要在網路配置檔案中使用。

CentOS7網路配置 NAT網路

開機以後,我們訪問ping www.baidu.com,可以發現不能成功。通過ip addr命令檢視網路配置。

我們可以發現enp0s3網絡卡(NAT)沒有開啟工作,而host-only預設的埠是192.168.56.101(具體後面介紹),我們先解決虛擬機器訪問網際網路的問題。

進入cd /etc/etc/sysconfig/network-scripts/目錄,可以看到目前只有ifcfg-enp0s3配置檔案,編輯檔案,將ONBOOT=no

改為yes,再新增BOOTPROTOdhcp,儲存,退出,重啟網路。再ping www.baidu.com,通了,而且檢視網路配置情況,可以看到enp0s3網絡卡已經開啟工作。

可以看到預設的配置檔案中HWADDR對應的地址是NAT網絡卡,所以一開始就說NAT網絡卡沒有開啟工作,host-only預設會有“開啟”並指定地址。

CentOS7網路配置 host-only網路

ping主機上的虛擬網絡卡192.168.56.1,發現也沒有問題,是通的,但是雖然我們看到host-only網絡卡已經“開啟”,但是主機訪問不了虛擬機器(不能ping通),這個時候就要用到我們的第二塊網絡卡host-only來完成主機對虛擬機器的訪問。

cd /etc/sysconfig/network-scripts/目錄下面看沒有ifcfg-enp0s3檔案,將ifcfg-enp0s3複製一份,改名為ifcfg-enp0s8,並且做如下修改:

  1. 修改HWADR為host-only網絡卡的MAC地址。
  2. 修改BOOTPROTOstatic
  3. 修改NAMEenp0s8
  4. 修改UUID(可以隨意改動一個值,只要不和原先的一樣)。
  5. 新增IPADDR,可以自己制定,用於主機連線虛擬機器使用。
  6. 新增NETMASK=255.255.255.0

修改以後重啟網路,可以通過命令檢視ip addr網路配置,可以看到兩個網絡卡都開始工作了,主機頁可以ping通虛擬機器。

以上方式適合任何情況下的網路環境(有線或無線)

如果是筆記本無限方式還可以使用橋接方式:

只需設定虛擬機器的網路模式為橋接,啟動虛擬機器後,開啟網絡卡配置檔案:/etc/sysconfig/network-scripts/ifcfg-enp0s3

修改如下配置項即可:

ONBOOT=yes

BOOTPROTO=dhcp

然後重啟網路  service network restart

就可實現虛擬機器上網。

備註:理論上虛擬機器也可以ping同物理機的,但是我的卻不行,不知道為啥

答:主機上的防火牆要進行設定,虛擬機器才能ping通主機。開啟控制面板—防火牆,在“例外”選項中,要勾選“檔案和印表機共享