如何使用python进行不同网络不同设备间的TCP/IP通讯

目前就只能是同一设备不同程序间的TCP/IP通讯,已经知道服务器设备的ip但是呢客户端一直连接不上。

是在同一局域网吗?或者服务器是否是公网ip?如果两个都不是就不行

好问题!!抱歉我也不太懂,你问问chatGPT吧:https://new.quke123.com/
或者问下其他Python群友:https://app.yinxiang.com/fx/13ce6bbd-f36f-4e92-be53-92dd381ed729

可以使用socket模块,比如两台电脑连接在同一网络中,它们的IP地址分别是192.168.1.100和192.168.1.101。先在计算机A上,创建一个服务器程序,它将监听端口12345,并等待来自计算机B连接:

import socket

# 创建一个socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 绑定IP地址和端口号
server_socket.bind(('192.168.1.100', 12345))

# 开始监听端口
server_socket.listen(1)

# 等待客户端连接
print('等待客户端连接...')
client_socket, address = server_socket.accept()
print('客户端已连接,地址为:', address)

# 发送数据
client_socket.send(b'Hello, World!')

# 关闭socket连接
client_socket.close()
server_socket.close()


在计算机B上,创建一个客户端程序,它将连接到计算机A的IP地址和端口号,并接收来自计算机A的数据:

import socket

# 创建一个socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 连接服务器
client_socket.connect(('192.168.1.100', 12345))

# 接收数据
data = client_socket.recv(1024)
print('收到数据:', data.decode('utf-8'))

# 关闭socket连接
client_socket.close()


这样就使用了IPv4协议和TCP协议。要与不同类型的网络和设备通信,需要根据具体情况选择不同的协议和配置。在实际使用中,还需要考虑网络延迟、数据传输速率等因素,以确保通信的稳定和可靠。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^