Witam,
Mam maszynę wirtualną HotSpot JVM od Oracle na Linuksie (amd64). Chcę się do niej podłączyć przez VisualVM.

Firewall iptables jest wyłączony.

W tym celu używam jstatd. Do testowanie połączenia wykorzystuje jps.

Aby uruchomić jstatd użyłem skryptu:

#!/bin/sh
policy=${HOME}/.jstatd.all.policy
[ -r ${policy} ] || cat >${policy} <<'POLICY'
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
POLICY
 
jstatd -J-Djava.security.policy=${policy} &

Program nasłuchuje. Polecenie telnet 192.168.56.x 1099 z poziomu klienta znajduje usługę jstatd.

Gdy jednak próbuje się połączyć za pomocą jps (klient Windows) dostaje komunikat:

jps 192.168.56.x
Error communicating with remote host: Connection refused to host: 127.0.0.1; nested exception is: 
	java.net.ConnectException: Connection refused: connect

To samo polecenie dla tego samego adresu IP na hoscie (maszyna Linux) daje pozytywny rezultat.

To na pewno nie jest wina firewalla. Wygląda na to, że rzeczywiście brakuje pewnych uprawnień. Nie mam jednak pomysłu co to może być. :( Na kliencie i serwerze jest JDK 1.7 (64bitowe, wersja Linux (serwer) i Windows (klient), oczywiscie.