Wednesday, January 20, 2010

Ping a range of IP address (from Windows machine)

Instead of manually pinging all IP addresses on your LAN you can use this nice command:
Open Command Prompt and type the following line:

FOR /L %i IN (1,1,254) DO ping -n 1 192.168.0.%i | FIND /i "Reply">>c:\ipaddresses.txt

Above command explained

  1. The "-n 1" is for only 1 ping packet to be sent to each computer.Change 192.168.0 to match you own Network ID.
  2. This will ping all IP addresses on the 192.168.0.0 network segment and create a text file called IPADDRESSES.TXT in C:\, where it will list only the IP addresses that gave a reply.
  3. You can also add a -a to the PING command to resolve all the responding IP addresses to HOST names, but doing so will cause the script to take a considerable time to finish: