Ubuntu宿主機與VMware中其他系統虛擬機的互通

Ubuntu做宿主機,VMware中創建Windows10,并且通過三種模式實現兩系統互通,其實并非是件難事。在有線網卡未接網線的環境下,關閉兩系統防火墻,基本遵從下文便可實現。

轉載:https://note.youdao.com/ynoteshare1/index.html?id=236896997b6ffbaa8e0d92eacd13abbf&type=note

我們就一起來探討一下關于vmware workstations網絡連接的三種模式。
vmware為我們提供了三種網絡工作模式,它們分別是:Bridged(橋接模式)、NAT(網絡地址轉換模式)、Host-Only(僅主機模式)。

打開vmware虛擬機,我們可以在選項欄的“編輯”下的“虛擬網絡編輯器”中看到VMnet0(橋接模式)、VMnet1(僅主機模式)、VMnet8(NAT模式),那么這些都是有什么作用呢?其實,我們現在看到的VMnet0表示的是用于橋接模式下的虛擬交換機;VMnet1表示的是用于僅主機模式下的虛擬交換機;VMnet8表示的是用于NAT模式下的虛擬交換機。

虛擬網絡編輯器

同時,在主機上對應的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8兩塊虛擬網卡,它們分別作用于僅主機模式與NAT模式下。在“網絡連接”中我們可以看到這兩塊虛擬網卡,如果將這兩塊卸載了,可以在vmware的“編輯”下的“虛擬網絡編輯器”中點擊“還原默認設置”,可重新將虛擬網卡還原。

還原默認設置

小伙伴看到這里,肯定有疑問,為什么在真機上沒有VMware Network Adapter VMnet0虛擬網卡呢?那么接下來,我們就一起來看一下這是為什么。

一、Bridged(橋接模式)

什么是橋接模式?橋接模式就是將主機網卡與虛擬機虛擬的網卡利用虛擬網橋進行通信。在橋接的作用下,類似于把物理主機虛擬為一個交換機,所有橋接設置的虛擬機連接到這個交換機的一個接口上,物理主機也同樣插在這個交換機當中,所以所有橋接下的網卡與網卡都是交換模式的,相互可以訪問而不干擾。在橋接模式下,虛擬機ip地址需要與主機在同一個網段,如果需要聯網,則網關與DNS需要與主機網卡一致。其網絡結構如下圖所示:

橋接模式

接下來,我們就來實際操作,如何設置橋接模式。

首先,安裝完系統之后,在開啟系統之前,點擊“編輯虛擬機設置”來設置網卡模式。

設置網卡模式

點擊“網絡適配器”,選擇“橋接模式”,然后“確定”

網絡適配器

在進入系統之前,我們先確認一下主機的ip地址、網關、DNS等信息。

主機信息

然后,進入系統編輯網卡配置文件,命令為vi /etc/sysconfig/network-scripts/ifcfg-eth0

編輯網卡配置文件

添加內容如下:

添加內容

編輯完成,保存退出,然后重啟虛擬機網卡,使用ping命令ping外網ip,測試能否聯網。

測試能否聯網

能ping通外網ip,證明橋接模式設置成功。

那主機與虛擬機之間的通信是否正常呢?我們就用遠程工具來測試一下。

遠程工具測試

主機與虛擬機通信正常。

這就是橋接模式的設置步驟,相信大家應該學會了如何去設置橋接模式了。橋接模式配置簡單,但如果你的網絡環境是ip資源很缺少或對ip管理比較嚴格的話,那橋接模式就不太適用了。如果真是這種情況的話,我們該如何解決呢?接下來,我們就來認識vmware的另一種網絡模式:NAT模式。

二、NAT(地址轉換模式)

剛剛我們說到,如果你的網絡ip資源緊缺,但是你又希望你的虛擬機能夠聯網,這時候NAT模式是最好的選擇。NAT模式借助虛擬NAT設備和虛擬DHCP服務器,使得虛擬機可以聯網。其網絡結構如下圖所示:

NAT模式

在NAT模式中,主機網卡直接與虛擬NAT設備相連,然后虛擬NAT設備與虛擬DHCP服務器一起連接在虛擬交換機VMnet8上,這樣就實現了虛擬機聯網。那么我們會覺得很奇怪,為什么需要虛擬網卡VMware Network Adapter VMnet8呢?原來我們的VMware Network Adapter VMnet8虛擬網卡主要是為了實現主機與虛擬機之間的通信。在之后的設置步驟中,我們可以加以驗證。

首先,設置虛擬機中NAT模式的選項,打開vmware,點擊“編輯”下的“虛擬網絡編輯器”,設置NAT參數及DHCP參數。

虛擬網絡編輯器

NAT參數

DHCP參數

將虛擬機的網絡連接模式修改成NAT模式,點擊“編輯虛擬機設置”。

編輯虛擬機設置

點擊“網絡適配器”,選擇“NAT模式”

NAT模式

然后開機啟動系統,編輯網卡配置文件,命令為vi /etc/sysconfig/network-scripts/ifcfg-eth0

編輯網卡配置文件

具體配置如下:

具體配置

編輯完成,保存退出,然后重啟虛擬機網卡,動態獲取ip地址,使用ping命令ping外網ip,測試能否聯網。

測試能否聯網

之前,我們說過VMware Network Adapter VMnet8虛擬網卡的作用,那我們現在就來測試一下。

虛擬網卡禁用

是否能ping通

如此看來,虛擬機能聯通外網,確實不是通過VMware Network Adapter VMnet8虛擬網卡,那么為什么要有這塊虛擬網卡呢?

之前我們就說VMware Network Adapter VMnet8的作用是主機與虛擬機之間的通信,接下來,我們就用遠程連接工具來測試一下。

遠程連接工具測試

然后,將VMware Network Adapter VMnet8啟用之后,發現遠程工具可以連接上虛擬機了。

那么,這就是NAT模式,利用虛擬的NAT設備以及虛擬DHCP服務器來使虛擬機連接外網,而VMware Network Adapter VMnet8虛擬網卡是用來與虛擬機通信的。

三、Host-Only(僅主機模式)

Host-Only模式其實就是NAT模式去除了虛擬NAT設備,然后使用VMware Network Adapter VMnet1虛擬網卡連接VMnet1虛擬交換機來與虛擬機通信的,Host-Only模式將虛擬機與外網隔開,使得虛擬機成為一個獨立的系統,只與主機相互通訊。其網絡結構如下圖所示:

Host-Only模式

通過上圖,我們可以發現,如果要使得虛擬機能聯網,我們可以將主機網卡共享給VMware Network Adapter VMnet1網卡,從而達到虛擬機聯網的目的。接下來,我們就來測試一下。

首先設置“虛擬網絡編輯器”,可以設置DHCP的起始范圍。

虛擬網絡編輯器

設置虛擬機為Host-Only模式。

設置Host-Only模式

開機啟動系統,然后設置網卡文件。

設置網卡文件

保存退出,然后重啟網卡,利用遠程工具測試能否與主機通信。

遠程工具測試

主機與虛擬機之間可以通信,現在設置虛擬機聯通外網。

設置虛擬機聯通外網

我們可以看到上圖有一個提示,強制將VMware Network Adapter VMnet1的ip設置成192.168.137.1,那么接下來,我們就要將虛擬機的DHCP的子網和起始地址進行修改,點擊“虛擬網絡編輯器”

虛擬網絡編輯器

重新配置網卡,將VMware Network Adapter VMnet1虛擬網卡作為虛擬機的路由。

重新配置網卡

重啟網卡,然后通過 遠程工具測試能否聯通外網以及與主機通信。

遠程工具測試

測試結果證明可以使得虛擬機連接外網。

以上就是關于vmware三種網絡模式的工作原理及配置詳解。

轉載于:https://www.cnblogs.com/boxy/p/10720750.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277921.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277921.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277921.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Azure輕松實現Teams App的全球合規性

我在之前的一篇博客里面講了合規性對于我們Teams app是非常重要的,因為office365平臺就是面向全世界用戶的,我們開發的teams app一旦發布后,立刻就會有各國各地區的用戶來進行安裝使用,所以符合用戶所在地區的要求是非常重要的。 …

【php復習之】php創建數組的幾種方式

1、array()函數 1.1無key值 $arrarray(1,2,3,4); 1.2鍵值對 $arrarray( name>myj,age>18,phone>1888888888);1.3空數組 $arrarray(); 2、compact()函數 compact函數可以把變量轉換為數組。 $a aaa;$b bbb;$c ccc;$arr3 compact(a,b,c);輸出:{"a&q…

ADC知識(2)——直流參數(輸入電壓參考,參考電流輸入,積分非線性誤差,差分非線性誤差)...

目錄 四、 輸入參考電壓范圍 五、 參考電流 六、 非線性問題 差分非線性誤差 積分非線性 四、 輸入參考電壓范圍 大多數數據手冊中,將它定義為一個特定的參考電壓值,通常這個電壓作為 此轉換器最常用的參考電壓。在參考輸入電壓…

LuckyDraw app使用CosmosDB的成本分析

我在以前的博客里說過我的LuckyDraw app在數據存儲方面使用的是 Azure Table Storage,當時選擇這個的原因是成本考慮,因為它實在是便宜,對于我這種個人開發維護的免費的teams app來說,成本是一個很重要的考量點。 當然&#xff0…

React 重溫之 組件生命周期

生命周期 任何事物都不會憑空產生,也不會無故消亡。一個事物從產生到消亡經理的各個階段,我們稱之為 生命周期。 具體到我們的前端組件上來,一個組件的生命周期可以大體分為創建、更新、銷毀這個三個階段。 本文主要介紹React 的組件生命周期…

遷移聊天記錄到Teams

有一些朋友問我teams是否支持將其他平臺/系統里的聊天記錄遷移某個channel里,答案是肯定的,teams團隊在去年年中的時候就提供了這個功能。這個功能是通過graph api來完成的,我們今天就來看看如何遷移聊天記錄到teams里。 首先,我…

leetcode-191-Number of 1 Bits

題目描述: Write a function that takes an unsigned integer and returns the number of 1 bits it has (also known as the Hamming weight). Example 1: Input: 11 Output: 3 Explanation: Integer 11 has binary representation 000000000000000000000000000010…

androidsdk里的android.bat和uiautomatorview.bat啟動就閃退問題

進入D:\androidsdk\tools文件夾: 使用編輯文件工具: rem Check we have a valid Java.exe in the path.set java_execall lib\find_java.bat 替換成下列代碼: rem Check we have a valid Java.exe in the path.set java_exeC:\Program Files\…

10 個優質的 Laravel 擴展推薦

這里有 10 個用來搭建 Laravel 應用的包 為何會創建這個包的列表?因為我是一個「比較懶」的開發者,在臉書上是多個 Laravel 小組的成員。平日遇到最多的問題就是開發是需要用那些包。我很懶所以我不想每次都從頭開始搞這些東東。 為何此文沒有包括管理包…

Teams AppId, InstallationId 和 ExternalId 的區別

大家如果看teams的 graph api 開發文檔,可能會把 app id, installation id 和 external id 搞混,我自己一開始的時候就有點被搞暈了,再加上app manifest里面的 id 和 bot id,基本就徹底暈掉了。 那我們今天這篇文章就來講講這幾種…

osi參考模型(開放系統互連參考模型)

自互聯網誕生以來,隨著網絡飛速發展,用戶迫切要求能在不同體系結構的網絡空間交換信息,使得不同的網絡能夠互聯起來。 國際化標準組織(International Organization for Standardization,即ISO)從1977年開始…

Java:反射+泛型:獲取類型參數的實例

2019獨角獸企業重金招聘Python工程師標準>>> 場景描述&#xff1a; 我需要開發四個頁面&#xff0c;每個頁面都是只涉及增刪改查的基本邏輯。 最簡單的寫法&#xff1a; 創建四個接口A,B,C,D&#xff0c;每個接口中都聲明了增刪改查四個方法,完全一致 public Map<…

servlet(1)

servlet類分級&#xff1a; 1.ServletConfig接口類&#xff1a;理解為讀取servlet配置的類&#xff0c;里面有四個抽象方法如下&#xff1a; ①getServletName:獲取servlet在web.xml中的名字 ②getServletContext&#xff1a;獲取Servlet上下文&#xff0c;相當于web項目管理所…

如何在 Apple Silicon (M1) 上開發 Teams App

apple 在幾個月前發布了自家的芯片 M1&#xff0c;由于將多核cpu&#xff0c;多核gpu&#xff0c;神經網絡運算&#xff0c;內存和其他一切處理部件高度整合在一起&#xff0c;大大提高數據傳輸速度。發布后好評如潮&#xff0c;我也沒有忍住&#xff0c;入手了一臺最低配的mac…

BZOJ5289 洛谷4437:[HNOI/AHOI2018]排列——題解

https://www.lydsy.com/JudgeOnline/problem.php?id5289 https://www.luogu.org/problemnew/show/P4437 考慮對于a[i]m,a[m]n&#xff0c;我們令p[j]i,p[k]m&#xff08;一定會有一對(j,k)滿足這個條件的&#xff09;&#xff0c;則我們會有p[k]a[p[j]]&#xff0c;此時我們要…

集成學習-Adaboost

Adaboost 中文名叫自適應提升算法&#xff0c;是一種boosting算法。 boosting算法的基本思想 對于一個復雜任務來說&#xff0c;單個專家的決策過于片面&#xff0c;需要集合多個專家的決策得到最終的決策&#xff0c;通俗講就是三個臭皮匠頂個諸葛亮。 對于給定的數據集&#…

主動給團隊或用戶安裝Teams App

在寫這篇文章的時候&#xff0c;這個新功能還處在 Public Review&#xff0c;這意味著可能&#xff08;很小的可能性&#xff09;這里寫的方法在正式發布前還會有一些改動。 之前有一些做teams app開發的朋友問過我&#xff0c;能不能主動給一個team或者一個用戶安裝一個指定的…

thinkphp5多級控制器是什么?怎么使用?

thinkphp5多級控制器是什么&#xff1f;怎么使用&#xff1f; 一、總結 1、多級控制器是讓控制器的級數變成多級&#xff0c;也就是controller目錄下可以新建其它目錄。 2、使用的話注意目錄下的控制的的命名空間&#xff08;加上目錄名&#xff09;&#xff08;namespace app\…

給Teams消息附加圖片的三種方式

Teams消息支持三種不同的方式來添加圖片&#xff0c;這篇文章我們來一起看一下這三種方式。 Inline圖片 var imagePath Path.Combine(Environment.CurrentDirectory, "abc.png"); var imageData Convert.ToBase64String(File.ReadAllBytes(imagePath)); var image…

4月18日 MySQL學習

正式開始了數據庫的學習 昨天下好的MySQL 今天正式開始學習的&#xff0c;介紹了多種數據庫軟件&#xff0c;當然 學習的這個是開源的 免費的。 DBMS(數據庫管理系統)這就是我們學習的數據庫的軟件 數據庫分為關系型數據庫管理系統和非關系型數據庫管理系統(沒有深入的了解) 今…