Skip to content

Finding ethernet address (MAC) of an IP address with arping

  • by

Note

It needs gawk, sed and grep.

  1. arping -c 1 192.168.1.1 | grep “:” | sed “s/\[//g;s/\]//g” |gawk ‘{print $5}’
  2. # 00:AA:BB:CC:DD:EE
  3. # Find MACs of all the hosts on a specific network with broadcast pings. Displays:
  4. # 192.168.1.1 -> 00:AA:BB:CC:DD:EE
  5. # 192.168.1.2 -> 00:FC:AE:5C:D1:A6
  6. # …
  7. for i in `ping -b -c 5 192.168.1.255 | grep “: ic” | gawk ‘{print $4}’ | sort -u | sed “s/://g”`
  8. do
  9. ย  ย arping -c 1 $i | grep “:” | sed “s/\[//g;s/\]//g” | gawk ‘{a=$4″ -> “$5;print a}’
  10. done