我正在尝试在我的 Linux 服务器和在我的笔记本电脑上运行的客户端之间建立 TCP 套接字。我正在运行的 TCP 服务器代码是,
from socket import *
HOST = ''
PORT = 1999
serversocket = socket(AF_INET,SOCK_STREAM)
serversocket.bind((HOST,PORT))
serversocket.listen(5)
while True:
(clientsocket, address) = serversocket.accept()
print ("Got client request from",address)
clientsocket.send("Thank You for connecting")
clientsocket.close()
我正在运行的 TCP 客户端代码是:
from socket import *
clientsocket = socket(AF_INET,SOCK_STREAM)
clientsocket.connect(("my-server-ip-address",1999))
recv = clientsocket.recv(1024)
print(recv)
我面临的问题是我无法从客户端与服务器进行通信。当我在 Linux 服务器上运行 TCP 客户端和服务器代码时,通信正常。因此,我已将问题范围缩小到我的服务器上缺少开放的 TCP 端口。我在我的笔记本电脑上使用 Windows 8。我从我的笔记本电脑到我的服务器做了一个 nmap,可用的开放端口列表是 80/tcp、443/tcp、22/tcp。那么,任何人都可以建议如何将端口添加到开放端口列表中。例如,在本例中,我需要将 1999 添加到开放端口列表中。
服务器版本:Linux 主机名 3.13.0-48-generic #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux