解決VMware在Windows 7上無法上網(wǎng)的問題
最近系統(tǒng)升級到了Windows 7,用了幾天都很好,沒有什么問題。但是在運行VMware虛擬機的時候問題出現(xiàn)了,虛擬機中無法上網(wǎng)。于是Google之,解決問題。
網(wǎng)上雖然有解決方法,但是介紹的不是很詳細,起碼我第一遍沒有看懂,而且找了十幾個網(wǎng)址內(nèi)容都是一模一樣的,連圖片都沒有變。
在Vista上運行VMware虛擬機使用的是NAT方式上網(wǎng),到了Windows 7中就不行了。在網(wǎng)絡(luò)和共享中心里面看了一下,原來是VMware創(chuàng)建的虛擬連接被歸為了公用網(wǎng)絡(luò),無法連接到Internet。家庭網(wǎng)絡(luò)是可以連接到Internet的,于是我嘗試將VMware的虛擬連接移至家庭網(wǎng)絡(luò),但是無果而終,沒有什么辦法。
于是上網(wǎng)Google一下,找到解決方案。雖然都是網(wǎng)上的方法,并非我原創(chuàng),但是我將把它介紹的更為具體詳細。
首先打開Windows 7的網(wǎng)絡(luò)和共享中心,然后點左邊的更改適配器設(shè)置,你會看到兩個由VMware創(chuàng)建的虛擬連接,找到VMnet1,記住它的連接名稱(我的為本地連接2)。
然后右擊你當(dāng)前使用中的連接(比如我使用的是無線網(wǎng)絡(luò)連接)選擇屬性,把全部的鉤都打上,然后在家庭網(wǎng)絡(luò)連接中選擇VMnet1連接的名字(比如我的是本地連接2)。
如果是有線,設(shè)置本地連接的屬性(通過路由撥號)
如果是撥號連接,直接設(shè)置撥號連接屬性,無需再在本地連接或者無線連接中設(shè)置。
就像這樣:
接著選擇VMnet1連接,選擇屬性,雙擊Internet協(xié)議版本4,手動設(shè)置IP地址,默認的為192.168.137.1,這樣就可以了。注意不要和你當(dāng)前使用的連接在同一個網(wǎng)段內(nèi)。
主機上的設(shè)置就完成了。運行虛擬機,我安裝的虛擬機為Windows XP,像剛才那樣設(shè)置虛擬機中的當(dāng)前使用中的連接,我的為本地連接,將IP地址設(shè)置為同主機的VMnet1的IP統(tǒng)一網(wǎng)段,192.168.127.2就可以,子網(wǎng)掩碼使用默認,網(wǎng)關(guān)設(shè)置成VMnet1的地址,就是我剛才的192.168.137.1,另外DNS可以自行設(shè)置,也可以使用我使用的202.102.192.68
最后選擇虛擬機的設(shè)置,將Network Adapter設(shè)置為Host-Only,如圖:
好了,這樣就可以在虛擬機中上網(wǎng)了。
另外,我發(fā)現(xiàn)VirtualBox創(chuàng)建的虛擬連接同樣被歸為了公用連接無法連接Internet,所以VirtualBox應(yīng)該和VMware一樣在Windows 7下遇到麻煩,可以效仿VMware的方法為VirtualBox設(shè)置Internet連接。
VMware網(wǎng)絡(luò)的三種工作模式
VMware提供了三種工作模式,它們是bridged(橋接模式)、NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換模式)和host-only(主機模式)。要想在網(wǎng)絡(luò)管理和維護中合理應(yīng)用它們,你就應(yīng)該先了解一下這三種工作模式。
l bridged(橋接模式)
在這種模式下,VMWare虛擬出來的操作系統(tǒng)就像是局域網(wǎng)中的一臺獨立的主機,它可以訪問網(wǎng)內(nèi)任何一臺機器。在橋接模式下,你需要手工為虛擬系統(tǒng)配置IP地址、子網(wǎng)掩碼,而且還要和宿主機器處于同一網(wǎng)段,這樣虛擬系統(tǒng)才能和宿主機器進行通信。同時,由于這個虛擬系統(tǒng)是局域網(wǎng)中的一個獨立的主機系統(tǒng),那么就可以手工配置它的TCP/IP配置信息,以實現(xiàn)通過局域網(wǎng)的網(wǎng)關(guān)或路由器訪問互聯(lián)網(wǎng)。使用橋接模式的虛擬系統(tǒng)和宿主機器的關(guān)系,就像連接在同一個Hub上的兩臺電腦。想讓它們相互通訊,你就需要為虛擬系統(tǒng)配置IP地址和子網(wǎng)掩碼,否則就無法通信。如果你想利用VMWare在局域網(wǎng)內(nèi)新建一個虛擬服務(wù)器,為局域網(wǎng)用戶提供網(wǎng)絡(luò)服務(wù),就應(yīng)該選擇橋接模式。
l host-only(主機模式)
在某些特殊的網(wǎng)絡(luò)調(diào)試環(huán)境中,要求將真實環(huán)境和虛擬環(huán)境隔離開,這時你就可采用host-only模式。在host-only模式中,所有的虛擬系統(tǒng)是可以相互通信的,但虛擬系統(tǒng)和真實的網(wǎng)絡(luò)是被隔離開的。提示:在host-only模式下,虛擬系統(tǒng)和宿主機器系統(tǒng)是可以相互通信的,相當(dāng)于這兩臺機器通過雙絞線互連。在host-only模式下,虛擬系統(tǒng)的TCP/IP配置信息(如IP地址、網(wǎng)關(guān)地址、DNS服務(wù)器等),都是由VMnet1(host-only)虛擬網(wǎng)絡(luò)的DHCP服務(wù)器來動態(tài)分配的。如果你想利用VMWare創(chuàng)建一個與網(wǎng)內(nèi)其他機器相隔離的虛擬系統(tǒng),進行某些特殊的網(wǎng)絡(luò)調(diào)試工作,可以選擇host-only模式。
l NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換模式)
使用NAT模式,就是讓虛擬系統(tǒng)借助NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)功能,通過宿主機器所在的網(wǎng)絡(luò)來訪問公網(wǎng)。也就是說,使用NAT模式可以實現(xiàn)在虛擬系統(tǒng)里訪問互聯(lián)網(wǎng)。NAT模式下的虛擬系統(tǒng)的TCP/IP配置信息是由VMnet8(NAT)虛擬網(wǎng)絡(luò)的DHCP服務(wù)器提供的,無法進行手工修改,因此虛擬系統(tǒng)也就無法和本局域網(wǎng)中的其他真實主機進行通訊。采用NAT模式最大的優(yōu)勢是虛擬系統(tǒng)接入互聯(lián)網(wǎng)非常簡單,你不需要進行任何其他的配置,只需要宿主機器能訪問互聯(lián)網(wǎng)即可。如果你想利用VMWare安裝一個新的虛擬系統(tǒng),在虛擬系統(tǒng)中不用進行任何手工配置就能直接訪問互聯(lián)網(wǎng),建議你采用NAT模式。
提示:以上所提到的NAT模式下的VMnet8虛擬網(wǎng)絡(luò),host-only模式下的VMnet1虛擬網(wǎng)絡(luò),以及bridged模式下的VMnet0虛擬網(wǎng)絡(luò),都是由VMWare虛擬機自動配置而生成的,不需要用戶自行設(shè)置。VMnet8和VMnet1提供DHCP服務(wù),VMnet0虛擬網(wǎng)絡(luò)則不提供。
網(wǎng)絡(luò)連接上網(wǎng)設(shè)置
1.bridge :
默認使用vmnet0
將虛擬機的ip設(shè)置與主機同網(wǎng)段未使用ip,其余與主機相同:
例如主機ip是10.70.54.31,設(shè)置虛擬機ip為10.70.54.22。netmask,broadcast,gateway,dns都與主機相同即可實現(xiàn)虛擬機<--->主機 虛擬機<---->互聯(lián)網(wǎng) 通信。
2.nat :
默認使用vmnet8
將虛擬機設(shè)置成使用dhcp方式上網(wǎng),windows下選擇"自動獲取ip",linux下開啟dhcp服務(wù)即可
也可以手動設(shè)置:
ip設(shè)置與vmnet8同網(wǎng)段,gateway設(shè)置成vmnet8的gateway(/etc/vmware/vmnet8/nat/nat.conf)中可以查到vmnet8的gateway,通常是xxx.xxx.xxx.2。
netmask,broadcast設(shè)置與vmnet8相同,dns設(shè)置與主機相同。
例如 vmnet8 ip:172.16.249.1 gw :172.16.249.2
虛擬機設(shè)置: ip :172.16.249.100 gw: 172.16.249.2
3.host-only :
默認使用vmnet1
將虛擬機ip設(shè)置與vmnet1同網(wǎng)段,gateway設(shè)置成vmnet1的ip,其余設(shè)置與vmnet1相同,dns設(shè)置與主機相同
例如 vmnet1 ip :172.16.245.1
虛擬機設(shè)置: ip :172.16.245.100 gateway :172.16.245.1
這樣就實現(xiàn)了虛擬機<--->主機 通信,但是 虛擬機<--->互聯(lián)網(wǎng) 仍無法通信
虛擬機與互聯(lián)網(wǎng)通信:
1.開啟主機路由功能
2.設(shè)定iptables,使主機成為一臺nat server
1. echo 1 >/proc/sys/net/ipv4/ip_forward 這樣就主機就具有了路由功能
2. iptables -t nat -A POSTROUTING -o eth0 -s 172.16.245.0/24 -j MASQUERADE
這條規(guī)則意思是將來自172.16.245.0/24封包的來源ip偽裝成eth0的ip,實現(xiàn)虛擬機與互聯(lián)網(wǎng)通信
如果網(wǎng)絡(luò)接口是ppp+或pppoe則需要修改成-o pppoe
當(dāng)然-s 172.16.245.0/24 也要根據(jù)
關(guān)鍵詞:VMware,Windows7,無法上網(wǎng)
閱讀本文后您有什么感想? 已有 人給出評價!
- 26
- 0
- 5
- 6
- 6
- 6