Python-无法使用套接字模块将客户端与服务器连接(在Windows 2012 R2上)

时间:2019-01-10 08:45:34

标签: python-3.x windows-server-2012-r2

我正在尝试使用套接字模块创建简单的客户端-服务器应用程序,并且如果我使用“ localhost”作为主机,则可以正常工作,但是当我尝试在计算机与远程Windows Server之间建立连接时2012 R2客户端无法连接到服务器。这是我的脚本:

服务器

import socket
HOST = '172.22.5.223' # Windows Server IP
PORT = 9999
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind((HOST, PORT))
server_socket.listen(10)
print("Listening")
s = server_socket.accept()
print("Connected")

客户

import socket
HOST = '172.22.5.223'
PORT = 9999
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
    sock.connect((HOST, PORT))
except Exception as e:
    print("Cannot connect to the server:", e)
print("Connected")

错误:[WinError 10060]连接尝试失败,因为一段时间后连接方未正确响应,或者由于连接的主机未能响应,建立的连接失败

1 个答案:

答案 0 :(得分:0)

解决方案是向Windows Server防火墙添加规则,以允许服务器脚本连接到域网络。