Java Mission Control を使用して監視したいリモート サーバーで (Java 7 で) Java プロセスを実行しています。ただし、ポート jmx リモート ポート (ここでは 12345、以下を参照) を使用してサーバーに telnet で接続できますが、JMC は接続できません。
リモートJavaプロセスは次のように開始されます
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=12345
-Djava.rmi.server.hostname=<some ip address>
-Dcom.sun.management.jmxremote.authenticate=false
これらは私にとって正しい値のようです。ファイアウォールでポート 12345 が開かれていますが、rmi サーバーのポートがファイアウォールによってブロックされている可能性があります。
したがって、私の質問は次のとおりです。(サーバーで netstat を使用するか、クライアントから telnet を使用して) java プロセスが現在サーバーで使用している rmi サーバーポートを特定する方法はありますか? (netstat を使用すると、Java プロセスで使用されているいくつかのポートが表示されます。ただし、どれが rmi ポートであるかはわかりません。)