gpt4 book ai didi

python - ip python windows 10 上的广播消息

转载 作者:行者123 更新时间:2023-11-28 18:34:54 24 4
gpt4 key购买 nike

我正在尝试编写一个简单的信使,向本地网络中的所有计算机发送广播消息。该代码适用于 windows 7 和 Ubuntu 14.10,但是当我尝试在 windows 10 上使用它时,它甚至不发送 udp 包进行广播,它什么也不做(用 wireshark 检查,没有传出包)

import socket
import sys
import traceback

dest=('<broadcast>',10100)
UDPSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

UDPSock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
while True:
data = raw_input("Enter message to send or type 'exit': ")
UDPSock.sendto(data, dest)
if data == "exit":
break
UDPSock.close()

最佳答案

我更新到Win10后发现了同样的问题。我的 WOL.py (Wakeup On Lan) 不再工作了。使用 tcpdump 检查。

我现在找到了解决方法。

# Broadcast it to the LAN.
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(send_data, ('172.16.1.255', 9)

'<broadcast>' 更改地址设置广播位的网络地址在我的系统上有效。

例如我有一个 IP 为 172.16.1.x 网络掩码 255.255.255.0 的 C 类网络。改变 '<broadcast>''172.16.1.255'做的伎俩。通常这是由操作系统完成的。

PS.:抱歉上次发错了。

关于python - ip python windows 10 上的广播消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33494111/

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