這個是rocks 羣裏面個人一個朋友分享的,我覺很好並且描述的很清楚,這是一個作事的態度問題。html
1 VMWare虛擬機bridged、host-only和NAT網絡模式的區別和用法node
VMWare提供了三種工做模式,它們是bridged(bridged模式:對應網卡vment0)、NAT(網絡地址轉換模式:對應網卡vment8)和host-only(主機模式:對應網卡vment1)。三個網卡能夠理解爲三個通道。要想在網絡管理和維護中合理應用它們,你就應該先了解一下這三種工做模式。
(在Linux下面ifconfig顯示eth0第一個網卡IP,(eth就是ethernet以太網,在這裏指網絡接口),也是vment0,裝了VMware纔會出現vmnet0,vment1,vment8,vment就是VMware Network Adapter(網絡適配器或稱網卡)的縮寫,在Linux下面ifonfig的結果和windows下面裝了VMware後ipconfig的結果相似)linux
1.bridged(橋接模式)apache
在bridged模式下,VMWare虛擬出來的操做系統就像是局域網中的一臺獨立的主機,它能夠訪問網內任何一臺機器。在bridged模式下,你須要手工爲虛擬系統配置IP地址、子網掩碼,並且還要和宿主機器處於同一網段,這樣虛擬系統才能和宿主機器進行通訊。同時,因爲這個虛擬系統是局域網中的一個獨立的主機系統,那麼就能夠手工配置它的TCP/IP配置信息,以實現經過局域網的網關或路由器訪問互聯網。windows
使用bridged模式的虛擬系統和宿主機器的關係,就像鏈接在同一個Hub上的兩臺電腦。想讓它們相互通信,你就須要爲虛擬系統配置IP地址和子網掩碼,不然就沒法通訊。服務器
若是你想利用VMWare在局域網內新建一個虛擬服務器,爲局域網用戶提供網絡服務,就應該選擇bridged模式。網絡
這種方式最簡單,直接將虛擬網卡橋接到一個物理網卡上面,和linux下一個網卡綁定兩個不一樣地址相似,其實是將網卡設置爲混雜模式,從而達到偵聽多個IP的能力。app
在此種模式下,虛擬機內部的網卡(例如linux下的eth0)直接連到了物理網卡所在的網絡上,能夠想象爲虛擬機和host機處於對等的地位,在網絡關係上是平等的,沒有誰在誰後面的問題。工具
使用這種方式很簡單,前提是你能夠獲得1個以上的地址。對於想進行種種網絡實驗的朋友不太適合,由於你沒法對虛擬機的網絡進行控制,它直接出去了。學習
2.NAT(網絡地址轉換模式)
使用NAT模式,就是讓虛擬系統藉助NAT(網絡地址轉換)功能,經過宿主機器所在的網絡來訪問公網。也就是說,使用NAT模式能夠實如今虛擬系統裏訪問互聯網。NAT模式下的虛擬系統的TCP/IP配置信息是由VMnet8(NAT)虛擬網絡的DHCP服務器提供的,沒法進行手工修改,所以虛擬系統也就沒法和本局域網中的其餘真實主機進行通信。採用NAT模式最大的優點是虛擬系統接入互聯網很是簡單,你不須要進行任何其餘的配置,只須要宿主機器能訪問互聯網便可。
這種方式也能夠實現Host OS與Guest OS的雙向訪問。但網絡內其餘機器不能訪問Guest OS(能夠加端口映射嗎?沒有試過),Guest OS可經過Host OS用NAT協議訪問網絡內其餘機器。NAT方式的IP地址配置方法是由VMware的虛擬DHCP服務器中分配一個IP ,在這個IP地址中已經設置好路由,就是指向192.168.138.1的。
若是你想利用VMWare安裝一個新的虛擬系統,在虛擬系統中不用進行任何手工配置就能直接訪問互聯網,建議你採用NAT模式。
這種方式下host內部出現了一個虛擬的網卡vmnet8(默認狀況下),若是你有過作nat服務器的經驗,這裏的vmnet8就至關於鏈接到內網的網卡,而虛擬機自己則至關於運行在內網上的機器,虛擬機內的網卡(eth0)則獨立於vmnet8。
你會發如今這種方式下,vmware自帶的dhcp會默認地加載到vmnet8界面上,這樣虛擬機就可使用dhcp服務。更爲重要的是,vmware自帶了nat服務,提供了從vmnet8到外網的地址轉換,因此這種狀況是一個實實在在的nat服務器在運行,只不過是供虛擬機用的。(這個路由IP也存在,就是網關IP,DNS Server IP也是這個。跟Host OS vmnet8查到的IP在一個網段內。好比,若是要靜態設置的話就設置網關、DNS IP爲192.168.2.1,而其餘動態分配或設置成192.168.2.X)很顯然,若是你只有一個外網地址,此種方式很合適。
3 host-only(主機模式)
在某些特殊的網絡調試環境中,要求將真實環境和虛擬環境隔離開,這時你就可採用host-only模式。在host-only模式中,全部的虛擬系統是能夠相互通訊的,但虛擬系統和真實的網絡是被隔離開的。
提示:在host-only模式下,虛擬系統和宿主機器系統是能夠相互通訊的,至關於這兩臺機器經過雙絞線互連。
在host-only模式下,虛擬系統的TCP/IP配置信息(如IP地址、網關地址、DNS服務器等),都是由VMnet1(host-only)虛擬網絡的DHCP服務器來動態分配的。
若是你想利用VMWare建立一個與網內其餘機器相隔離的虛擬系統,進行某些特殊的網絡調試工做,能夠選擇host-only模式。
這應該是最爲靈活的方式,有興趣的話能夠進行各類網絡實驗。和nat惟一的不一樣的是,此種方式下,沒有地址轉換服務,所以,默認狀況下,虛擬機只能到主機訪問,這也是hostonly的名字的意義。
默認狀況下,也會有一個dhcp服務加載到vmnet1上。這樣鏈接到vmnet1上的虛擬機仍然能夠設置成dhcp,方便系統的配置。
是否是這種方式就沒有辦法鏈接到外網呢,固然不是,事實上,這種方式更爲靈活,你可使用本身的方式,從而達到最理想的配置,例如:
a。使用本身dhcp服務:首先停掉vmware自帶的dhcp服務,使dhcp服務更爲統一。
b。使用本身的nat,方便加入防火牆。windows host能夠作nat的方法不少,簡單的如windows xp的internet共享,複雜的如windowsserver裏的nat服務。
c. 使用本身的防火牆。由於你能夠徹底控制vmnet1,你能夠加入(或試驗)防火牆在vmnet1和外網的網卡間。
從以上能夠看出,hostonly這種模式和普通的nat server帶整個內網上網的情形相似,所以你能夠方便的進行與之有關的實驗,好比防火強的設置等。
提VMware Host only工做方式
在這種工做方式下,Guest由DHCP服務器分配IP地址。而且能夠在192.168.222.X之間保持通訊。可是在Guest機器上並不能Ping通Host的172.16.1.210這個地址。由於通訊被限制在主機(因此叫作Host Only)。這種方式看起來是很像NAT方式,可是在這種方式下Guest只能和Host之間通訊,而不能同在局域網的計算機進行通訊,除非在HOST上作轉發或路由。
示:以上所提到的NAT模式下的VMnet8虛擬網絡,host-only模式下的VMnet1虛擬網絡,以及bridged模式下的VMnet0虛擬網絡,都是由VMWare虛擬機自動配置而生成的,不須要用戶自行設置。VMnet8和Mnet1提供DHCP服務,VMnet0虛擬網絡則不提供。#P#
VMware三種網絡鏈接上網設置
1.bridge :
默認使用vmnet0
將虛擬機的ip設置與主機同網段未使用ip,其他與主機相同:
例如主機ip是192.168.2.46,設置虛擬機ip爲192.168.2.254。netmask,broadcast,gateway,dns都與主機
相同便可實現虛擬機<--->主機虛擬機<---->互聯網通訊。
2.nat :
默認使用vmnet8
DHCP:默認的狀態下是DHCP。
只要物理機能連通網絡,虛擬機也就能夠連通的
手動設置:
(這一點很重要,你要以在物理機的網絡屬性下打開vmnet8的屬性,查看其默認的地址。但不要更改哦)ip設置與vmnet8同網段,gateway設置成vmnet8的gateway(xxx.xxx.xxx.2)中能夠查到vmnet8的gateway,一般是edit->virtualnetwork Editor->Host Virtual Network Mapping ,找到VMNET8,單擊左箭頭的圖標,選取NAT,你就能夠看到Gateway netmask,broadcast設置與vmnet8相同,dns設置與主機相同。(DNS省也可,他會自動讓網關轉換解析)例如 vmnet8 ip:192.168.187.1gw :192.168.187.2 這裏是系統的默認,不能夠更改的哦。
虛擬機設置: ip:192.168.187.254 gw: 192.168.187.2 dns:(空)或者:202.102.224.68 (實際上,你們想一想,這樣的設置實際上和DHCP分配是同樣的,沒有什麼特別,也顯得沒有什麼意義)
注意:nat方式相似於路由器(就像雲計算實驗室的路由器同樣,外網訪問不過來機羣的node某節點,除非作nat映射),因此vmware workstation設置了nat後虛擬機是能夠上網的,可是外網訪問不過來(除非作端口映射,下文中有講解)
3.host-only :
默認使用vmnet1
DHCP:默認下是DHCP
組成與獨立的與物理網絡相隔離的虛擬網絡
但有一點是能夠和宿主機器通訊。
固然你能夠手動指定IP,但網頭一要選擇VMNET1的IP哦
詳解:
host-only這種模式下是獨立主機的模式,意思是不能夠和外界通訊的。可是咱們能夠這樣理解,這種模式使用的是vmnet1,也就是一臺虛擬的交換機。
不能上網的緣由分析:
虛擬機自己是根據自身的DHCP分配的IP,自己和物理機不是一個段內的。你們要問了,若是手動分配與物理機機段內的IP與相同的DNS解析不就能夠了嗎??可是告訴你們這樣也是不能夠的。沒有橋接與NAT這些共享與轉換IP的模式,也是連不通的(這只是個人我的理解。)難道就不能上網了嗎?看看就知道了。
上網:
一、在物理主機的本地鏈接設置對 vmnet1的共享(必定要是vmnet1哦,爲何不用我說了吧^_^)這樣vmnet1鏈接的IP也就變成了192.168.0.1,這和咱們平時物理機的共享鏈接是同樣
二、手動設置與物理機相同段內的IP,與相同的DNS解析(或者是物理主機的IP),網關設爲
192.168.0.1
例:HOST(VMNET1):192.168.0.1 NETMASK 255.255.255.0
GUEST: 192.168.0.2 NETMASK 255.255.255.0DNS 192.168.0.1
說白了,咱們利用的也只是把虛擬機看成物理機來進行的共享的網絡設置,在這裏問一下,那麼若是用代理呢,想一想吧,不要什麼都問我哦。我也是在學。
在這裏咱們主要是理解下下虛擬機的鏈接與主機鏈接的一個默契。不正確的地方你們更正補充吧。
2 外網訪問VMware Workstation中經過NAT聯網的虛擬機
目的
實現從主機或主機所在網絡其餘主機訪問虛擬機資源,例如訪問虛擬機裏面搭建的WEB站點等。
背景
主機:Windows 7(64bit)
虛擬工具:VMwareWorkstation 7.1
虛擬機:UbuntuLinux 10.4(32bit)
主機IP:192.168.1.100
虛擬機IP:192.168.174.128
過程
1.虛擬工具設置虛擬機經過NAT聯網,以下圖所示,若主機能上網,虛擬機裏面該也能上網。
2.虛擬機裏面站點建好,例如Tomcat建立的默認站點:http://localhost:8080/,打開以下圖所示。
3.打開「Edit」→「VirtualNetwork Editor」,選擇NAT方式的那張虛擬網卡,以下圖所示。
4.打開「NAT Setings」→「Add」,增長影射結果以下圖所示。
實現過程以下。
(1)打開「Add」以下圖所示。
(2)往「Host port」中填入想其餘機器訪問用的端口號,例如主機IP爲192.168.1.100,若將「Host port」設爲332538859,則訪問Tomcat的URL則爲:http://192.168.1.100:332538859。這裏將「Host port」設爲8080。
(3)往「Virtual machine IP address」中輸入虛擬機的IP地址(能夠用ifconfig-a查看到),例如192.168.174.128。
(4)往「Vitual machine port」中輸入虛擬機裏資源端口號,例如Tomcat搭建的站點默認端口號爲8080,那麼這裏就輸入8080。(看來若是是搭建其餘的東西,則須要搞到默認端口號)
(5)往「Description」中輸入對該端口影射的註釋信息,例如輸入「虛擬機裏面的Tomcat端口影射」之類的描述都是能夠的。
(6)設置好後,最好保存並應用。
5.經過本主機訪問虛擬機裏面的Tomcat站點,輸入網址:http://localhost:8080便可打開網頁以下所示(???是輸入http://192.168。1.100:8080吧)。若要從主機所在網絡的主機訪問虛擬機裏面的Tomcat站點,則須要指定主機地址,例如主機地址爲192.168.1.100,那麼訪問的URL爲:http://192.168.1.100:8080。
6.很重要:若是本地ping不一樣192.168.66.200的虛擬機的ip時,使用http://192.168.66.200:5000訪問
後記
曾經配置成功過虛擬機端口影射,今晚忽然須要用到這個功能,一時想不起來,從網上搜索了一番,花了很多時間才找到答案,一來本身搜索不夠聰明,二來搜索引擎搜索也不夠聰明,因而浪費了很多時間。
對於曾經作成功過的事,若能記錄下來,以備他日查閱,該更有意義。一來本身能夠避免犯二錯,二來本身作成功的事情能夠與其餘任何人共享,都是一件及其有樂趣的事情。
——於2010年10月9日凌晨
apache安裝在虛擬機上,經過局域網的ip地址可以在本機上對它進行訪問,可是在外網就不能經過外網的IP地址對它進行訪問了。apache的端口我已經改爲了8000,虛擬機用的是Ubuntu9.10操做系統,防火牆也關掉了,不知道有沒有辦法讓外網訪問個人apache啊。
1 你的虛擬機的網絡要使用橋接方式. 若是不是橋接方式而是NAT 則要在虛擬機網絡設置裏爲你的虛擬機添加端口映射 .
(這說明虛擬機作服務器提供對外服務,簡單方法是橋接,若是沒有IP的話,就用NAT+端口映射去實現)
2 在你的外網路由器上要將端口映射到你的虛擬機獲取的IP上(這是橋接方式時), 若是不是橋接方式. 那就要把外網路由器的端口映射到你本機的端口上.
3 關掉本機及虛擬機的網絡防火牆. 若是不想關, 則要在網絡紡火牆裏添加相應的規則, 以便讓數據能正確到達虛擬機.
又見:VMware_Workstation實例二:單IP的虛擬機提供外網訪問
2008年,我寫了一篇如何設置VMware Workstation虛擬機的雙網卡來實現讓外網訪問虛擬機,此後有很多朋友給我發郵件或是留言,詢問單網卡局域網下或是單公網IP下如何實現相似功能。在我一一進行答覆後,內心頭就想寫一篇來解答朋友們的疑問。時隔兩年多後,我們來分享VMware Workstation虛擬機單網卡單公網IP下實現讓外網訪問虛擬機的方法。
首先呢,通常狀況下,除了機房託管的機器外,單位或是我的家庭等的網絡服務器通常會比較少直接分配公網IP,三種網絡模式簡圖以下:
知道了以上的網絡拓撲結構後,我們要作的事情就很清晰了。首先,瞭解VMware三種網絡模式的區別在哪裏。其次,根據不一樣的網絡環境,使用不一樣的VMware網絡設置:
家用和公司或單位,由於機器處於內部局域網,能用的IP地址比較多,所以能夠採用默認的Bridged方式,Bridged方式通常無需設定,創建虛擬機的時候一路next,默認的就是Bridged方式。若是要實現雙網卡模式,能夠參考我上一篇文章:《VMware Workstation虛擬機實例:讓外網訪問虛擬機》。
本文重點,也是衆多朋友詢問過的:機房裏單IP的服務器安裝虛擬機給外網提供服務的模式。也就是上方圖片中的模式3。這種模式下,因爲IP地址惟一,沒法使用Bridged方式了。Host-Only模式爲全封閉的模式,只能訪問到宿主(Host),甚至連外網都沒法連通,因此Host-Only模式排除掉。因而,咱們眼裏就剩下NAT模式了。
根據上面的分析,我們的思路很明確。就是使用VMware 的NAT網絡模式。那麼接下來主要有以下兩個要點:
使用VMware的NAT網絡模式後,找到虛擬機的IP地址。虛擬機的網卡爲DHCP模式,請進入虛擬機內查到虛擬機的IP地址,好比本文中的例子是Ubuntu的虛擬機,下圖中的紅圈內的就是虛擬機的IP地址:
在VMware Workstation主界面上點「編輯」-「編輯虛擬網絡」,以下圖:
打開VMware Workstation的虛擬網卡編輯界面。
找到模式是NAT的那張虛擬網卡,點中後,再點下面的NAT Settings… 以下圖紅圈位置:
在NAT Settings的標籤頁中,找到Port Forwarding的內容,按以下圖的紅圈中的那個Add按鈕開始添加:
在彈出的標籤中,從上到下填寫和選擇宿主監聽的端口、端口協議類型、虛擬機的IP地址、虛擬機監聽的端口、描述。設置好後,一路按OK回到虛擬機主界面便可。下圖是我虛擬機對外開放HTTP服務的80端口的設置圖:
須要注意,如此設置的時候,Host port的端口必須是宿主並未監聽的端口,不然會出錯。
設置成功後,使用netstat命令便可看到宿主已經監聽了咱們填寫的端口,監聽該端口的程序是vmnat.exe
如上設置後,剩下的就是測試了。若是是家庭或是企業,可能還須要在路由器或是防火牆上設置端口映射到宿主
通過設置後,外網訪問80端口的時候,NAT的Port Forward就會把訪問請求轉發到虛擬機上,大體以下圖:
這個比較難說清楚,不一樣品牌的路由器、防火牆的設置方式都不同。我這裏給出D-Link DI-624的端口映射的截圖:
關於這部分的設置,你們能夠去百度和google上搜索看看,有不少的教程。至於防火牆,通常都有詳細的說明書或是廠家提供技術支持。
配置好了以後,還須要進行網絡測試。
得知目前的外網IP地址(固定IP的用戶能夠胡略此步驟),打開 ip138這個網站就能夠知道本身當前的IP地址。
請您網絡上的朋友幫忙測試。
使用網絡上一些免費的網站狀態檢測服務,這能夠從搜索引擎上找到很多。
結束語,時隔兩年,煒煜本身電腦中使用的虛擬機已經從VMware Workstation6變爲VMware Workstation7了。很多朋友問的就是VMwareWorkstation7的虛擬網卡設置,其實你們仔細看圖的話,會發現虛擬網卡設置這部分變化不大。另外,這篇文章寫得很粗淺,目的是爲了幫助你們在最短的時間內實現目標,能夠說只是一個治標的方法。可是煒煜我的能力有限,工做重心也不是這個,因此面對深層次的東西就無能爲力了。若是對於文章內容有任何想法,歡迎留言或是發郵件討論。
3大話虛擬機上網之NAT篇
虛擬機之家Virtual原創 轉載請註明出處 謝謝
在論壇上混了那麼長時間,發現問的最多的問題仍是虛擬機如何上網。
我就我的對虛擬機的理解,把虛擬機上網最方便的也是最難理解的NAT方式和你們一塊兒聊聊,由於是大話NAT,因此說的會羅嗦點,不過主要是照顧新人。:)
老鳥就趕快飛吧 呵呵
先說一點別的,作爲引子
假設如今R老師帶3個班的學生,分別爲a班、 b班、 c班 。如今就出現了兩個交流方式:
第1種交流方式:
本班內交流,好比說a班的一個同窗想和另外一個同窗交流,就能夠直接在班裏喊那個同窗的名字。這個就向計算機內的同一個網段的計算機的交流方式-廣播。
第2種交流方式:
班與班之間的學生交流,這個時候在a班裏面直接喊b班同窗名字就沒做用了,由於隔着牆,根本就聽不見。這個相似不一樣網段的計算機沒辦法通訊。這個時候兩個班的學生要是想交流必需要經過R老師來作傳話人。這個相似於網絡裏的網關。a班的同窗把要說的話告訴R老師,R老師把話轉告給b班的同窗。
咱們把這個例子對接到網絡學習裏,方便你們理解
學校=互聯網
班=網段
學生=計算機
老師(傳話人)=虛擬的NAT服務器
很差意思 女友叫我上街 ,先寫到這,下次接着寫
還有什麼虛擬機的知識, 要我大話的,請在下面跟貼說明
對不起你們了,我回來晚了 接着上次的寫
虛擬機用NAT上網的方式和我舉例子中的第2種交流方式很類似。
橋接則和第1種交流方式很是吻合。
好比說你安裝了虛擬系統而且選擇是Nat模式,虛擬的NAT服務器就象R老師的做用同樣。負責虛擬機(a班的同窗)和因特網上的計算機(c班的同窗)通訊。
畫個小圖1給你們說明
有了圖就說的方便多了
nat的上網方式的特色
1.主機的虛擬網卡不用設置(默認爲自動得到)
2.虛擬系統中的網卡不用設置(默認爲自動得到)
這條兩個實現的前提是虛擬的dhcp服務器正常工做 給你們圖2
在看一個關於nat的圖3
看了這個3個圖後,你們基本上也就明白了。可是這樣沒有說服力,下面我再來作個解釋
其中192.168.2.2至關與R老師的地位,在圖1就標有虛擬NAT服務器
圖3規定了NAT的ip地址。
主機的ipconfig 圖4
虛擬機的ipconfig圖5
如今用一個命令trcert 說明虛擬機上網是經過NAT服務器 192.168.2.2
Tracert命令用來顯示數據包到達目標主機所通過的路徑,並顯示到達每一個節點的時間。命令功能同Ping相似,但它所得到的信息要比Ping命令詳細得多,它把數據包所走的所有路徑、節點的IP以及花費的時間都顯示出來。該命令比較適用於大型網絡。
咱們如今在虛擬機上trcert 百度 看看虛擬機的數據包書如何到達baidu.com
看看裏面有沒有192.168.2.2(虛擬的nat服務器)
圖6
VMware虛擬網絡相關知識
1.虛擬網橋
經過虛擬網橋把虛擬機的虛擬網卡鏈接到宿主機的物理網卡上。經過它能夠將虛擬機鏈接到宿主機所在的外部網絡。若是宿主機上不止是一個物理網卡時,採用定製配置,建立另外的虛擬網橋用來鏈接宿主機上的其它物理上網卡。
2.宿主機虛擬網卡
安裝完虛擬機後,咱們右鍵「網上鄰居」 /屬性 /在打開的「網絡鏈接」窗口裏看到兩塊網卡,默認狀況下「VMware Network Adapter VMnet1」供僅宿主機網絡使用;「VMware NetworkAdapter VMnet8」供NAT網絡使用。右鍵這兩個網卡的屬性,咱們能夠在常標籤下看到虛擬網卡的全稱。固然咱們也能夠在宿主機的「命令提示符」中輸入ipconfig獲知宿主機虛擬網卡的詳細信息
3.NAT設備
NAT是網絡地址翻譯的簡寫。當宿主機在外部只擁有一個IP時,利用NAT設備,虛擬機能夠鏈接到該外部網絡,咱們打開宿主機上的「管理工具」裏的「服務」,能夠發現多出了一個「VMware NAT Service」服務,說明系統已經將它安裝爲系統服務。
4.VMware DHCP服務
DHCP是動態主機配置協議簡寫。DHCP服務爲沒有橋接到外部網絡的虛擬機提供IP地址。採用橋接網絡模式的虛擬機IP地址就是直接由宿主機所在外部網絡的DHCP服務器提供的。
[原創]VMware提供的虛擬網卡圖示
一些初學者對VMware虛擬機中的橋接、VMnet1(僅host方式)、VMnet8(NAT方式),我把VMware各網卡的意義作了三張圖,但願對你們有所幫助。
顯示不全,請你們另存觀看。
4 vmware虛擬機nat模式共享上網
至此 虛擬機教程描述就到這裏
本文出自 「堅持就是勝利」 博客,請務必保留此出處http://lilinji.blog.51cto.com/5441000/1264307
來源:http://lilinji.blog.51cto.com/5441000/1264307