VMware虚拟机三种联网方法及原理(小结)

一、Brigde——桥接:默认使用VMnet0

1、原理:

Bridge 桥"就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在"桥"上,运行着程序,让局域网A中的所有数据包原封不动的流入B,反之亦然。这样,局域网A和B就无缝的在链路层连接起来了,在桥接时,VMWare网卡和物理网卡应该处于同一IP网段 当然要保证两个局域网没有冲突的IP.

VMWare 的桥也是同样的道理,只不过,本来作为硬件的一块网卡,现在由VMWare软件虚拟了!当采用桥接时,VMWare会虚拟一块网卡和真正的物理网卡就行桥接,这样,发到物理网卡的所有数据包就到了VMWare虚拟机,而由VMWare发出的数据包也会通过桥从物理网卡的那端发出。

所以,如果物理网卡可以上网,那么桥接的软网卡也没有问题了,这就是桥接上网的原理了。   

2、联网方式:

这一种联网方式最简单,在局域网内,你的主机是怎么联网的,你在虚拟机里就怎么连网。把虚拟机看成局域网内的另一台电脑就行了!

提示:主机网卡处在一个可以访问Internet的局域网中,虚拟机才能通过Bridge访问Internet。

二、NAT——网络地址转换:默认使用VMnet8

1、原理:

NAT 是 Network address translate的简称。NAT技术应用在internet网关和路由器上,比如192.168.0.123这个地址要访问internet,它的数据包就要通过一个网关或者路由器,而网关或者路由器拥有一个能访问internet的ip地址,这样的网关和路由器就要在收发数据包时,对数据包的IP协议层数据进行更改(即 NAT),以使私有网段的主机能够顺利访问internet。此技术解决了IP地址稀缺的问题。同样的私有IP可以网关NAT 上网。

VMWare的NAT上网也是同样的道理,它在主机和虚拟机之间用软件伪造出一块网卡,这块网卡和虚拟机的ip处于一个地址段。同时,在这块网卡和主机的网络接口之间进行NAT。虚拟机发出的每一块数据包都会经过虚拟网卡,然后NAT,然后由主机的接口发出。

虚拟网卡和虚拟机处于一个地址段,虚拟机和主机不同一个地址段,主机相当于虚拟机的网关,所以虚拟机能ping到主机的IP,但是主机ping不到虚拟机的IP。

2、联网方式:

方法1、动态IP地址。

主机是静态IP或动态IP,都无所谓,将虚拟机设置成使用DHCP方式上网,Windows下选择“自动获取IP“,linux下开启DHCP服务即可。(这种方法最简单,不用过多的设置,但要在VMware中进行“编辑→虚拟网络设置”,将NAT和DHCP都开启了。一般NAT默认开启,DHCP默认关闭)

方法2、静态IP地址。

如果不想使用DHCP,也可以手动设置: 

IP设置与vmnet1同网段,网关设置成vmnet8的网关(在“虚拟网络设置”里的Net选项卡里能找到Gateway)通常是xxx.xxx.xxx.2。

子网掩码设置与VMnet8相同(设置好IP地址后,子网掩码自动生成)

DNS设置与主机相同。

例如:主机IP是10.70.54.31,设置虚拟机IP为10.70.54.22。Netmask,Gateway,DNS都与主机相同即可实现 虚拟机 ---主机 虚拟机<---->互联网 通信。

提示:使用NAT技术,主机能上网,虚拟机就可以访问Internet,但是主机不能访问虚拟机。

三、Host-Only——私有网络共享主机:默认使用VMnet1

1、原理:

提供的是主机和虚拟机之间的网络互访。只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问Internet,就要采用这个设置了。

Host-only的条件下,VMWare在真正的Windows系统中,建立一块软网卡。这块网卡可以在网络连接中看到,一般是VMNET1,这块网卡的作用就是使Windows看到虚拟机的IP。

2、联网方法:

方法1、动态IP地址。

像上面那样开启DHCP后,虚拟机直接自动获取IP地址和DNS。就可以和主机相连了。当然,还要进行一些局域网共享的操作,这里不再赘述。

方法2、静态IP地址。

也可以手动设置,将虚拟机IP设置与VMnet1同网段,网关设置成VMnet1的网关相同,其余设置与VMnet1相同,DNS设置与主机相同。

例如:VMnet1 IP:172.16.249.1 Gateway :172.16.249.2

那么虚拟机 IP:172.16.249.100 Gateway: 172.16.249.2

这样、 虚拟机<--->主机 可以通信
但是、 虚拟机<--->互联网 无法通信

提示:Host-only技术只用于主机和虚拟机互访,于访问internet无关。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 电脑意外关机后VMware中linux不能联网问题的解决方法

    问题描述:之前已经配置过linux系统的网卡文件/etc/sysconfig/network-scripts/ifcfg-eth0了,依靠NAT服务能正常访问外网.但在电脑意外关机,导致VMware被强制关闭后,再次开机启动VMware时,发现用远程连接工具并不能连接到虚拟机中的linux,而且在cmd和虚拟机中互相ping对方ip地址,发现并不能ping通同时linux也不能访问外网. 解决办法:目前发现的解决办法有两个 (1)在关闭linux系统后,点击VMware中菜单栏中"编辑"

  • VMware虚拟机系统无法使用桥接联网的解决方法

    VMware虚拟机系统无法使用桥接联网的解决方法,供大家参考,具体内容如下 1.环境 VMware 14.1.1 虚拟系统:Windows Server 2008 32位 2.解决办法 打开虚拟网络编辑器 有红框中的提示出现时,就点击更改设置 点击桥接模式,在VMnet信息中选择桥接到的网卡,选择主机当前连接到网络使用的网卡即可. 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

  • VMware虚拟机三种联网方法及原理(小结)

    一.Brigde--桥接:默认使用VMnet0 1.原理: Bridge 桥"就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在"桥"上,运行着程序,让局域网A中的所有数据包原封不动的流入B,反之亦然.这样,局域网A和B就无缝的在链路层连接起来了,在桥接时,VMWare网卡和物理网卡应该处于同一IP网段 当然要保证两个局域网没有冲突的IP. VMWare 的桥也是同样的道理,只不过,本来作为硬件的一块网卡,现在由VMWare软件虚拟了!当采用桥接时,VMWare

  • VMware虚拟机三种网络模式区别

    我们知道VMware也分几种版本,普通用户最常用的就是Workstation,但是不管使用哪种版本,我们都能发现在安装过程中让我们选择 网络模式.在默认情况下会选中桥接模式,但有用户会问其他模式是干什么用的?有时候选择了其他模式之后就不能上网了.今天小编就和大家一起探讨一下 VMware 3种网络模式的功能和通信规则. 我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络下的虚拟交换机 VMnet8:用于虚拟NAT网

  • VMware虚拟机三种连接方式实例解析

    NAT 这种方式下,虚拟机的网卡连接到宿主的 VMnet8 上.此时系统的 VMWare NAT Service 服务就充当了路由器的作用,负责将虚拟机发到 VMnet8 的包进行地址转换之后发到实际的网络上,再将实际网络上返回的包进行地址转换后通过 VMnet8 发送给虚拟机.VMWare DHCP Service 负责为虚拟机提供 DHCP 服务. Bridged 这种方式下,虚拟机就像一台真正的计算机一样,直接连接到实际的网络上,与宿主机没有任何联系. Host-only 这种方式下,虚拟

  • VMware的三种网络连接方式区别

    关于VMware的三种网络连接方式,NAT,Bridged,Host-Only ,在刚接触的时候通常会遇到主机Ping不通虚拟机而虚拟机能Ping得通主机:主机与虚拟机互不相通等等网络问题.本文就这三种连接方式作一一说明,也方便以后翻阅当参考用. 首先,要注意安装完VMware后,控制面板\网络和 Internet\网络连接会多出两块虚拟网卡VMnet1.VMnet2,两个网卡各有用途. 基本拓扑 NAT(网络地址转换) 依靠物理主机的VMnet8网卡上网.虚拟机可以互Ping通,前提是物理主机

  • JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法

    1.Object类 在JS中,Object是所有类的基类,使用Object类来创建自定义对象时,可以无需定义构造函数(constructor,prototype,hasOwnProperty(property)) var per = new Object(); per.name = 'zhangsan'; per.age = ; alert(per.name + per.age); 我们想在程序中得到一个对象变量,只要能存储大量数据即可,这个时候,我们可以考虑使用Object类.Object类避

  • Vue 计算属性之姓名案例的三种实现方法

    目录 一.姓名案例-插值语法实现 二.姓名案例-methods实现 三.姓名案例-计算属性实现 四.计算属性简写 效果: 一.姓名案例-插值语法实现 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Vue初识</title> <script type="text/javascript&qu

  • C语言中函数指针的三种使用方法总结

     C语言中函数指针的三种使用方法总结 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正.写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使彼此更加成长. 定义方式:int (*p)(int x, int y); 实现代码: #include <stdio.h> int sum(int x, int y){ return x + y; } int reduce(int x, int y){ return x - y; } int

  • ajax 三种实现方法实例代码

    ajax即异步的javascript and xml, 本文章向码农们介绍ajax的三种实现方法(prototype实现,jquery实现,XMLHttpRequest实现) 本文主要是比较三种实现Ajax的方式,为以后的学习开个头. 准备: 1.  prototype.js 2.  jquery1.3.2.min.js 3.  json2.js 后台处理程序(Servlet),访问路径servlet/testAjax: Java代码 package ajax.servlet; import j

  • spring与mybatis三种整合方法

    1.采用MapperScannerConfigurer,它将会查找类路径下的映射器并自动将它们创建成MapperFactoryBean. spring-mybatis.xml: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3

  • JavaScript定义函数的三种实现方法

    JavaScript定义函数的三种实现方法 [1]正常方法 function print(msg){ document.write(msg); } 对函数进行调用的几种方式: 函数名(传递给函数的参数1,传递给函数的参数2,-.) 变量 = 函数名(传递给函数的参数1,传递给函数的参数2,-.) 对于有返回值的函数调用,也可以在程序中直接使用返回的结果,例如:alert("sum=" + square(2,3)); 不指定任何函数值的函数,返回undefined. [2]构造函数方法 

随机推荐