我的一点实际经验理解桥接和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. CF1187D Subarray Sorting

    思路: 线段树好题.对a数组中的每个元素从左到右依次操作,判断最终是否能够转化成b数组.在此过程中使用线段树维护区间最小值判断是否能够进行合法操作. 实现: #include <bits/std ...

  2. Java学习笔记-抽象类与接口

    抽象类用于在类中不用具体实现,而在子类中去实现的类 抽象类 抽象类概述 抽象定义:抽象就是从多个事物中将共性的,本质的内容抽取出来 抽象类:Java中可以定义没有方法体的方法,该方法的具体实现由子类完 ...

  3. 最新 波克城市java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.波克城市等10家互联网公司的校招Offer,因为某些自身原因最终选择了波克城市.6.7月主要是做系统复习.项目复盘.Leet ...

  4. vue首页组件切换

    结构如下 代码如下: <template> <div id="page"> <div style="width: 100%" cl ...

  5. CentOS7 安装mysql(YUM源方式)

    1.下载mysql源安装包 $ wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm   2.安装mysql ...

  6. Java网络编程-你是GG还是MM?

    第六阶段 网络编程 每一台计算机通过网络连接起来,达到了数据互动的效果,而网络编程所解决的问题就是如何让程序与程序之间实现数据的通讯与互动 在吗?你是GG还是MM? (一) 网络模型概述 (1) 两大 ...

  7. SQL SERVER 使用游标删除所有主键

    Declare @Pk varChar(100);Declare @TBname varChar(100);declare cursor1 cursor for Select Sys2.name as ...

  8. 剑指offer32:把数组排成最小的数

    1 题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323. 2 思路 ...

  9. kubernetes kubeadm安装v1.14

    1.我们这里准备两台Centos7的主机用于安装,后续节点可以根究需要添加即可:master node01两台都得改:cat /etc/hosts192.168.71.134 master192.16 ...

  10. nginx浏览器开启密码验证

    如果我们在 nginx 下搭建了一些站点,但是由于站点内容或者流量的关系,我们并不想让所有人都能正常访问,那么我们可以设置访问认证.只有让用户输入正确的用户名和密码才能正常访问.效果如下: 在 ngi ...