ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ARP报文详解

2021-04-04 18:34:46  阅读:119  来源: 互联网

标签:ARP 主机 报文 地址 MAC 详解 IP地址 字段


ARP报文详解

ARP(Address Resolution Protocol)地址解析协议,根据IP地址获取物理地址的一个TCP/IP协议。

  由于OSI模型把网络分为七层,IP地址在OSI模型第三层,MAC地址在第二层,彼此不直接通信。在通过以太网发送IP数据包时,需要封装第三层(32位IP地址)和第二层(48位MAC地址)的报头,由于发送数据包时,只知道目标IP地址,不知道其MAC地址,而又不能跨越第二、三层,所有需要使用地址解析协议。

ARP报文

img

字段1:ARP请求的目的以太网地址,全1时,代表广播地址。

    字段2:发送ARP请求的以太网地址。

    字段3:以太网帧类型表示后面的数据类型,ARP请求和ARP应答此字段为:0x0806。

    字段4:硬件地址类型,硬件地址不止以太网一种,是以太网类型时,值为1。

    字段5:表示要映射的协议地址的类型,要对IPv4地址进行映射,此值为0x0800。

    字段6和7:表示硬件地址长度和协议地址长度,MAC地址占6字节,IP地址占4字节。

    字段8:是操作类型字段,值为1,表示进行ARP请求;值为2,表示进行ARP应答;值为3,表示进行RARP请求;值为4,表示进行RARP应答。

    字段9:是发送端ARP请求或应答的硬件地址,这里是以太网地址,和字段2相同。

    字段10:是发送ARP请求或应答的IP地址。

    字段11和12:是目的端的硬件地址和IP地址。
ARP解析过程

    (1)当PC1想发送数据给PC2,首先在自己的本地ARP缓存表中检查主机PC2匹配的MAC地址

    (2)如果PC1缓存中没有找到响应的条目,它将询问主机PC2的MAC地址,从而将ARP请求帧广播到本地网络的所有主机。该帧中包括源主机PC1的IP、MAC地址,本地网络中的所有主机都接收到ARP请求,并且检查是否与自己的IP地址相匹配。如果发现请求中IP地址与自己IP不匹配,则丢弃ARP请求。

    (3)主机PC2确定ARP请求中得IP地址与自己的IP地址匹配,则将主机PC1的地址和MAC地址添加到本地缓存表中。

    (4)主机PC2将包含其MAC地址的ARP回复消息直接发送回主机PC1(数据帧为单播)。

    (5)主机PC1收到PC2发挥的ARP回复消息,将PC2的IP和MAC地址添加至自己ARP缓存表中,本机缓存是有生存期的,默认ARP缓存表有效期120s。当超过该有效期后,则将重复上面过程。主机PC2的MAC地址一旦确定,主机PC1就能向主机PC2发送IP信息
arp报文总共42 bytes。其中以太网首部14 bytes,arp字段28字节

img

ARP返回报文

img

硬件类型:表示硬件地址的类型(其中,值为1表示以太网地址,其他还可能表示令牌环地址)。

协议类型:表示要映射的协议地址类型(其中,0x0800表示IP地址,其他还可能是ICMP/IGMP)。

硬件地址长度:指出该报文中硬件地址的长度(ARP报文中,它的值为6)。

协议地址长度:指出该报文中协议地址的长度(ARP报文中,它的值为4)。

op:操作字段,共有4种类型(1.ARP请求,2.ARP应答,3.RARP请求,4.RARP应答)。

发送者mac地址:发送方设备的硬件地址。

发送者ip地址:发送方设备的IP地址。

目的mac地址:接收方设备的硬件地址。

目的Iip地址:接收方设备的IP地址。

标签:ARP,主机,报文,地址,MAC,详解,IP地址,字段
来源: https://www.cnblogs.com/fengting0913/p/14616689.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有