数据包二层转发原理

R1----------SW------------R2
条件:R1:192.168.1.1  mac:a  R2: 192.168.1.2 mac:b
sw是2层交换机
 
R1数据包转发给R2过程:
R1 收到数据包后,查询R1的路由表,查路由表的目的是查找数据包从那个接口出,找到出接口后,目的封装什么类型的帧,完成二层帧封装后,查ARP表,目的是找R2的MAC地址,有2种情况:
(1) R1在ARP表项中找到,完成2层封装,发出去
(2) R1如在ARP中没找到,将数据包丢弃(丢弃的是二层以太网帧),引发R1的ARP表查询,现象是ping 第一个包不通。 R1 以出接口的mac:a 为源mac,以自己的IP:192.168.1.1 为源IP, 以R2的IP:192.168.1.2为目的IP,
目的mac为全F的广播。
SW收到R1发来的ARP请求帧(收到二层单播帧),会打开帧头,查看源和目的mac. 查看自己的mac表,有2种情况
(1) sw收到arp请求帧,查找自己的mac表,如找到表项,查看对方的接口是那个,把帧还原,没有改变R1发来的帧。从出接口转发(2层透传,不改变源mac)
(2) sw查找mac表,如没找到,会在相应vlan里的所有接口复制一份数据帧,泛洪(防止帧丢失)(未知单播帧,未知目的mac)
R2 上收到sw发来的arp请求帧,会以自己的ip:192.168.1.2 为源ip,以出接口的mac:b 为源mac,给R1发arp的回应帧,此时,R2上已建立起与R1的arp表项,
当sw收到R2发的arp回应帧,会不改变的发给R1, R1收到回应帧后,与R2建立起arp表项,
R1再发第二个icmp echo个R2,R2会给R1回应,ping通。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值