WMI はポート 135 を使用してネゴシエートし、DCOM は 1024 から 65535 の間でランダムなポートを選択します。固定ポートを使用するのは困難です。ファイアウォールにはあまり友好的ではありません...
ジェフからのコメントとして、上記で述べたように、接続先のマシンに、使用するポートを制限するように指示する必要があります。
Windows Server 2003 では、選択したポートを制限できませんでした。そのため、そのサーバーでスクリプトを実行し、結果を既知のポートにプッシュします。私のスクリプトでは、すべての情報がデータベースに保存されるため、標準の SQL ポートを使用します。
Windows Server 2008 R2 の場合、使用するポートを制限できます。これは、各サーバーで次のコマンドを実行することで実行できます。
- コマンド プロンプトで「winmgmt -standalonehost」と入力します。
- コマンドnet stop "Windows Management Instrumentation"を入力して、WMI サービスを停止します。
- net start "Windows Management Instrumentation" と入力して、新しいサービス ホストで WMI サービスを再起動します。
- 「 netsh firewall add portopening TCP 24158 WMIFixedPort」と入力して、WMI サービスの新しいポート番号を確立します。
手順と詳細については、こちら (Jeff が提供) を参照してください:
WMI 用の固定ポートの設定
これは最善の解決策ではありませんが、私が知っている唯一の解決策です。私は長い間、大規模なサーバー環境用のスクリプトを構築してきました。私が常にこれを処理してきた方法は、各場所 (DMZ など) にスクリプトを配置し、データを既知のポートにプッシュすることです。
これが役に立つことを願っています。