@IT:Windows TIPS — Tips:ポートのリッスン状態を調査する

portqryコマンドで調査する

 以上の接続テストは、OSが標準で持っているツールを使ったが、それ以外にも便利なツールはいくつかある。例えばマイクロソフトからはportqry.exe(port query)という、より高機能なツールが提供されている(Windows 2000上でも利用可能)。

 このWebページの最後にあるリンクからツールをダウンロードして実行すると、portqry.exeというコマンドとreadme.txtというドキュメントが展開される。このツールは、いわゆるポート・スキャン・ツールの一種であり、指定された(範囲の)ポートに対して、TCPやUDPで接続テストを行う(くれぐれも不用意にインターネット上のホストに対して使わないこと。そのような行為はクラッキングと見なされることがある)。

C:>PortQry.exe

Displays the state of TCP and UDP ports.

PortQry Usage:
PortQry.exe -n server [-p protocol] [-e || -r || -o endpoint(s)]
        [-l logfile] [-s] [-i] [-q]

Where:
        -n [server] IP address or name of server to query
        -p [protocol] TCP or UDP or BOTH (default is TCP)
        -e [endpoint] single port to query (valid range: 1-65535)
        -r [end point range] range of ports to query (start:end)
        -o [end point order] range of ports to query in an order (x,y,z)
        -l [logfile] name of log file to create
        -s 'slow link delay' waits longer for UDP replies from remote systems
        -i by-passes default IP address-to-name lookup
           ignored unless an IP address is specified after -n
        -q 'quiet' operation runs with no output
           returns 0 if port is listening
           returns 1 if port is not listening
           returns 2 if port is listening or filtered

Notes:
        PortQry runs on Windows 2000 and later
        Defaults: TCP, port 80, no log file, slow link delay off
        Hit Ctrl-c to terminate prematurely

examples:
portqry -n myserver.com -e 25
portqry -n 10.0.0.1 -e 53 -p UDP -i
portqry -n host1.dev.reskit.com -r 21:445
portqry -n 10.0.0.1 -o 25,445,1024 -p both

 このツールは、先ほどのtelnetやnetsh diagコマンドと異なり、より高機能な通信テストが行える。まず第1に、TCPだけでなくUDPのテストも行うことができる。またポート番号の範囲を指定して、連続してテストを行うことができる。さらにいくつかの特定のポートについては、そのプロトコル特有のコマンドを発行するなど、単なる接続と切断だけではない高度なテストを行うことができる。具体的には、DNS(53番)、LDAP(389番)、MS-RPC(135番。RPCのポート・マッパ)、NetBIOS名前サービス(137番)などである。これらのポートをテストしようとすると、それぞれのプロトコルに応じて、より詳細なテストを行い、その結果を表示する。

 まずは、あるサーバのポート80番(TCPとUDPの両方)に対して接続性テストをしてみよう。

C:>portqry -n server -p both -e 80

Querying target system called:

server01

Attempting to resolve name to IP address...

Name resolved to 192.168.0.13

TCP port 80 (http service): LISTENING

UDP port 80 (unknown service): NOT LISTENING

 この場合は、TCPの80番ポートとは通信ができたが(「LISTENING(リッスンしている)」と表示されている)、UDPの80番ポートとは何も通信ができなかったため、「NOT LISTENING(リッスンしていない)」という結果が表示されている。これ以外にも「FILTERED(フィルタされている)」という結果が返されることもある。「NOT LISTENING」は、サーバから何らかの拒否応答が戻ってくるのに対して、「FILTERED」の場合は、肯定応答も拒否応答も何も戻ってこないことを示している。一般的には、ファイアウォールなどで通信を完全にブロックしている場合には、このような応答が返ってくることが多い。ただしUDPを使ったサービスでは単にUDPパケットを送信するだけでは何も応答を返さないものが多い。UDPのリッスン状態の判断方法やその結果の見方については、portqryに付属のドキュメントを参照していただきたい。

 では次にMS-RPCポート(ポート135番)のテストをしてみよう。

C:>portqry -n server01 -p both -e 135

Querying target system called:

server

Attempting to resolve name to IP address...

Name resolved to 192.168.0.13

TCP port 135 (epmap service): LISTENING
Querying Endpoint Mapper Database...
Server's response:

UUID: 8cfb5d80-31a4-11cf-a7d8-00805f48a135
ncacn_np:\\SERVER[\PIPE\SMTPSVC]

UUID: ecec0e70-a603-11d0-96b1-00a0c92ece31 NTDS Backup Interface
ncacn_np:\\SERVER[\PIPE\lsass]

UUID: ecec0e70-a603-11d0-96b1-00a0c92ece31 NTDS Backup Interface
ncalrpc:[LRPC00000118.00000001]
…(以下省略)…

 このように、RPCのポート・マッパを介して提供されているサービスの一覧が表示されている。同様にLDAP(389番)の場合は、LDAPプロトコルを通じてアクセスできるディレクトリ情報が表示される。

C:>portqry -n SERVER -p both -e 389

Querying target system called:

SERVER

Attempting to resolve name to IP address...

Name resolved to 192.168.0.13

TCP port 389 (ldap service): LISTENING

Sending LDAP query to TCP port 389...

LDAP query response:

currentdate: 07/10/2003 04:14:31 (unadjusted GMT)
subschemaSubentry: CN=Aggregate,CN=Schema,CN=Configuration,DC=d-advantage,DC=com
dsServiceName: CN=NTDS Settings,CN=SERVER,CN=Servers,CN=Digital-Advantage-Headquarters,CN=Sites,CN=Configuration,DC=d-dvantage,DC=com
namingContexts: CN=Schema,CN=Configuration,DC=d-advantage,DC=com
defaultNamingContext: DC=d-advantage,DC=com
schemaNamingContext: CN=Schema,CN=Configuration,DC=d-advantage,DC=com
…(以下省略)…

 このようにportqryを利用すれば、より詳細にネットワーク・サービスの稼働状況を確認することができる。詳しい使い方については、先のダウンロード・ページの説明や、portqryのドキュメントを参照してほしい。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中