Thursday, January 17, 2008

HowTo: Get MAC Address of PCs Around

IP address inventory and management could be part of your regular task. This may include MAC address inventory for network cards and host identification.

Here's a quick blog entry on retrieving MAC Address the network card of each host inside your local broadcast network.

To retrieve and fetch the MAC Address of a particular host's IP address

# arping host.ip.address.here
# arping x.x.x.x

Just make sure that the target host is part of your local subnet or local broadcast network to avoid getting the MAC address from the middle router that is in action of the route stuff. This arping command can also be used to retrieve MAC address from multiple host to fetch multiple host from your local network via shell script.

Here's a generic and basic shell script to arping multiple hosts. The below shell code would arping hosts that has IP address between 192.168.0.2 and 192.168.0.254 .

# cat multiple.sh
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#/bin/bash
for ((i=2; i<=254;i=i+1 ));
do
arping -c 1 192.168.0.$i
done
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Then, simply call the script to filter only the MAC address like so
# ./multiple.sh | grep "reply from"
Result:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unicast reply from 83.x.x.x [00:02:A5:EC:00:8B] 0.705ms
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

IP address and the MAC address filter can also be applied similarly like so
# ./multiple.sh | grep "reply from" | awk '{print $4,$5}'

Alternatively, you can use linux nmap command to retrieve MAC address of a particular host with known IP address as shown below

# nmap x.x.x.x
# nmap enter.ip.address.here

Nmap also supports multiple IP address and subnet blocks as input parameters. This basically means that nmap linux tool can list out MAC address of multiple hosts by feeding nmap with multiple host or network block inputs like so

# nmap 192.168.0.0/24

And a lot more. Enjoy.

Related Readings:
Other Interesting Pings
More of NMap Port Scanning
MAC Address Packet Filtering Using Iptables
Ping IP Address Subnet and Multiple Hosts Ping
Linux Ping Command Explained
Install Fping Linux Tool

0 comments:

Sign up for PayPal and start accepting credit card payments instantly.
ILoveTux - howtos and news | About | Contact | TOS | Policy