VMware虚拟机三种连网原理简介

一、前言

        虚拟机(Virtual Machine),在计算机科学中的体系结构里,是指一种特殊的软件,可以在计算机平台和终端用户之间创建一种环境,而终端用户则是基于这个软件所创建的环境来操作系统软件。虚拟机根据它们运用和与直接机器的相关性分为两大类。系统虚拟机和程序虚拟机,系统虚拟机提供一个可以运行完整操作系统的完整系统平台,系统虚拟机如:VirtualBox ,VMware,等。程序虚拟机为运行单个计算机程序设计,程序虚拟机如:Java虚拟机(JVM)等。在windows平台,对于大多数个人用户而言,基本上是使用VMware,VirtualBox来搭建虚拟机,无论选用那种软件安装虚拟机,基本上都是三种连网方式,桥接(bridge),仅主机(host-only),NAT。桥接模式直接连接到物理网络,NAT模式用于共享主机ip地址,仅主机模式是宿主机和虚拟机专用网络。无论仅主机和NAT连网方式中,VMware都提供了DHCP服务。

 

二、虚拟机连网方式

2.1:桥接连网方式    

        VMware中提供的第一个连网方式。虚拟机通过其网卡桥接到宿主机活动网卡中,可给虚拟机手动分配一个和网络主机同一网络的ip地址。宿主机和其它设备通信时需要通过宿主机的活动网卡把数据转发出去,大体原理如下图所示:
1438236716280493.jpg

        虚拟机(guestA,guestB)通过各自的活动的虚拟网卡和宿主机hostA的活动网卡eth0相连,此时guestA,guestB与hostA同处于相同的网络,guestA,guestB对外通信时经过宿主机的eth0出去,但对于hostA之外的其它设备来讲,guestA和guestB如同接在同一个交换机下,并不知道其是否为虚拟机。当guestA访问guestB时,数据包从宿主机的eth0网卡出去,经过物理交换机Switch又返回到宿主机hostA的eth0网卡,hostA的eth0网卡再把数据包发往guestB。

2.2:仅主机连网方式

        VMware提供的第二种连网方式。虚拟机(guestA,guestB)通过各自的活动的虚拟网卡和VMware虚拟出的虚拟交换机连接,且虚拟交换机和虚拟网卡Vritual net1连接,Vritual net1是VMware专门虚拟出来用于仅主机连网方式的虚拟网卡。大体原理如下图:

1438237372966536.jpg

        虚拟机(guestA ,guestB)通过各自活动的虚拟网卡(eth0)连接到VMware虚拟出来的虚拟交换机端口上,其中某个虚拟交换机的端口和Virtual net1相连,虚拟机和宿主机可以双向通信,但虚拟机(guestA,guestB)不能和宿主机以为的其它主机通信。

2.3:NAT连网方式

        VMware提供的第三种连网方式,在仅主机的基础上(此时虚拟交换机连接的虚拟网卡不是Virual net1,而是Virtual net8),Virtual net8通过NAT地址转换方式把数据报发往宿主机(hostA)的eth0网卡,经由宿主机(hostA)的eth0网卡转发虚拟机(guestA,guestB)的报文出去。此时虚拟机可以和网络内的任一台主机通信。大体原理如下图:

1438237842550576.jpg

        在仅虚拟机连网的基础上,Virtual net8通过NAT方式把报文发给物理机的eth0网卡,借它通往外界,虚拟机此时和外网是相同的。

 

三、小结

        在windows平台下使用VMware连网时,三种连网方式各有其特点,对外虚拟机对外通信必过宿主机的活动的网卡。

原创文章,作者:成吉思汗,如若转载,请注明出处:http://www.178linux.com/6701

(1)
成吉思汗成吉思汗
上一篇 2015-08-03 00:04
下一篇 2015-08-04 12:45

相关推荐

  • N25第四周总结

    linux bassic Week 4 Blogging 1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel/   /home/tuser1/ ~]# chmod&n…

    Linux干货 2016-12-26
  • http加速器varnish

    一、web缓存概述       缓存,又称加速器,用于加速运行速度较快的设备与较慢设备之间的通信。基于程序的运行具有局部性特征其能实现加速的功能:       时间局部性:一个数据被访问之后,在随后较短的时间内有可能被访问。   &nbsp…

    2016-11-18
  • NFS,samba,vsftpd的基本使用

    一.NFS介绍 NFS(Network File System),全名叫做网络文件系统,是由SUN公司研发的。顾名思义,简单理解就是通过网络互联,将本地的文件系统共享出去,从而实现资源的共享,NFS监听在TCP的2049端口上。当涉及到主机之间的通信时,就会存在安全问题,于是为了安全考虑,主动提出请求的一方(客户端)需要提供一些基本信息来认证,这些信息是需要…

    Linux干货 2017-01-04
  • Linux系统上命令的使用格式与十二个常用命令详解

    Linux系统上命令的使用格式 命令的语法通用格式: ~]# COMMAND OPTIONS ARGUMENTS 例如: ls -ld /var COMMAND(命令): ls ls命令用来显示目标列表 OPTIONS(选项): -ld -ld 是 -l -d 的简写 -l 以详细格式列表 -d 仅列目录 ARGUMENTS(参数): /var 命令对这个/…

    2018-02-26
  • linux下find(文件查找)命令的详解

    文件查找命令locate和find详解 locate 配合数据库缓存,快速查看文件位置,非实时查找( 数据库查找) find 实际搜寻硬盘查询文件名称 ,实时查找 locate简介 locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locat…

    Linux干货 2016-08-18
  • N28-第二周

    1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
    2. bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
    3. 請使用命令行展開功能來完成以下練習:
    (1) 創建/tmp目錄下的a_c、a_d、b_c、b_d。
    (2) 創建/tmp/mylinux目錄下的bin、boot/grub、dev、etc/rc.d/init.d、etc/sysconfig/network-scripts、lib/modules、
    lib64、proc、sbin、sys、tmp、usr/local/bin、usr/local/sbin、var/lock、var/log、var/run目錄。
    4. 如何查看文件的元數據,其信息有哪些,分別表示什麼含意?如何修改文件的時間戳信息?
    5. 如何定義一個命令的別名?如何在命令中引用另一個命令的執行結果?
    6. 顯示/var目錄下所有以L小寫開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
    7. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
    8. 顯示/etc目錄下,以非字母開頭,後面跟了一個字母以及其他任意長度任意字符的文件或目錄。
    9. 在/tmp目錄下創建以tfile開頭,後跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10. 複製/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
    11. 複製/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
    12. 複製/etc目錄下所有以L小寫或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    Linux干货 2017-12-14