myPing Script

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
decembersoul
Beiträge: 283
Registriert: 16.10.2003 10:25:15

myPing Script

Beitrag von decembersoul » 23.03.2007 09:39:16

Um zu wissen welche Rechner in meinem Netz gerade online sind, habe ich ein kleines Script geschrieben.

Code: Alles auswählen

#!/bin/bash

MAX=254
MIN=1

rm -f found.ip

i=$MIN
while [ $i -le $MAX ]
do
 echo -n -e "$i/$MAX \r"

  ping 192.168.1.$i -c 1 -W 1 2>&1 >> /dev/null
        if [ $? -eq 0 ]
        then
                echo 192.168.1.$i >> found.ip
        fi
  i=`expr $i + 1`
done

echo
echo found IPs:
cat found.ip

rm -f found.ip
Nun habe ich überlegt das man ja auch den Hostnamen der Rechner ermitteln könnte.
Leider weiß ich nicht wie ich es machen kann.
Sowas wie gethostname kann nur den eigenen Hostnamen zurück geben.
In dem Netz sind fast alles Linux Rechner. Nur zwei Windos Kisten treiben dort ihr Unwesen.
Sicher macht es einen Unterschied ob es Windows ist oder Linux.
Würde aber gerne von beiden den Hostnamen/Netzwerknamen ermitteln.
Hat jemand eine Idee?

Benutzeravatar
mauser
Beiträge: 1854
Registriert: 27.01.2005 22:34:48

Beitrag von mauser » 23.03.2007 09:49:48

hi,

das geht mit dem Befehl

Code: Alles auswählen

host 192.168.1.1
. Dein ganzes Skript lässt sich aber eigentlich durch den geschickten Einsatz von nmap ersetzen :) Als Startpunkt liesse sich nmap -sP 192.168.1.* verwenden, nur als Beispiel.
Gruss,
mauser

decembersoul
Beiträge: 283
Registriert: 16.10.2003 10:25:15

Beitrag von decembersoul » 23.03.2007 10:02:03

host localhost
;; connection timed out; no servers could be reached

Das mit nmap -sP 192.168.1.* ist echt gut, geht auch VIEL schneller.

//EDIT
wenn ich nmap als root laufen lasse bekomme ich die mac und ein paar Infos. Das reicht mir um zu sehen wer wer ist.

Pawel
Beiträge: 284
Registriert: 27.11.2006 03:59:39

Beitrag von Pawel » 23.03.2007 10:18:09

mauser hat geschrieben:Als Startpunkt liesse sich nmap -sP 192.168.1.* verwenden, nur als Beispiel.
Oder fping. Ist deutlich schneller als beide Verfahren. Allerdings findet man mit ping (ICMP Echo Request) keine PCs die eine Firewall besitzen und dieses verhindern. Da hilft iputils-arping, das findet mittles ARP Requests heraus, ob ein Rechner online ist.

Interessant könnte auch noch der Linux-Magazin Artikel "Licht ins Dunkel" sein.

Antworten