Vmware 虚拟机网络通讯
VMware Workstation(中文名“威睿工作站”)是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。其使用过程中的网络连接是一个比较重要的问题,笔者本文针对VM的网络通信的几种不同情况加以说明。
1、三种通信模式简介
打开VMware的虚拟网络编辑器,可以发现有三种网络连接类型,别为桥接模式,仅主机模式,NAT模式,其对应的名称依次为VMnet0,VMnet1,VMnet8,如下图所示。

从图中可以看到桥接对外通过本机网卡Realtec***可以实现外网访问,主机模式外部连接为 - 不能实现外网访问 ,NAT模式可以通过NAT来实现外网访问。
笔者台式机A通过静态ip和本地局域网连接,虚拟机B通过仅主机模式进行网络连接,虚拟机C通过NAT方式进行网络连接,各系统间网络连接和通信情况如下表所示:
--------------------- 
当A为静态时候,若存在D为桥接模式,那么网络启动会失败(通常表现为2、常见问题中的1)),导致无法虚拟机分配IPv4网络,从而D无法访问外网,也无法和上述ABC通信,由于没有IPv4导致ABC也无法和D通信。
以下1)、2)、3)内容来源于博文 Linux虚拟机的三种网络连接方式,该文总结的比较到位,笔者就不画蛇添足了。
1)桥接:
桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,所以两个网卡的IP地址也要设置为同一网段。所以当我们要在局域网使用虚拟机,对局域网其他pc提供服务时,例如提供ftp,提供ssh,提供http服务,那么就要选择桥接模式。
2)NAT模式
NAT模式中,就是让虚拟机借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。NAT模式中,虚拟机的网卡和物理网卡的网络,不在同一个网络,虚拟机的网卡,是在vmware提供的一个虚拟网络。
NAT和桥接的比较:
(1) NAT模式和桥接模式虚拟机都可以上外网。
(2) 由于NAT的网络在vmware提供的一个虚拟网络里,所以局域网其他主机是无法访问虚拟机的,而宿主机可以访问虚拟机,虚拟机可以访问局域网的所有主机,因为真实的局域网相对于NAT的虚拟网络,就是NAT的虚拟网络的外网,不懂的人可以查查NAT的相关知识。
(3) 桥接模式下,多个虚拟机之间可以互相访问;NAT模式下,多个虚拟机之间也可以相互访问。
如果你建一个虚拟机,只是给自己用,不需要给局域网其他人用,那么可以选择NAT,毕竟NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,只要虚拟机的网路配置是DHCP,那么你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可,就可以让虚拟机联网了。
3)仅主机模式
在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMware Network Adepter VMnet1虚拟网卡来实现的。Host-Only的宗旨就是建立一个与外界隔绝的内部网络,来提高内网的安全性。这个功能或许对普通用户来说没有多大意义,但大型服务商会常常利用这个功能
2、常见问题
该章节主要记录笔者使用时候遇见的一些问题,以及解决方案,后续遇到新问题都会在此处续更。
1)登录Ubuntu系统时候出现A start job is running for Raise network interfaces(xxs /5min xxs)
如下图所示出现该问题后,系统需要等待5min 3s后才能进入系统中,进入后也无法上网且没有分配ipv4地址,该问题产生的原因为网络服务服务没有正常启动,直到网络启动最大时间到达后才启动系统,系统启动后也无法正常分配ipv4地址,导致无法联网,也无法和局域网内机器互ping。
其解决方法为:将本机电脑连接到某个局域网或者路由器,然后本机使用动态分配ip的方法即可正常给虚拟机分配ip,重启虚拟机就不会出现该问题;若本机必须使用静态ip连接到外部网络中,则可以使用nat的方法进行网络连接,也可解决该问题其正常访问网络。
注:笔者在网上看到有相当一部分博文介绍修改参数使Raise network interfaces最长时间缩短,使用参数修改的方法笔者试了一下没有成功,且修改参数也没有解决后续无ipv4的问题,治标不治本,笔者几次尝试后发现该方法可以解决上述问题。若有更好的方法还请留言,以便于相互学习。
2)桥接模式无法上网排查方法
首先查看service中的dhcp、nat等服务是否开启,若未开启则手动开启;其次查看本机是否为静态ip,若本机为静态ip则使用nat方式连接外网。
3)本机没有任何外网连接的情况下建立主机和虚拟机之间的网络通信方法
该情况下无法正常桥接,需要使用host only方法,可为虚拟机建立静态ip,具体方法如下:
当电脑无任何网络的连接的时候,使用nat启动时候也会出现A start job is running for Raise network interfaces(xmin xs / 5min xs)的异常,登录后发现ens33无ipv4网络,此时可以通过配置host only实现网络访问,并且可以使用shell登录主机。
其设置方法为:修改/etc/network/interfaces 配置文件
auto ens33
#iface ens33 inet dhcp #将此处屏蔽,笔者服务器默认网络没春节后为ens33,其它版本系统可能不完全相同,但是只需要更改其对应的内容即可
iface ens33 inet static #新添加内容
address 169.254.78.152 #新添加内容
修改后重启虚拟机,ens33就可以正常分配ip了,windows下可以通过ssh等工具访问虚拟机了,下图左边为windows下cmd的ipconfig网络信息,右图为host only模式下ifconfig的网络信息。

需要注意的是此处address必须和windows下ipconfig中VMnet8(host only)的网段相同,否则无法访问。
4)VMware DHCP Service和VMware NAT Service的服务项找不到
出现该问题后,不论net还是桥接都无法动态分配ip,即都无法正常通信,此时只需要恢复虚拟机默认的VMnet配置即可,方法如下:vmware菜单栏——编辑——虚拟网络设置——(左下角)还原默认配置,还原后正常情况下vmnet0-1-8都会重新配置,如果没哟重新配置就重启电脑,重启不成功的话就只有重装下VM了;笔者在win10+vm12pro上亲测可用。
参考文献:
Linux虚拟机的三种网络连接方式:https://blog.csdn.net/jx232515/article/details/51892106
实例讲解虚拟机3种网络模式(桥接、nat、Host-only):http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646007.html
Vmware 虚拟机网络通讯的更多相关文章
- VMWare虚拟机网络的三种工作模式
VMWare提供了三种工作模式: 1.bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器.在桥接模式下,需要手工为虚拟系 ...
- Vmware虚拟机网络模式及虚拟机与物理机通信方法
[转]http://www.cqeis.com/news_detail/newsId=1477.html Vmware虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Wind ...
- VMWare虚拟机 网络连接模式
这个是rocks 群里面我的一个朋友分享的,我觉很好而且描述的很清楚,这是一个做事的态度问题. 1 VMWare虚拟机bridged.host-only和NAT网络模式的区别和用法 VMWare提 ...
- vmware虚拟机网络自动断开的问题
最近搭建一个集群环境,因此用vmware安装了几台虚拟机,系统是centos7.2. 但是发现网络总是不经意间自动断开,重启网络(service network restart)恢复. 虚拟机网络类型 ...
- VMware虚拟机网络环境类型
0x01. VMware Ubuntu虚拟机网络环境 ① Bridge桥接模式:虚拟机与物理机的IP同在一个网段:虚拟机独立且地位与物理机相同:虚拟机可直接访问物理机以及物理机相连的外部网络的主机或网 ...
- VMware 虚拟机网络 组网问题
1.VMware虚拟机组网概述 整个结构: 需要确定的内容: 1) 虚拟机连接到哪个VMnet(交换机)? 2) VMnet(交换机)的组网模式? 首先,讲一下VMware的界面内容 安装好VMwar ...
- 解决VMware虚拟机网络时长中断的问题
1. 操作环境 VMware VMware® Workstation 14 Pro Windows Win7旗舰版 2. 操作过程 VMware虚拟机在使用一段时间后,经常会出现时常断网的情况,而 ...
- VMware虚拟机网络配置详解
VMware网络配置:三种网络模式简介 安装好虚拟机以后,在网络连接里面可以看到多了两块网卡: 其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,这些后面会 ...
- VMware虚拟机网络设置
背景介绍 在用 VMware workstation 安装好虚拟机后,需要给虚拟机配置网络,配置网络的方法有桥接.NAT. 采用桥接的方法需要占据物理机网段的ip地址,可能会与物理机同一网段的其 ...
随机推荐
- 【NX二次开发】切换模块的方法,切换到制图模块
源码(NX12.0): Session theSession = NXOpen::Session::GetSession(); theSession->ApplicationSwitchImme ...
- NX二次开发-向量乘矩阵的几何意义
函数:UF_MTX3_vec_multiply_t() 或者UF_MTX3_vec_multiply().推荐使用UF_MTX3_vec_multiply_t() 函数说明:将向量按照矩阵进行变换:绝 ...
- 【NX二次开发】获取用户输入的字符串uc1603
效果: 源码: extern DllExport void ufsta(char *param, int *returnCode, int rlen) { UF_initialize(); strin ...
- MySQL进阶:主主复制+Keepalived高可用
Blog:博客园 个人 概述 mysql主主复制 所谓主主复制,即双主备份,或者叫互作主从复制,每台master既是master,又是slave.这种方案,既做到了访问量的压力分流,同时也解决了单点故 ...
- 用Python爬取分析【某东618】畅销商品销量数据,带你看看大家都喜欢买什么!
618购物节,辰哥准备分析一波购物节大家都喜欢买什么?本文以某东为例,Python爬取618活动的畅销商品数据,并进行数据清洗,最后以可视化的方式从不同角度去了解畅销商品中,名列前茅的商品是哪些?销售 ...
- 空指针的解决方案Optional包装类
有道云笔记地址 (建议有道云打开,markdown文档,直接拷贝过来有一些问题) 引言 在java的开发中,有一个问题始终会伴随着开发的进程.记得我第一个项目的时候,有一个同事在评论我的代码的时候说到 ...
- MQTT 协议是个啥?这篇文章告诉你!
文章首发于我的公众号「程序员cxuan」,欢迎大家关注呀- 说到做到! 之前有位读者给我留言说想要了解一下什么是 MQTT 协议,顺便还把我夸了一把,有点不好意思啦. 那么读者的要求必须要满足啊,所以 ...
- NOIP模拟测试6「那一天我们许下约定(背包dp)·那一天她离我而去」
那一天我们许下约定 内部题,题干不粘了. $30分算法$ 首先看数据范围,可以写出来一个普通dp #include<bits/stdc++.h> #define ll int #defin ...
- linux安装配置交叉编译器arm-linux-gnueabi-gcc
要使我们在x86架构下运行的程序迁移至ARM架构的开发板中运行时,需要通过交叉编译器将x86下编写的程序进行编译后,开发版才能运行. 在安装之前我们需要了解,什么是交叉编译器. 一.下载交叉编译器 这 ...
- QTreeView 使用 QStandardItemModel
QTreeView 使用 QStandardItemModel @ 目录 QTreeView 使用 QStandardItemModel 前言 一.直接上图 二.添加同级结点项 1.思路 2.实现 二 ...