Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hallo zusammen,

ich bin auf der Suche nach einem Script das mir in einem Netz z.b 192.168.7.x alle IP-Adressen rauszieht die pingen. Hintergrund ist ich muss wissen welche Rechner/IP-Adressen an sind oder nicht. Dann müsst ich immer eine nach der anderen anpingen. Kann man das in einem Script lösen? Kann mir da jemand netterweise nen Tipp geben?

Geschrieben

Du könntest unter z.B. über ein PHP-Script per "Brut-Force" über exec einen Ping versenden und das Ergebnis prüfen. Persönlich finde ich das aber sehr unschön, denn einfach alle Adressen im Netz durchlaufen und pingen, naja. Du könntest auch die Arp-Tabelle holen und diese auswerten und dann gezielt auswerten. Ein weiteres Problem ist, wenn ein Rechner durch eine FW keine ICMP Antworten sendet.

Ich denke eine gute Lösung wäre die Daten, als welchem Port welche Mac-Adresse hängt, vom Switch per SNMP zu holen und falls Du die IP benötigst diese Per ARP zu erfragen ggf. dann über die IP und DNS den Hostnamen.

Phil

Geschrieben

#!/usr/bin/perl -w


use strict;

use Net::Ping;


my $i = 0;

my $host = 0;

my $ping = Net::Ping->new('icmp', 1);

my $online = open(ONLINE, ">online.txt");

my $offline = open(OFFLINE, ">offline.txt");


for($i = 0; $i <= 25; $i++)

{

    $host = "192.168.0.$i";


    if($ping->ping($host))

    {

        print "Online: $host\n";

        print ONLINE "Online: $host\n";

    }

    else

    {

        print "Offline: $host\n";

        print OFFLINE "Offline: $host\n";

    }  

}


# eof


Geschrieben

Hi,

aber bedenke:

If the "icmp" protocol is specified, the ping() method sends an icmp echo message to the remote host, which is what the UNIX ping program does. If the echoed message is received from the remote host and the echoed information is correct, the remote host is considered reachable. Specifying the "icmp" protocol requires that the program be run as root or that the program be setuid to root.

Und ich hoffe, dass du dein Webserver nicht als root laufen hast ...

ciao,

vic

Geschrieben

Man kann auch bei der Objekterzeugung "udp" oder "tcp" nehmen, da wo jetzt "icmp" steht. Das erfordert dann keine Root-Berechtigungen.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...