简单的Python TCP服务器无法在Amazon EC2实例上运行

use*_*995 3 python firewall tcp amazon-ec2 amazon-web-services

我试图在我的EC2上运行一个简单的Python TCP服务器,监听端口6666.我已经创建了一个入站TCP防火墙规则来打开端口6666,并且对传出端口没有限制.

我无法从外部世界连接到我的实例,但是使用telnet或netcat进行测试永远无法建立连接.如果我从localhost建立连接,事情确实有效.

关于什么可能是错的任何想法?



    #!/usr/bin/env python

    import socket


    TCP_IP = '127.0.0.1'
    TCP_PORT = 6666
    BUFFER_SIZE = 20  # Normally 1024, but we want fast response

    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.bind((TCP_IP, TCP_PORT))
    s.listen(1)

    conn, addr = s.accept()
    print 'Connection address:', addr
    while 1:
        data = conn.recv(BUFFER_SIZE)
        if not data: break
        print "received data:", data
        conn.send(data)  # echo
    conn.close()


Max*_*org 7

您的TCP_IP仅在本地侦听,因为您将侦听IP设置为127.0.0.1.
设置TCP_IP = "0.0.0.0"并且它将监听"所有"接口,包括面向外部的IP.