二层转发过程
一、什么是二层转发?
二层转发就是基于MAC地址进行数据包转发。
详解:


-
单播地址:第一个字节最低位为0,如 00-0f-e2-00-00-06
-
多播地址:第一个字节最低位为1,如 01-0f-e2-00-00-06
- 广播地址:48位全为1,如ff-ff-ff-ff-ff-ff
4、冲突域与广播域
-
冲突网络(冲突域):连接在同一个到导线上的所有工作站点集合,一个节点发出的报文其余节点都能收到,从而产生冲突。
-
广播网络(广播域):限制以太网广播报文的范围,一个站点发送一个广播报文其余站点都可以收到。

场景1
如果主机A没有主机B的ARP映射,主机A需要发送ARP请求,以获取主机B的MAC,将报文发往交换机C,交换机C采用洪泛的形式广播报文,主机B收到广播报文后,在自己的ARP缓存表中写入主机A的IP到MAC的映射,将自己的MAC封装到ARP回复报文中,单播给主机A,交换机C收到主机B恢复给主机A的ARP Reply报文后记录主机B的IP到MAC的映射表,并把报文转发给主机A,主机A获取到主机B的MAC后,在自己的ARP缓存表中写入主机B的IP到MAC的映射,构造报文发送给主机B。
场景2
主机A查看自己的ARP缓存,检查是否有主机B的IP到MAC的映射,如果有映射,构造报文,目的IP为主机B的IP,源IP为主机A的IP,目的MAC为主机B的MAC,源MAC为主机A的MAC,将报文发送给交换机C,交换机C进行MAC地址表学习,将主机A的MAC和报文入端口号记录下来,然后交换机C查看自己的MAC转发表,获取主机BMAC的映射端口,将报文从此端口转发出去,报文到达主机B。
跨vlan转发过程
跨网段通信(单臂路由):首先源IP地址是PC1的,目标IP地址是PC2,发送出去时首先经过交换机,那么此时交换机发现是从vlan10过来的就会标记一个标签,VLAN-ID为10,然后将数据发给R1,此时R1收到后查询路由表,然后发现是自己的直连网段,随即转发出去,但是此时的VLAN-ID转换为20,因为路由器根据自己的逻辑子接口和PC1发送的数据包是可以确定出将要发往哪个VLAN-ID的。所以上图中ID转换为20.从Trunk链路回到交换机,交换机接收到信息后知道是发往VLAN20 ,然后解除标记的ID,当PC2收到信息时,会给出回应,此时源IP地址是PC2,目标IP地址是PC1,而经过交换机时,又被打上标签所以是VLAN20,即上图中ID为20,交换机收到信息后通过Trunk链路发送给路由器,路由器开始匹配路由表,将VLAN ID进行转换在将信息转发出去,所以此时的ID为10.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)