简单介绍Linux几种网络模式

​ 虚拟化层次:

​ 打开vmware虚拟机,我们可以在选项栏的“编辑”下的“虚拟网络编辑器"中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8

(NAT模式),那么这些都是有什么作用呢?其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机;VMnet1表示的是用

于仅主机模式下的虚拟交换机;VMnet8表示的是用于NAT模式下的虚拟交换机。

Linux可以分为三种网络模式:

  1. 桥接模式 (vmnet0)

  2. 仅主机模式 (vmnet1)

  3. NAT模式 (vmnet8)

当我们下载了vmware之后,在电脑会出现两个虚拟网卡,VMware Network Adapter VMnet1、VMware Network Adapter VMnet8。

可以通过查找 控制面板——网络和 Internet——网络和共享中心——更改适配器设置 看到虚拟网卡:

可能有人疑惑了,为什么在虚拟机看到了vmnet0、vmnet1和vmnet8网卡,在物理机没有看到桥接的虚拟网卡vmnet0?

这就要说说桥接、仅主机、NAT这三种网络模式了

桥接模式(Bridged)

​ 桥接模式就是在物理机的网卡跟虚拟机的网卡之间建立一个网桥,可以把物理机的网卡想象成交换机,物理机和虚拟机都接在一个交换机上,交换机连接路由器就可以访问互联网了,接在交换机下的所有主机都可以相互通信互不影响。这样物理机和虚拟机就都可以上网了。这样也就解释了为什么物理机中没有 vmnet0了。

​ 桥接模式下,虚拟机IP地址与物理机在同一个网段,如果需要联网,则网关与DNS需要与物理机网卡一致。

Windows键+R 进入DOS命令窗口,输入:cmd 再输入:ipconfig,查看物理机IP:

步骤:

WIN+R键
cmd
ipconfig

我们把虚拟机的网络模式设置为桥接,激活网卡,输入ip a命令查看是不是192.168.0这个网段。

步骤总结:

修改网络适配器的网络连接模式为桥接
进入/etc/sysconfig/network-scripts/ifcfg-ens33文件修改ONBOOT=NO为ONBOOT=yes
systemctl restart network
ip a
ping www.baidu.com

输入:vi /etc/sysconfig/network-scripts/ifcfg-ens33

systemctl restart network
ip a

可以看到桥接模式下的虚拟IP和物理机处于同一网段:

检测一下网络状态:(使用ping这个命令可以检测网络是否通)

ping www.baidu.com

桥接模式设置完成。

桥接模式配置简单,但如果你的网络环境是ip资源很缺少或对ip管理比较严格的话,那桥接模式就不太适用了。

NAT模式

​ 刚刚我们说到,如果你的网络ip资源紧缺,但是你又希望你的虚拟机能够联网,这时候NAT模式是最好的选择。NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。

​ 在NAT模式中,物理主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。VMware Network Adapter VMnet8虚拟网卡主要是为了实现物理主机与虚拟机之间的通信。

Windows键+R 进入DOS命令窗口,输入:cmd 再输入:ipconfig,查看vmnet8, NAT在192.168.152这个网段:

也可以在虚拟机的编辑选项,虚拟网络编辑器查看:

我们把虚拟机的网络模式设置为NAT,激活网卡,输入ip a命令查看是不是192.168.152这个网段。

修改网络适配器的网络连接模式为NAT
修改ONBOOT=NO为ONBOOT=yes
systemctl restart network
ip a
ping www.baidu.com

看看虚拟机的NAT ip,在192.168.152这个网段,检查一下网络:

ip a
ping www.baidu.com

NAT设置成功。

仅主机模式(host-only)

​ Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统。在这个模式下,主机可以访问虚拟机。但是

虚拟机不能访问主机,也不能访问外网。

可以看到仅主机ip为192.168.200这个网段:

我们把虚拟机的网络模式设置为host-only,激活网卡,输入ip a命令查看是不是192.168.200这个网段。

发现ip在192.168.200这个网段:

检测一下网络状态:(使用ping这个命令可以检测网络是否通)

虚拟机一直ping不通百度,因为仅主机模式,物理主机可以访问虚拟机。但是虚拟机不能访问物理主机,也不能访问外网

我们用Win+R键,输入cmd,ping一下虚拟机的IP,可以访问虚拟机。

host-only模式联网

如果要使得虚拟机能联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的。

控制面板找到你的网络,右键属性,点击共享:

这时候可以看到VMware Network Adapter VMnet1的ip变成了静态ip192.168.137.1:

进入虚拟机,编辑选项,虚拟网络编辑器,强制将VMnet1的ip设置成192.168.137.1,那么接下来,我们就要将虚拟机的DHCP的子网和起始地址进行修改。

vi /etc/sysconfig/network-scripts/ifcfg-ens33

IPADDR=192.168.137.100   #IP地址,在192.168.137这个网段都可以
GATEWAY=192.168.137.1 #网关
PREFIX=24 #子网掩码
#NETMASK=255.255.255.0 #子网掩码的另一种表示方法
DNS=223.5.5.5 #阿里云的DNS
systemctl restart network
ip a
ping www.baidu.com

Linux几种网络模式介绍的更多相关文章

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

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

  2. Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT、桥接和Host-only]

    Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT.桥接和Host-only] 作者:天齐 一.Windows和linux虚拟机之间联网实现SSH远程连接 ...

  3. [转] LINUX 三种网络连接模式

     Linux下NAT模式和桥接模式的网络配置 最近在配置linux虚拟机的时候发现有很多坑,现在记录下来以防日后又跳到坑里. 我的运行环境是:主机 windows 7  虚拟机 Virtualbox ...

  4. Docker的4种网络模式详细介绍

    docker run创建Docker容器时,可以用–net选项指定容器的网络模式,Docker有以下4种网络模式: bridge模式:使用–net =bridge指定: host模式:使用–net = ...

  5. Docker的4种网络模式

    我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: · host模式,使用--net=host指定. · container ...

  6. VMware网络模式介绍(下篇)

    VMware网络模式介绍 VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). Bridged 模式: 在桥接模式下,VMwa ...

  7. VMware网络模式介绍

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). Bridged 模式: 在桥接模式下,VMware虚拟机里的系统就像是  ...

  8. Docker网络模式介绍

    一.概述 docker的网络驱动有很多种方式,按照docker官网给出的网络解决方案就有6种,分别是:bridge.host.overlay.macvlan.none.Network plugins, ...

  9. Docker 四种网络模式

    原文 https://www.cnblogs.com/gispathfinder/p/5871043.html 我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络 ...

  10. [转载] 虚拟机3种网络模式(NAT, Host-only, Bridged)

    实例讲解虚拟机3种网络模式(桥接.nat.Host-only) 转载自:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646007.html ...

随机推荐

  1. pinpoint:查看hbase表和修改数据过期时间

    先做个记录,监控数据量过大时可以设置表的数据过期时间来清理数据. 1. 查找本地数据表大小 [root@ZWZF-CWY-LZY-12 ~]# cd /home/pinpoint/hbase/data ...

  2. Oracle生成awr报告操作步骤介绍

    AWR全称Automatic Workload Repository,自动负载信息库,是Oracle 10g版本后推出的一种性能收集和分析工具,提供了一个时间段内整个系统的报表数据.通过AWR报告,可 ...

  3. 嵌入式-C语言基础:malloc动态开辟内存空间

    #include<stdio.h> #include<stdlib.h> int main() { // char *p;//定义一个野指针:没有让它指向一个变量的地址 // ...

  4. 2022春每日一题:Day 41

    题目:I Hate It 一个基础的线段树模板,单点修改+区间查询 代码: #include <cstdio> #include <cstdlib> #include < ...

  5. C# Aspose.Words.Document.PageCount 踩坑笔记(获取文档页数)

    事情是这样的,我需要获取Word文档的页数,结果就遇到了这个坑人的问题. var doc = new Aspose.Words.Document(@"相对路径"); doc.Pag ...

  6. HTTP Analyzer 伴侣,解决Probably another instance is already up

    解决方案1: NET START HttpAnalyzer_StdV7_NetFilter START start HttpAnalyzerStdV7.exe将以上内容保存为.bat 解决方案2: p ...

  7. 关于 python 中比较运算的顺序

    先来看一个例子: "x" > "y" == True 结果为 False 因为这里的表达式可以等同于 "x" > "y ...

  8. 协程Part1-boost.Coroutine.md

    首先,在计算机科学中 routine 被定义为一系列的操作,多个 routine 的执行形成一个父子关系,并且子 routine 一定会在父 routine 结束前结束,也就是一个个的函数执行和嵌套执 ...

  9. 【Shell案例】【wc、awk、cat、管道】1、统计文件的行数

    描述写一个 bash脚本以输出一个文本文件 nowcoder.txt中的行数示例:假设 nowcoder.txt 内容如下: #include <iostream> using names ...

  10. 【Java SE进阶】Day07 等待与唤醒案例、线程池、Lamdba表达式

    一.等待唤醒机制 1.线程间通信 多个线程处理同一个资源,就存在线程通信问题(线程间存在竞争与协作机制) 为什么处理:为了 保证多个线程有规律地完成同一任务 如何处理:避免对共享变量争夺,需要等待唤醒 ...