Pregunta

Me gustaría auditar el equipo de mi red grande de la manera más rápida posible. Debería usar Nmap::Parser o Nmap::Scanner ?

Quiero crear una lista de direcciones IP que devuelven un ping, así como una huella OS relacionada e identificación.

Ejemplo :

ping 192.168.*.*

A continuación, cuando llegue un ping exitoso, almacenar la dirección IP en un hash junto con una estimación de lo que el sistema operativo es

¿Fue útil?

Solución

Si usted utiliza Nmap::Parser o Nmap::Scanner, usted tiene que ejecutar el análisis con Nmap, así que no hay diferencia de velocidad entre los dos.

Este es un ejemplo usando Nmap::Scanner lo que hace aproximadamente lo que quiere, informar del estado de los anfitriones e intentar OS ellas huellas digitales si están arriba, almacenando los resultados en un hash. Usted debe ser capaz de ampliar según sea necesario.

#!/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;
}

Otros consejos

Bueno, uno de ellos es un programa de análisis de datos que ya tiene, y uno de ellos es un escáner que crea datos. Utilice el que hace el trabajo que necesita. ¿Qué parte de la tarea está causando el problema?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top