find local computers
Marty Landman
MLandman at face2interface.com
Mon Mar 1 09:52:16 UTC 2004
I'm reposting my previous msg with the exec included as this might make
things clearer./Marty
I recently wrote a bash script to find the active ip addr's on my lan by
pinging every possibility on my class C network. This works nicely, only
taking about 15 seconds of wall time to complete.
The code is:
#!/bin/bash
pingEm()
{
echo "preparing pings"
for((i=1;i<255;i++))
do
echo "ping -c1 192.168.0.$i > $$/$i &" >> pingEmAll.$$
done
echo "start pinging"
chmod +x pingEmAll.$$ && `./pingEmAll.$$`
}
findEm()
{
for((i=1;i<255;i++))
do
awk '/64 bytes from /' $$/$i > ans
awk '{ print length($0) }' ans > len
if [ `more len` ]
then
echo "$i is on the network"
fi
done
}
mkdir $$ && pingEm
findEm
rm -r $$ & rm pingEmAll.$$ ans len
echo End of story
The output looks like this:
$ ./findIps
preparing pings
start pinging
1 is on the network
3 is on the network
7 is on the network
160 is on the network
240 is on the network
End of story
$
Is there any way that I could also discover the names of each of these
active network locations?
Marty Landman Face 2 Interface Inc. 845-679-9387
FormATable DB: http://face2interface.com/Products/FormATable.shtml
Make a Website: http://face2interface.com/Home/Demo.shtml
Free Formmailer: http://face2interface.com/Products/Formal.shtml
More information about the redhat-list
mailing list