我有插座的客户端和服务器的简单程序其不能通过互联网Python的SOCK_STREAM通过互联网
# Echo server program
import socket
import ImageGrab
HOST = '' # Symbolic name meaning all available interfaces
PORT = 3000 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
data = conn.recv(1024)
print data
conn.close()
# Echo client program
import socket
import ImageGrab
#destnation ip
HOST = '127.0.0.1' # The remote host
PORT = 3000 # The same port as used by the server
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send('Hello rushikesh')
s.close()
print 'Received'#, repr(data)
工作当我们试图让它工作在网上是无法连接。程序如上图所示只是目的地ip被我的朋友ip替换。
当工作在本地主机它工作完全正常,但没有工作过互联网......
我一直在使用SOCK_DGRAM
它工作在网络仅用于数据的小块写入的程序。我想用它传输图像,所以我使用SOCK_STREAM
来传输图像,用于传输在localhost上成功运行并且不能通过互联网工作的图像。所以,我没有写简单的程序,但仍表现出同样的问题
能有人请我的GUID通过这个...
据说主机'localhost'或'127.0.0.1'只会听lan,但'0.0.0.0'会听所有的适配器。 – Luke 2016-07-12 11:27:19