在設定虛擬機時唯一會要求我們選擇模式的只有網卡這一部份,我們先來看一下在虛擬機中網卡的裝置,在 VMware Player 中新增網卡裝置,主要的網路環境有三種. Bridged, NAT, Host-only
不管你的 VMware Player 是運行在 Windows 平台還是 Linux 平台下都可以看到自己的網路裝置多去出 VMnet0(VMware Player 似乎不會出現這一個裝置),VMnet8 與 VMnet1 ,這些裝置和剛剛講的三種模式的關係是,VMnet8 對應的是 NAT 模式而 VMnet1 所對應的則是 Host-only 模式,預設的是 Bridged 並不會多產生一個 VMnet0,似乎在 VMware Server 上才會出現,我們先來看看這三種模式的分別.
- Bridged
- NAT
- Host-only
裡面的 NAT 以及 Host-only 都會搭配一個 DHCP 的 Server ,所以虛擬機的網卡都可以透過這 DHCP 來得到 IP 的指派,在 Linux 目錄 /etc/vmware 可以找到這相關的設定檔案.而虛擬出來的網卡在虛擬機器看到的網卡會是 AMD PCNET PCI adapter 或者是 Intel Pro/1000 MT Server Adapter(Windows 2008, Windows Vista 或者 Windows 7 以上的版本),VMware Player 虛擬機器上的網卡裝置指多只能有 10 個.
我們直接來看看虛擬的網卡是如何對應到實體的網路裝置.
Bridged
可以看到虛擬的網路裝置和實體的網路裝置是透過一個虛擬出來的 bridge ,基本他們是透過一個虛擬的 switch 相連接在一起,所以之後你的虛擬網卡模式選擇 Bridged Mode 他就就會連接到這一個虛擬的 switch 上,所有的網路流量再透過 bridge 流向實體的裝置再傳送出去.在 Bridged 模式中還有一個 option "replicate physical network connection state" 根據官方文件說明是,當我們使用虛擬機在自己的筆記型電腦或是其他移動裝置時. 會因為實體網路環境的改變,虛擬機上的 IP (使用 DHCP 指派 IP 的方式)會因為實體的網路環境改變而 斷線與重新連線,虛擬機上的網卡進而自動更新 IP Address. 如沒有勾選這選項時虛擬機的網卡並不會與實體網路環境同步做改變的.
NAT
NAT 模式就是在虛擬出一個 NAT(Network Address Translation) 所有虛擬的網卡的資料傳送都是透過這一裝置出去. 加上有 DHCP 所以虛擬的網卡就可以直接透過他得到 IP Address. 但缺點是 NAT 的模式內部虛擬出來的網路裝置是無法直接和外部實體網路裝置,相同的外部也無法和虛擬網卡做溝通. 這是 NAT 的限定, 至於 DHCP 的設定可以在 /etc/vmware/vmnet8/dhcp/dhcpd.conf 預設的 DHCP IP 為 192.168.30.128 ~ 192.168.30.254
Host-only
Host-Only 中間什麼都沒有,虛擬機的網卡就單純只透過虛擬的 switch 與實體網卡相聯接. 不過在虛擬的環境中還是有一個 DHCP Server 的服務, 這 DHCP server 的設定可以在 /etc/vmware/vmnet1/dhcp/dhcpd.conf 預設的 DHCP IP 為 192.168.33.128 ~ 192.168.33.254