特定のアドレス/ポートに到達できるかどうかを確認するにはどうすればよいですか?


10

ローカルネットワークに接続されているPCが、TCPやUDPなどの指定されたプロトコルを使用して、指定されたアドレス:ポートに到達できるかどうかを確認できる簡単なユーティリティが必要です。

チェックに使用するマシンのOSはWindows XPです。


Microsoft Sysinternalsのpsexecを確認してください。特定の資格情報を使用して、特定のコンピューターでプロセスを実行できます。
music2myear 2014年

回答:


11

単純に使用telnet

telnet hostname port

接続が確立されると、そのポートで何かが応答します。

エラーメッセージが表示される場合は、そのポートで待機しているプログラムがないか、ホスト名が無効です。

Connecting To hostname...Could not open connection to the 
host, on port <port>: Connect failed

+ 1、telnet、または全能のnetcat(nc)ですが、「どこか」から取得する必要があるため、telnetで問題ありません。
akira

1
@snarkこのテストにどのプロトコルが使用されていますか?TCP、UDP、またはその他?
Drakeは

Telnetが接続を確立するため、TCPが使用されます。UDPはコネクションレス型なので、誰かが聞いているかどうかはわかりません。
Snark、2010

ありがとう。したがって、特定のポートの出力でUDPが許可されているかどうかをチェックするツールを使用する方法はありませんか?目的のアプリケーションのみを使用して、それが機能していることを確認しますか?
Drakeは

3

nmapはこれを処理できるはずです。


2
この提案とともに例を提供できれば、それは素晴らしいことです。多分このようなものがうまくいくでしょう:nmap -v IP_ADDRESS -Pn -p PORT
Chris

3

iperfを使用して、UDPポートが到達可能かどうかを確認できます。

例:リモートサーバー10.0.0.1でポート5093 UDPが開いているかどうかのテスト

C:\>iperf -u -p 5093 -c 10.0.0.1
------------------------------------------------------------
Client connecting to 10.0.0.1, UDP port 5093
Sending 1470 byte datagrams
UDP buffer size: 8.00 KByte (default)
------------------------------------------------------------
[320] local 10.16.61.182 port 54574 connected with 10.0.0.1 port 5093
[ ID] Interval       Transfer     Bandwidth
[320]  0.0-10.0 sec  1.25 MBytes  1.05 Mbits/sec
[320] **Sent 893 datagrams**

ご覧のとおり、クライアントは893データグラムの転送に成功し、ポートが実際に開いていることを示しています。ファイアウォールがポートをブロックしていた場合は、次のようなメッセージを読む必要があります。

Read failed: Connection reset by peer
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.