1. 程式人生 > >理解虛擬機器中的四種網路連線方式

理解虛擬機器中的四種網路連線方式

VirtualBox中有4中網路連線方式:

  • NAT
  • Bridged Adapter
  • Internal
  • Host-only Adapter

VMWare中有三種,其實他跟VMWare 的網路連線方式都是一樣概念,只是比VMWare多了Internal方式。

要讓自己(或別人)理解深刻,方法就是做比較和打比方,比較之間的不同和相同,拿熟知的事物打比方。先來一張圖,通過這張圖就很容易看出這4種方式的區別:

再來用文字做詳細的解釋(其實歸結起來就是上面的那張圖):

1、NAT

NAT:Network Address Translation,網路地址轉換

NAT模式是最簡單的實現虛擬機器上網的方式,你可以這樣理解:

Guest訪問網路的所有資料都是由主機提供的,Guest並不真實存在於網路中,主機與網路中的任何機器都不能檢視和訪問到Guest的存在。

Guest可以訪問主機能訪問到的所有網路,但是對於主機以及主機網路上的其他機器,Guest又是不可見的,甚至主機也訪問不到Guest。

虛擬機器與主機的關係:只能單向訪問,虛擬機器可以通過網路訪問到主機,主機無法通過網路訪問到虛擬機器。

虛擬機器與網路中其他主機的關係:只能單向訪問,虛擬機器可以訪問到網路中其他主機,其他主機不能通過網路訪問到虛擬機器。

虛擬機器與虛擬機器的關係:相互不能訪問,虛擬機器與虛擬機器各自完全獨立,相互間無法通過網路訪問彼此。

2、Bridged Adapter(網橋模式)

網橋模式,你可以這樣理解:

它是通過主機網絡卡,架設了一條橋,直接連入到網路中了。因此,它使得虛擬機器能被分配到一個網路中獨立的IP,所有網路功能完全和在網路中的真實機器一樣。

網橋模式下的虛擬機器,你把它認為是真實計算機就行了。

虛擬機器與主機的關係:可以相互訪問,因為虛擬機器在真實網路段中有獨立IP,主機與虛擬機器處於同一網路段中,彼此可以通過各自IP相互訪問。

虛擬機器於網路中其他主機的關係:可以相互訪問,同樣因為虛擬機器在真實網路段中有獨立IP,虛擬機器與所有網路其他主機處於同一網路段中,彼此可以通過各自IP相互訪問。

虛擬機器與虛擬機器的關係:

可以相互訪問,原因同上。

3、Internal(內網模式)

內網模式,顧名思義就是內部網路模式:

虛擬機器與外網完全斷開,只實現虛擬機器於虛擬機器之間的內部網路模式。

虛擬機器與主機的關係:不能相互訪問,彼此不屬於同一個網路,無法相互訪問。

虛擬機器與網路中其他主機的關係:不能相互訪問,理由同上。

虛擬機器與虛擬機器的關係:可以相互訪問,前提是在設定網路時,兩臺虛擬機器設定同一網路名稱。如上配置圖中,名稱為intnet。

4、Host-only Adapter(主機模式)

主機模式,這是一種比較複雜的模式,需要有比較紮實的網路基礎知識才能玩轉。可以說前面幾種模式所實現的功能,在這種模式下,通過虛擬機器及網絡卡的設定都可以被實現。

我們可以理解為Guest在主機中模擬出一張專供虛擬機器使用的網絡卡,所有虛擬機器都是連線到該網絡卡上的,我們可以通過設定這張網絡卡來實現上網及其他很多功能,比如(網絡卡共享、網絡卡橋接等)。

虛擬機器與主機的關係:預設不能相互訪問,雙方不屬於同一IP段,host-only網絡卡預設IP段為192.168.56.X 子網掩碼為255.255.255.0,後面的虛擬機器被分配到的也都是這個網段。通過網絡卡共享、網絡卡橋接等,可以實現虛擬機器於主機相互訪問。

虛擬機器與網路主機的關係:預設不能相互訪問,原因同上,通過設定,可以實現相互訪問。

虛擬機器與虛擬機器的關係:預設可以相互訪問,都是同處於一個網段。

VMware支援三種類型的網路:NAT,Bridged,Host-only。

NAT

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet8 上。此時系統的 VMWare NAT Service 服務就充當了路由器的作用,負責將虛擬機發到 VMnet8 的包進行地址轉換之後發到實際的網路上,再將實際網路上返回的包進行地址轉換後通過 VMnet8 傳送給虛擬機器。VMWare DHCP Service 負責為虛擬機器提供 DHCP 服務。

Bridged

這種方式下,虛擬機器就像一臺真正的計算機一樣,直接連線到實際的網路上,與宿主機沒有任何聯絡。

Host-only

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet1 上,但系統並不為虛擬機器提供任何路由服務,因此虛擬機器只能和宿主機進行通訊,而不能連線到實際網路上。