理解Vmware虚拟机的网络模式

虚拟网络组件介绍

在这之前,我们先理解下虚拟网络组件是什么:

虚拟网络组件包含:

(1)虚拟交换机(virtual switches)

像物理交换机一样,虚拟交换机将虚拟网络连接在一起,故而也被称为虚拟网络

命名方式VMnet0,VMnet1,VMnet......以此类推,默认情况下在vm里面已经有一些映射如下:

网络类型

交换机名字

桥接

VMnet0

NAT

VMnet8

Host-only

VMnet1

在windows系统我们最多可以创建20个虚拟交换机,在linux上我们可以创建最多255个虚拟交换机。

此外在windows上连接交换机的虚拟网络设备的数量是没有限制的,在linux上每一个虚拟交换机最多只能有

32个虚拟网络设备可以连接。

注意:在linux系统上,虚拟交换机的名字必须全部小写

(2)虚拟网络适配器(virtual network adapters)

当你新创建一个虚拟机的时候,向导将会为这个虚拟机创建一个虚拟网络适配器。

虚拟网络适配器(网卡)的类型常见的有:

AMD PCNET PCI adapter

Intel Pro/1000 MT Server Adapter

在vm3.x之后,虚拟机最多可以有10个网络适配器

(3)动态主机配置协议(DHCP=>Dynamic Host Configuration Protocol)

当网络模式非桥接的时候,DHCP可以分配ip地址给虚拟机,通常是在NAT和Host-only模式下使用

(4)网络地址转换设备(DAT=>Network Address Translation)

通过NAT设备可以将一个或者多个虚拟机的发送的网络包数据转换成主机的ip地址后发送给外网,并负责接收外网的数据,然后正确识别区分后,发送给要发送的虚拟机里面。

虚拟网络介绍

在vm里面我们可以使用Vmware Workstation提供三种网络模式,分别是:

(1)桥接模式(bridged networking)

桥接模式是简单的一种网络模式,它的虚拟交换机使用的是VMnet0,这种模式下只要我们的

主机可以上网,那么创建出来的虚拟机也可以直接上网,适合ip资源比较充足的场景。

在桥接模式下,虚拟机通过虚拟网络适配器连接到物理机的网络适配器从而使虚拟机可以连接到物理机所在的局域网(LAN=>local area network),桥接网络可以用于无线和有线的网络适配器。

在这种情况下,虚拟机和物理机同处于一个网段中

物理机ip:192.168.10.12
虚拟机ip:192.168.10.68

,物理机能访问的所有的机器,虚拟机一样可以访问,同理所有所有外网的机器也可以访问虚拟机。

拓扑如下:

image

(2)NAT模式(networking address translation)

NAT模式下,虚拟机没有自己的外网ip,而是基于主机构建了一段私有网络,默认情况下,虚拟机在这段私有网络中通过DHCP服务获的自己的ip地址。

这时候虚拟机和主机同享一个网络身份,此时虚拟机对外网是不可见的。但是通过NAT设备,虚拟机可以访问外网,也就是说虚拟机和虚拟机,虚拟机和主机,虚拟机和外网都是通的,但是外网到虚拟机是不通的,想要外网能访问虚拟机只能通过主机端口转发到虚拟机这种取巧的方式来实现。

虚拟机能访问外网的原因是,虚拟机发送的网络包,会被NAT设备转化为主机的ip然后向外发送,同理,在虚拟机接受数据的时候,也由NAT设备先识别是发送到那一台虚拟机后,在正确的传输到该虚拟机上。

拓扑:

image

NAT模式下,主机和虚拟机不在一个网段下:

主机:192.168.10.150
虚拟机:192.168.200.164

(3)主机共享模式(host-only)

主机共享模式通常用来当你想要隔离一个虚拟的网络段的时候使用,主机和虚拟机通过虚拟网络适配器连接到一个私有的以太网网络,这个网络完整的包含在宿主机内。

这个时候虚拟机和主机是互动的通过虚拟网络适配器,虚拟机的ip地址由DHCP提供。默认情况下,虚拟机是不能

访问外网的,不过我们可以通过合理的配置路由或者一些代理技术来达到这一目的。

主机:192.168.10.150
虚拟机:192.168.150.164

拓扑:

image

参考链接:

https://docs.vmware.com/en/VMware-Workstation-Player/12.0/com.vmware.player.win.using.doc/GUID-FC54BCB2-9529-4FA8-9BD7-613BFFD4E103.html

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IT笔记

Maven初探-如何快速入手一个项目

这已是一个工具的时代,而不是一个到处搜集JAR的年代,如果还在为搭建一个项目而到处找依赖,那你就彻底OUT了。下面,跟各位一起重温学习下Maven。 什么是Ma...

2769
来自专栏张戈的专栏

Nginx-helper纯代码版,文章评论发布自动清理Fastcgi缓存

摘 要 张戈博客之前分享过Nginx开启fastcgi静态缓存加速的教程,文中也提到了WordPress对应的最佳配套插件:Nginx-Helper。本文分享...

3937
来自专栏乐沙弥的世界

VmWare6.5.2下安装RHEL 5.4(配置Oracle安装环境)

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2009/10/04/4632312.aspx

1092
来自专栏耕耘实录

Linux(RHEL7及CentOS7)下DNS服务器的搭建与配置

版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢。

4624
来自专栏从零开始学自动化测试

Selenium2+python自动化72-logging日志使用

前言 脚本运行的时候,有时候不知道用例的执行情况,这时候可以加入日志,这样出现问题后方便查阅,也容易排查哪些用例执行了,哪些没有执行。 一、封装logging模...

3665
来自专栏信安之路

利用 nslookup 解析 DNS 记录

nslookup 是一个域名解析工具,在进行一些网页无法打开的问题上,能帮助我们进行更全面理解问题的所在!

3250
来自专栏积累沉淀

VMware中三种网络连接的区别

VMware中三种网络连接的区别 1、概述 2、bridged(桥接模式) 3、NAT(网络地址转换模式) 4、host-only(主机模式) 5、replic...

2058
来自专栏蓝天

thrift使用小记

    Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目。Thrift通过一个中间语言(IDL...

1711
来自专栏python学习指南

Python网络_TCP/IP简介

本章将介绍tcp网络编程,更多内容请参考:Python学习指南 Socket是网络编程的一个抽象概念,通常我们用一个Socket表示"打开了一个网络连接",而...

3559
来自专栏我是攻城师

理解Vmware虚拟机的网络模式

像物理交换机一样,虚拟交换机将虚拟网络连接在一起,故而也被称为虚拟网络 命名方式VMnet0,VMnet1,VMnet......以此类推,默认情况下在vm里面...

1373

扫码关注云+社区

领取腾讯云代金券