【问题标题】:Not able to connect my local system client socket to cloud based socket server无法将我的本地系统客户端套接字连接到基于云的套接字服务器
【发布时间】:2020-10-20 06:54:49
【问题描述】:

下面是我在基于云的 ubuntu 系统上运行的 server.py 文件。

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

host = socket.gethostbyname(socket.gethostname())
port = 5555

s.bind((host, port))
s.listen(1)

print("Server started host={} port={}".format(host, port))

while True:
    print('>>>>>>>>>> inside the while')
    c, addr = s.accept()
    print("Got connection from", addr)
    c.send(bytes("Thank you", "utf-8"))

下面是我的本地系统client.py文件:

import socket
s = socket.socket()
s.connect(('my_cloud_server_ip/ssh',5555))
s.recv(1024)

我得到这个错误:

Traceback(最近一次调用最后一次): 文件“”,第 1 行,在 TimeoutError: [WinError 10060] 连接尝试失败,因为连接的一方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应

那么代码有什么问题吗?

提前致谢。

【问题讨论】:

  • /ssh 是什么意思?你的字符串是像'1.2.3.4/ssh'还是只是'1.2.3.4'?可以连接netcat吗?你在云端的防火墙中打开了 5555 端口吗?
  • 不,它只是 '1.2.3.4' ,是的,我在本地 Windows 机器上打开了端口,因为我想将套接字从云连接到本地系统,因为我的 server.py 在本地系统上运行为什么@user253751
  • 对于你所说的 netcat,你能告诉我@user253751 我需要在服务器端或客户端应用该命令吗?
  • 你本地机器的 IP 地址是 192.168 还是 10 开头的?
  • 我正在使用从 46 开始的本地系统的公共 ip。@user253751

标签: python python-3.x sockets python-sockets


【解决方案1】:

通过设置host='0.0.0.0'尝试绑定到所有网络。

一般来说,我建议您按照本教程Socket Programming in Python (Guide) 使用with 来启动连接等。

【讨论】:

  • 谢谢卡尔,但这对我不起作用,因为我以前已经这样做了。
猜你喜欢
  • 2017-02-25
  • 1970-01-01
  • 2013-12-05
  • 2014-05-21
  • 1970-01-01
  • 2023-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多