PortQry コマンド ライン ツールの使用
PortQry は、TCP/IP 接続の問題のトラブルシューティングに使用できるコマンド ライン ツールです。 このツールは、ローカル コンピューターまたはリモート コンピューター上のターゲット TCP およびユーザー データグラム プロトコル (UDP) ポートの状態を報告します。 また、ローカル コンピューターのポートの使用状況に関する詳細情報も提供します。
PortQry はトラブルシューティング ツールとして使用することを目的としているため、特定の問題のトラブルシューティングに使用するユーザーは、コンピューティング環境に関する十分な知識を持っている必要があります。
コマンド プロンプトから PortQry を使用するには、次のいずれかのモードを使用します。
- コマンド ライン モード。 このモードを使用して、ローカル コンピューターまたはリモート コンピューターのトラブルシューティングを行うことができます。
- ローカル モード。 このモードでは、ローカル コンピューターのトラブルシューティングを目的としたいくつかのパラメーターを使用できます。
- 対話型モード。 コマンド ライン モードと同様ですが、ショートカット コマンドとパラメーターを使用できます。
注:
PortQry 用のグラフィカル UI を含む、PortQryUI と呼ばれる別のツールをダウンロードできます。 PortQryUI には、PortQry を簡単に使用できるいくつかの機能があります。 PortQryUI ツールを取得するには、「 PortQryUI - PortQry コマンド ライン ポート スキャナーのユーザー インターフェイス」を参照してください。
適用対象: サポートされているバージョンの Windows
PortQry のテストと結果
一般的なポート スキャン ツールでは、ターゲット UDP ポートからインターネット制御メッセージ プロトコル (ICMP) の "宛先到達不能" メッセージが返されない場合、ポートの状態が リッスン 状態であると報告されます。 この結果は、次のいずれかの理由で正確でない場合があります。
- ダイレクト データグラムへの応答がない場合は、ターゲット ポートが FILTERED される可能性があります。
- ほとんどのサービスは、送信された書式設定されていないユーザー データグラムに応答しません。 通常、ポートをリッスンするサービスまたはプログラムは、特定のセッション層またはアプリケーション層プロトコルを使用するメッセージにのみ応答します。
より正確で有用な結果を生成するために、PortQry は 2 段階のテスト プロセスを使用します。
手順 1: ポートの状態テスト
PortQry は、ポートの状態を次の 3 つの値のいずれかとして報告します。
- LISTENING: この応答は、プロセスがターゲット ポートでリッスンしていることを示します。 PortQry がターゲット ポートから応答を受信しました。
-
NOT LISTENING: この応答は、ターゲット ポートでリッスンしているプロセスがないことを示します。 PortQry は、ターゲット ポートから次のいずれかの ICMP メッセージを受信しました。
宛先に到達できないポートに到達できない
- FILTERED: この応答は、ターゲット ポートがフィルター処理されていることを示します。 PortQry がターゲット ポートから応答を受信しませんでした。 プロセスがターゲット ポートでリッスンしている場合とそうでない場合があります。 既定では、PortQry は 、FILTERED の応答を返す前に TCP ポートを 3 回照会し、 FILTERED の応答を返す前に UDP ポートを 1 回照会します。
手順 2: 特殊化されたテスト
ターゲット UDP ポートからの応答がない場合、PortQry はポートが リッスンまたはフィルター処理されていることを報告します。 ただし、接続の問題のトラブルシューティングを行う場合は、ポートがフィルター処理されているか、リッスンしているかを把握すると便利です。 これは、1 つ以上のファイアウォールを含む環境では特に当てはまります。
PortQry は、ターゲット ポートでリッスンしているサービスまたはプログラムと対話できる 2 つ目のテスト セットを使用して、ポートの状態レポートを調整します。 このテストでは、PortQry によって次の処理が行われます。
- PortQry は、 %SYSTEMROOT%\System32\Drivers\Etc フォルダーにあるサービス ファイルを使用して、各ポートでリッスンするサービスを決定します。
- PortQry は、想定されるサービスまたはプログラム用に特別に構築されたメッセージを作成し、そのメッセージをターゲット ポートに送信します。 サービスまたはプログラムによっては、次のようなトラブルシューティングに役立つ情報がメッセージによって要求される場合があります。
- ドメインとドメイン コントローラーの情報 (LDAP クエリ)
- 登録済みのクライアント サービスとポート (RPC クエリ)
- 匿名アクセスが許可されているかどうか (FTP クエリ)
- MAC アドレス (NetBIOS クエリ)
- Mspclnt.ini ファイル情報 (ISA Server クエリ)
- PortQry は、解析、書式設定、およびテスト レポートの一部としてサービスまたはプログラムからの応答を返します。
ローカル コンピューターのトラブルシューティングを行う追加のテスト
PortQry をインストールしたコンピューター上のポートのトラブルシューティングを行う必要がある場合は、ローカル モードで PortQry を使用します。 コマンド ラインでローカル モード パラメーターを使用すると、ローカル コンピューターで次のようなタスクを実行できます。
- ポート マッピングを列挙する
- 変更がないか特定のポートを監視する
- 変更の特定のプロセスを監視する
詳細については、「 ローカル (コマンド ライン) モードでの PortQry の使用」を参照してください。
コマンド ライン モードでの PortQry の使用
他のコマンド ライン ツールと同じ方法で、コマンド プロンプトで PortQry を実行できます。 この記事の例のほとんどは、コマンド ライン PortQry コマンドを示しています。 コマンド ライン モードでは、コマンド文字列に複数のオプションを追加して、実行するクエリとその実行方法を指定できます。 コマンド ライン モードで PortQry を実行するには、次の構文を使用するコマンドを実行します。
portqry.exe -n <name_to_query> [options]
注:
このコマンドでは、 <name_to_query> は、クエリを実行する IP アドレス、コンピューター名、またはドメインです。 このパラメーターは必須です。 [options] は省略可能なパラメーターです。
コマンド ライン モードの PortQry パラメーター
通常のコマンド ライン モードでは、次のパラメーターを使用できます。
パラメーター | 説明 | 注釈 |
---|---|---|
-n <name> |
特定の宛先に対してクエリを実行する |
|
-p <protocol> |
指定したプロトコルを使用する |
|
-e <port_number> |
ターゲット ポート ("エンドポイント" とも呼ばれます) を指定します。 |
|
-o <port_number>,<port_number> |
シーケンスで複数のターゲット ポートを指定する | port_number>、<port_number>の値は<、シーケンスでクエリを実行するポート番号のコンマ区切りの一覧を表します。 コンマの周囲にスペースを使用しないでください。 |
-r <port_number>:<port_number> |
ターゲット ポートの範囲を指定する |
|
-l <filename.txt> |
ログ ファイルを生成する |
|
-y |
以前のログ ファイルを上書きする |
|
-sl |
応答の余分な時間を待機します (低速リンク遅延とも呼ばれます) | このパラメーターを使用して、PortQry が UDP ポートからの応答を待機する時間を 2 倍にしてから、ポートがリッスンしていないか、フィルター処理されていることを PortQry が判断します。 低速または信頼性の低いネットワーク リンクに対してクエリを実行すると、通常の待機時間が短すぎて応答を受信できない可能性があります。 |
-nr |
逆引き名の参照をスキップする |
|
-sp <port_number> |
特定のソース ポートからのクエリ |
|
-cn !<community_name>! |
SNMP コミュニティにクエリを実行する |
|
-q |
サイレント モードで PortQry を実行する |
|
コマンド ライン モードでのパラメーターの備考
- 任意のポート番号の値は、1 から 65535 までの有効なポート番号である必要があります。値を含みます。
- 、
-e
-o
、および-r
パラメーターは相互に排他的です。 1 つの PortQry コマンドで使用できるパラメーターは 1 つだけです。 - WINDOWS Server 2008 を実行しているドメイン コントローラーに対して、UDP ポート 389 (LDAP) に対するクエリが機能しない可能性があります。 UDP ポート 389 で実行されているサービスの可用性をチェックするには、PortQry ではなく Nltest を使用できます。 詳細については、「 Nltest」を参照してください。
- または
-o
を使用してポート 135 (RPC) にクエリを-e
実行すると、現在 RPC エンドポイント マッパーに登録されているすべてのエンドポイントが返されます。重要
を使用する場合、
-r
PortQry は RPC エンドポイント マッパーに対してクエリを実行しません。 - ポート 53 (DNS) にクエリを実行すると、PortQry は TCP と UDP の両方を使用して の
portqry.microsoft.com
DNS クエリを送信します。 サーバーが応答を返す場合、PortQry はポートがリッスンしていると判断します。注:
DNS サーバーが正の応答と否定的な応答のどちらを返すかは重要ではありません。 応答は、ポートがリッスンしていることを示します。
ローカル (コマンド ライン) モードでの PortQry の使用
リモート ターゲット コンピューター上のポートに対してクエリを実行する代わりに、ローカル モードで PortQry を使用して、PortQry が実行されているローカル コンピューター上の TCP ポートと UDP ポートに関する詳細情報を取得できます。 ローカル モードで PortQry を実行するには、次の構文を使用します。
portqry -local | -wpid <pid> | -wport <port_number> [-wt <seconds>] [-l <filename.txt>] [-v]
この構文のプレースホルダーについては、次のローカル モード パラメーターの表で説明します。
パラメーター | 説明 | 注釈 |
---|---|---|
-local |
ローカル情報を取得する |
|
-wport <port_number> |
ウォッチ ポート |
|
-wpid <pid> |
ウォッチ プロセス ID (PID) |
|
-wt <seconds> |
特定の間隔で確認する |
|
-l <filename.txt> |
ログ ファイルを生成する |
|
-y |
以前のログ ファイルを上書きする |
|
-v |
詳細出力を生成する | PortQry は、画面出力 (およびログ ファイルを使用した場合) に追加の詳細を提供します。 |
ローカル モードでのパラメーターの備考
- 、
-local
-wport
、および-wpid
パラメーターは相互に排他的です。 これらのパラメーターの 1 つだけを 1 つの PortQry コマンド文字列で使用できます。 - パラメーターは
-q
ローカル モードでは機能しません。 - 場合によっては、PortQry によって、システム アイドル プロセス (PID 0) で一部の TCP ポートが使用されていることが報告される場合があります。 この動作は、ローカル プログラムが TCP ポートに接続してから停止した場合に発生する可能性があります。 プログラムが実行されなくなったとしても、プログラムのポートへの TCP 接続が数分間 "Timed Wait" 状態のままになることがあります。 このような場合、PortQry はポートが使用中であることを検出する可能性がありますが、PID がリリースされているため、ポートを使用しているプログラムを特定できません。 既定では、ポートは最大セグメントの有効期間の 2 倍の "Timed Wait" 状態のままです。
- 各プロセスについて、PortQry はアクセスできる限り多くの情報を報告します。 一部の情報へのアクセスは制限されています。 たとえば、アイドル プロセスと CSRSS プロセスのモジュール情報へのアクセスは、アクセス制限によってユーザー レベルのコードが開くことができないため、禁止されています。 最適な結果を得るには、ローカル管理者または同様の資格情報を持つアカウントのコンテキストでローカル モード コマンドを実行します。
- または
-wpid
と-l
一緒に-wport
使用する場合は、Esc キーを使用して、Ctrl + C ではなく PortQry を割り込んで終了します。 Esc キーを押して、PortQry がログ ファイルを正しく閉じて終了することを確認する必要があります。 Esc の代わりに Ctrl キーを押しながら C キーを押して PortQry を停止すると、ログ ファイルが空になったり破損したりする可能性があります。
対話型モードでの PortQry の使用
コンピューター間の接続の問題をトラブルシューティングする場合は、多くの繰り返しコマンドを入力する必要があります。 このようなアクションは、対話型モードで PortQry を使用することで、より簡単に実行できます。
対話型モードは、 Nslookup DNS ユーティリティまたは Nblookup WINS ユーティリティの対話型機能に似ています。
対話型モードで PortQry を開始するには、 パラメーターを -i
使用します。 たとえば、次のコマンドを実行します。
portqry -i
このコマンドの出力は、次の抜粋のようになります。
Portqry Interactive Mode
Type 'help' for a list of commands
Default Node: 127.0.0.1
Current option values:
end port= 80
protocol= TCP
source port= 0 (ephemeral)
>
対話型モード コマンド
対話型モードでは、次のコマンドを使用できます。
コマンド | 説明 | 注釈 |
---|---|---|
node <name> または n <name> |
クエリを実行する宛先を設定する |
|
query または q |
クエリの送信 |
|
set <option>=<value> |
クエリ オプションの値を設定する |
|
exit |
対話型モードのままにする |
対話型モードのクエリ ショートカット
次のショートカットをコマンドと共に使用すると、ポートとプロトコルの query
オプションを設定することなく、一般的なクエリを実行できます。 次の構文を使用してください。
q <shortcut>
注:
このコマンドでは、 <ショートカット> は次の表のいずれかのショートカットを表します。 ショートカットを省略すると、コマンドは q
TCP ポート 80 を照会します。
ショートカット | クエリを実行するポート |
---|---|
dns |
TCP ポート 53、UDP ポート 53。 |
ftp |
TCP ポート 21 |
imap |
TCP ポート 143 |
ipsec |
UDP ポート 500 |
isa |
TCP ポート 1745、UDP ポート 1745 |
ldap |
TCP ポート 389、UDP ポート 389 |
l2tp |
UDP ポート 1701 |
mail |
TCP ポート 25、110、および 143 |
pop3 |
TCP ポート 110 |
rpc |
TCP ポート 135、UDP ポート 135 |
smtp |
TCP ポート 25 |
snmp |
UDP ポート 161 |
sql |
TCP ポート 1433、UDP ポート 1434 |
tftp |
UDP ポート 69 |
たとえば、対話型モードに入る q dns
操作は、通常のコマンド ライン モードでの実行 portqry -n 127.0.0.1 -p both -e 135
と同じです。
対話型モード オプション
コマンドを set
使用して、ソース ポートや低速リンク遅延などのオプションを設定できます。 次の構文を使用してください。
set <option>=<value>
注:
このコマンドでは、<option> は設定するオプションの名前を表し<、value> はオプションの新しい値を表します。
オプション | 説明 | 注釈 |
---|---|---|
set all |
オプションの現在の値を表示する | |
set port=<port_number> set e=<port_number> |
ターゲット ポートを指定する | port_number>値は<、対象のコンピューターでクエリを実行するポートを表します。 |
set sport=<port_number> set sp=<port_number> |
ソース ポートを指定する |
|
set protocol=<protocol> set p=<protocol> |
使用するプロトコルを指定する |
プロトコル>値は<、クエリを実行するポートの種類 (tcp 、、udp またはboth ) を表します。 |
set cn=<community_name> |
SNMP コミュニティを指定する |
|
set nr |
逆引き名参照をオフまたはオンにする |
|
set sl |
低速リンク遅延のオンとオフを切り替える |
|
IP アドレスが 10.0.1.10 のコンピューターを照会するとします。 対話型モードのコマンド プロンプトで、「 」と入力 n 10.0.1.10
します。 このコマンドは、次の抜粋のような出力を生成します。
Default Node: 10.0.1.10
>
DNS クエリを送信するには、対話型モードのコマンド プロンプトで「」と入力 q dns
します。 このコマンドは、次の抜粋のような出力を生成します。
resolving service name using local services file...
UDP port resolved to the 'domain' service
IP address resolved to myserver.contoso.com
querying...
UDP port 53 (domain service): LISTENING
>
ポートとサービス間の関連付けのカスタマイズ
既定では、すべての Windows ベースのコンピューターには、 %SYSTEMROOT%\System32\Drivers\Etc フォルダーにあるサービス ファイルがあります。 PortQry はこのファイルを使用して、ポート番号を対応するサービス名に解決します。 PortQry はこの情報を使用して、クエリの形式を選択します。 このファイルを編集して、PortQry にフォーマットされたメッセージを別のポートに送信するように指示できます。 たとえば、次のエントリは、一般的なサービス ファイルに表示されます。
ldap 389/tcp #Lightweight Directory Access Protocol
このポート エントリを編集するか、追加のエントリを追加できます。 PortQry が LDAP クエリをポート 1025 に送信するように強制するには、エントリを次のように変更します。
ldap 1025/tcp #Lightweight Directory Access Protocol
例
次の例では、PortQry とそのパラメーターを使用する方法を示します。
ローカル モード
- ローカル コンピューターにクエリを実行する
- アクセスが制限される可能性がある場合にローカル コンピューターにクエリを実行する
- 特定の間隔を使用してプロセス ID を監視する
- 低速リンクに対してクエリを実行する
コマンド ライン モード
- ターゲットとプロトコルを指定する
- 1 つ以上のターゲット ポートを指定する
- PortQry 出力のログ ファイルを指定する
- バッチ ファイルを使用して PortQry をサイレント モードで実行する
- クエリ ポート 135 (RPC サービス)
ローカル コンピューターにクエリを実行する
の portqry -local
出力は、次の抜粋のようになります。
TCP/UDP Port Usage
96 active ports found
Port Local IPState Remote IP:Port
TCP 80 0.0.0.0 LISTENING 0.0.0.0:18510
TCP 80 169.254.149.9 TIME WAIT 169.254.74.55:3716
TCP 80 169.254.149.9 TIME WAIT 169.254.200.222:3885
TCP 135 0.0.0.0 LISTENING 0.0.0.0:10280
UDP 135 0.0.0.0 :
UDP 137 169.254.149.9 :
UDP 138 169.254.149.9 :
TCP 139 169.254.149.9 LISTENING 0.0.0.0:43065
TCP 139 169.254.149.9 ESTABLISHED 169.254.4.253:4310
TCP 139 169.254.149.9 ESTABLISHED 169.254.74.55:3714
アクセスが制限される可能性がある場合にローカル コンピューターにクエリを実行する
前の例のように、ローカル モードで PortQry を実行すると、次の抜粋のような出力が表示されることがあります。 このような出力は、PortQry が使用しているセキュリティ コンテキストに、要求されたすべての情報にアクセスするための十分なアクセス許可がないことを示します。
Port and Module Information by Process
Note: restrictions applied to some processes may
prevent Portqry from accessing more information
For best results run Portqry in the context of
the local administrator
======================================================
Process ID: 0 (System Idle Process)
PIDPortLocal IPState Remote IP:Port
0TCP 4442 169.254.113.96 TIME WAIT 169.254.5.136:80
0TCP 4456 169.254.113.96 TIME WAIT 169.254.5.44:445
Port Statistics
TCP mappings: 2
UDP mappings: 0
TCP ports in a TIME WAIT state: 2 = 100.00%
Could not access module information for this process
======================================================
特定の間隔を使用してプロセス ID を監視する
次のコマンドは、特定のプロセスを監視します。
portqry.exe -wpid 1276 -wt 2 -v -l pid.txt
その結果、PortQry は次のアクションを実行します。
- 1276 PID を持つプロセスを識別し、Esc キーを押すまで 2 秒ごとに使用しているポートの状態を確認します。
- pid.txtログ ファイル を 作成します。 その名前のファイルが既に存在する場合、PortQry はファイルを上書きすることを確認するメッセージを表示します。
- ログ ファイル内の出力 (余分な詳細出力を含む) を記録します。
ログ ファイルの内容は、次の抜粋のようになります。
PortQry Version 2.0 Log File
System Date: <DateTime>
Command run:
portqry -wpid 1276 -wt 2 -v -l pid.txt
Local computer name:
host123
Watching PID: 1276
Checking for changes every 2 seconds
verbose output requested
Service Name: DNS
Display Name: DNS Server
Service Type: runs in its own process
============
System Date: <DateTime>
======================================================
Process ID: 1276 (dns.exe)
Service Name: DNS
Display Name: DNS Server
Service Type: runs in its own process
PIDPortLocal IPState Remote IP:Port
1276TCP 53 0.0.0.0 LISTENING 0.0.0.0:2160
1276TCP 1087 0.0.0.0 LISTENING 0.0.0.0:37074
1276UDP 1086 0.0.0.0 :
1276UDP 2126 0.0.0.0 :
1276UDP 53 127.0.0.1 :
1276UDP 1085 127.0.0.1 :
1276UDP 53 169.254.11.96 :
Port Statistics
TCP mappings: 2
UDP mappings: 5
TCP ports in a LISTENING state: 2 = 100.00%
Loaded modules:
C:\WINDOWS\System32\dns.exe (0x01000000)
C:\WINDOWS\system32\ntdll.dll (0x77F40000)
C:\WINDOWS\system32\kernel32.dll (0x77E40000)
C:\WINDOWS\system32\msvcrt.dll (0x77BA0000)
C:\WINDOWS\system32\ADVAPI32.dll (0x77DA0000)
C:\WINDOWS\system32\RPCRT4.dll (0x77C50000)
C:\WINDOWS\System32\WS2_32.dll (0x71C00000)
C:\WINDOWS\System32\WS2HELP.dll (0x71BF0000)
C:\WINDOWS\system32\USER32.dll (0x77D00000)
C:\WINDOWS\system32\GDI32.dll (0x77C00000)
C:\WINDOWS\System32\NETAPI32.dll (0x71C40000)
ターゲットとプロトコルを指定する
注:
このセクションの各例では、既定のポートであるポート 80 を照会します。
次のコマンドは、完全修飾ドメイン名 (FQDN) を使用して指定されたコンピューター上の既定の TCP ポートを照会します。
portqry -n myDomainController.example.com -p tcp
次のコマンドは、コンピューター名を使用して指定されたコンピューター上の既定の UDP ポートを照会します。
portqry -n myServer -p udp
次のコマンドは、IP アドレスを使用して指定されたコンピューターの既定の TCP ポートと UDP ポートを照会します。
portqry -n 192.168.1.20 -p both
次のコマンドは、前のコマンドと同じクエリを実行しますが、名前解決手順はスキップします。
portqry -n 192.168.1.20 -p both -nr
次のコマンドは、Web サーバーの既定の TCP ポートを照会します。
portqry -n www.widgets.microsoft.com
1 つ以上のターゲット ポートを指定する
次のコマンドは、TCP ポート 25 にクエリを実行して、メール サーバーの SMTP サービスをテストします。
portqry -n mail.example.com -p tcp -e 25
次のコマンドは、IP アドレス 192.168.1.20 を持つコンピューターの TCP ポート 60897 と UDP ポート 60897 を照会します。
portqry -n 192.168.1.20 -p both -e 60897
次のコマンドは、コンピューター "myServer" の UDP ポート 139、1025、および 135 (そのシーケンス内) を照会します。
portqry -n myServer -p udp -o 139,1025,135
次のコマンドは、コンピューター "myServer" のポート 135 からポート 139 (包括的) までのポートの範囲を照会します。
portqry -n myServer -p udp -r 135:139
PortQry 出力のログ ファイルを指定する
次のコマンドは、mail.widgets.microsoft.com で TCP ポート 143 を照会し、 出力をportqry.txt ファイルに記録します。 ファイルが既に存在する場合、確認を求めずに PortQry によって上書きされます。
portqry -n mail.widgets.microsoft.com -p tcp -e 143 -l portqry.txt -y
低速リンクに対してクエリを実行する
次のコマンドは、mail.widgets.microsoft.com の TCP ポート 143、110、および 25 に対してクエリを実行します。 ターゲット ポートごとに、PortQry は応答を通常の 2 倍待機します。
portqry -n mail.widgets.microsoft.com -p tcp -o 143,110,25 -sl
ソース ポートを指定する
次のコマンドでは、ローカル コンピューターで UDP ポート 3001 (使用可能な場合) を使用して、192.168.1.20 の UDP ポート 53 にクエリを送信します。 サービスがそのポートでリッスンしていて、クエリに応答する場合、ローカル コンピューターの UDP ポート 3001 に応答が送信されます。
portqry -p udp -e 53 -sp 3001 -n 192.168.1.20
次のコマンドは、ローカル コンピューターで UDP ポート 3000 (使用可能な場合) を使用して、myDomainController.contoso.com の UDP ポート 389 にクエリを送信します。 既定では、LDAP サービスはこのポートでリッスンしている必要があります。 LDAP サービスが最初のクエリに応答する場合、PortQry はエフェメラル ソース ポートを使用して書式設定されたクエリを送信し、応答を受け取ります。
portqry -n myDomainController.contoso.com -e 389 -sp 3000
バッチ ファイルを使用して PortQry をサイレント モードで実行する
次のテキストは、PortQry をサイレント モードで実行するバッチ ファイルの例です。
:Top
portqry -n 169.254.18.22 -e 443 -nr -l pqlog.txt -q
:end
このバッチ ファイルを実行すると、PortQry は という名前のログ ファイル pqlog.txt生成します。 このファイルの内容は次のようになります。
PortQry Version 2.0 Log File
System Date: Thu Sep 16 10:35:03 2021
Command run:
portqry -n 169.254.18.22 -e 443 -nr -l pqlog.txt -q
Local computer name:
SOURCESERVER
Querying target system called:
169.254.18.22
TCP port 443 (https service): LISTENING
========= end of log file =========
クエリ ポート 135 (RPC サービス)
次のコマンドは、myServer コンピューター上の UDP ポート 135 を照会します。 既定では、RPC サービスはこのポートでリッスンしている必要があります。
portqry -n myServer -p udp -e 135
その結果、PortQry は次のアクションを実行します。
- PortQry は 、%SYSTEMROOT%\System32\Drivers\Etc フォルダー内のサービス ファイルを使用して、UDP ポート 135 をサービスに解決します。 既定の構成を使用して、PortQry は RPC エンドポイント マッパー サービス (Epmap) にポートを解決します。
- PortQry は、フォーマットされていないユーザー データグラムを宛先コンピューターの UDP ポート 135 に送信します。
PortQry はターゲット ポートから応答を受け取りません。 これは、RPC エンドポイント マッパー サービスが正しい形式の RPC クエリにのみ応答するためです。 PortQry は、ポートが リッスンまたはフィルター処理されていることを報告します。 - PortQry は、RPC エンドポイント マッパーに現在登録されているすべてのエンドポイントを要求する正しい形式の RPC クエリを作成します。 PortQry は、このクエリを宛先コンピューターの UDP ポート 135 に送信します。
- 応答に応じて、PortQry は次のいずれかのアクションを実行します。
- PortQry がこのクエリに対する応答を受け取った場合、PortQry は応答全体をユーザーに返し、ポートが リッスンしていることを報告します。
- PortQry がこのクエリに対する応答を受け取らない場合は、ポートが FILTERED であることを報告します。
UDP port 135 (epmap service): LISTENING or FILTERED
Querying Endpoint Mapper Database...
Server's response:
UUID: 50abc2a4-574d-40b3-9d66-ee4fd5fba076
ncacn_ip_tcp:169.254.12.191[4144]
UUID: ecec0d70-a603-11d0-96b1-00a0c91ece30 NTDS Backup Interface
ncacn_np:\\MYSERVER[\PIPE\lsass]
UUID: e3514235-4b06-11d1-ab04-00c04fc2dcd2 MS NT Directory DRS Interface
ncacn_ip_tcp:169.254.12.191[1030]
UUID: e3514235-4b06-11d1-ab04-00c04fc2dcd2 MS NT Directory DRS Interface
ncadg_ip_udp:169.254.12.191[1032]
UUID: 12345678-1234-abcd-ef00-01234567cffb
ncacn_np:\\MYSERVER[\PIPE\lsass]
UUID: 12345678-1234-abcd-ef00-01234567cffb
ncacn_np:\\MYSERVER[\PIPE\POLICYAGENT]
Total endpoints found: 6
==== End of RPC Endpoint Mapper query response ====
UDP port 135 is LISTENING
この出力から、サービスがポートでリッスンしているかどうかだけでなく、宛先コンピューターの RPC エンドポイント マッパー データベースに登録されているサービスまたはプログラムも決定できます。 出力には、各プログラムのユニバーサル一意識別子 (UUID)、注釈付き名前 (存在する場合)、各プログラムが使用するプロトコル、プログラムがバインドされているネットワーク アドレス、およびプログラムのエンドポイントが角かっこで囲まれています。
注:
PortQry コマンドでオプションを -r
指定してポートの範囲をスキャンすると、PortQry はエンドポイント情報を RPC エンドポイント マッパーに照会しません。 このパラメーターは、さまざまなポートのスキャンを高速化します。