How To Ping MAC Address?

Today internet and computer networks use popular protocols like TCP/IP, Ethernet, etc. Ethernet is the most popular protocol used in Layer 2 which is called Media Access Control simply MAC. Every ethernet card has a MAC address in order to identify it uniquely. Normally MAC addressed are configured statically into the Ethernet cards, wireless cards, etc. but recently they can be modified with the operating system configuration.

Why Ping Mac Address?

MAC address is used inside the LAN for communication. Every device has a unique MAC address and generally communicates with the gateway and other devices by using its MAC address. The IP address is mainly used to give a unique number that can change in different situations and in different networks.

  • Specify the remote system MAC address.
  • Filter the remote system according to its MAC address.
  • Pair multiple devices according to their MAC addresses.

Ping MAC Address with ping Command

By default, the Windows, Linux, and MacOSX operating systems do not provide a specific command to ping the MAC address. But there is an alternative way to execute MAC ping operations. First, we will ping the remote system IP address with the ping command.

> ping 192.168.142.133

The output will be like below for the ping command and responses.

Pinging 192.168.142.133 with 32 bytes of data:
Reply from 192.168.142.133: bytes=32 time=2ms TTL=64
Reply from 192.168.142.133: bytes=32 time<1ms TTL=64
Reply from 192.168.142.133: bytes=32 time<1ms TTL=64
Reply from 192.168.142.133: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.142.133:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 2ms, Average = 0ms

After the ping command is completed successfully the MAC address of the target will be stored in the ARP cache. ARP cache is a cache or temporary storage used to store IP addresses and related MAC addresses. The MAC address can be listed with the arp command by providing the -a parameter to list all ARP entries.

> arp -a

The output will be as below. As you can see every interface will have different ARP tables because every interface may have a different network connection.

Interface: 192.168.142.130 --- 0x8
Internet Address Physical Address Type
192.168.142.2 00-50-56-ec-77-85 dynamic
192.168.142.128 00-0c-29-60-d4-26 dynamic
192.168.142.132 00-0c-29-60-d4-26 dynamic
192.168.142.133 00-0c-29-e0-58-54 dynamic
192.168.142.254 00-50-56-eb-7a-b6 dynamic
192.168.142.255 ff-ff-ff-ff-ff-ff static
224.0.0.22 01-00-5e-00-00-16 static
224.0.0.251 01-00-5e-00-00-fb static
224.0.0.252 01-00-5e-00-00-fc static
239.255.255.250 01-00-5e-7f-ff-fa static
255.255.255.255 ff-ff-ff-ff-ff-ff static
ARP Table

Ping MAC Address with arp-ping.exe Command

The arping command is specifically created to ping MAC address. The arping is not provided with the Windows operating systems but can be download via the following link.

https://www.elifulkerson.com/projects/downloads/arp-ping-0.5/arp-ping.exe

After download, we can run the arp-ping.exe via the MS-DOS or PowerShell command-line interface.

> arp-ping.exe aa.bb.cc.dd.ee.ff

Linux distributions like Ubuntu, Debian, CentOS, Mint, Kali provide the arping command which is very similar to the arp-ping.exe command. It is not installed by default and can be installed like below.

Debian, Ubuntu, Mint, Kali:

$ sudo apt install arping

CentOS, RHEL, Fedora:

$ sudo dnf install arping

The arping command can be used like below.

> arping aa.bb.cc.dd.ee.ff

Leave a Comment