mac 表 && arp 表

 

mac表:交换机就是根据mac 表 去转发数据的(工作在二层)

在 2层中,同一个交换机下,主机A 想要和主机C 通信

 

主机A 将请求发送给交换机(源mac 是主机A 的mac,目标mac 是主机C 的mac)。交换机接收到 数据帧,首先会去记录数据帧中的源mac 地址以及由哪一个端口转发进来,然后会去找自己的mac 表,看下有没有到目标mac 地址的条目。

1、如果有,将这个数据帧从mac条目中对应的接口转发出去(也就是单播);

2、如果没有,将这个数据帧广播到交换机其他所有接口(即二层广播,也叫泛洪)。

这时,所有主机(主机A 除外)都会收到数据帧。(这里注意:如果这个交换机上接口连接了其他交换机,那么其他交换机也会收到广播包)。其他交换机也会去检查自己的mac 表有没有目标地址。如果没有的话,从自己的其他接口将这个数据帧广播出去到所有的主机。只有目标mac 的主机(主机C)会去响应这个广播包,发送一个回包给自己的交换机(回包中包括自己的mac 地址)

这样两个交换机都会收到这个回包,同时会去记录这个mac 条目(主机Bmac 地址和交换机的接口)

那么当A 想要和C 通信时候,交换机通过查看mac 表就知道需要将这个数据帧从哪一个接口转发出去了

 

 

arp表:记录 主机ip 和mac 的对应关系(工作在三层)

 

主机A 想和主机B 通信。主机A 会根据主机 B 的IP 地址去检查自己的arp表,看下有没有主机B ip 地址对应的mac 地址表。

1、如果有的话,那么封装数据帧。源mac 是主机A mac。目标mac 是主机B 的mac地址

2、如果没有,那么主机A 会发送一个arp 请求,目标IP 地址是主机B 的ip 地址,目标mac 地址是二层广播帧FF-FF-FF-FF-FF-FF。源mac 和源ip 是主机A 的地址

交换机收到广播帧,会将这个数据帧除这个端口以外所有的端口转发出去。

当主机B接受到此数据帧后,会检查这个目的IP地址是不是自己的,并将主机A的IP地址和MAC地址的对应关系记录到自己的ARP缓存表中,同时会发送一个ARP应答,其中包括自己的MAC地址。

当主机A 拿到这个回应的数据帧时候,就会将B 的mac 地址和ip 地址对应起来放到自己的arp 表里面。

同时交换机也会去学习到A 和B 的mac 地址

 

转载于:https://www.cnblogs.com/yangerr/p/6038849.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值