VMware虚拟机三种网络模式详解

news/2024/10/21 3:00:26/

主要内容

  • 1. 桥接模式
  • 2. NAT模式
    • VMware Network Adapter VMnet8虚拟网卡的作用
  • 3. 仅主机模式
    • VMware Network Adapter VMnet1虚拟网卡的作用
    • 设置虚拟机联通外网
  • 4. 总结

参考资料:
1.Vmware虚拟机三种网络模式详解
VMware虚拟机三种网络模式详解之Bridged(桥接模式)
VMware虚拟机三种网络模式详解之NAT(地址转换模式)
VMware虚拟机三种网络模式详解之Host-Only(仅主机模式)
以下部分截图来源上面的参考资料,仅用于学习记录。

vmware为我们提供了三种网络工作模式,它们分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式)
打开vmware虚拟机,可以在选项栏的“编辑”下的“虚拟网络编辑器”中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式),那么这些都是有什么作用呢?其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机VMnet1表示的是用于仅主机模式下的虚拟交换机VMnet8表示的是用于NAT模式下的虚拟交换机

1. 桥接模式

桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致
在这里插入图片描述

经测试,主机与虚拟机在桥接模式下可以互相ping通[如果请求超时,大概率是防火墙开着的原因]。
在主机上利用xshell[下载地址],通过ssh访问虚拟机,主机与虚拟机通信正常。
xshell连接显示Connect failed,应该是虚拟机端未安装OpenSSH服务器,ps:Windows中如何安装SSH

2. NAT模式

如果网络ip资源紧缺,但是又希望虚拟机能够联网,这时候NAT模式是最好的选择。NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。

NAT 是网络地址转换。这是一种协议,为公共网络上的多台计算机提供一种方式来共享到 Internet 的单一连接。(将私有IP地址转换为 公有IP地址,以便能够访问 Internet 。)
DHCP 是动态主机配置协议的缩写。其主要任务是自动为网络上的设备分配 IP 地址。它首先检查任何设备尚未占用的下一个可用地址,然后将其分配给网络设备。
以下图片来源于此处
在这里插入图片描述

NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。那么我们会觉得很奇怪,为什么需要虚拟网卡VMware Network Adapter VMnet8呢?原来我们的VMware Network Adapter VMnet8虚拟网卡主要是为了实现主机与虚拟机之间的通信
在这里插入图片描述

VMnet8子网地址:192.168.47.0,如下所示
在这里插入图片描述

NAT设置中,网关IP:192.168.47.2
在这里插入图片描述

DHCP设置中,IP地址的范围是192.168.47.128~192.168.47.254;默认租用时间是30min,最长租用时间是2h。
在这里插入图片描述

VMware Network Adapter VMnet8虚拟网卡的作用

禁用VMware Network Adapter VMnet8虚拟网卡之后,依然能ping通百度(外网),说明并不是通过VMware Network Adapter VMnet8虚拟网卡来连接外网。
经测试,将VMware Network Adapter VMnet8禁用之后,主机和虚拟机之间互相ping不通。
将VMware Network Adapter VMnet8禁用之后,发现远程工具XShell连接不上虚拟机;将VMware Network Adapter VMnet8启用之后,发现远程工具可以连接上虚拟机。因此,VMware Network Adapter VMnet8虚拟网卡是用来与虚拟机通信的
在这里插入图片描述

3. 仅主机模式

Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通信。仅主机模式下不能联网
VMnet1子网地址:192.168.208.0,DHCP设置中,IP地址的范围是192.168.208.128~192.168.208.254;默认租用时间是30min,最长租用时间是2h。
在这里插入图片描述

VMware Network Adapter VMnet1虚拟网卡的作用

经测试,设置为仅主机模式,主机和虚拟机之间可以互相ping通。将VMware Network Adapter VMnet1禁用之后,主机和虚拟机之间互相ping不通。
将VMware Network Adapter VMnet1禁用之后,发现远程工具XShell连接不上虚拟机;将VMware Network Adapter VMnet1启用之后,发现远程工具可以连接上虚拟机。因此,VMware Network Adapter VMnet1虚拟网卡是用来与虚拟机通信的
ps:此处虚拟网卡的作用同2中VMnet8。

设置虚拟机联通外网

仅主机模式,不能联通外网。要使得虚拟机能联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的。
共享方式如下,共享之后VMware Network Adapter VMnet1的IPv4地址为192.168.137.1
在这里插入图片描述

修改虚拟网络编辑器中VMnet1的子网地址,以及DHCP设置。
在这里插入图片描述

在虚拟机中进行配置
在这里插入图片描述

至此,仅主机模式也可以联通外网。

4. 总结

  • 桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。相当于插了一根网线
  • NET模式下,借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。可以不用手动配置IP。
  • 仅主机模式下,是NAT模式去除了虚拟NAT设备,然后使用VMware Network AdapterVMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通信。仅主机模式不能连接外网,除非将主机网卡共享给VMware Network Adapter VMnet1网卡,才能达到虚拟机联网的目的。

http://www.ppmy.cn/news/1540676.html

相关文章

基于SpringBoot的出租车拼车系统【附源码】

基于SpringBoot的出租车拼车系统 效果如下: 系统首页界面 用户注册界面 拼单信息界面 公告信息界面 管理员登录界面 管理员功能界面 用户界面 司机界面 拼车订单界面 拼单信息界面 拼单申请界面 司机主界面 研究背景 随着科学技术的不断发展,计算机现…

java关于如何实现读取各种类型的文件核心属性方法,比如获取标题和作者、主题等;附带远程的https的地址文件读取方法;

有两种方法: 通过提供的现成api进行调用读取pdf文件,或doc、xlsx、pptx文件;可能商业需要付费 https://www.e-iceblue.cn/pdf_java_document_operation/set-pdf-document-properties-in-java.html Spire.PDF for Java import com.spire.pdf…

electron-vite_11各平台 Electron 镜像存到哪里了?

建议设置了 NPM 镜像和 Electron 源;速度会快一点;electron-builder 在打包的时候,会根据系统的不同去各自的 NPM 缓存目录下查找对应版本的 Electron 源; 各操作系统对应的 NPM 缓存路径分别为: Linux: $XDG_CACHE_H…

六、存储过程和触发器及视图和临时表

一. 存储过程和触发器是数据库中用于实现复杂业务逻辑和自动化操作的重要工具。 下面是对存储过程和触发器的详细讲解和示例说明:存储过程: 存储过程是一组预定义的SQL语句,封装在数据库中并可通过名称调用。存储过程可以接受输入参数和输出…

【算法】深入理解布隆过滤器

1. 什么是布隆过滤器? 布隆过滤器(Bloom Filter)是一种空间效率极高的概率型数据结构,用于检测某个元素是否在一个集合中。与常见的数据结构如哈希表不同,布隆过滤器无法删除元素,并且会存在一定的误判率&…

市场上几个跨平台开发框架?

跨平台桌面应用开发框架是一种工具或框架,它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的桌面应用程序。传统上,开发者需要为每个操作系统编写不同的代码,使用不同的开发工具和语言。而跨平台桌面应用开发框架通过…

list(1)

list 大体上与之前学的string,vector类似&#xff0c;list不支持[]访问&#xff0c;擅长头插&#xff0c;头删&#xff0c;尾插&#xff0c;尾删&#xff0c;中间元素插入删除&#xff0c;因为list底层是双向循环带头链表 一段代码演示&#xff1a; #include <iostream>…

tftpd.exe开启调试

tftpd.exe开启调试 debugFlags设置为0xf开启debug 设置为0xf000f则开启debug和trace 第一部分&#xff1a; 位置 net/tcpip/services/tftpd/service.c if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "System\\CurrentControlSet\\Services\\Tftpd\\Paramet…