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 虚拟机网络通讯的更多相关文章

  1. VMWare虚拟机网络的三种工作模式

    VMWare提供了三种工作模式: 1.bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器.在桥接模式下,需要手工为虚拟系 ...

  2. Vmware虚拟机网络模式及虚拟机与物理机通信方法

    [转]http://www.cqeis.com/news_detail/newsId=1477.html Vmware虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Wind ...

  3. VMWare虚拟机 网络连接模式

    这个是rocks 群里面我的一个朋友分享的,我觉很好而且描述的很清楚,这是一个做事的态度问题.   1 VMWare虚拟机bridged.host-only和NAT网络模式的区别和用法 VMWare提 ...

  4. vmware虚拟机网络自动断开的问题

    最近搭建一个集群环境,因此用vmware安装了几台虚拟机,系统是centos7.2. 但是发现网络总是不经意间自动断开,重启网络(service network restart)恢复. 虚拟机网络类型 ...

  5. VMware虚拟机网络环境类型

    0x01. VMware Ubuntu虚拟机网络环境 ① Bridge桥接模式:虚拟机与物理机的IP同在一个网段:虚拟机独立且地位与物理机相同:虚拟机可直接访问物理机以及物理机相连的外部网络的主机或网 ...

  6. VMware 虚拟机网络 组网问题

    1.VMware虚拟机组网概述 整个结构: 需要确定的内容: 1) 虚拟机连接到哪个VMnet(交换机)? 2) VMnet(交换机)的组网模式? 首先,讲一下VMware的界面内容 安装好VMwar ...

  7. 解决VMware虚拟机网络时长中断的问题

    1. 操作环境 VMware VMware® Workstation 14 Pro Windows Win7旗舰版 2. 操作过程   VMware虚拟机在使用一段时间后,经常会出现时常断网的情况,而 ...

  8. VMware虚拟机网络配置详解

    VMware网络配置:三种网络模式简介 安装好虚拟机以后,在网络连接里面可以看到多了两块网卡: 其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,这些后面会 ...

  9. VMware虚拟机网络设置

    背景介绍 在用 VMware workstation 安装好虚拟机后,需要给虚拟机配置网络,配置网络的方法有桥接.NAT.    采用桥接的方法需要占据物理机网段的ip地址,可能会与物理机同一网段的其 ...

随机推荐

  1. 【NX二次开发】Block UI 截面构建器

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...

  2. java面试技巧及层次。

    不断的积累,从打算找工作之日起,就要坚持在每天闲暇之余学习其中几道题目,日积月累,等到出去面试时,一切都水到渠成,面试时就自然会游刃有余了. 答题时,先答是什么,再答有什么作用和要注意什么,这里给人的 ...

  3. 【模拟8.11】星空(差分转化,状压DP,最短路)

    一道很好的题,综合很多知识点. 首先复习差分:      将原来的每个点a[i]转化为b[i]=a[i]^a[i+1],(如果是求和形式就是b[i]=a[i+1]-a[i]) 我们发现这样的方便在于我 ...

  4. STL----vector注意事项

    开vector时要注意内存容易炸 最好的办法就是在开vector之后,对他进行一步操作 vector<int> a; a.resize(n); n就是你要开的数组的大小,此时数组里已经插入 ...

  5. 【TCP/IP】TCP服务器并发处理&源码

    前言 本笔记记录的是 单个服务端并发式处理多个客户端. 下次有空在发个 单线程多个服务端并发式处理多种客户端.其实就是本笔记的一个改良版,用到select() / poll() / epoll(). ...

  6. sql循环说明

    while循环:主要是判断,不能使用表中的ID,临时表是ID自增的,通过自增ID可以查出表ID(语法简单,需要配合其他代码操作表ID)游标循环:可以使用表中的ID ,进行修改等操作(语法难一点,核心代 ...

  7. 解决“与 Microsoft Exchange 的连接不可用,Outlook 必须联机或已连接才能完成此操作”

    Microsoft Outlook 是一种用于发送和接收电子邮件的应用程序.由于其可靠性和各种使用类型,它在企业公司中非常受欢迎.Outlook 还可用于管理各种类型的个人数据,如日历约会.联系人.邮 ...

  8. Pytest学习笔记8-参数化

    前言 我们在实际自动化测试中,某些测试用例是无法通过一组测试数据来达到验证效果的,所以需要通过参数化来传递多组数据 在unittest中,我们可以使用第三方库parameterized来对数据进行参数 ...

  9. 2、SpringBoot整合之SpringBoot整合servlet

    SpringBoot整合servlet 一.创建SpringBoot项目,仅选择Web模块即可 二.在POM文件中添加依赖 <!-- 添加servlet依赖模块 --> <depen ...

  10. 去除office自动生成目录后生成的小框框(内容控件,目录控件)

    如何自动生成目录在这里就不进行阐述了,想必能看到这这里的人已经完成了目录的自动生成,那我就来直接演示如何去除自动生成目录后烦人的目录内容控件吧 直接上图片