弹性IP打破了应用服务器通信

时间:2016-09-23 13:38:13

标签: amazon-web-services amazon-ec2 glassfish ejb rmi

我在EC2盒子上运行Glassfish应用服务器。桌面客户端使用标准远程Java RMI / EJB查找与其进行通信。当我使用EC2给我的公共IP时,我的应用效果很好。我的桌面客户端可以毫无问题地与Glassfish通信。

当我切换到使用弹性IP时,桌面应用程序无法再在两个方向上与EC2实例通信。我怀疑Glassfish在建立连接时会向桌面客户端提供错误的外部IP地址。

我尝试了很多网络配置的排列,包括将弹性IP放在/ etc / hosts中,并在服务器配置中使用EIP域名等等。

如何让我的本地EC2框返回EIP,而不是它认为它的内部IP。同样,这不是EC2公共IP的问题。

感谢。

1 个答案:

答案 0 :(得分:0)

使用公有DNS域名(看起来像ec2-52-12-34-567compute-1.amazonaws.com的域名)代替domain.xml中的0.0.0.0主机条目,但不要更改默认的localhost节点主机

保持/etc/hosts不变。使用公共IP作为“主机名”将阻止Glassfish启动。