web-dev-qa-db-ja.com

ネットワークトラフィックを生成しているプロセスを特定する(Windows Server 2003)

Windows 2003ドメインに、多数の印刷キューを備えたプリントサーバーがあります。このサーバーから大量のSNMPスキャンが送信されていますが、これは不要だと思われます。プリントサーバー自体に関連するものはすべて正常に機能していますが、ネットワークチームはスキャンを停止したいと考えています。

スイッチで発生するスキャンを確認できます。 Wiresharkをインストールしましたが、スキャンも実行されていることがわかります。 CurrPortsなどを介して接続をリッスンしているプログラムを見ることができます。

このサーバーには、何年にもわたって数人のメンテナがいます。残りのドライバーとそこにいる必要のないものがあります。残念ながら、サーバーはネットワークが依存しているプラ​​イマリプリントサーバーであるため、サーバーをクリーンアップしたりクリーンインストールしたりするために思い切った操作を行うことはできません。来年から2年以内に交換する予定です。

だから私の質問は...

Windows 2003サーバー上のどのプログラム/プロセスがSNMPスキャンを生成しているかを特定するにはどうすればよいですか?

3
J.Zimmerman

Print Spoolerサービス(spoolsv.exe)がこれを実行しているのではないかと強く疑っています。これは、おそらくそうするように構成されているためです。トラフィック(サブネット全体のプローブ、または個々のプリンタデバイスに向けられたクエリ)の詳細な説明がないと、言うのは難しいです。 「PrntersandFaxes」ダイアログの「ServerProperties」の「Ports」タブにある「StandardTCP/IPPort」エントリの「ConfigurePort」プロパティを調べると、「 [SNMPステータスが有効]がオンになっています。

それができない場合は、「netstat-b」または「netstat-o​​」を使用するのが最善の方法ですが、SNMPを使用すると、ソケットがすぐに閉じてしまうため、ソケットをキャッチするのに問題が発生します。

編集:

これがそのスクリプトです。

@echo off
rem Query for all Standard TCP/IP Ports (skipping the first returned value, which 
rem is the "/Ports" key

FOR /f "skip=1 usebackq delims=" %%i IN (`reg query "HKLM\System\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports" ^| find "HKEY_LOCAL_MACHINE"`) DO (

  rem For each port, disable SNMP
  REG ADD "%%i" /v "SNMP Enabled" /t REG_DWORD /d 0 /f >NUL 2>NUL
)
4
Evan Anderson

netstat -bは、すべての接続と、その接続を生成したプロセスを表示します。ほとんどの場合、プリンタのステータスやトナーレベルなどを保持するために常にプリンタにクエリを実行しようとしているのは、プリンタ管理ソフトウェア(ホームベースまたはエンタープライズベース)です。

4
Kevin Garber

Microsoft Network Monitor 3.3を使用すると、プロセス/プロセスIDでトラフィックをフィルタリングできます。

http://www.Microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=983b941d-06cb-4658-b7f6-3088333d062f

TCPViewを使用することもできます。

http://technet.Microsoft.com/en-us/sysinternals/bb897437.aspx

プリントサーバーには、HPJetAdminまたはWebJetAdminがインストールされている場合があります。これは通常の操作には必要ありません。

http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c0171886

1
Greg Askew