转载请注明出处!本文连接及作者。不得用于商业用途!

http://hi.baidu.com/quantumcloud/blog/item/9156a6c584996c179c163d5b.html

BY:aiminickwong

最近我遇到很多朋友在问我vmware workstation 版本虚拟机的上网问题,在这里,我就针对这个问题做一些说明。

为了朋友们更好的理解VMware Workstation 版本虚拟机是如何连接网络的,下面我就对VMware的3种网络模型做一下相关的介绍。

1.首先,介绍一下VMware的几个虚拟的网络设备:

VMnet0 :

在桥接模式下的虚拟交换机

VMnet1 :

在Host-Only模式下的虚拟交换机

VMnet8 :

在NAT模式下的虚拟交换机

VMnet Network Adapter VMnet1 :

在Host-Only模式下,Host与Host-Only虚拟网络进行通信的虚拟网卡(这是在物理机上的虚拟网卡,跟虚拟机上的虚拟网卡不一样)

VMnet Network Adapter VMnet8 :

在NAT模式下,Host与NAT虚拟网络进行通信的虚拟网卡(这是在物理机上的虚拟网卡,跟虚拟机上的虚拟网卡不一样)

2.接下来,我对3种网络模型做一个介绍:

(1). Bridge Network 桥接网络


Bridge Network中,Host的物理网卡和Guest(Virtual machine)的虚拟网卡通过虚拟的网桥(Virtual bridge)桥接连接在Virtual Ethernet switch(VMnet0)虚拟交换机上。这里的虚拟机的虚拟网卡和刚才上面提到的VMnet Network Adapter VMnet1VMnet Network Adapter VMnet8是不一样的,VMnet Network Adapter VMnet1VMnet Network Adapter VMnet8物理机上的虚拟网卡,而这里的虚拟网卡是指虚拟机的虚拟网卡!(对于虚拟机的OS来说虚拟机系统认为虚拟机的虚拟网卡就是其虚拟系统的物理网卡)

你可以这样理解:

在桥接网络中,你物理机的真实网卡和你虚拟机的虚拟网卡在网络中的地位其实是一样的,即可以说虚拟机是和物理机处在同一个网段中的另外一台机器。

比如这是我的物理机,如下图,大家可以看到VMnet Network Adapter VMnet1和VMnet Network Adapter VMnet8还有我本机的网卡。

这是我本机(物理机)的真实物理网卡信息:

这是我虚拟机的虚拟网卡信息:

大家可以看到其实他们是在一个网段中的,我在路由上开启了DHCP,所以虚拟机通过DHCP获取到的IP和物理机是在同一个网段。这样虚拟机和物理机是在同一个网段,所以自然是可以上外网的。

他们之间当然也能互通:

虚拟机

到路由肯定也是通的:

本机到虚拟机:

(2). Network Address Translation (NAT) NAT网络

Network Address Translation (NAT)中,物理机(Host)上的虚拟网卡VMnet Network Adapter VMnet8连接到虚拟交换机VMnet8上,并不是直接连接到虚拟机上,而是通过VMnet8(虚拟交换机)与虚拟机所在的网段进行通讯,其VMnet Network Adapter VMnet8并不会为虚拟机所在的网段提供路由服务。在VMnet8(虚拟交换机)网段下的虚拟机而是通过虚拟的NAT服务器(正如上图中的NAT Device)连接到外网的。

我本机的VMnet Network Adapter VMnet8网卡信息:

这里我们没有看到网关,我用的是workstation 7.01的版本,其实她在这里可以看到:

在开始菜单找到:Virtual Network Editor

打开它,如下图,看到了吗,这几个虚拟设备都在这里:

找到VMnet8,选择NAT Settings,打开它:

看到了吗

其实这里他是一台虚拟的NAT服务器

现在我们看一下我虚拟机的网卡信息:

看到了吧,和物理机在一个网段!

呵呵,现在开始变得有意思了,我们ping一下。

物理机:

虚拟机:

虚拟机到网关:

看,通了!这个时候虚拟机也能上外网了!

VMnet Network Adapter VMnet8 的IP地址VMware在安装的时候自动随机指定的一个IP地址(不要修改VMnet Network Adapter VMnet8虚拟网卡所在的网络ID,这样可能造成Host和Guest无法通信),如果出现问题,大家可以在Virtual Network Editor中选择:

选择

来恢复默认值!

虚拟机中的IP是用过虚拟的DHCP服务器来分配的,这个虚拟的服务器其实只是系统中的一个服务,大家可以在系统服务中看到:

(开始菜单运行中键入:services.msc)

如果发现虚拟DHCP服务器出现问题,可以尝试重新启动该系统服务来解决问题。

在NAT模式的网络中,Guest的网关指向192.168.78.2,其实那个也是虚拟的NAT服务器的地址,这个虚拟的NAT服务器其实也只是一个系统服务:

如果发现虚拟NAT服务器出现问题(比如不能上网),可以尝试重新启动该系统服务来解决问题。

说来说去,VMnet Network Adapter VMnet8只是HostGuest网段通信的一个接口,即使你禁用掉VMnet Network Adapter VMnet8也不会影响Guest虚拟机上网的,只是这个时候Host无法与Guest网段进行通讯了,但是你的Guest仍然可以上网,因为这个模式下起作用的其实是2个系统服务,他们仍然在正常运行!

(3). Host-only Networking   Host-Only网络

Host-Only Networking 模式网络中,Host-Only网络是一个隔离的无法与外网通信的网络结构。Host-Only网络和NAT网络比较类似,不同之处就是在Host-Only模式下,没有使用NAT服务,VMnet1也没有连接到路由,所以不能访问到外网。而HostGuest则利用VMnet Network Adapter VMnet1 这块虚拟网卡进行彼此的通信。在这个模式下Guest通过虚拟的DHCP服务器获得IP,这一点和NAT模式是一样的。

这是我本机VMnet Network Adapter VMnet1的配置:

这是我虚拟的网卡信息:

看到没有他们在一个网段下,当然可以互访了。

我的物理机:

虚拟机:

Host-Only网络中,GuestDefault Gateway为空,因为虚拟NAT服务器,所以即使用route add添加路由,Guest也不能访问外网的。因为这个模式就是一个隔离的模式,即使一个isolated的网络。

当然网上有朋友说,可以在Host上来为VMware Network Adapter VMnet1虚拟网卡做路由,例如用RRAS来做,这样处于Host-Only网络下的Guest就又可以上外网了,她只需要使用route add自己的默认网关改成VMware Network Adapter VMnet1网卡地址即可。也兴趣的朋友也可以尝试一下。

3.Virtual Network Editor

其实很多设置都还可以在 Virtual Network Editor 中自定义,比如你可以修改你想要的网络ID,当然的记得如果你改了VMnet1 VMnet8VMnet Network Adapter VMnet1VMnet Network Adapter VMnet8 也要改为相同ID才行。

3.总结一下关于上网问题

其实看了上面的内容你会发现除了Host-Only模式不能上网以外,其他2中个方式都可以,大家在出现问题的时候不要急,冷静判断一下,找到是哪个地方的问题然后在逐一解决,本文意在抛砖引玉,虚拟机还有很多地方值得我们去研究。

4.还是无法上网!或者能上QQ不能打开网页!怎么办?

如果你仔细看完我上述的介绍,还是不能上网,而却你确信使用ping命令测试物理机和虚拟机之间是联通的,那就是你虚拟的DNS设置问题!

只需要改为正确的DNS即可!

方法如下:

查看你本机(物理机)的网卡连接信息,找到你的DNS地址,如上图我DNS是202.96.209.5/192.168.100.8,把你的虚拟及的DNS设置成和你的本机的DNS相同即可。

找到你的连接网卡:


右键打开属性设置,如上图

找到

选择“属性”

在下面填入你的DNS

就是在下图这个地方

保存即可生效。

如果你实在找不到你的DNS,那就打电话问问电信客户吧,他们会告诉你的,每个地方的DNS服务器地址是不一样的。

vmware网卡设置详解的更多相关文章

  1. VMware网络设置详解--不错

    我们知道,VMware Workstation提供了很多虚拟设备,利用这些设备,我们除了可以组建典型的桥接网络.仅主机网络.NAT网络外,还能组建复杂的自定义网络.本篇 目的就是让大家认识和掌握VMw ...

  2. VMware网络设置详解

    标签: 网络vmware虚拟机web服务network 2009-05-19 22:23 27537人阅读 评论(7) 收藏 举报 分类: 基于类linux的开发(171) 我们知道,VMwareWo ...

  3. linux网卡设置详解

    centos7安装之后是需要在网卡配置文件中开始网络连接 onboot =yes 刚开始时网卡获取IP模式是dhcp 你会发现ifconfig不能用,猜测是废弃了,你要yum install net- ...

  4. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  5. freebsd网卡驱动程序详解

    freebsd网卡驱动程序详解 来源 https://blog.csdn.net/h_cszc/article/details/7776116 /* 注释:xie_minix */ /*此处为BSD申 ...

  6. 【转】Eclipse Java注释模板设置详解

    Eclipse Java注释模板设置详解   设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后 ...

  7. Win7 NFS 设置详解 | X-Space

    Win7 NFS 设置详解 | X-Space Win7 NFS 设置详解

  8. [转]JAVA环境变量JAVA_HOME、CLASSPATH、PATH设置详解

    [转] JAVA环境变量JAVA_HOME.CLASSPATH.PATH设置详解 - dreamman的日志 - 网易博客http://blog.163.com/dreamman_yx/blog/st ...

  9. 绘制基本图形和线型(StrokeStyle)的设置详解

    绘制基本图形和线型(StrokeStyle)的设置详解 目前,在博客园上,相对写得比较好的两个关于Direct2D的教程系列,分别是万一的Direct2D系列和zdd的Direct2D系列.有兴趣的网 ...

随机推荐

  1. Txt格式配置表无法解析的问题——BOM

    今天再次遇到同一个问题:策划给来一个Txt格式配置表,我用解析类去读取,返回的结果为空.解析类参数是:主键key,文件名fileName,错误提示errorTip. 写读取语句的时候,主键key我是直 ...

  2. 黑马程序员----java基础笔记下(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 目录--- 21.字符编码 22.javaswig 事件 23.socket 网络通讯 24.网 ...

  3. if [ "$变量1"x = "$变量2"x ]中x的含义

    问题:if [ "$变量1"x = "$变量2"x ]中x的含义是? 答:“x”字符可以为任意字符,用于防止变量为空时,某些版本的bash中会产生错误: 在一个 ...

  4. SQL Server 2016五大优势挖掘企业用户数据价值

    SQL Server 2016五大优势挖掘企业用户数据价值 转载自:http://soft.zdnet.com.cn/software_zone/2016/0318/3074442.shtml 3月1 ...

  5. Visual Studio 2015 前端开发工作流

    Visual Studio 2015 CTP 5,全称为 Visual Studio 2015 Community Technology Preview 5,意为社区技术预览版,之前的版本为:Visu ...

  6. NodeJS入门(四)—— path对象

    很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...

  7. 理解C# 4 dynamic(3) – DynamicObject的使用

    上篇文章"理解C# 4 dynamic(2) – ExpandoObject的使用" 了解了ExpandoObject的基本使用. 但ExpandoObject的问题就是它是一个万 ...

  8. 剑指Offer面试题:5.重建二叉树

    一.题目:重建二叉树 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序 ...

  9. 《代码的未来》读书笔记:内存管理与GC那点事儿

    一.内存是有限的 近年来,我们的电脑内存都有好几个GB,也许你的电脑是4G,他的电脑是8G,公司服务器内存是32G或者64G.但是,无论内存容量有多大,总归不是无限的.实际上,随着内存容量的增加,软件 ...

  10. Javascript分号,加还是不加?

    关于这个问题,网上已经有很多人讨论过了,我先说说自己对这个问题的回答:加!(但非必须) 有些人写代码,懒得加分号,除非是迫不得已才勉强放一个分号上去.如果你可以保证你写的代码不出现任何 bug,那当然 ...