Вам необходимо установить свойство java.rmi.server.hostname
, чтобы сообщить Реестру RMI, какое имя хоста или IP-адрес возвращать в его URL-адресах RMI.
По умолчанию используется IP-адрес первогоинтерфейс в системе, который объясняет, почему он работает только через eth0
.
Так что вам понадобится что-то вроде:
String ipAddress = "10.1.2.3"; //IP address of eth1
System.setProperty("java.rmi.server.hostname",ipAddress);
или
String hostname = "myserver"; //hostname that resolves for client and simu
System.setProperty("java.rmi.server.hostname",hostname);