gpt4 book ai didi

Python:在 Windows 上获取 UDP 广播/socket.recvcmsg() 的发送者

转载 作者:可可西里 更新时间:2023-11-01 11:45:28 25 4
gpt4 key购买 nike

我使用 socket.recvmsg()获取 UDP 广播消息的数据和发件人的 IP 地址。这在 Linux 上工作正常,但此方法在 Windows (Python 3.3) 上不可用。如何获取发件人的IP地址?

from socket import *

fd = socket(AF_INET, SOCK_DGRAM)
fd.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)
fd.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)

data, _, _, addr = fd.recvmsg(4096) # <- how to achieve this without recvmsg?
host, upd_port = addr

最佳答案

我在您链接的 Python 文档中注意到,recvfrom返回与您的代码正在查找的内容(字节、地址)相似的值,并且与 Windows 兼容

socket.recvfrom(bufsize[, flags])

关于Python:在 Windows 上获取 UDP 广播/socket.recvcmsg() 的发送者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46708337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com