路由器收到一个数据帧后的处理过程
darkless

路由器是一个三层设备,当它收到一个数据帧时是如何处理的呢?

数据帧有三种:

  • 单播帧
  • 广播帧(路由器是隔离广播域的,所以路由器只会处理ARP广播报文)
  • 组播帧

路由器对以上三种帧的处理情况如下:

  • 若收到一个二层单播帧,对于路由器来讲,是一个三层设备,当然兼具二层的功能,所以当收到一个单播帧的时候,要判断这个帧的目的mac地址是不是接口的mac地址,如果是,解封装去看三层的ip地址,再看三层目的ip地址是不是接口的ip地址,如果是,交给接口处理,如果不是,去查找路由表,去重新去做一个二层帧的封装,继续往下查找。如果目的mac不是接口的mac地址,直接丢掉。
  • 若收到一个二层广播帧,那么是arp广播,它就会解封装,看arp信息里请求的ip地址是谁,如果说请求里的是路由器所在接口的IP地址,一定会去响应;如果说请求的IP地址不是路由器接口的IP地址,同时路由器没有开启ARP代理,一定会丢弃,如果ARP请求的不是路由器接口的,是后面的网段,并且开启了ARP代理,路由器去判断有没有去往目标网段的路由,如果有,就去做代理。
  • 若收到一个二层组播帧,要看路由器的接口有没有加入这个组,缺省情况下,路由器接口加入了224.0.0.1 ,224.0.0.2 。
    (使能了组播功能就加入了),如果路由器接口没有加入到这个组播组,那么丢弃。
 评论
评论插件加载失败
正在加载评论插件