网络互通--三层交换机配置

news2024/11/17 1:59:49

目录

一、三层交换机的原理

1、概念

2、PC A与不同网段的PC B第一次数据转发过程

3、一次路由,多次转发的概念

4、 三层交换机和路由器的比较

 二、利用实验理解交换机

1、建立以下拓扑图​编辑

2、分别配置主机的IP地址,子网掩码、网关等信息

3、配置二层交换机LSW1

4、配置三层交换机LSW2

5、配置路由器

6、用主机相互ping,看是否全网互通

7、总结


一、三层交换机的原理

1、概念

三层交换机是在二层交换机的基础上,增加了路由选择功能的网络设备,能够基于 ASIC 和 FPGA 实现网络功能和转发分组。

二层交换机能够基于数据链路层的 MAC 地址,进行数据帧或 VLAN 的传输功能。

三层交换机能够基于网络层的 IP 地址,实现路由选择以及分组过滤等功能。

2、PC A与不同网段的PC B第一次数据转发过程

  • 主机A发现主机B不与自己在同一网段,将报文转发给三层交换机。
  • 到达三层交换机,因为是第一次转发,三层交换机的硬件路由表中只有主机A自己的条目,匹配失败,转给CPU处理。
  • 数据包转到CPU后,查询软件路由条目匹配到直连路由,进行数据转发。
  • 主机B 收到主机 A的报文,回复主机A。像主机A第一次访问主机B一样,但此时硬件路由表中已经有主机A的条目,所以可以直接硬件转发。但没有主机B的,所以同时将主机B的信息添加到硬件路由表中。
  • 后续两者再进行通讯时,因为硬件路由表中已经存在两者的条目,所以可以直接硬件转发。

3、一次路由,多次转发的概念

  • 当三层设备接收到一个数据帧,会拆除原数据帧,重新封装新的源MAC地址和目标MAC地址,并且因为帧头部的信息发生变化,最后的帧校验CRC也应当随之改变。
  • 在这个流中的多个数据包,其中只有第一个数据包是由三层交换机的三层引擎来处理的,处理的方式是软件方式,与路由器相同,三层引擎获取了新的2层封装信息后,路由这个数据包。
  • 在第一个数据包转发完成后,在硬件中创建一个MLS条目用于后续的数据包由硬件执行的重新封装和快速转发。2层数据帧会被重新封装为需要转发的下一个网段的帧格式。 这就是MLS“一次路由,多次交换"的原理。
通过三层交换机互连的A 和 B的通信过程:首先A执行以下动作
1、A检查报文的目的IP地址B_ip, 判定B和A是否在同一子网
2、如果是,将报文直接传递给B(将B_ip-->B_mac,交由数据链路层封装成帧,帧的目的地址是B_mac);
3、否则,将报文转发给缺省网关C,即三层交换机(将C_ip-->C_mac,交由数据链路层封装成帧,发送给C_mac)
3.1  当交换机收到这一数据帧的时候:
①  如果目的地址不是自身,依据 MAC地址表对其在第二层上进行转发。

②  如果目的地址是自身,将其中的IP报文提交给第三层交换模块。
检查目的IP地址是否在 IP转发表中,是的话, 硬件会按照转发信息直接转发。否则,则交由 软件处理(CPU)—--- 查路由表,请求ARP做地址转换,在软件转发的同时将转发信息保存到IP转发表中,后续报文只需由硬件转发。即 一次路由,多次 转发

4、 三层交换机和路由器的比较

  • 性能:传统路由器对过往的每个包执行路由功能,靠软件处理,而三层交换机只对少量包执行软件的路由功能,大量的包或者在第二层上、或者在第三层上进行硬件交换性能相差很大。
  • 接口类型:三层交换机的接口基本都是以太网接口,没有路由器接口类型丰富。因此路由器可以用于异种网络互连,而三层交换机则多用于大型局域网内部的子网互连。
  • 路由功能:三层交换机虽有寻找路径功能,但比较弱不支持复杂的路由协议,只能用于网络结构比较简单的情形。而专业路由器则可以用于大型复杂网络。
  • 综上所述,三层交换机重点是交换,强调的是性能;而专业路由器则重点解决互连的复杂性以及准确的控制。

 二、利用实验理解交换机


1、建立以下拓扑图

2、分别配置主机的IP地址,子网掩码、网关等信息

3、配置二层交换机LSW1

4、配置三层交换机LSW2

 

5、配置路由器

6、用主机相互ping,看是否全网互通

7、总结

  • 单臂路由或者三层交换机都可以实现VLAN之间的通信
  • 单臂路由工作原理:   路由器重新封装MAC地址,转换VLANID
  • 三层交换机工作原理:一次路由,多次交换
  • 一次路由:数据流的第一个数据包由三层引擎来处理,重新封装MAc,再路由转发数据包
  • 多次交换:第一个数据包转发后,会在硬件创建一个MSL条目,MSL包含FIB(转发信息库:包含邻接主机IP和vlanid)、邻接关系表(包含邻接主机MAC地址),通过查询FIB和邻接关系表重新封装数据帧,从相应端口转发数据
  • 三层交换机具有路由功能可转发数据,ip地址是配置在虚接口上而不是物理接口上,物理接口对接交换机配置trunk,对接pc机配合access

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1314391.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自然语言处理阅读第一弹

Transformer架构 encoder和decoder区别 Embeddings from Language Model (ELMO) 一种基于上下文的预训练模型,用于生成具有语境的词向量。原理讲解ELMO中的几个问题 Bidirectional Encoder Representations from Transformers (BERT) BERT就是原生transformer中的Encoder两…

用23种设计模式打造一个cocos creator的游戏框架----(十七)命令模式

1、模式标准 模式名称:命令模式 模式分类:行为型 模式意图:将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可撤销的操作。 结构图: 适用于&am…

2024年20多个最有创意的AI人工智能点子

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情 探索 2024 年将打造的 20 个基于人工智能产品的盈利创意 🔥🔥🔥 直到最近,企业对人工智能还不感兴趣,但…

基于C/C++的libcurl多协议文件传输库dll二次封装开发使用

libcurl 可能是最便携、最强大和最常用的 这个星球上的网络传输库。官方提供的示例,需要在项目中引用到libcurl-imp.lib才能使用。 这里我改造了下工程,将常用的接口导出到了libcurl.dll中方便直接在后续的工程代码中应用,下面可以看到dll常用…

使用广播星历进行 GPS 卫星位置的计算

目录 1.计算卫星运动的平均角速度 n 2.计算观测瞬间卫星的近地点角 3.计算偏近点角 4.计算真近点角 f 5.计算升交角距 6.计算摄动改正项 7.进行摄动改正 8.计算卫星在轨道面坐标系中的位置 9.计算观测瞬间升交点的经度 L 10.计算卫星在瞬时地球坐标系中的位置 11.…

最大子数组和java实现【动态规划基础练习】

12.15 最大子数组和 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 示例 1: 输入:nums [-2,1,-3,4,-1,2,1,-5,4]…

笔记本电脑如何安装爱快软路由

环境: dell3490 笔记本 装机U盘 问题描述: 笔记本电脑如何安装爱快软路由 解决方案: 1.电脑bios关闭 安全启动 2.下载官网镜像 3.UEFI引导 在PE下面 新建esp分区300M 把系统镜像里面全部文件,提取到这个分区 最后&…

数据结构(7.5)-- 树扩展之字典树

一、字典树 1、字典树介绍 字典树,也称为“前缀树”,是一种特殊的树状数据结构,对于解决字符串相关问题非常有效。典型 用于统计、排序、和保存大量字符串。所以经常被搜索引擎系统用于文本词频统计。它的优点是: 利用字符串的…

【Qt问题记录】使用QDebug类输出不带转义或双引号

问题 使用Qt进行编程时,需要借助输出信息验证编码的正确性。 默认情况下,如果输出的是字符串,qDebug() 会在字符串的两侧加上引号,有时还会转义。 如下所示: QString strInfo QStringLiteral("helloworld"…

[原创][R语言]股票分析实战:周级别涨幅趋势的相关性

[简介]常用网名: 猪头三 出生日期: 1981.XX.XX QQ联系: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、De…

网络安全Web学习记录———CTF---Web---SQL注入(GET和POST传参)例题

小白初见,若有问题,希望各位大哥多多指正~ 我的第一道web类CTF题——一起来撸猫o(•ェ•)m-CSDN博客 最开始学习CTF里的web方向时,每次做了题遇到类似的老是忘记之前的解法,所以写点东西记录一下。听大哥的话,就从最…

架构设计系列之常见架构(二)

五、DDD(领域驱动设计) 领域驱动设计(Domain-Driven Design,DDD)是一种开发思想,强调将软件系统的注意力集中在业务领域上,将领域视为应用的核心。在架构设计中,DDD 提供了一种不同…

cgal教程 3D Alpha Wrapping

文章目录 3D Alpha Wrapping (3D alpha 包裹)1 介绍2 方法2.1 算法2.2 保证 3 接口4 选择参数4.1 alpha4.2 Offset4.3 关于“双面”包裹的注意事项 5 性能6 例子 3D Alpha Wrapping (3D alpha 包裹) 原文地址: https://doc.cgal.org/latest/Alpha_wrap_3/index.html#Chapter_3D…

Linux unzip解压多个文件

前情介绍 最近下载了imagenet1k数据集,令人难受的是这里边有很多的zip包,我总不能一个一个解压吧,这就太费时了,有点程序员思维很重要:批量解压。 解决办法 假设当前目录下有多个zip文件 需要 unzip *.zip …

【FunASR】Paraformer语音识别-中文-通用-16k-离线-large-onnx

模型亮点 模型文件: damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorchParaformer-large长音频模型集成VAD、ASR、标点与时间戳功能,可直接对时长为数小时音频进行识别,并输出带标点文字与时间戳: ASR模型…

apt-mark工具介绍(标记或取消标记软件包,防止特定软件包被自动更新或删除)

文章目录 apt-mark工具深度解析1. apt-mark概述1.1 apt-mark定义1.2 apt-mark作用 2. apt-mark常用命令2.1 标记软件包为手动安装2.2 标记软件包为自动安装2.3 阻止软件包更新2.4 允许软件包更新 3. 疑难技术点解析3.1 如何查看软件包的标记状态3.2 如何解决软件包依赖性问题 4…

IDEA新建jdk8 spring boot项目

今天新建spring boot项目发现JDK版本最低可选17。 但是目前用的最多的还是JDK8啊。 解决办法 Server URL中设置: https://start.aliyun.com/设置完成后,又可以愉快的用jdk8创建项目了。 参考 https://blog.csdn.net/imbzz/article/details/13469117…

【C++】POCO学习总结(十七):日志系统(级别、通道、格式化、记录流)

【C】郭老二博文之:C目录 1、Poco::Message 日志消息 1.1 说明 所有日志消息都在Poco::Message对象中存储和传输。 头文件:#include “Poco/Message.h” 一条消息包含如下内容:优先级、来源、一个文本、一个时间戳、进程和线程标识符、可选…

每天五分钟计算机视觉:Inception网络是由多个Inception模块构成

本文重点 inception从另一种角度来提升训练结果:能更高效的利用计算资源,在相同的计算量下能提取到更多的特征,从而提升训练结果。可以简单的理解为Inception 网络是由一个一个的Inception模块构建成的,我们来看一下。 Inception模块 如上就是Inception模块的 通过一个1…

【Android逆向】记录一次某某虚拟机的逆向

导语 学了一段时间的XPosed,发现XPosed真的好强,只要技术强,什么操作都能实现... 这次主要记录一下我对这款应用的逆向思路 apk检查 使用MT管理器检查apk的加壳情况 发现是某数字的免费版本 直接使用frida-dexdump 脱下来后备用 应用分…