首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >套接字编程端口帮助python

套接字编程端口帮助python
EN

Stack Overflow用户
提问于 2016-04-12 14:16:09
回答 1查看 1.2K关注 0票数 0

我正在尝试实现套接字编程,并希望将服务器和客户端的通信端口号配置为特定端口。我在客户端和服务器端都指定了相同的端口号,但是当程序运行时,仍然需要一个随机端口号。如何修正端口号/使其保持静态?

服务器端代码

代码语言:javascript
复制
import socket
s=socket.socket()
port=12345
s.bind(("192.168.0.111",port))
s.listen(5)
while True:
    c, addr = s.accept()
    print("got connection from ",addr)
    sendingMessage = "Thank you for connecting"
    c.send(bytes(sendingMessage, 'UTF-8'))
    data = c.recv(16)
    receivedData=data.decode("utf-8","ignore")
    print (receivedData)
    c.close()
    if receivedData=="stop":
        break

客户端代码

代码语言:javascript
复制
import socket
port=12345
s=socket.socket()
s.connect(("192.168.43.111",port))

sendingMessage = input("Enter your message : ")
s.send(bytes(sendingMessage, 'UTF-8'))

data = s.recv(32)
receivedData=data.decode("utf-8","ignore")
print (receivedData)

s.close
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-12 15:26:24

如果希望客户端也使用端口12345,则还必须绑定客户端端口号。s.connect中给出的端口号是要连接到的远程端口。IOW,您的代码在客户机中应该如下所示:

代码语言:javascript
复制
s = socket.socket()
s.bind(('', port))
s.connect(("192.168.43.111", port))

您也可以在绑定中指定IP地址,但通常不需要这样做,因为本地IP地址将通过到远程主机的路由来建立。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36575944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档