一决侈、調(diào)試環(huán)境
筆記本電腦(無(wú)線網(wǎng)卡連接互聯(lián)網(wǎng))+WIN10(筆記本操作系統(tǒng))+VMware Workstation 16 Player(虛擬環(huán)境)+RedHat7(虛擬機(jī)操作系統(tǒng))
二区匠、基礎(chǔ)理論
VMware有四種網(wǎng)絡(luò)模式實(shí)現(xiàn)虛擬機(jī)聯(lián)網(wǎng):橋接模式、NAT模式哺徊、僅主機(jī)模式、自定義網(wǎng)絡(luò)連接模式乾闰。
在虛擬化平臺(tái)中【PLAYER】->【管理】->【虛擬機(jī)設(shè)置】->【網(wǎng)絡(luò)適配器】查看如下圖:
????????在VMware中落追,虛擬機(jī)的網(wǎng)絡(luò)連接主要是由VMware創(chuàng)建的虛擬交換機(jī)(也叫做虛擬網(wǎng)絡(luò))負(fù)責(zé)實(shí)現(xiàn),VMware可以根據(jù)需要?jiǎng)?chuàng)建多個(gè)虛擬網(wǎng)絡(luò)涯肩。當(dāng)我們安裝VMware時(shí)轿钠,VMware會(huì)自動(dòng)為3種網(wǎng)絡(luò)連接模式各自創(chuàng)建1個(gè)虛擬機(jī)網(wǎng)絡(luò)(可想象為三個(gè)虛擬交換機(jī)):VMnet0(橋接模式)、VMnet8(NAT模式)病苗、VMnet1(僅主機(jī)模式)疗垛。此外,我們也可以根據(jù)需要自行創(chuàng)建更多的虛擬網(wǎng)絡(luò)硫朦。所以在完成VMware安裝后主機(jī)操作系統(tǒng)中會(huì)自動(dòng)出現(xiàn)相關(guān)網(wǎng)絡(luò)適配器贷腕,如下圖所示:
? ? ? ?為什么在主機(jī)上沒(méi)有VMware Network Adapter VMnet0虛擬網(wǎng)卡呢?
1咬展、橋接模式
? ? ? ?VMware橋接模式泽裳,也就是將虛擬機(jī)視為局域網(wǎng)中一臺(tái)新的、獨(dú)立的計(jì)算機(jī)破婆。因此涮总,虛擬機(jī)也會(huì)占用局域網(wǎng)中的一個(gè)IP地址,并且可以和其他終端進(jìn)行相互訪問(wèn)荠割。
? ? ? 由于橋接模式下妹卿,主機(jī)直接使用連接外部網(wǎng)絡(luò)的網(wǎng)絡(luò)適配器連接虛擬網(wǎng)絡(luò)旺矾,故解釋為什么安裝后不自動(dòng)創(chuàng)建VMware Network Adapter VMnet0虛擬網(wǎng)卡的問(wèn)題。
2夺克、NAT模式
? ? ? ?NAT箕宙,是Network Address Translation的縮寫,意即網(wǎng)絡(luò)地址轉(zhuǎn)換铺纽。使用NAT模式網(wǎng)絡(luò)連接時(shí)柬帕,VMware會(huì)在主機(jī)上建立單獨(dú)的專用網(wǎng)絡(luò),用以實(shí)現(xiàn)虛擬機(jī)與主機(jī)及虛擬機(jī)與外部網(wǎng)絡(luò)之間的通信狡门。換言之陷寝,所有虛擬機(jī)的發(fā)送和接收的網(wǎng)絡(luò)數(shù)據(jù)包均需經(jīng)虛擬NAT設(shè)備進(jìn)一步封裝和解封裝,發(fā)送數(shù)據(jù)包時(shí)的封裝將虛擬機(jī)發(fā)來(lái)的數(shù)據(jù)包穿上主機(jī)網(wǎng)卡IP的外衣后送去路由器進(jìn)行傳送其馏,接收數(shù)據(jù)時(shí)的解封裝將路由器發(fā)回的數(shù)據(jù)包穿著的主機(jī)網(wǎng)卡IP的外衣脫去露出真實(shí)的虛擬機(jī)網(wǎng)卡IP凤跑。
? ? ? ?在NAT模式中,主機(jī)網(wǎng)卡直接與虛擬NAT設(shè)備相連叛复,然后虛擬NAT設(shè)備與虛擬DHCP服務(wù)器一起連接在虛擬交換機(jī)VMnet8上仔引,這樣就實(shí)現(xiàn)了虛擬機(jī)聯(lián)網(wǎng)。那么為什么需要虛擬網(wǎng)卡VMware Network Adapter VMnet8呢褐奥?原來(lái)我們的VMware Network Adapter VMnet8虛擬網(wǎng)卡主要是為了實(shí)現(xiàn)主機(jī)與虛擬機(jī)之間的通信咖耘,也就是說(shuō)下線VMware Network Adapter VMnet8網(wǎng)卡后并不影響虛擬機(jī)訪問(wèn)外部網(wǎng)絡(luò)只是虛擬機(jī)和主機(jī)之間無(wú)法實(shí)現(xiàn)通信。
3撬码、僅主機(jī)模式
? ? ? ?僅主機(jī)模式儿倒,是一種比NAT模式更加封閉的的網(wǎng)絡(luò)連接模式,它將創(chuàng)建完全包含在主機(jī)中的專用網(wǎng)絡(luò)呜笑。Host-Only模式其實(shí)就是NAT模式去除了虛擬NAT設(shè)備夫否,然后使用VMware Network Adapter VMnet1虛擬網(wǎng)卡連接VMnet1虛擬交換機(jī)來(lái)與虛擬機(jī)通信的,Host-Only模式將虛擬機(jī)與外網(wǎng)隔開蹈垢,使得虛擬機(jī)成為一個(gè)獨(dú)立的系統(tǒng)慷吊,只與主機(jī)相互通訊。但也可以通過(guò)網(wǎng)絡(luò)共享的方式實(shí)現(xiàn)虛擬機(jī)與外部網(wǎng)絡(luò)的連接曹抬。
以上網(wǎng)絡(luò)模式圖片引自:https://blog.csdn.net/weixin_41632560/article/details/92792391?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0.no_search_link&spm=1001.2101.3001.4242.1
以下形象比喻引用自:https://blog.csdn.net/sores/article/details/89249771
(1)橋接模式的虛擬機(jī),就像一個(gè)在路由器"民政局"那里"上過(guò)戶口"的成年人急鳄,有自己?jiǎn)为?dú)的居住地址谤民,雖然和主機(jī)住在同一個(gè)大院里,但好歹是有戶口的人疾宏,可以大搖大擺地直接和外面通信张足。
(2)NAT模式的虛擬機(jī),純粹就是一個(gè)沒(méi)上過(guò)戶口的黑戶坎藐,路由器"民政局"根本不知道有這么個(gè)人为牍,自然也不會(huì)主動(dòng)和它通信哼绑。即使虛擬機(jī)偶爾要向外面發(fā)送點(diǎn)的信件,都得交給主機(jī)以主機(jī)的名義轉(zhuǎn)發(fā)出去碉咆,主機(jī)還專門請(qǐng)了一位叫做NAT的老大爺來(lái)專門負(fù)責(zé)這些虛擬機(jī)的發(fā)信抖韩、收信事宜。
(3)僅主機(jī)模式的虛擬機(jī)疫铜,純粹是一個(gè)徹徹底底的黑奴茂浮,不僅沒(méi)有戶口、路由器"民政局"不知道這么號(hào)人壳咕,還被主機(jī)關(guān)在小黑屋里席揽,連信件也不準(zhǔn)往外發(fā)。
三谓厘、NAT模式網(wǎng)絡(luò)配置(使用dhcp自動(dòng)分配模式幌羞,也可配置為手動(dòng)模式)
1、主機(jī)虛擬網(wǎng)卡配置(如不需要主機(jī)與虛擬機(jī)通信竟稳,可不配)
? ? ?在主機(jī)系統(tǒng)(此環(huán)境中的WIN10)中配置VMware Network Adapter VMnet8虛擬網(wǎng)卡的TCP/IPv4 IP和DNS全部為自動(dòng)新翎,如下圖所示:
2、配置虛擬化環(huán)境
在虛擬化平臺(tái)中【PLAYER】->【管理】->【虛擬機(jī)設(shè)置】->【網(wǎng)絡(luò)適配器】設(shè)置為【NAT模式】查看如下圖:
3住练、配置RedHat虛擬機(jī)
1)使用ifconfig -a指令查看系統(tǒng)當(dāng)前啟用的網(wǎng)卡名稱地啰,如下圖中紅色框部分:
注意:由于在linux系統(tǒng)最小化安裝包安裝過(guò)程中未安裝網(wǎng)絡(luò)工具,導(dǎo)致執(zhí)行ifconfig -a?時(shí)提示“command not found”,可自行參照https://www.lxlinux.net/1799.html安裝
2)確認(rèn)網(wǎng)卡配置
? ? ?使用vim編輯/etc/sysconfig/network-scripts/ifcfg-eno166777736,此處文件名對(duì)應(yīng)ifconfig中網(wǎng)卡名稱
? ? ? 執(zhí)行#vim?/etc/sysconfig/network-scripts/ifcfg-eno166777736
3)重啟網(wǎng)絡(luò)服務(wù)
#service?restart?network
四讲逛、網(wǎng)絡(luò)測(cè)試
1亏吝、確認(rèn)虛擬機(jī)IP
同樣使用ifconfig -a指令查看,此處為192.168.43.128
2盏混、確認(rèn)主機(jī)VMware Network Adapter VMnet8虛擬網(wǎng)卡IP蔚鸥,此處為192.168.43.1
3、在虛擬機(jī)中ping主機(jī)虛擬網(wǎng)卡IP
? ? ? 如下圖许赃,說(shuō)明虛擬機(jī)與主機(jī)虛擬網(wǎng)卡通信正常止喷,同時(shí)證明虛擬機(jī)網(wǎng)卡運(yùn)行正常且網(wǎng)絡(luò)配置已生效;
4混聊、在虛擬機(jī)中ping www.baidu.com測(cè)試虛擬機(jī)與外部網(wǎng)絡(luò)的聯(lián)通性(此處為本人踩坑處弹谁,望引起大家關(guān)注)
? ? ? ?由于始終如下圖所示,多次嘗試重啟網(wǎng)卡句喜,重啟網(wǎng)絡(luò)服務(wù)预愤,均提示ping?百度100%丟包,懷疑以上網(wǎng)絡(luò)配置存在問(wèn)題咳胃,參照網(wǎng)絡(luò)上指引多次調(diào)整配置均無(wú)法解決該問(wèn)題植康,通過(guò)下述不懈嘗試最終找到問(wèn)題原因。
5展懈、嘗試ping主機(jī)無(wú)線網(wǎng)卡ip?
? ? ? 此例中為192.168.1.100正常销睁,證明虛擬機(jī)網(wǎng)卡經(jīng)虛擬網(wǎng)絡(luò)及NAT服務(wù)器訪問(wèn)主機(jī)無(wú)線網(wǎng)卡正常
6供璧、嘗試ping路由器LAN口IP192.168.1.1及WAN口IP192.168.10.228均正常,證明虛擬機(jī)數(shù)據(jù)包可正常傳送至路由器WAN口
7冻记、確認(rèn)筆記本電腦訪問(wèn)百度網(wǎng)頁(yè)正常情況下使用筆記本cmd ping www.baidu.com,同樣無(wú)法ping通睡毒,推測(cè)并非虛擬機(jī)訪問(wèn)外部網(wǎng)絡(luò)問(wèn)題,而是該網(wǎng)絡(luò)環(huán)境限制了icmp包的傳遞
8檩赢、使用主機(jī)和虛擬機(jī)telnet www.baidu.com 80測(cè)試聯(lián)通性吕嘀,均顯示成功建立連接,從而驗(yàn)證7)條中推測(cè)贞瞒,并確認(rèn)虛擬機(jī)網(wǎng)絡(luò)配置成功偶房。