added fping to all hosts
[pxelator] / lib / PXElator / client.pm
index a06a7e3..e826380 100644 (file)
@@ -5,12 +5,12 @@ use strict;
 use autodie;
 
 use File::Slurp;
-use Net::Ping;
 use Data::Dump qw/dump/;
 
 use server;
 use format;
 use ip;
+use ping;
 
 our $debug = $server::debug;
 
@@ -83,14 +83,12 @@ sub next_ip($) {
        my $mac = shift;
        $mac = format::mac($mac);
 
-       my $p = Net::Ping->new;
-
        my $prefix = $server::ip;
        $prefix =~ s{\.\d+$}{.};
        my $addr = $server::ip_from || die;
        my $ip = $prefix . $addr;
 
-       while ( -e ip_path($ip) || $p->ping( $ip, 0.7 ) ) {
+       while ( -e ip_path($ip) || ping::host($ip) ) {
                $ip = $prefix . $addr++;
                die "all addresses allocated!" if $addr == $server::ip_to;
                warn "skip $ip\n";