58 lines
1.3 KiB
PowerShell
58 lines
1.3 KiB
PowerShell
#
|
|
# TcpCheck.ps1
|
|
#
|
|
|
|
. '.\Common.ps1'
|
|
$endPoints = New-Object System.Collections.Generic.List[Object]
|
|
Write-Output "`r`n`r`nTCP CONNECTIVITY TEST:`r`n"
|
|
$defaultPorts = @(80,443)
|
|
$nonDefaultPortMap = @{
|
|
'204.26.248.58' = @(53310, 53330) #Shares
|
|
|
|
'57.14.12.254' = @(102) #Unimatic
|
|
|
|
'10.232.100.72' = @(50002) #GateReader alternative
|
|
'57.228.112.12' = @(50002) #GateReader primary
|
|
|
|
'57.14.12.21' = @(443)
|
|
'57.14.12.24' = @(443)
|
|
'57.14.12.20' = @(443)
|
|
'57.14.13.142' = @(443)
|
|
'57.14.13.143' = @(443)
|
|
'57.14.13.144' = @(443)
|
|
'57.14.13.24' = @(443)
|
|
|
|
'57.14.12.122' = @(80)
|
|
};
|
|
if ($null -ne $ipHashTable) {
|
|
foreach ($ip in $ipHashTable.Keys)
|
|
{
|
|
$ports = @()
|
|
if ($nonDefaultPortMap.ContainsKey($ip)) {
|
|
$ports = $nonDefaultPortMap[$ip]
|
|
}
|
|
else {
|
|
$ports = $defaultPorts
|
|
}
|
|
foreach ($port in $ports) {
|
|
$thisEndPoint = New-Object PSObject -Property @{
|
|
Host = [string]$ip
|
|
Port = [int]$port
|
|
}
|
|
$endPoints.Add($thisEndPoint);
|
|
}
|
|
}
|
|
}
|
|
|
|
# REMOVED: -Parallel only works in newer powershell versions
|
|
# # Asynchronous port check
|
|
# $isPortOpenDef = $function:IsPortOpen.ToString()
|
|
# $endPoints | ForEach-Object -Parallel {
|
|
# $function:IsPortOpen = $using:isPortOpenDef
|
|
# IsPortOpen -hostName $_.Host -port $_.Port
|
|
# }
|
|
|
|
# Synchronous port check
|
|
foreach ($endPoint in $endPoints) {
|
|
IsPortOpen -hostName $endPoint.Host -port $endPoint.Port
|
|
} |