什么是ARP请求消息中的目标协议地址

时间:2017-11-14 16:14:07

标签: sockets networking ethernet arp

我试图了解ARP及其应用。 到目前为止,我已经阅读了有关ARP请求消息头的结构。它由以下字段组成,其中包含要填写的相关信息

Hardware Type(2 Bytes):  1 (for Ethernet is 1)
Protocol Type(2 Bytes): IPv4 2048
Hardware Address Length (1 Bytes): Ethernet MAC address is 6 bytes
Protocol Address Length(1 Byte): IPv4 is 4
OP Code(2 bytes) : 1 for ARP request and 2 arp reply
Sender Hardware Address(6 Bytes): MAC address of device sending message (my         MAC)
Sender Protocol Address( bytes 1 and 2):protocol address of device sending(my IP)
target hardware address (6 bytes):should all be set to 0
Target Protocol Address (4 bytes):What should be in this field?

我的简单问题是:

如果ARP是广播消息(这意味着它是从单个节点发送给许多人的消息),我怎么知道要填充哪个目标协议地址?这提出了另一个问题,ARP不能用于ping网络中连接的所有设备(已知和未知)并获取其MAC和IP。

1 个答案:

答案 0 :(得分:0)

ARP(地址解析协议)从第3层地址解析第2层地址。 ARP请求在第2层广播,其中包含您要为其解析第2层地址的特定第3层地址。

基本上,您要求第2层域中的每个主机,“谁有这个特定的第3层地址?”第2层域上的每个主机都将收到请求,但仅限具有该第3层地址的主机将响应该请求,将其第2层地址提供给请求主机。