Jump to content

arp

From RaySoft

arp manipulates or displays the kernel's IPv4 network neighbour cache. It can add entries to the table, delete one or display the current content.[1]

arp stands for Address Resolution Protocol, which is used to find the media access control address of a network neighbour for a given IPv4 Address.[1]

Documentation

Parameters

-d HOST, --delete HOST
Remove any entry for the specified HOST. This can be used if the indicated host is brought down, for example.
-f FILE, --file FILE
Similar to the -s option, only this time the address info is taken from FILE set up.
-n, --numeric
Shows numerical addresses instead of trying to determine symbolic host, port or user names.
-s HOST HARDWARE-ADDRESS, --set HOST HARDWARE-ADDRESS
Manually create an ARP address mapping entry for HOST with HARDWARE-ADDRESS set to hardware address class, but for most classes one can assume that the usual presentation can be used.

Examples

Convert the ARP cache list to JSON with jc, remove some attributes and output it nicely with jq
arp -a | jc --arp | jq 'del(.[].name, .[].permanent)'

Output:

[
  {
    "address": "10.0.0.1",
    "hwtype": "ethernet",
    "hwaddress": "0:0:5e:0:1:1",
    "iface": "en9"
  },
  {
    "address": "10.0.0.6",
    "hwtype": "ethernet",
    "hwaddress": "b8:69:f4:1:70:b1",
    "iface": "en9"
  }
]

References

  1. 1.0 1.1 F. N. van Kempen. "arp(8)." man7.org. https://man7.org/linux/man-pages/man8/arp.8.html (accessed 18.08.2025)