VLAN间的通讯---三层交换

news2024/11/17 9:49:13

一.三层交换

1.概念

使用三层交换技术实现VLAN间通信

三层交换=二层交换 + 三层转发

2.基于CEF的MLS

CEF是一种基于拓补转发的模型

  • 转发信息库(FIB)
  • 临接关系表

转发信息库(FIB)可以理解为路由表

邻接关系表可以理解为MAC地址表

3.三层交换转发原理

CA和PCB首次进行通信,PCA发送的第一个数据包,发送至三层交换机的F1/01/1口,报文格式为:

源IP地址(PCA 的IP地址):10.1.1.2

目的IP地址:(PCB 的IP地址):10.1.2.2

源MAC地址:(PCA 的MAC地址):MAC A

目的MAC地址:(三层交换机 的MAC地址):MAC10

三层交换机通过F1/0/1接口收到PCA发送的数据包,会在内部生成PCA自己的条目,匹配不到PCB的地址,通过广播,知晓PCB的MAC地址,生成PCB路由条目,发现是直连路由,然后通过F1/0/2接口传出数据包,已达到PCA向PCB的数据传输
此时PCAPCB所有通信数据包在三层交换机中已形成MLS条目, 下次PCAPCB传输数据通过三层交换机直接查询MLS条目,直接转发至PCB.

二.三层交换实验

1.实验目的

通过三层交换技术使不同网段的客户机之间可以互相通信

2.实验拓扑

搭建三台PC机(PC1、PC2、PC3二层交换机LSW1连接)搭建三层交换机(LSW2)二层交换机(LSW1)相连接

3.实验步骤

给不同网段的pc配上ip地址和网关

pc2,3如上

打开二层交换机,切换用户试图(sys),划分vlan10 vlan20 vlan30 (vlan batch 10 20 30)

进入接口g0/0/1(int g0/0/1),设置端口类型为access(port link-type access),配置该接口的vlanid是10(port default vlan 10

其余接口如上

进入接口g0/0/4(int g0/0/4),设置端口类型为trunk(port link-type trunk,配置该接口的vlanid是所有(port trunk allow-pass vlan all

打开三层交换机lsw1

进入交换机的g0/0/1口(int g0/0/1),为e0/0/4口配置接口类型Trunk(port link-type trunk),并配置该接口类型的所有VLAN ID可以从该端口通过port trunk allow-pass vlan all

划分vlan10 vlan20 vlan30 (vlan batch 10 20 30)

给VLAN接口配置一个VLAN10的虚拟接口(int vlanif 10)为虚拟接口配置网关(ip add 192.168.1.254 24)

其他接口如上

测试,检测pc1是否能和pc2,pc3互通

三.总结

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

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

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

相关文章

从数据应用案例出发,探索2024年及未来的数据科学转型

如今,数据科学已经取得了长足的进步!回顾数据科学的发展史,19世纪,人们使用基本统计模型收集、存储和处理数据。后来,当计算机进入万千家庭,数字时代正式到来,并由此产生了大量数据。互联网上数…

java实现局域网内视频投屏播放(二)爬虫

代码链接 视频播放原理 大多视频网站使用的是m3u8,m3u8其实不是一个真正的视频文件,而是一个视频播放列表(playlist)。它是一种文本文件,里面记录了一系列的视频片段(segment)的网络地址。这些…

ubuntu pycharm 死机,如何重启

1. 找出pycharm 进程的id 进入命令行: ps -ef 是查看当前运行的进程 值输入 ps -ef 会返回所有当前执行的进程,太多了,过滤一下,找到 pycharm : ps -ef | grep pycharm 2. 使用 kill -s 9 来杀死进程 如图所是,…

Visual Studio编辑器中C4996 ‘scanf‘: This function or variable may be unsafe.问题解决方案

目录 ​编辑 题目:简单的ab 1. 题目描述 2. 输入格式 3. 输出格式 4. 样例输入 5. 样例输出 6. 解题思路 7. 代码示例 8. 报错解决 方案一 方案二 方案三 方案四 总结 题目:简单的ab 1. 题目描述 输入两个整数a和b,…

产品Axure的元组件以及案例

前言 产品<Axure的安装以及组件介绍-CSDN博客经过上文我们可以知道我们Axure是一款适用于网站、移动应用和企业软件的交互式原型设计工具。它可以帮助用户创建高保真的交互式原型,包括线框图、流程图、模型、注释和规格等,以便与客户、开发人…

深度学习 Day16——P5运动鞋识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 文章目录 前言1 我的环境2 代码实现与执行结果2.1 前期准备2.1.1 引入库2.1.2 设置GPU(如果设备上支持GPU就使用GPU,否则使用C…

初探栈溢出(下)

0x04 漏洞利用 作为脚本小子,先跑一下写好了的exploit脚本。 打开HackSysEVDExploit.sln文件,直接在vs2019上编译即可。 将生成的HackSysEVDExploit.exe拷贝至win7,执行如下命令 直接可以获取system权限。 那么只跑一下脚本肯定不行&#…

多模态图像配准中的跨模态注意

Cross-modal attention for multi-modal image registration 多模态图像配准中的跨模态注意背景贡献实验方法Feature extractionCross-modal attentionRigid registrationRigid registration implementation details 损失函数Thinking 多模态图像配准中的跨模态注意 Medical I…

现代雷达车载应用——第2章 汽车雷达系统原理 2.6节 雷达设计考虑

经典著作,值得一读,英文原版下载链接【免费】ModernRadarforAutomotiveApplications资源-CSDN文库。 2.6 雷达设计考虑 上述部分给出了汽车雷达基本原理的简要概述。在雷达系统的设计中,有几个方面是必不可少的,它们决定了雷达系…

springboot 集成 redis luttuce redisson ,单机 集群模式(根据不同环境读取不同环境的配置)

luttuce 和redisson配置过程中实际上是独立的&#xff0c;他们两个可以同时集成&#xff0c;但是没有直接相关关系&#xff0c;配置相对独立。 所以分为Lettuce 和 Redisson 两套配置 父pom <!-- Spring Data Redis --><dependency><groupId>org.springframe…

02markdown-学习笔记

一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 换行符<br>标签 写入一段测试用的正文第二段测试文本,如果要对文本进行换行可以使用<br>标签 文本修饰符 字体为斜体的修饰&#xff0c;一对星号包含 字符为粗体&#xff0c;两对星号包含 字体为…

详细了解stm32---按键

提示&#xff1a;永远支持知识文档免费开源&#xff0c;喜欢的朋友们&#xff0c;点个关注吧&#xff01;蟹蟹&#xff01; 目录 一、了解按键 二、stm32f103按键分析 三、按键应用 一、了解按键 同学们&#xff0c;又见面了o(*&#xffe3;▽&#xffe3;*)ブ&#xff0c;最…

我在代码随想录|写代码之203. 移除链表元素,707. 设计链表,206. 反转链表

​第一题 ​​ 203. 移除链表元素 题目: 思路分析: 我们要删除节点说白了就是将节点移除,将要删除的节点的前一个的next域移动到要删除节点的next域,我们可以这样写当我们运到我们要删除节点然后件他删除,那么怎么删除?我们可以直接让我们要删除的元素找不到。如果我们直接将…

如何在Centos 7环境下安装MySQL并登录

目录 先获取MySQL官方yum源 然后正常使用yum命令下载mysql即可完成MySQL的下载 使用mysql客户端登录mysqld服务端 能够登录mysql客户端后&#xff0c;我们最后还需要做一点配置 先获取MySQL官方yum源&#xff08;包括对yum源的介绍&#xff09; 介绍一下yum源 yum源就是一…

k8s如何部署seata(分布式事务)?(第一篇)

k8s如何部署seata(分布式事务)&#xff1f; 官方传送门https://seata.io/zh-cn/ 快速入门SEATA Seata 是一款开源的分布式事务解决方案&#xff0c;致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式&#xff0c;为用户打造一站…

RMQ算法总结

知识概览 RMQ又叫ST表、跳表&#xff0c;可以用来解决区间最值问题&#xff0c;这里这有查询没有修改。当然&#xff0c;这样的问题用线段树也是可以解决的。RMQ算法本质上是倍增动态规划&#xff0c;它的思想是先倍增预处理再查询。f(i, j)表示从i开始&#xff0c;长度是的区…

TableAgent:让数据分析变得轻松简单,导师再也不用担心我的数据分析能力啦!

TableAgent——导师再也不用担心我的数据分析能力啦 1. TableAgent介绍1.1 TableAgent——数据分析智能体1.2 背后强大的技术支持 2. TableAgent注册3. TableAgent使用3.1 入门级使用3.2 魔鬼级使用 4. 对比使用5. 总结 1. TableAgent介绍 1.1 TableAgent——数据分析智能体 …

PostgreSQL向量数据插件--pgvector安装(附PostgreSQL安装)

PostgreSQL向量数据插件--pgvector安装 一、版本二、数据库安装1. 在官网下载PostgreSQL14.0的安装包2.增加用户postgres3.解压安装 三、pgvector安装1. 从github上克隆下来2. 安装pgvector插件3. 开始使用pgvector启用pgsql命令行创建扩展 本文为本人在安装pgvector中踩过的坑…

Postgresql在Windows中使用pg_dump实现数据库(指定表)的导出与导入

场景 Windows中通过bat定时执行命令和mysqldump实现数据库备份&#xff1a; Windows中通过bat定时执行命令和mysqldump实现数据库备份_mysqldump bat-CSDN博客 Windows上通过bat实现不同数据库之间同步部分表的部分字段数据&#xff1a; Windows上通过bat实现不同数据库之间…

Java EE 多线程之线程安全的集合类

文章目录 1. 多线程环境使用 ArrayList1. 1 Collections.synchronizedList(new ArrayList)1.2 CopyOnWriteArrayList 2. 多线程环境使用队列2.1 ArrayBlockingQueue2.2 LinkedBlockingQueue2.3 PriorityBlockingQueue2.4 TransferQueue 3. 多线程环境使用哈希表3.1 Hashtable3.…