How to recursively find ip-addresses in all files under a specified directory.
A quick one line command that will find ip-addresses but will also find ip-address type strings that contain numbers larger than 255
Substitute the directory "/home" for the directory you would like to search
find /home -type f | xargs grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
This script is more complicated but will filter out a lot more non ip-address strings
Send the standard output to a script named findip.out, because in this script we prevent searching for ip-addresses in the output file findip.out
find / -type f -print | grep -v findip.out | while read FILE do strings -a -n8 $FILE | \ tr -cs '[0-9.]' '[\n*]' | \ grep "[0-9]\{2,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" | \ sed "s=^.*\$=$FILE &=" done | awk -F"\t" '{n=split($2,octets,".") if (n==4) { good=0 for (octet in octets) if((octets[octet]>=0)&&(octets[octet]<=255)) good++ if(good==4) print $0 } }'