リモートサーバのTCPポートの疎通確認をする際、TELNETかpsping.exeを使用していた。
learn.microsoft.com同じような作業がPowerShellでもできるみたいなので、メモ。
コマンド
Test-NetConnectionコマンドレットを使用する。
Windows8.1など古いOSでは使用できないので注意。
Windows10バージョン22H2やPowershell7.2で使用できたことを確認した。
使用例
リモートホスト192.168.10.1のTCP/80の疎通を確認する。
Test-NetConnection 192.168.10.1 -Port 80
成功した場合
ComputerName : 192.168.10.1
RemoteAddress : 192.168.10.1
RemotePort : 80
InterfaceAlias : Wi-Fi
SourceAddress : 192.168.10.20
TcpTestSucceeded : True
「TcpTestSucceeded」がTrueになる。
失敗した場合
警告: TCP connect to (192.168.10.1 : 80) failed
ComputerName : 192.168.10.1
RemoteAddress : 192.168.10.1
RemotePort : 80
InterfaceAlias : Wi-Fi
SourceAddress : 192.168.10.20
PingSucceeded : True
PingReplyDetails (RTT) : 3 ms
TcpTestSucceeded : False
ご丁寧に警告メッセージまで出してくれる。
「TcpTestSucceeded」がFalseになる。
おわりに
Test-NetConnectionはPingみたいにICMPエコー要求も送信できるみたい。
参考にどうぞ。