Powershell SendPingAsync время от времени пропускает живые IP-адреса
(1..254) | % {
$ping = New-Object System.Net.Networkinformation.Ping
[Void](Register-ObjectEvent $ping PingCompleted -Action {
param($s, $e);
if($e.Reply.Status -ne "TimedOut") {
Write-Host $e.Reply.Address, ($e.Reply.RoundtripTime.toString() + "ms")
}
})
[void]$ping.SendPingAsync(“192.168.1.$_”)
}
Я проверил это в небольшой подсети. Он находит 1-4 из шести активных окон Windows, в то время как Nmap и множество простых приложений сканера находят все шесть. Если я использую синхронный Ping.Send(), он находит их все. Я перепробовал все и ищу помощи, потому что это, кажется, вещь PS, и я - нуб PS..