原理:三层路由转发原理解析

原理:三层路由转发原理解析

路由: 路由发生在OSI网络参考模型中的第三层即网络层。路由引导封包转送,经过一些中间的节点后,到它们最后的目的地。作成硬件的话,则称为路由器。路由通常根据路由表——一个储存到各个目的地的最佳路径的表——来引导封包转送 。

如下图所示
原理:三层路由转发原理解析
1,首先2台主机和2台路由都为初始状态

2,HOSTA想与HOSTB通信

过程解析:

HOSTA通过自己的网关会发送一个arp请求给E0,E0把自己的MAC地址回应给HOSTA,这时HOSTA一个ping包给HOSTB,源ip和源MAC为HOSTA的ip和MAC,目标ip为192.168.2.2/24目标MAC为00-11-12-21-22-22,E0收到PING包后会进行校验发现目标MAC是自己,这时会拆包查看目标ip,通过路由器A的路由表发现要到目标ip需要从路由器A的E1出口,此时的源ip和源MAC为路由器E0端口的ip和MAC,目标ip为HOSTB的ip192.168.2.2/24,目标MAC不知道 ,所以就会丢包,这时会重新封装,路由器A的E1端口一个arp广播给路由器B的E1端口,路由器B的E1会回应自己的MAC给路由器A的E1端口,这时路由器A的E1端口会重新发个PING包,源IP源MAC为路由器A的E1端口的ip和MAC,目标ip为HOSTB的ip目标MAC为路由器B的E1端口的MAC 00-11-12-21-44-44,路由器B的E1端口收到ping包校验MAC地址发现是自己会拆包,看到目标IP,通过查看路由器B的路由表发现到目标IP需要从路由器B的E0接口出去,此时源ip和源MAC为路由器B的E1端口的ip和MAC,目标ip为HOSTB的ip 目标MAC不知道,所以会丢包,这时会重新封装,路由器B的E0端口一个arp请求给HOSTB,HOSTB把自己的MAC地址回应给路由器B的E0端口,此时知道HOSTB的ip和MAC,那么HOSTA可以直接一个数据包给HOST。

总之IP不变,MAC始终在变。