ここでは、Windows環境で、リモートホストのサービスへ接続できるかをコマンドで確認する方法として、以下の3つの方法を紹介します。
- Windows7時代から利用できるtelnetコマンドを使った方法
- PowerShellコマンドレット「Test-NetConnection」を使った方法
- Microsoftが提供している「PortQry」ツールを使った方法
目次
telnetコマンドを使った方法
Windows 10や11では、そのため、telnetコマンドを利用するには、telnetクライアント機能を有効化する必要があります。
telnetコマンドは、通信データが暗号化されているサービスへは接続できず、宛先ポートもTCPポートしか指定できないため、最近では利用する機会はあまりありません。
telnetクライアントの有効化
Windows 10の場合
Windows 10でTelnetクライアントを有効化する手順は、次のとおりです。
Windowsの「設定」アプリから「アプリ」を選択します。
「アプリ」画面が表示されるので「アプリと機能」から「オプション機能」をクリックします。
「オプション機能」画面が表示されるので、最下部の「関連設定」にある「Windowsのその他の機能」をクリックします。
「Windowsの機能」画面が表示されるので「Telnetクライアント」にチェックを入れ「OK」をクリックします。
変更の適用処理が行われるので、そのまま待ちます。
「必要な変更が完了しました。」と表示されたら「閉じる」をクリックします。
以上でTelnetクライアントが有効になりました。
Windows 11の場合
Windows 11でTelnetクライアントを有効化する手順は、次のとおりです。
Windowsの「設定」アプリから「アプリ」>「オプション機能」を選択します。
「オプション機能」の画面が表示されるので、最下部の「関連設定」にある「Windowsのその他の機能」をクリックします。
「Windowsの機能」画面が表示されるので「Telnetクライアント」にチェックを入れ「OK」をクリックします。
変更の適用処理が行われるので、そのまま待ちます。
「必要な変更が完了しました。」と表示されたら「閉じる」をクリックします。
以上でTelnetクライアントが有効になりました。
telnetコマンドの使い方
telnetコマンドで、リモートホストのサービスへ接続できるか確認するときは、コマンドプロンプトを起動して以下のようにコマンドを実行します。
> telnet <ホスト名> <ポート番号>
Test-NetConnectionを使った方法
Test-NetConnectionコマンドレットを使ってリモートホストのサービスへ接続できるか確認するときは、PowerShellを起動して以下のようにコマンドを実行します。
Test-NetConnectionコマンドレットは、宛先ポートはTCPポートしか指定できませんが、SSL/TLSやSSHなどの通信データが暗号化されたサービスに接続できるので、接続確認ならTest-NetConnectionコマンドレットを使った方法がおすすめです。
PS> Test-NetConnection <ホスト名> -port <ポート番号>
たとえば、当サイトのTCPポート443番への接続を確認するときは、以下のようにコマンドを実行します。
> Test-NetConnection 4thsight.xyz -port 443
ComputerName : 4thsight.xyz
RemoteAddress : 153.225.147.241
RemotePort : 443
InterfaceAlias : イーサネット
SourceAddress : 192.168.1.50
TcpTestSucceeded : True
出力内容の最終行に表示されている「TcpTestSucceeded:」がTCPポートへの接続結果で「True」は、接続できたということで、接続できなかった場合は「False」と表示されます。
Test-NetConnectionコマンドレットの詳細なヘルプは、以下の公式ページをご参照ください。
PortQryを使った方法
telnetコマンドやTest-NetConnectionコマンドレットは、宛先ポートはTCPポートにしか対応していないため、UDPポートへの接続を確認したいときは、Microsoftが提供している「PortQry」ツールを使った方法がおすすめです。
Download PortQry Command Line Port Scanner Version 2.0 from Official Microsoft Download Center
PortQryコマンドでは、TCPやUDPポートへの接続を確認でき、実行例は以下のようになります。(ここではローカルネットワーク上のDNSサーバーへの接続を確認してみました)
> PortQry.exe -n 192.168.10.254 -e 53 -p UDP
Querying target system called:
192.168.10.254
Attempting to resolve IP address to a name...
Failed to resolve IP address to name
querying...
UDP port 53 (domain service): LISTENING or FILTERED
Sending DNS query to UDP port 53...
UDP port 53 is LISTENING
最終行に「UDP port XX is LISTENING」と表示されていれば、接続できています。