expandCIDR will use an nmap compliant scope list file and expand it, generating a file with the IP list. Optionally it can also select an arbitrary number of random IPs from the expanded IP list, instead.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
expandCIDR/expandcidr.sh

39 lines
1.1 KiB

Help()
{
echo ""
echo "No arguments supplied - take this:"
echo ""
echo "expandcidr - A file with a scope list in CIDR notation is expanded "
echo " to all possible IPs. It can also output instead a"
echo "▅▅▅▅▅▅▅▅▅ a specified number of unique random IPs from the output"
echo "▅▅▅▅▅▅▅▅▅ file (useful for sample testing, for ex.)."
echo "▅▅▅▅▅▅▅▅▅ Script leverages on nmap - same scope list format"
echo "▅▅▅▅ ▅▅▅▅ "
echo "▅▅▅▅▅▅▅▅▅ Example: expandcidr scope.txt output.txt 4000"
echo ""
echo "Usage: expandcidr [input file] [output file] [optional-rnd-#-ips]"
echo ""
echo ""
}
while getopts ":h" option; do
case $option in
h) # display Help
Help
exit;;
esac
done
if [ $# -eq 0 ]
then Help
exit 1
fi
# command chain
if [ -z $3 ]
then
nmap -sL -n -iL $1 | grep 'Nmap scan report for' | cut -f 5 -d ' ' > $2
else
nmap -sL -n -iL $1 | grep 'Nmap scan report for' | cut -f 5 -d ' ' | shuf -n $3 > $2
fi