my @IPsinrange = &getAllIPs($range) ; my $np = new Nmap::Parser; $np->parsefile('/home/users/axiroot/scripts/monitor-client/tmp/nmap.xml'); #using filenames my $si = $np->get_session(); #my @MACsinrange = &getAllMACs($range,) foreach my $ip (@IPsinrange) { $output .= "\n" ; $output .= "$ip\n" ; for my $host_obj ($np->all_hosts()){ if ( $host_obj->ipv4_addr() eq $ip ){ my $state = ""; $state = $host_obj->status() ; if ( $state eq "up" ) { $output .= "$state\n" ; my $hostname = $host_obj->hostname() ; if ( $hostname eq 0 ) { $hostname = "Hostname niet gekend" ; } #print "hostname: $hostname \n" ; $output .= "$hostname\n" ; my $a = nslookup(host => $ip, type => "PTR"); if ( $a eq ""){ $output .= "Niet in DNS\n" ; } else { $output .= "$a\n" ; } my $openPort = (join ',',$host_obj->tcp_ports('open'))."\n" ; my @ports = split ',', $openPort; $output .= ""; foreach my $port (@ports) { my $svc = $host_obj->tcp_service($port); my $service = $svc->name() ; #$output .= "$port : $service
" ; $output .= "$port : $service
" ; } $output .= "\n" ; my $mac = $host_obj->mac_addr() ; $output .= "$mac\n" ; my $type = $host_obj->mac_vendor() ; $output .= "$type\n" ; } } } $output .= "\n" ; }