- Products
- Learn
- Local User Groups
- Partners
- More
The Great Exposure Reset
24 February 2026 @ 5pm CET / 11am EST
CheckMates Fest 2026
Watch Now!AI Security Masters
Hacking with AI: The Dark Side of Innovation
CheckMates Go:
CheckMates Fest
🎓 Quickly monitor a list of IP addresses
👉 Helpful during migrations or within troubleshootings
🚀 Linux / MacOS version available here
One-liner (PowerShell) to quickly monitor Ping, HTTPS, SSH for a list of IP addresses.
Simply add your IPs to the one-liner below and run it in PowerShell:
$ips="10.10.10.1","10.10.10.2","10.10.10.3","10.10.10.4","10.10.10.5","10.10.10.6","10.10.10.7";function t($i,$p){try{$c=New-Object System.Net.Sockets.TcpClient;$r=$c.BeginConnect($i,$p,$null,$null);if(-not $r.AsyncWaitHandle.WaitOne(200,$false)){$c.Close();return $false};$c.EndConnect($r);$c.Close();return $true}catch{return $false}};while($true){Write-Host "`n$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')" -ForegroundColor Yellow;$ips|%{$ping=Test-Connection $_ -Count 1 -Quiet;$h=t $_ 443;$s=t $_ 22;Write-Host $_ -ForegroundColor Cyan -NoNewline;Write-Host " | Ping: " -NoNewline;Write-Host $ping -ForegroundColor ($(if($ping){"Green"}else{"Red"})) -NoNewline;Write-Host " | HTTPS: " -NoNewline;Write-Host $h -ForegroundColor ($(if($h){"Green"}else{"Red"})) -NoNewline;Write-Host " | SSH: " -NoNewline;Write-Host $s -ForegroundColor ($(if($s){"Green"}else{"Red"}));};Start-Sleep 5}
Stop the monitoring via Crtl-C.
🎓 Quickly monitor a list of IP addresses
👉 Helpful during migrations or within troubleshootings
🚀 Linux / MacOS version available here
One-liner (PowerShell) to quickly monitor Ping, HTTPS, SSH for a list of IP addresses.
Simply add your IPs to the one-liner below and run it in PowerShell:
$ips="10.10.10.1","10.10.10.2","10.10.10.3","10.10.10.4","10.10.10.5","10.10.10.6","10.10.10.7";function t($i,$p){try{$c=New-Object System.Net.Sockets.TcpClient;$r=Nice one! 👍
If you allow: This would do the same in Linux/MacOS
ips=("10.10.10.1" "10.10.10.2" "10.10.10.3");t(){ timeout 0.2 bash -c "cat < /dev/null > /dev/tcp/$1/$2" 2>/dev/null && echo true || echo false;};while true;do echo -e "\n\e[33m$(date '+%Y-%m-%d %H:%M:%S')\e[0m";for ip in "${ips[@]}";do ping -c 1 -W 1 $ip >/dev/null 2>&1 && ping=true || ping=false;h=$(t $ip 443);s=$(t $ip 22);echo -ne "\e[36m$ip\e[0m | Ping: ";[[ $ping == true ]]&&echo -ne "\e[32m$ping\e[0m"||echo -ne "\e[31m$ping\e[0m";echo -n " | HTTPS: ";[[ $h == true ]]&&echo -ne "\e[32m$h\e[0m"||echo -ne "\e[31m$h\e[0m";echo -n " | SSH: ";[[ $s == true ]]&&echo -e "\e[32m$s\e[0m"||echo -e "\e[31m$s\e[0m";done;sleep 5;done
Nice one!
👍
If you allow: This would do the same in Linux/MacOS
ips=("10.10.10.1" "10.10.10.2" "10.10.10.3");t(){ timeout 0.2 bash -c "cat < /dev/null > /dev/tcp/$1/$2" 2>/dev/null && echo true || echo false;};while true;do echo -e "\n\e[33m$(date '+%Y-%m-%d %H:%M:%S')\e[0m";for ip in "${ips[@]}";do ping -c 1 -W 1 $ip >/dev/null 2>&1 && ping=true || ping=false;h=$(t $ip 443);s=$(t $ip 22);echo -ne "\e[36m$ip\e[0m | Ping: ";[[ $ping == true ]]&&echo -ne "\e[32m$ping\e[0m"||echo -ne "\e[
Just tested it with 8.8.8.8 and works well.
PS C:\WINDOWS\system32> $ips="8.8.8.8";function t($i,$p){try{$c=New-Object System.Net.Sockets.TcpClient;$r=$c.BeginConnect($i,$p,$null,$null);if(-not $r.AsyncWaitHandle.WaitOne(200,$false)){$c.Close();return $false};$c.EndConnect($r);$c.Close();return $true}catch{return $false}};while($true){Write-Host "`n$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')" -ForegroundColor Yellow;$ips|%{$ping=Test-Connection $_ -Count 1 -Quiet;$h=t $_ 443;$s=t $_ 22;Write-Host $_ -ForegroundColor Cyan -NoNewline;Write-Host " | Ping: " -NoNewline;Write-Host $ping -ForegroundColor ($(if($ping){"Green"}else{"Red"})) -NoNewline;Write-Host " | HTTPS: " -NoNewline;Write-Host $h -ForegroundColor ($(if($h){"Green"}else{"Red"})) -NoNewline;Write-Host " | SSH: " -NoNewline;Write-Host $s -ForegroundColor ($(if($s){"Green"}else{"Red"}));};Start-Sleep 5}
2026-01-14 21:04:06
8.8.8.8 | Ping: True | HTTPS: True | SSH: False
2026-01-14 21:04:11
8.8.8.8 | Ping: True | HTTPS: True | SSH: False
2026-01-14 21:04:17
8.8.8.8 | Ping: True | HTTPS: True | SSH: False
2026-01-14 21:04:22
8.8.8.8 | Ping: True | HTTPS: True | SSH: False
2026-01-14 21:04:27
8.8.8.8 | Ping: True | HTTPS: True | SSH: False
PS C:\WINDOWS\system32>
Just tested it with 8.8.8.8 and works well.
PS C:\WINDOWS\system32> $ips="8.8.8.8";function t($i,$p){try{$c=New-Object System.Net.Sockets.TcpClient;$r=$c.BeginConnect($i,$p,$null,$null);if(-not $r.AsyncWaitHandle.WaitOne(200,$false)){$c.Close();return $false};$c.EndConnect($r);$c.Close();return $true}catch{return $false}};while($true){Write-Host "`n$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')" -ForegroundColor Yellow;$ips|%{$ping=Test-Connection $_ -Count 1 -Quiet;$h=t $_ 443;$s=t $_ 22;W
...;Nice!
When I am having connectivity problems I leave this running to see the same but for just one IP.
ping -t 9.9.9.9 | ForEach-Object { "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') $_" }
PS C:\Users\Don> ping -t 9.9.9.9 | ForEach-Object { "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') $_" }
2026-01-19 19:10:44
2026-01-19 19:10:44 Pinging 9.9.9.9 with 32 bytes of data:
2026-01-19 19:10:44 Reply from 9.9.9.9: bytes=32 time=4ms TTL=53
2026-01-19 19:10:45 Reply from 9.9.9.9: bytes=32 time=4ms TTL=53
2026-01-19 19:10:46 Reply from 9.9.9.9: bytes=32 time=4ms TTL=53
2026-01-19 19:10:46
PS C:\Users\Don>
Nice!
When I am having connectivity problems I leave this running to see the same but for just one IP.
ping -t 9.9.9.9 | ForEach-Object { "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') $_" }
PS C:\Users\Don> ping -t 9.9.9.9 | ForEach-Object { "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') $_" } 2026-01-19 19:10:44 2026-01-19 19:10:44 Pinging 9.9.9.9 with 32 bytes of data: 2026-01-19 19:10:44 Reply from 9.9.9.9: bytes=32 time=4ms TTL=53 2026-01-19 19:10:45 Reply from 9.9....;
About CheckMates
Learn Check Point
Advanced Learning
YOU DESERVE THE BEST SECURITY