Encontrei algum comportamento de rede que me confunde ao tentar fazer com que o Java RMI funcione.
Eu uso o netcat para se conectar a uma máquina local:
[my_machine]$ nc -w 1 192.168.0.100 60000 && echo success
success
Eu tento fazer o mesmo com meu servidor:
[my_machine]$ nc -w 1 my-servers-ip 60000 && echo success
Isso não funciona, a menos que eu escute explicitamente no soquete do servidor:
[amazon_ec2]$ nc -l 60000
[my_machine]$ nc -w 1 my-servers-ip 60000 && echo success
success
Para a versão que falha, o pacote SYN
recebe uma resposta RST, ACK
.
Eu não sou muito estudioso sobre essas coisas, neste momento eu só tenho teorias selvagens como a da questão. Alguma idéia?
Detalhes potencialmente úteis:
Local Machine (192.168.0.100) - Macbook
Remote Machine (Amazon EC2) - Amazon Linux AMI 2012.03
Security Group Settings:
22 (SSH) 0.0.0.0/0
1099 0.0.0.0/0
49152-65535 0.0.0.0/0
"iptables -L" shows no rules set