一、前言
虛擬機(Virtual Machine),在計算機科學中的體系結構里,是指一種特殊的軟件,可以在計算機平臺和終端用戶之間創建一種環境,而終端用戶則是基于這個軟件所創建的環境來操作系統軟件。虛擬機根據它們運用和與直接機器的相關性分為兩大類。系統虛擬機和程序虛擬機,系統虛擬機提供一個可以運行完整操作系統的完整系統平臺,系統虛擬機如:VirtualBox ,VMware,等。程序虛擬機為運行單個計算機程序設計,程序虛擬機如:Java虛擬機(JVM)等。在windows平臺,對于大多數個人用戶而言,基本上是使用VMware,VirtualBox來搭建虛擬機,無論選用那種軟件安裝虛擬機,基本上都是三種連網方式,橋接(bridge),僅主機(host-only),NAT。橋接模式直接連接到物理網絡,NAT模式用于共享主機ip地址,僅主機模式是宿主機和虛擬機專用網絡。無論僅主機和NAT連網方式中,VMware都提供了DHCP服務。
二、虛擬機連網方式
2.1:橋接連網方式
VMware中提供的第一個連網方式。虛擬機通過其網卡橋接到宿主機活動網卡中,可給虛擬機手動分配一個和網絡主機同一網絡的ip地址。宿主機和其它設備通信時需要通過宿主機的活動網卡把數據轉發出去,大體原理如下圖所示:
虛擬機(guestA,guestB)通過各自的活動的虛擬網卡和宿主機hostA的活動網卡eth0相連,此時guestA,guestB與hostA同處于相同的網絡,guestA,guestB對外通信時經過宿主機的eth0出去,但對于hostA之外的其它設備來講,guestA和guestB如同接在同一個交換機下,并不知道其是否為虛擬機。當guestA訪問guestB時,數據包從宿主機的eth0網卡出去,經過物理交換機Switch又返回到宿主機hostA的eth0網卡,hostA的eth0網卡再把數據包發往guestB。
2.2:僅主機連網方式
VMware提供的第二種連網方式。虛擬機(guestA,guestB)通過各自的活動的虛擬網卡和VMware虛擬出的虛擬交換機連接,且虛擬交換機和虛擬網卡Vritual net1連接,Vritual net1是VMware專門虛擬出來用于僅主機連網方式的虛擬網卡。大體原理如下圖:
虛擬機(guestA ,guestB)通過各自活動的虛擬網卡(eth0)連接到VMware虛擬出來的虛擬交換機端口上,其中某個虛擬交換機的端口和Virtual net1相連,虛擬機和宿主機可以雙向通信,但虛擬機(guestA,guestB)不能和宿主機以為的其它主機通信。
2.3:NAT連網方式
VMware提供的第三種連網方式,在僅主機的基礎上(此時虛擬交換機連接的虛擬網卡不是Virual net1,而是Virtual net8),Virtual net8通過NAT地址轉換方式把數據報發往宿主機(hostA)的eth0網卡,經由宿主機(hostA)的eth0網卡轉發虛擬機(guestA,guestB)的報文出去。此時虛擬機可以和網絡內的任一臺主機通信。大體原理如下圖:
在僅虛擬機連網的基礎上,Virtual net8通過NAT方式把報文發給物理機的eth0網卡,借它通往外界,虛擬機此時和外網是相同的。
三、小結
在windows平臺下使用VMware連網時,三種連網方式各有其特點,對外虛擬機對外通信必過宿主機的活動的網卡。
原創文章,作者:成吉思汗,如若轉載,請注明出處:http://www.www58058.com/6701