我的一点实际经验理解桥接和NAT

桥接是虚拟机完全作为一个独立的地址接在局域网中,NAT是虚拟机依赖宿主主机地址转换的一种方式

例子我的虚拟机如果用桥接模式,连接外部网站如百度时会提示此pc没有装公司的身份认证工具

而采用NAT时,访问就完全没有问题。说明对外用的还是宿主主机的地址

本文参照文章: 
https://www.linuxidc.com/Linux/2016-09/135521.htm
https://www.jb51.net/article/105497.htm
结合自己的环境进行配置,留下笔记便于以后查询。

vmware版本: 10.0.4
虚拟系统: Red Hat 7 EDT 2014

三种网络模式的区别
配置方法
1. Bridged (桥接模式)
2. NAT (网络地址转换模式)
3. Host-Only (仅主机模式)
三种网络模式的区别
网络模式 特点
Bridged(桥接模式) 将虚拟机的虚拟网络适配器与主机的物理网络适配器进行交接,虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络。简而言之,这就好像在局域网中添加了一台新的、独立的计算机一样。因此,虚拟机也会占用局域网中的一个IP地址,并且可以和其他终端进行相互访问。桥接模式网络连接支持有线和无线主机网络适配器。如果想把虚拟机当做一台完全独立的计算机看待,并且允许它和其他终端一样的进行网络通信,那么桥接模式通常是虚拟机访问网络的最简单途径。
NAT(网络地址转换模式) 使用NAT模式网络连接时,VMware会在主机上建立单独的专用网络,用以在主机和虚拟机之间相互通信。虚拟机向外部网络发送的请求数据”包裹”,都会交由NAT网络适配器加上”特殊标记”并以主机的名义转发出去,外部网络返回的响应数据”包裹”,也是先由主机接收,然后交由NAT网络适配器根据”特殊标记”进行识别并转发给对应的虚拟机,因此,虚拟机在外部网络中不必具有自己的IP地址。从外部网络来看,虚拟机和主机在共享一个IP地址,默认情况下,外部网络终端也无法访问到虚拟机。此外,在一台主机上只允许有一个NAT模式的虚拟网络。因此,同一台主机上的多个采用NAT模式网络连接的虚拟机也是可以相互访问的。
Host-Only(仅主机模式) 仅主机模式,是一种比NAT模式更加封闭的的网络连接模式,它将创建完全包含在主机中的专用网络。仅主机模式的虚拟网络适配器仅对主机可见,并在虚拟机和主机系统之间提供网络连接。相对于NAT模式而言,仅主机模式不具备NAT功能,因此在默认情况下,使用仅主机模式网络连接的虚拟机无法连接到Internet(在主机上安装合适的路由或代理软件,或者在Windows系统的主机上使用Internet连接共享功能,仍然可以让虚拟机连接到Internet或其他网络)。在同一台主机上可以创建多个仅主机模式的虚拟网络,如果多个虚拟机处于同一个仅主机模式网络中,那么它们之间是可以相互通信的;如果它们处于不同的仅主机模式网络,则默认情况下无法进行相互通信(可通过在它们之间设置路由器来实现相互通信)。
配置方法
打开虚拟机,在“编辑”->”虚拟网络编辑器”看到

名称 类型
VMnet0 用于桥接模式下的虚拟交换机
VMnet1 用于仅主机模式下的虚拟交换机
VMnet8 用于NAT模式下的虚拟交换机
在Windows主机上对应虚拟了VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,桥接模式不需要虚拟网卡。

1. Bridged (桥接模式)
桥接模式就是将主机网卡与虚拟的网卡利用虚拟网桥进行通信。类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,虚拟机IP地址需要与主机在同一网段,如果需要联网,则网关与DNS需要与主机网卡一致。

查看windows主机的IP、网关、DNS等信息:
- 可在windows命令行输入命令查看:
ipconfig -all

开启虚拟机,Linux下输入命令
ifconfig

看到虚拟机中我的网卡名称为:eno16777728
对应地,可以在 /etc/sysconfig/network-scripts/目录下看到一个名为“ifcfg-eno16777728”的文件。
sudo vi /etc/sysconfig/network-scripts/ifcfg-eno16777728
修改IP与windows主机在同一网段,子网掩码、网关、DNS与windows主机一致。

修改完成后重启虚拟机网卡
sudo /etc/init.d/network restart
查看能否ping通
ping -c 6 www.baidu.com

2. NAT (网络地址转换模式)
如果网络IP资源紧张,此时使用NAT模式是最好的选择。NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。

在NAT模式中,主机网卡直接与虚拟机设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。那么我们会觉得很奇怪,为什么需要虚拟网卡VMware Network Adapter VMnet8呢?VMware Network Adapter VMnet8虚拟网卡主要是为了实现主机与虚拟机之间的通信。

VMware虚拟机“编辑”–>“虚拟网络编辑器”
1.修改“NAT设置”中的网关地址(使用默认值即可)
2.配置“DHCP设置”(注意需要与子网IP在同一网段)

3.虚拟机Linux系统中修改网络配置
vi /etc/sysconfig/network-scripts/ifcfg-XXX
xxx为网卡的名

4.配置完成后重启虚拟机网卡
$/etc/init.d/network restart
使用ping命令查看是否成功
$ping -c 6 www.baidu.com

测试虚拟网卡VMware Network Adapter VMnet8的作用
Windows下禁用VMnet8

此时Linux下ping外网正常

而ping Windows主机无法ping通

启动VMware Network Adapter VMnet8虚拟网卡后,恢复正常。
证实VMware Network Adapter VMnet8的作用是主机与虚拟机之间的通信。

注:按照此步骤如果无法连接外网,可以尝试在虚拟机“虚拟网络编辑器”里选择“恢复默认设置”试试。

3. Host-Only (仅主机模式)
Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信。
Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通信。

设置步骤:
1.VMware虚拟机“编辑”–>“虚拟网络编辑器”中配置VMnet1仅主机模式,并选择“DHCP配置”*(注意需要与子网IP在同一网段)

2.VMware虚拟顶部菜单选择“虚拟机”–>”虚拟机设置“–>”网络适配器“,在网络连接中选择”仅主机模式”

3.虚拟机Linux系统中修改网络配置
vi /etc/sysconfig/network-scripts/ifcfg-XXX
xxx为网卡的名

4.配置完成后重启虚拟机网卡
$/etc/init.d/network restart
此时ping主机能够ping通
$ping -c 6 192.168.127.1
但ping外网已无法ping通。

在Host-Only模式下,若要将虚拟机接入外网,可以将主机网卡共享给VMware Network Adapter VMnet1网卡。

具体操作:
1. 将主机网卡共享给VMware Network Adapter VMnet1。

2. 虚拟机中设置VMnet1

3.Linux系统中设置网关和DNS地址为主机VMware Network Adapter VMnet1的地址

4.配置完成后重启虚拟机网卡
$/etc/init.d/network restart
此时ping主机和外网均可ping通。

(转)VMware虚拟机三种网络模式的区别及配置方法;的更多相关文章

  1. vmware虚拟机三种网络模式的区别

    首先安装了VMware,在其中安装了Ubuntu系统,正常启动之后开始考虑怎么才能够让主机和虚拟机实现网络互连并且由主机向虚拟机发送文件,通过在网上查阅相关资料,记录学习笔记如下. 学习参考资料: l ...

  2. VMware虚拟机三种网络模式的区别(上篇)

    提到VMware大家就想起了虚拟机技术,虚拟机技术在最近的几年中得到了广泛的发展,一些大型网络服务商都开始采用虚拟机技术,不仅节省了投资成本,更节约了能源的消耗. 我们知道VMware也分几种版本,普 ...

  3. 【Tools】VMware虚拟机三种网络模式详解和操作

    目录 00. 目录 01. VMware虚拟机三种网络模式 02. Bridged(桥接模式) 03. NAT(地址转换模式) 04. Host-Only(仅主机模式) 00. 目录 @ 参考:htt ...

  4. VMware 虚拟机三种网络模式详解

    一.前言 Vmware 为我们提供了三种网络工作模式,分别是:Bridged(桥接模式).NAT(网络地址转换模式).Host-only(仅主机模式). 二.VMware 的几个常见虚拟设备 打开 V ...

  5. vmware虚拟机三种网络模式详解_转

    原文来自http://note.youdao.com/share/web/file.html?id=236896997b6ffbaa8e0d92eacd13abbf&type=note 由于L ...

  6. Vmware虚拟机三种网络模式详解

    原文来自http://note.youdao.com/share/web/file.html?id=236896997b6ffbaa8e0d92eacd13abbf&type=note 我怕链 ...

  7. 四、Vmware虚拟机三种网络模式详解

    转载自: http://note.youdao.com/share/web/file.html?id=236896997b6ffbaa8e0d92eacd13abbf&type=note 1. ...

  8. 【转】VMware虚拟机三种网络模式超详解

    [原文]https://www.toutiao.com/i6596228488666022403/ 由于Linux目前很热门,越来越多的人在学习Linux,但是买一台服务放家里来学习,实在是很浪费.那 ...

  9. 【转】VMware虚拟机三种网络模式详解

    由于Linux目前很热门,越来越多的人在学习Linux,但是买一台服务放家里来学习,实在是很浪费.那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有VMware Workstations ...

随机推荐

  1. 创建多个Fragment可滑动界面

    创建新项目,选择Tabbed Activity 默认就有2个Fragment,这里我们删除相关代码. 在切换时 FragmentPagerAdapter onDestroyView onCreateV ...

  2. hdoj1711(kmp算法)

    题目链接:https://www.cnblogs.com/kuangbin/archive/2012/08/14/2638803.html 题意:给定两个数组a.b,在数组a中查找b,求第一次出现的下 ...

  3. 小菜鸟之liunx

    目录 第一章:Linux简介 1 Linux特点 1 CentOS 1 第二章:Linux安装 2 Linux目录结构 2 第三章:Linux常用命令 2 Linux命令的分类 3 操作文件或目录常用 ...

  4. python-----模块【第一部分】-----

    一.hashlib(md5) import hashlib obj = hashlib.md5('dsfd'.encode('utf-8')) obj.update('123'.encode('utf ...

  5. 一、python快速入门(每个知识点后包含练习)

    1. 编程与编程语言 编程的目的是什么? #计算机的发明,是为了用机器取代/解放人力,而编程的目的则是将人类的思想流程按照某种能够被计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑/电脑一 ...

  6. 植物大战僵尸:查找植物叠加种植CALL

    实验目标:我们都知道植物大战僵尸游戏中植物是不可以叠加种植的,也就是一个格子只能种植一个植物,今天我们将实现一个格子里种植无限多的植物. 我们首先需要找到植物的种植CALL,然后在逐步测试观察功能之间 ...

  7. HTML form表单中action的正确写法

    我的Java Web Application的context是myweb,即http://localhost:8080/myweb/index.jsp是欢迎页. 现在我的一个Controller的映射 ...

  8. codeforce E - Minimal Labels+hdu 4857

    两个题目的意思差不多 都是希望得出的拓扑序如果有多种 要求输出字典序小的情况 这里引用一个大佬的博客 关于为什么不能直接建图然后用小根堆解决这个问题(http://blog.csdn.net/rgno ...

  9. C#通讯框架改写

    现有项目是利用C#的socket与PLC进行实时通讯,PLC有两种通讯模式——常规采集&高频采集. 其中常规采集大概在10ms左右发送一次数据,高频采集大概在2ms左右发送一次数据. 现有代码 ...

  10. 原生 JS 绑定事件 移除事件

    监听事件的绑定与移除主要是addEventListener和removeEventListener的运用. addEventListener语法 element.addEventListener(ty ...