Copilotに作ってもらったスクリプト
# ============================================
# 並列 TCP ポート疎通確認(全宛先を順番に3回)
# ============================================
# 試行回数
$RepeatCount = 3
# チェック対象リスト
$Targets = @(
@{ IP = "100.100.100.1"; Port = 10443 },
@{ IP = "200.200.200.2"; Port = 443 }
# 必要に応じて追加
)
Write-Host "=== 並列 TCP ポート疎通確認開始 ==="
Write-Host "全宛先を $RepeatCount 回チェックします"
Write-Host ""
for ($round = 1; $round -le $RepeatCount; $round++) {
Write-Host "=== ラウンド $round / $RepeatCount ===" -ForegroundColor Cyan
# 並列ジョブ開始
$Jobs = foreach ($t in $Targets) {
Start-Job -ScriptBlock {
param($ip, $port)
$result = Test-NetConnection -ComputerName $ip -Port $port -WarningAction SilentlyContinue -InformationLevel Quiet
if ($result) {
return "SUCCESS: $ip : $port"
} else {
return "FAILED : $ip : $port"
}
} -ArgumentList $t.IP, $t.Port
}
# ジョブ完了待ち
Wait-Job $Jobs | Out-Null
# 結果表示
foreach ($job in $Jobs) {
$output = Receive-Job $job
if ($output -like "SUCCESS*") {
Write-Host $output -ForegroundColor Green
} else {
Write-Host $output -ForegroundColor Red
}
}
# ジョブ削除
Remove-Job $Jobs -Force
Write-Host ""
}
Write-Host "=== 全ラウンド完了 ==="
Read-Host "Enter キーを押すと終了します"
2026年3月20日金曜日
パケット送出確認
登録:
コメント (Atom)