嵌入式中VMware 三种网络模式的详解与配置方法

news2024/11/14 9:10:47

今天梳理下 VMware虚拟机的三种网络工作模式。

相信通过这两篇文章,能够帮助你全面搞懂虚拟机的网络工作模式和配置。

VMware的三种网络工作模式

vmware为我们提供了三种网络工作模式,  它们分别是:

Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式)。

进入vmware,  在选项栏的 "编辑" 下的 "虚拟网络编辑器" 中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式)。

图片

我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机;VMnet1表示的是用于仅主机模式下的虚拟交换机;VMnet8表示的是用于NAT模式下的虚拟交换机。

并且在物理机的网络连接中可以看到两张虚拟网卡VMnet1和VMnet8,  这两种网卡分别作用于仅主机模式与NAT模式。

如果将这两块不小心卸载,  可以在vmware的 "编辑" 下的 "虚拟网络编辑器" 中点击 "还原默认设置"。

图片

图片

那VMnet0呢?这需要先系统了解一下三种模式,你就会有答案了。

Bridged-桥接模式

桥接模式是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。

在桥接的作用下,  类似于把物理主机虚拟为一个交换机,  所有设置桥接模式的虚拟机都将连接到这个交换机的一个接口上;

同样物理主机也插在这个交换机中,  所以桥接下的网卡与网卡都是交换模式的,  可以相互访问而不干扰。

虚拟机ip地址需要与主机在同一个网段,  如果虚拟主机要联网,  则要求网关与DNS要与主机的网卡保持一致。

网络的结构如图:

图片

那么在VMware中怎么设置呢?

点击编辑虚拟机设置,这个设置可以设置虚拟机的配置,自然包括网卡。

图片

找到网络适配器 ,  然后找到 桥接模式,点击,然后点击确定。

图片

之后  查看一下主机的ip地址、网关、DNS等信息。

图片

然后进入系统,  打开终端输入 vi /etc/sysconfig/network-scripts/ifcfg-eth0,编辑网卡配置信息。

图片

输入以下内容:

图片

然后ESC返回命令模式,输入 :wq! 保存退出,  然后重启网卡或者重启系统,  然后使用ping命令ping百度  看看能否接收到数据包。

如果能ping通百度,  配置完成。

图片

我们使用Xshell测试一下虚拟机与主机之间的连接,查看是否能够进行信息交换。

图片

可见主机与虚拟机通信正常。

注意:当前的网络环境是ip资源很缺少或对ip管理比较严格的话,  那桥接模式就不适用。

我们可以把模式设置成NAT模式模式。

NAT-地址转换模式

NAT模式是利用 NAT设备 和 DHCP服务器 ,  让虚拟机可以联网。

在NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。

图片

这里给你补充一下DHCP和NAT的知识。

DHCP是动态主机配置协议,  是一个局域网的网络协议。

指的是由服务器控制一段IP地址范围,  客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。

担任DHCP服务器的计算机需要安装TCP/IP协议,  并为其设置静态IP地址、子网掩码、默认网关等内容。

打开该功能后,  路由器会根据所在局域网的IP网段自动分配IP地址,  不用自己去设置IP地址,  关闭后则需要自己手动去设置IP地址。

NAT(Network Address Translation,  网络地址转换)是1994年提出的。

当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),  但现在又想和因特网上的主机通信(并不需要加密)时,  可使用NAT方法。

这种方法需要在专用网(私网IP)连接到因特网(公网IP)的路由器上安装NAT软件。

装有NAT软件的路由器叫做NAT路由器,  它至少有一个有效的外部全球IP地址(公网IP地址)。

这样,  所有使用本地地址(私网IP地址)的主机在和外界通信时,  都要在NAT路由器上将其本地地址转换成全球IP地址,  才能和因特网连接。

另外,  这种通过使用少量的公有IP 地址(私网地址)代表较多的私有IP 地址的方式,  将有助于减缓可用的IP地址空间的枯竭。

NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。结构图如下:

图片

从上图中我们可以看出,  主机网卡与虚拟NAT设备直接连接,  然后NAT设备与DHCP服务器均连接到VMnet8上,  这样就实现了虚拟机联网。

其中VMnet8虚拟网卡为了实现主机与虚拟机之间的沟通。

打开vmware的虚拟网络编辑器,可以设置NAT参数及DHCP参数。

图片

图片

NAT参数

图片

DHCP参数

同样,点击虚拟机设置调整网络模式。

图片

图片

进系统,敲命令vi /etc/sysconfig/network-scripts/ifcfg-eth0。

图片

图片

保存退出,ping百度。

图片

现在我们来验证一下VMnet8的作用。禁用VMnet8,进入虚拟机重新ping百度。

图片

图片

能 ping 通,用Xshell测试,发现不能连接。

图片

重新启动网卡VMnet8发现可以连接上了。

总结:用虚拟NAT设备和虚拟DHCP服务器来让虚拟机联网  而VMnet8是用来主机与虚拟机通信。

Host-Only-仅主机模式

Host-Only就是NAT模式删了NAT设备,  用VMnet1网卡连接VMnet1虚拟交换机来与虚拟机通信的,  可见Host-Only将虚拟机与外部网络隔离,  虚拟机只与主机相互通讯。

网络的结构如图:

图片

要使虚拟机能上网,  可以把主机的网卡共享给VMnet1网卡。

同样,打开虚拟网络编辑器,然后配置一下 DHCP设置,配置一下起始和终止IP。

图片

设置虚拟机的联网模式:

图片

然后同样操作。

图片

保存退出,  然后重启网卡, 测试与主机之间的连通性。

图片

可以通信,这时我们让虚拟机通信。

主机进入网络连接,鼠标右击上网的网卡属性,选择共享选项卡,勾选共享,下方选择vM1网卡,点击确定。

图片

点击确定,强制将VM1的ip设置成 192.168.137.1,然后调整虚拟机的DHCP的子网和起始地址。

图片

配置网卡,  VM1网卡作为路由。

图片

重启网卡,  然后测试能否ping通百度以及远程登录。

图片

测试结果证明可以使得虚拟机连接外网。

步骤基本和NAT一样,设置固定IP时虚拟机IP要和VMnet1在同一网段,网关一致,DNS地址要和主机相同。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1430009.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytest测试用例参数化

pytest.mark.parametrize(参数名1,参数名2...参数n, [(参数名1_data1,参数名2_data1...参数名n_data1),(参数名1_data2,参数名2_data2...参数名n_data2)]) 场景: 定义一个登录函数test_login,传入参数为name,password,需要用多个账号去测试登录功能 # …

八. 实战:CUDA-BEVFusion部署分析-学习spconv的优化方案(Implicit GEMM conv)

目录 前言0. 简述1. 什么是Implicit GEMM Conv2. Explicit GEMM Conv3. Implicit GEMM Conv4. Implicit GEMM Conv优化5. spconv和Implicit GEMM Conv总结下载链接参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》,链接。记录下个人学习笔记&#xff0…

量化交易学习4(投资组合基本认识)

1 如何衡量投资组合的收益率 1.1 投资组合收益率的计算方法 1.2 投资组合的绝对收益率和相对收益率 2 如何衡量投资组合的风险 2.1 风险的定义 风险是指在未来可能发生的不确定性事件所带来的潜在损失。 在投资领域中,风险通常指投资所面临的不确定性和潜在的损失…

SECS/GEM稳定可靠就用金南瓜

1、开发模式 secs协议的开发模式通常分两种: 1、完全自主开发。(开发周期长,需要secs/gem的详细协议文档,完全自主开发工作量,保守估计也要一年的工作量,还不包含工程师离职,现场测试时间&…

车企销售官网搭建流程

引言 近期在整理车企销售官网相关的一些材料时,由于之前也没接触过相关的业务,所以也是一边学习一遍整理,将自己理解官的网搭建流程给梳理出来,供与大家交流讨论。 官网搭建流程 官网搭建流程我分为两大步:网站Demo设计和网站搭建部署,具体流程如下图所示。 流程的具体…

原型中concat()-合并连接

concat() 方法主要用于连接两个或多个数组。它不会改变原有的数组,而是会返回一个包含这些数组元素的新的数组。 学习中。。。

发布3-数据库模式选择

JRT提供了Cache、IRIS、PostGreSql、人大金仓几种数据库支持。这四种数据库都可以使用,并且都有代码生成器。 对有IRIS经验的人建议的开发数据库模式是基于IRIS开发、然后用M生成导表SQL到PostGreSql和人大金仓测试,因为M调表方便,这样适应表…

Java数组的遍历

目录 数组的遍历使用for循环遍历数组使用for-each循环遍历数组使用while循环和迭代器遍历数组使用Java 8的流API遍历数组 数组遍历的应用求数组中的最大值查询数组中指定位置的元素将查指定元素对应的索引的功能提取为方法添加数组元素删除数组元素 数组的遍历 Java数组的遍历…

2024济南生物发酵展:会议日程安排和技术装备亮点预告

2024济南发酵展/2024生物发酵展/2024山东发酵展/2024济南生物制药展/2024生物技术展/2024食品设备展/2024食品加工展 由中国生物发酵产业协会主办,上海信世展览服务有限公司承办的2024第12届国际生物发酵产品与技术装备展览会(济南)将于3月5-…

【Go语言成长之路】引入外部包

文章目录 引入外部包一、查找需要引用的包二、引入需要导入的包三、运行程序 引入外部包 ​ 实现Demo: 引用rsc.io/quote包来实现打印输出 一、查找需要引用的包 ​ 比如说我现在想要找一个quote的包,那么可以通过如下步骤进行操作: 访问pkg.go.dev,并…

基于深度学习的多功能人脸识别系统

文章目录 前言一、用户登录设计二、图像采集设计1.本地视频2.摄像头3.RTSP 三、人脸识别原理1.人脸库的建立及训练2. 人脸检测算法的实现3. 人脸识别算法的实现 四、数据存储设计1.SQLite32.Excel 五、网络通信设计1.邮件通知2.阿里云 六、其他不重要功能展示1.年龄、性别和表情…

【已解决】Ubuntu64位无法运行32位ELF文件的问题

问题起因 因为在做一道逆向题,发现题目给的文件是32位elf文件,所以想在Linux下执行一下,然后发现会报错。 于是查了一下资料,发现报错的原因是64位的Ubuntu无法直接运行32位的程序,需要下载兼容32位的库。 解决方法…

单细胞scATAC-seq测序基础知识笔记

单细胞scATAC-seq测序基础知识笔记 单细胞ATAC测序前言scATAC-seq数据怎么得出的? 该笔记来源于 Costa Lab - Bioinformatics Course 另一篇关于scRNA-seq的请移步 单细胞ATAC测序前言 因为我的最终目的是scATAC-seq的数据,所以这部分只是分享下我刚学…

JavaScript鼠标事件入门

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 鼠标事件是Web开发中最为重要的交互方式之一。本文将带领大家入门常用…

分库分表 21 条法则,hold 住!

大家好~今天给大家分享分库分表的 21 条法则 我们结合具体业务场景,以t_order表为例进行架构优化。由于数据量已经达到亿级别,查询性能严重下降,因此我们采用了分库分表技术来处理这个问题。具体而言,我们将原本的单库…

[SWPUCTF 2021 新生赛]easyrce

经典的RCE题目看到这个eval可以想到使用系统命令执行 我们查看当前文件夹下的文件只有index.php 一般放在/目录下 我们查看 看到一个类似flag的文件 我们查看cat找到flag

顺序表和链表对应的经典算法

一,移除元素 思路:定义一个循环遍历数组,如果遇到的不是val就记录下来这个元素,如果不是就跳过 定义两个指针,一个用于保留非val元素,一个用于遍历nums int removeElement(int* nums, int numsSize, int …

基于WordPress开发微信小程序1:搭建Wordpress

2年前,在知乎上提问:多数公司为什么宁愿自研也不用wordpress二次开发建站? - 知乎 (zhihu.com),收到了,很多回答 自己打算做一下提升,便有了自己基于wordpress开发微信小程序的想法 项目定位 基于wordpre…

ruoyi(若依)(el-menu也可参考)菜单栏过长显示省略号才显示气泡

一、背景 若依前后端分离的版本,新版本中优化了菜单名称过长悬停显示标题,但是是悬浮所有长度大于5的标题。可以查看提交记录:https://gitee.com/y_project/RuoYi-Cloud/commit/99932d91c0144da9f34f5bb05683cc0b86303217 但是我希望是只悬浮…

centos6和centos7无网络环境下安装fontconfig,配置中文字体

以centos6为例 1、查看系统版本 cat /etc/redhat-release 2、访问https://vault.centos.org下载相关rpm包 找到对应系统版本 3、下载相应的rpm包上传到服务器 dejavu-fonts-common-2.33-1.el6.noarch.rpm dejavu-sans-fonts-2.33-1.el6.noarch.rpm fontconfig-2.8.0-5.el6.…