Sockets Python 3.x socket.error:[Errno 10013]试图以其访问权限所禁止的方式访问套接字

Sockets Python 3.x socket.error:[Errno 10013]试图以其访问权限所禁止的方式访问套接字,sockets,python-3.x,udp,Sockets,Python 3.x,Udp,我在Windows 7中尝试广播UDP数据包时遇到此错误 import socket s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.sendto("hello".encode("ascii"), ("<broadcast>", 5868)) 导入套接字 s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s、 发送到(“hello”。编码(“ascii”),(“”,586

我在Windows 7中尝试广播UDP数据包时遇到此错误

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto("hello".encode("ascii"), ("<broadcast>", 5868))
导入套接字
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s、 发送到(“hello”。编码(“ascii”),(“”,5868))
如果我改为255.255.255.255,同样的交易。如果我输入一个特定的IP地址(包括127.0.0.1),它就可以正常工作。同样的精确方法(即,将数据包发送到255.255.255.255)也适用于.NET


这不受Windows防火墙的影响(已尝试将其关闭)。我是管理员,UAC已关闭,即使使用“以管理员身份运行”,也无法运行。不知何故,我不认为这是一个实际的权限问题。

您似乎缺少一个

s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
在创建套接字之后。它使套接字能够广播


有帮助吗?

就是这样。Windows中受支持的套接字选项列表为。