关于数据通信知识的补充——第二篇

目录

四.二层交换机

5.实现不同vlan通信的原理

方法一:路由器网关

方法二:单臂路由

方法三:三层交换机

五.三层路由技术

(1)直连路由

(2)静态路由

(3)动态路由


上一篇我们学习了用vlan隔离也可有效优化泛洪,还拉下一个不同vlan间通信的原理,现在我们接着学习。

四.二层交换机

5.实现不同vlan通信的原理

方法一:路由器网关

1.实验配置

配置交换机,vlan 10  20

配置路由器

PC1pingPC2,可以通

2.实验原理

(1)PC1发送数据前需要封装二层头、三层头,此时PC1查询ARP表可以知道源MAC1、源IP1、目的IP,但不知道目的MAC,需要通过ARP请求PC2的MAC地址。(我们之前学到,交换机是靠mac地址转发的)
(2)PC1发送ARP请求,该帧为广播帧,所有端口都会收到


(3)交换机收到该ARP广播帧后,直接进行泛洪,根据VLAN原理,该交换机中只有GO/0/1端口会泛洪给R1的GO/0/1端口;
(4)网关1(GO/0/1)收到该广播帧以后,拆掉二层头发现是请求目的IP2的对应MAC地址;因为网关1(VLAN10)和网关2(VLAN20)同在R1下,所以网关1知道网关2的路由信息,此时网关1会回应ARP请求消息:(就等于说路由器是班主任,有事找网关。)

(5)网关1回应ARP Reply报文,源MAC封装的是网关1的GO/0/1端口MAC地址,即告诉PC1,如果需要访问PC2,封装目的MAC为网关1的接口MAC地址即可,该数据帧为单播帧

(6)PC1收到ARP响应以后,封装数据,目的MAC为GO/0/1端口MAC地址,交换机收到以后,匹配MAC地址表转发给网关1:
(7)路由器(网关1)收到数据以后,发现目的MAC为自己的接口MAC,拆掉二层头,查看三层,发现目的IP为PC2的IP地址,匹配路由表从网关2发出,此时需要重新封装层头:源MAC=网关2的接口MAC、源IP=网关2的接口IP目的MAC=MAC2(网关2与PC2之间也存在ARP请求)目的IP=IP2;
(8)数据发送至交换机,交换机匹配MAC地址表转发给PC2

方法二:单臂路由

与方法一原理是一样的,优点是解决了一个vlan一个链路的问题,在现网中使用广泛。

方法三:三层交换机

在二层交换机中增加路由功能,使二层交换机具备配置三层IP地址、查找IP路由表的能力,此
时,二层交换机就变成了三层交换机。


实际转发原理同方法一。

五.三层路由技术

1.路由器的转发原理

在路由器接受到与自己MAC地址一样的数据,拆掉二层头看目的IP ,查看路由表,如果路由表里有就转发,没有就丢弃(这也是他与交换机不同的地方,路由器是尽力而为,交换机就比较实诚,MAC表里没有就泛洪)

2.路由表里信息是怎么来的

在一个路由器还没有配置的时候

它的路由表里只有缺省的路由信息

(1)直连路由

我们给路由器配置ip地址

R1

环回地址

R2

R3

环回地址

查看R1路由表,有了直连路由的信息

路由器直连地址会根据接口信息自动生成三条路由信息————

1.接口本身的ip地址

2.主机位全为1的广播

3.主机位全为0的网段

(2)静态路由

是管理员手动配置的,不适合大型网络

我们现在这个路由,R1就没有学到R3的ip,就不能ping通,可以手动配置静态路由

  命令格式是ip route-static ip地址  子网掩码   下一跳(就是下一步往哪里走)

现在路由表里有R3的网段了

但还是不通

我们可以抓包看一下(这里要说一下,设备不通不能靠猜,抓包就能找到问题,这就像孕妇要检查需要B超,而不是医生火眼金睛看)

可以看到只有Request,没有回包

看一下R3的路由表

没有PC1的网段不知道回给谁

R3加上静态路由

静态路由还有一种形式——ip route-static ip地址  子网掩码   出接口(就是下一步往哪里走)

这时候路由表里有R1的网段了

但还是不通

那就是R2的问题了

查看路由表

没有PC3,PC1的网段,加上静态路由

ip route-static 192.168.10.0 255.255.255.0 10.0.12.1
ip route-static 192.168.20.0 255.255.255.0 10.0.23.3

有他们的网段了

此时可以ping通

(3)动态路由

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

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

相关文章

【Stable Diffusion】入门-04:不同模型分类+代表作品+常用下载网站+使用技巧

目录 1 模型简介2 模型文件构成和加载位置2.1 存储位置2.2 加载模型 3 模型下载渠道3.1 HuggingFace3.2 Civitai 4 模型分类4.1 二次元模型4.2 写实模型4.3 2.5D模型 1 模型简介 拿图片给模型训练的这个过程,通常被叫做“喂图”。模型学习的内容不仅包括对具体事物…

Linux中 vim 编辑器的使用

文章目录 前言一、vim编辑器模式二、简单的插入、保存和退出三、 命令模式下常用命令即其作用1. 命令模式 思维导图 前言 首先,了解一下 什么是vim 编辑器?在不同的系统中,文本的管理也会不同;windos系统就不多说了&#xff0c…

compile→错误: 不支持发行版本 17

错误: 不支持发行版本 17 具体错误描述如下: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.11.0:compile (default-compile) on project big-event: Fatal error compiling: 错误: 不支持发行版本 17 -> [Help 1] [ERROR] …

简易版 RPC 框架实现 1.0 -http实现

RPC 是“远程过程调用(Remote Procedure Call)”的缩写形式,比较通俗的解释是:像本地方法调用一样调用远程的服务。虽然 RPC 的定义非常简单,但是相对完整的、通用的 RPC 框架涉及很多方面的内容,例如注册发…

Redisson 分布式锁原理分析

Redisson 分布式锁原理分析 示例程序 示例程序: public class RedissonTest {public static void main(String[] args) {Config config new Config();config.useSingleServer().setPassword("123456").setAddress("redis://127.0.0.1:6379"…

cool 中的Midway ----node.js的TypeORM的使用

1.介绍 TypeORM | Midway TypeORM 是 node.js 现有社区最成熟的对象关系映射器(ORM )。本文介绍如何在 Midway 中使用 TypeORM 相关信息: 描述可用于标准项目✅可用于 Serverless✅可用于一体化✅包含独立主框架❌包含独立日志❌ 和老写…

第二十四天-数据可视化Matplotlib

目录 1.介绍 2.使用 1. 安装: 2.创建简单图表 3.图表类型 1.一共分为7类 2.变化 1.折线图 3.分布 ​编辑 1.直方图 2.箱型图 4.关联 1. 散点图: 2.热力图: 5.组成 1.饼图 2.条形图 6.分组 1.簇型散点图 2.分组条形图 3.分…

JOSEF约瑟 TQ-100同期继电器 额定直流电压220V 交流电压100V±10V

TQ-100型同期继电器 TQ-100同期继电器 ​ l 应用 本继电器用于双端供电线路的自动重合闸和备用电源自投装置中,以检查线路电压与母线电压的 相位差和幅值差。 2 主要性能 2 1采用进口集成电路和元器件构成,具有原理先进、性能稳定、可靠性高、动作值精…

Git版本管理--远程仓库

前言: 本文记录学习使用 Git 版本管理工具的学习笔记,通过阅读参考链接中的博文和实际操作,快速的上手使用 Git 工具。 本文参考了引用链接博文里的内容。 引用: 重学Git-Git远程仓库管理_git remote add origin-CSDN博客 Git学习笔记&am…

[自研开源] MyData 数据集成之数据过滤 v0.7.2

开源地址:gitee | github 详细介绍:MyData 基于 Web API 的数据集成平台 部署文档:用 Docker 部署 MyData 使用手册:MyData 使用手册 试用体验:https://demo.mydata.work 交流Q群:430089673 概述 本篇基于…

javaEE——线程的等待和结束

文章目录 Thread 类及常见方法启动一个线程中断一个线程变量型中断调用 interrupt() 方法来通知观察标志位是否被清除 等待一个线程获取当前线程引用休眠当前线程 线程的状态观察线程的所有状态观察 1: 关注 NEW 、 RUNNABLE 、 TERMINATED 状态的切换 多线程带来的风险为什么会…

【大模型系列】问答理解定位(Qwen-VL/Llama2/GPT)

文章目录 1 Qwen-VL(2023, Alibaba)1.1 网络结构1.2 模型训练 2 Llama2(2023, Meta)2.1 网络结构2.1.1 MHA/GQA/MQA2.1.2 RoPE(Rotary Position Embedding, 旋转式位置编码)2.1.3 RMSNorm 2.2 推理2.2.1 集束搜索(beam search)2.2.2 RoPE外推 3 GPT系列(OpenAI) 1 Qwen-VL(2023…

android中单例模式为什么会引起内存泄漏?

单例模式使用不恰当会造成内存泄漏。因为单例的静态特性使得单例的生命周期和应用的生命周期一样长, 如果一个对象已经不需要使用了,但是单例对象还持有该对象的引用,那么这个对象就不能被正常回收,因此会导致内存泄漏。 举个例子…

【数据可视化】使用Python + Gephi,构建中医方剂关系网络图!

代码和示例数据下载 前言 在这篇文章中,我们将会可视化 《七版方剂学》 的药材的关系,我们将使用Python制作节点和边的数据,然后在Gephi中绘制出方剂的网络图。 Gephi是一个专门用于构建网络图的工具,只要你能提供节点和边的数…

Stable Diffusion科普文章【附升级gpt4.0秘笈】

随着人工智能技术的飞速发展,我们越来越多地看到计算机生成的艺术作品出现在我们的生活中。其中,Stable Diffusion作为一种创新的图像生成技术,正在引领一场艺术创作的革命。本文将为您科普Stable Diffusion的相关知识,带您走进这…

Flink 集群部署模式

文章目录 前言一、会话模式(Session Mode)二、单作业模式(Per-Job Mode)三、应用模式(Application Mode) 前言 Flink支持多种集群部署模式,以满足不同场景和需求。以下是Flink的主要集群部署模…

springboot多模块下swaggar界面出现异常(Knife4j文档请求异常)或者界面不报错但是没有显示任何信息

继上一篇博文,我们解决了多模块下扫描不到子模块的原因,建议先看上一个博客了解项目结构: springboot 多模块启动报错Field XXX required a bean of type XXX that could not be found. 接下来我们来解决swaggar异常的原因,我们成功启动项目…

QML 布局管理器之ColumnLayout

一.ColumnLayout讲解 QML中的ColumnLayout是一种布局元素,用于在垂直列中排列其子元素。它的主要使用下列附加属性: Layout.minimumWidth Layout.minimumHeight Layout.preferredWidth Layout.preferredHeight Layout.maximumWidth Layout.maximumHeight Layout.fil…

SqlServer2008(R2)(一)SqlServer2008(R2)经典宝藏操作收集整理

一、常见操作 1、TRUNCATE TABLE 语句 删除表数据 TRUNCATE TABLE语句比DELET删除表中的所有行更快。从逻辑上讲,TRUNCATE TABLE它类似于DELETE没有WHERE子句的语句。 TRUNCATE TABLE语句从表中删除所有行,但表结构及其列,约束,…

Ubuntu 20.04 系统如何优雅地安装NCL?

一、什么是NCL? NCAR Command Language(NCL)是由美国大气研究中心(NCAR)推出的一款用于科学数据计算和可视化的免费软件。 它有着非常强大的文件输入和输出功能,可读写netCDF-3、netCDF-4 classic、HDF4、b…