web-dev-qa-db-ja.com

Windowsツールでサーバーへの接続を確認する方法

クライアントが特定のTCP=ポートでサーバーに接続できるかどうかを確認する必要があります。サーバーはそのポートをリッスンしています。「telnet server_IPポート」を試してみましたが、サーバーに接続されているのを確認すると、telnetがスタックします。 telnetはサーバーからの特定の応答を待機しているようです。

このワークステーションからサーバーに接続できるかどうかを確認するだけです。これを行う方法はありますか?私はtelnetなどのWindowsツールを好みます。

編集:主な目的は、特定のワークステーションがこのポートでサーバーに到達できることを確認することです。これは診断ツールの一部です。このツールは、このクライアント/サーバーシステムのさまざまな側面を診断するためにサーバーから実行される単純なスクリプトです。ワークステーション名を取得し、このワークステーションからサーバーに接続できるかどうかを確認します。 TelnetやMicrosoftのその他の標準ツールを使用して接続を確認したいのですが、ワークステーションにインストール済みであることが望ましいです。ワークステーションのSysinternalsからpsexecで実行し、サーバーで結果を受け取る予定です。

5
Andriy Tylychko

Microsoftのコマンドラインポートスキャナーである portqry を試してください。これにより、システムから接続できるポートがわかります

3
Jim B

telnet hostname portすると、左上隅にカーソルがある空白の画面が表示され、接続されます。

それ以上のツールは必要ありません。

2
adaptr

以下はVBScriptですTCP PingソリューションでMSXML2 ServerXMLHTTPコントロールを使用してポートへのTCP接続をテストしました。追加のダウンロードなしでほとんどのシステムで動作するはずです。

address = "www.example.com"
WScript.Echo "http: " & TCPPing( address, 80)
WScript.Echo "ssh: " & TCPPing( address, 22)
WScript.Echo "smb: " & TCPPing( address, 139)
WScript.Echo "https: " & TCPPing( address, 443)

Function TCPPing( address, port )
  Set xhr = WScript.CreateObject("MSXML2.ServerXMLHTTP")
  xhr.SetTimeouts 8000,8000,8000,8000
  On Error Resume Next
  xhr.Open "GET", "http://" & address & ":" & port, False
  xhr.Send
  Select Case Err.Number
    ' ok, tcp connect but no web response, 401 auth failure
    Case 0,  -2147012744, -2147024891
      msg = "OK"
    Case -2147012867
      msg = "Connection Rejected"
    Case -2147012894
      msg = "Timed out"
    Case -2147012889
      msg = "Could not resolve address"
    Case -2147467259
      msg = "Cannot test that port with this tool"
    Case Else
      msg = "Unknown error " & Err.Number
  End Select
  On Error Goto 0
  Set xhr = Nothing
  TCPPing = msg
End Function
2
user5739

ファイアウォールをテストしてポートをブロックしている場合は、カスタムアプリケーションの代わりに、該当するポートのサーバーマシンでnetcatを実行し、クライアントから接続すると、netcatで結果を確認できます。これにより、ポートがブロックされているかどうかがわかり、アプリケーションの機能に関する変数がスローされません。

1