Question

Je voudrais vérifier l'équipement de mon grand réseau le plus rapidement possible. Dois-je utiliser Nmap::Parser ou Nmap::Scanner ?

Je veux créer une liste d'adresses IP qui renvoient un ping ainsi qu'une empreinte du système d'exploitation connexes et d'identification.

Exemple :

ping 192.168.*.*

Alors quand je reçois un ping réussi, stocker l'adresse IP dans un hachage avec une estimation de ce que le système d'exploitation est

Était-ce utile?

La solution

Que vous utilisiez Nmap::Parser ou Nmap::Scanner, vous devez exécuter la même analyse avec Nmap, donc il n'y a pas de différence de vitesse entre les deux.

Voici un exemple d'utilisation Nmap::Scanner qui ne peu près ce que vous voulez, rapport sur l'état des hôtes et tenter d'empreintes digitales OS les si elles sont en place, le stockage des résultats dans un hachage. Vous devriez pouvoir l'étendre au besoin.

#!/usr/bin/perl

use strict;
use warnings;

use Nmap::Scanner;

my %network_status;

my $scanner = new Nmap::Scanner;
$scanner->register_scan_complete_event(\&scan_completed);
$scanner->guess_os();

$scanner->scan('-O 192.168.*.*');

foreach my $host ( keys %network_status ) {
    print "$host => $network_status{$host}\n";
}


sub scan_completed {
    my $self     = shift;
    my $host     = shift;

    my $hostname = $host->hostname();
    my $addresses = join(',', map {$_->addr()} $host->addresses());
    my $status = $host->status();

    print "$hostname ($addresses) is $status ";

    my $os_name = 'unknown OS';
    if ( $status eq 'up' ) {
        if ( $host->os() && $host->os()->osmatches() ) {
            my ($os_type) = $host->os()->osmatches();
            $os_name = $os_type->name();
        }
        print "($os_name)";
    }
    print "\n";

    $network_status{$addresses} = $os_name;
}

Autres conseils

Eh bien, l'un d'entre eux est un analyseur de données que vous avez déjà, et l'un d'entre eux est un scanner qui crée des données. Utilisez celui qui fait le travail que vous avez besoin. Quelle partie de la tâche est à l'origine du problème?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top