HCIA笔记(5)— ARP协议

前言:
通过目的IP地址获取目的MAC地址的过程由ARP协议来实现

学习目标:

  • 掌握ARP的工作原理
  • 理解APR缓存表的作用HCIA笔记(5)— ARP协议_第1张图片
  • 一个设备发数据给另一个设备,除了知道IP地址,还要包含目的的MAC地址,一起封装成帧。每一个网络设备数据封装前要知道下一跳的MAC地址。MAC地址由ARP协议提供,ARP地址是TCP/IP协议簇中组成部分,实现数据链路层的可达性。

HCIA笔记(5)— ARP协议_第2张图片

  • Hardware Type表示硬件地址类型,一般为以太网
  • Protocol Type表示三层协议地址类型,一般为IP
  • Hardware Length和Protocol Length为MAC地址和IP地址的长度,单位是字节
  • Operation Code指定了ARP报文的类型,包括ARP Request和ARP Reply
  • Source Hardware Address指的是发送ARP报文的设备MAC地址
  • Source Protocol Address指的是发送ARP报文的设备IP地址
  • Destination Hardware Address指的是接收者MAC地址,在ARP Request报文中,该字段值为0
  • Destination Protocol Address指的是接收者的IP地址。

ARP工作工程:

  • 通过ARP协议,建立目的IP地址和MAC地址的映射。通过网络层获取目的IP地址还要判断目的MAC地址是否可知。如,在主机A发送数据给主机C时,首先获取主机C的MAC地址。

ARP缓存(ARP Cache):存放IP地址和MAC地址。

  • 发送信息前,查找ARP缓存表,存在对方MAC地址,直接封装成帧。不存在,通过发送 ARP Request报文获取它。如果目标在其他网络,源设备会先查找网关MAC地址,将数据发给网关,再转发。
  • IP和MAC关系映射关系会放入ARP缓存表一段时间,有效期内都可查到,过了这个有效期,会自动删除。
    HCIA笔记(5)— ARP协议_第3张图片
    HCIA笔记(5)— ARP协议_第4张图片
    该例适用不知道主机C的MAC地址:
  1. 帧头的目的MAC用广播形式进行发送,ARP中目的MAC值为0,操作类型为Request。同时,网关会阻止该报文发送到其他网络。
  2. 所有主机收到后,会检查IP地址是否匹配,不匹配则不响应,匹配后主机C把源MCA和IP地址将记录到自己ARP缓存表中。发送ARP Reply进行响应。
  3. 向A发送的ARP Reply报文,源地址和源MAC都是主机C的地址,操作类型为Reply,以单播形式传送。
  4. 主机A收到Reply报文后,检查MAC地址是否匹配,然后将源MAC和源IP地址记录主机A的ARP缓存表中。
    HCIA笔记(5)— ARP协议_第5张图片
  • 同一网段,不同物理网络上的计算机之间,通过ARP代理进行相互通信
  • 因为路由器无法转发,主机B收不到ARP Request报文,也无法应答。路由开启代理ARP功能后,收到Request会先查找路由表,如存在则把自己的G0/0/0接口作为MAC地址回应主机A。主机A通过该MAC地址进行数据转发。

HCIA笔记(5)— ARP协议_第6张图片

  • 将主机IP发生改变,查找网络中是否IP地址有冲突。发送ARP Request报文,设置目的IP地址为自己的IP地址,进行广播,所有主机包括网关都会收到,当有任何主机和网关回应该报文,则可确定IP地址冲突。

总结:

  1. 网络设备在什么情况下发送ARP Request?
    源设备在发送数据给目的设备前,会首先查看自身的ARP缓存,查找ARP缓存中是否存在目的设备的IP地址和MAC地址的映射。如果存在则直接使用,如果不存在则会发送ARP Request。

  2. 网络设备什么时候产生免费ARP
    当网络上的一个设备被分配了IP地址或者IP地址发生变更后,可以通过免费ARP来检查IP地址是否冲突。

你可能感兴趣的:(网络,协议,HCIA)