What to use as ARP request Target Hardware Address

arpmac addressprotocol-theory

When sending ARP request, what must be filled in the target hardware address (THA)? This technet blog post says it is to be filled with zeros (0.0.0.0) -although doesn't look like a MAC address!, and the Wikipedia article suggests FF:FF:FF:FF:FF:FF would be acceptable to all computers, and also stating that This field is ignored in requests.

From the above two articles, I'm given the understanding that there is several implementation for ARP regarding this field. What are the widely used implementation and is there any further standardization for this? And is there any problems so there would be mis-understanding between these implementations? And is there any applications that require specific implementation to that field?

Best Answer

You are mixing up two different pieces of information. The Wikipedia article you link mentions FF:FF:FF:FF:FF:FF as the destination address, not as the target address.

The destination address is part of the L2 Ethernet header, whereas the THA is part of the ARP packet.

To illustrate, I pulled a random ARP packet out of a random capture I had stored on my computer in Wireshark. Note in this image that the destination is ff:ff:ff:ff:ff:ff (L2 broadcast) in the Ethernet header section but below in the ARP request section the "Target MAC Address" is all zeroes as it should be.

enter image description here

EDIT:

It's also worth mentioning that the Technet Author's diagram confirms that using 0.0.0.0 for the THA was a typo in his blog.

Related Topic