Bash program to find active ips

I am learning Ethical hacking and penetration testing these days, and thought to write something in blog so that it can be helpful for others.

So today i learned how to write a bash program to find active ips on your network.

here is the program, i will explain it below.

#!/bin/bash
if [ "$1" == "" ]
then
echo "Usage: ./ping.sh [network]"
echo "Example: ./ping.sh 192.168.1"
else
for x in {1..254} ; do
ping -c 1 $1.$x |grep "64 bytes"|cut -d" " -f4|sed 's/.$//'
done
fi

I won't go into the complete details , instead i am writing out only the problems i faced.

  1. first is the if command syntax , there is a space after if [ , it will give error if you write without space if[ 
  2. The seq command somehow didn't worked for me, (i am using ubuntu 17), so i used {1..254}, this command will let the variable take one value at a time from 1 to 254
  3. semi colon after the range is defined.
  4. must use a space after sed command i.e. sed 's/....'

That is all , it worked fine for me in ubuntu. striping the text that is not important to me and only showing me the ip addresses that are active in a given network.




CYB3RTR0N

No comments:

Regulatory Compliance and SOC 2: Which Industries and Regulatory Standards Require SOC 2?

Regulatory Compliance and SOC 2: Which Industries and Regulatory Standards Require SOC 2? SOC 2 compliance has become a critical benchmark f...