ARP帧格式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ARP帧格式
ARP帧格式
////////////////////////////////////////////////////////////////////////////////
大概了解一下ARP协议。ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写,
它的作用是将IP地址转换成物理地址(就是常说的MAC地址),其详细过程参考《TCP/IP详解卷一》。
协议ARP的分组格式如下:
------------------------------------------
以太网目的地址(6个字节)
以太网源地址(6个字节)
帧类型(ARP = 0806)(2个字节)
------------------------------------------
硬件类型(Ethernet=01)(2个字节)
协议类型(IPv4=0800)(2个字节)
硬件地址长度(1个字节)
协议地址长度(1个字节)
OP操作选项(ARP request=01,ARP reply=02)(2个字节)
发送端以太网地址(6个字节)
发送端IP地址(4个字节)
目的以太网地址(6个字节)
目的IP地址(4个字节)
--------------------------------------------
////////////////////////////////////////////////////////////////////////////////
我们向目标主机发送一个ARP请求,如果目标主机处于活动状态则会返回其MAC地址,
如果对方返回MAC地址,则表明对方处于活动状态,这样达到探测目的。
ARP请求包内容如下:
------------------------------------------
以太网目的地址|FFFFFFFFFFFF(广播地址)
以太网源地址|本地MAC地址
帧类型|0806
------------------------------------------
硬件类型|01
协议类型|0800
硬件地址长度|06
协议地址长度|04
OP操作选项|01
发送端以太网地址|本地MAC地址
发送端IP地址|目标主机IP地址
目的以太网地址|000000000000
目的IP地址|目标主机IP地址
--------------------------------------------
////////////////////////////////////////////////////////////////////////////////
注意:这里以太网目的地址为FFFFFFFFFFFF,这是广播地址,
以太网上所有主机都能收到这个包,在收到这个数据包后,操作系统判断目的IP地址是不是这台主机,如果不是则丢弃(不作处理),
否则发送回一个ARP应答包,
包的内容如下:
------------------------------------------
以太网目的地址|探测主机的MAC地址
以太网源地址|本地MAC地址(这里本地指被探测主机)帧类型|0806
------------------------------------------
硬件类型|01
协议类型|0800
硬件地址长度|06
协议地址长度|04
OP操作选项|02
发送端以太网地址|本地MAC地址(这里本地指被探测主
机)
发送端IP地址|本机IP地址(这里本地指被探测主机)目的以太网地址|探测主机的MAC地址
目的IP地址|探测主机的IP地址
--------------------------------------------
////////////////////////////////////////////////////////////////////////////////
请求包:
8c:21:0a:ed:88:a2 Broadcast ARP 60 Who has 192.168.1.109? Tell 192.168.1.1
格式:
ff ff ff ff ff ff //broadcast
8c 21 0a ed 88 a2//srcmac
//12
08 06
00 01
08 00
06
04
00 01 //请求包
//10
8c 21 0a ed 88 a2 //srcmac
c0 a8 01 01 //srcip
00 00 00 00 00 00 //destmac
c0 a8 01 6d//destip
//20
//以上合计42
8c 21 0a ed 88 a3
28 6e f0 dc e2 85
cf 2c 8c 21 0a ed
//18
////////////////////////////////////////////////////////////////////////////////
请求包:
e8:40:f2:9f:4f:20 Broadcast ARP 60 Who has 192.168.1.1? Tell 192.168.1.100
格式:
ff ff ff ff ff ff //s
e8 40 f2 9f 4f 20 //d
08 06 //arp //中间10个字节