#!/usr/bin/perl use Net::Ping; my $host = 'Virt-titan-26'; my $pings_timeout = 15; # seconds print("Pinging host [$host]...\n"); # Modified ping to accept $family(ipv6) as seson parameter my $ping = Net::Ping->new('icmpv6', 'ipv6'); $ping->hires(1); my $single_ping_timeout = 5.0; # seconds my $pings_start_time = time; while (1) { my ($ret, $pingtime, $ip) = $ping->ping($host, $single_ping_timeout); my $pings_duration = time - $pings_start_time; # print("\n\n\nAnand : $ip\n\n\n\n"); if ($ret) { print("Host [$host ($ip)] responded to ping \n"); last; } else { print("\nHost [$host ($ip)] did NOT respond to ping \n"); } if ($pings_duration >= $pings_timeout) { print("\nHost [$host ($ip)] did not respond to any pings within timeout of \n"); exit; } print("\nSleep\n"); sleep(1); } print("\nVerified ping connectivity to host \n"); #### C:\Users\Administrator>perl C:\test-ping.pl Pinging host [Virt-titan-26]... Host [Virt-titan-26 (xxxx)] did NOT respond to ping Sleep Host [Virt-titan-26 (xxx)] did NOT respond to ping Sleep Host [Virt-titan-26 (xxx)] did NOT respond to ping Host [Virt-titan-26 (xxx)] did not respond to any pings within timeout of