不能通过IP telnet,但可以通过localhost

时间:2016-10-12 14:25:41

标签: linux amazon-ec2 localhost

我在AWS ec2上启动了一个实例,并尝试通过我的网络浏览器连接到端口3000上运行的服务器上的应用程序。我还关闭了iptables ...

我可以通过public class Texture { private int m_iTextureId; public Texture(Context ctx) { m_iTextureId = loadTexture(ctx, R.drawable.index); } public void setTexture() { GLES20.glActiveTexture(GLES20.GL_TEXTURE0); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, m_iTextureId); } public int loadTexture(Context ctx, int rsrcId) { int[] iTextureId = new int[1]; GLES20.glActiveTexture(GLES20.GL_TEXTURE0); GLES20.glGenTextures(1, iTextureId, 0); if(iTextureId[0] != 0) { GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, iTextureId[0]); BitmapFactory.Options options = new BitmapFactory.Options(); options.inScaled = false; Bitmap bitmap = BitmapFactory.decodeResource(ctx.getResources(), rsrcId, options); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); bitmap.recycle(); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE); } else { throw new RuntimeException("Error loading texture"); } return iTextureId[0]; } telnet localhost 3000进行远程登录,但不能通过主机名或telnet 127.0.0.1 3000等网络进行远程登录。

当我这样做时,我拒绝连接。我认为这与我的主机文件有一些关系,但无法弄清楚是什么。我的主机文件如下所示:

telnet ipaddress 3000

3 个答案:

答案 0 :(得分:0)

如果您为实例提供了公共IP,您是否检查了安全组? AWS security groups与实例关联并应用入站/出站规则。

如果您已经这样做了,那么我的下一步可能是确保端口绑定到正确的接口。 ss -tupan | grep 3000

答案 1 :(得分:0)

请确保您的iptable规则是正确的,可以通过ip访问。

答案 2 :(得分:0)

您能否确认是否在亚马逊虚拟机上使用弹性IP?

如果是,那么当您将弹性IP与EC2关联时,它将自动在主机文件中进行输入。

但如果没有,则需要手动输入。

谢谢, SIM