二三层转发详细过程(地表最细)
讲解一下PC1 ping PC2的过程中涉及到的表项查找、表项维护与数据包的封装与解封装等过程;
发送过程:
Pc1:先查路由表,发现目的IP与自己不在同一网段,便使用默认网关,封装一个目的IP为pc2,目的mac为R1的icmp包,查arp表没有R1的IP与mac的映射关系。然后,发一个目的mac为全0,目的IP为R1,以太帧目的mac为全f的arp广播帧;
**交换机:**收到arp广播帧以后,先记录pc1的mac与入接口的对应关系在mac表(五分钟有效时间),然后解封装发现是广播帧,进行广播转发给其他接口(洪范);
**R1:**收到广播帧以后,先记录pc1的mac和ip的映射关系,然后解封装发现目的mac为全0,IP为自己,然后把自己的mac封装回一个arp响应包,;
交换机:收到arp响应包以后,先记录R1的mac与入接口的对应关系在mac表,然后查表转发给pc1;
**Pc1:**收到arp响应包以后,拿到了R1的mac,封装进刚才缓存的icmp包进行发送;
**交换机:**收到icmp包以后,查mac表转发给R1;
**R1:**收到icmp包以后,解封装,目的mac为自己,目的IP不同,然后查路由表发现目的IP不在直连网段,再查arp表没有找到R2的IP与mac的映射关系,暂时缓存icmp包。然后发一个目的mac为全0,目的IP为R2,以太帧为全f的arp请求报文给R2;
**R2:**收到arp请求报文以后,先记录R1的IP与mac映射关系,然后进行解封装,发现目的mac和IP均为自己,把自己的mac封装回一个arp响应包;
**R1:**收到arp响应包以后,拿到了R2的mac,然