我遵循的是这教程,因为我对TCP或一般网络不太了解,而且它可以在本地主机上工作,但是当我将它切换到我的真实IP并要求我的朋友在他的系统上试用客户端时,它就不连接了,给出了错误:
TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
如果这里的"WinError“部分很重要,我在Ubuntu上,我的朋友在Windows上。
server.py
import socket
HOST = 'my ip'
PORT = 65432
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.bind((HOST, PORT))
s.listen()
conn, addr = s.accept()
with conn:
print('Connected by', addr)
while True:
data = conn.recv(1024)
if not data:
break
conn.sendall(data)client.py
import socket
HOST = '86.184.147.101'
PORT = 65432
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.connect((HOST, PORT))
s.sendall(b'Hello, world')
data = s.recv(1024)
print('Received', repr(data))我认为这可能只是一些显而易见的事情,但我找不到任何相关的问题,堆叠溢出或其他部分的互联网。干杯!
发布于 2021-01-31 12:08:10
检查是否能够使用ping命令对服务器进行ping。检查计算机/服务器的DNATing规则。此外,检查您的防火墙是否允许其他设备连接。
发布于 2021-01-31 12:03:41
其中一个可能的问题是在您的家庭路由器/防火墙上没有启用端口转发。确保您的主路由器正在将端口65432转发到运行服务器的本地计算机。谷歌“端口转发”为您的路由器模型,以找到如何配置它。
https://stackoverflow.com/questions/65978713
复制相似问题