socket编程遭遇socket.error: [Errno 10013]错误?
编写原始套接字程序,代码如下
import socket
import os
HOST = '192.168.0.101'
def sniffing(host,win,socket_port):
while 1:
sniffer = socket.socket(socket.AF_INET,socket.SOCK_RAW,socket_port)
sniffer.bind((host,0))
sniffer.setsockopt(socket.IPPROTO_IP,socket.IP_HDRINCL,1)
if win == 1:
sniffer.ioctl(socket.SIO_RCVALL,socket_RCVALL_ON)
print sniffer.recvfrom(65565)
def main(host):
if os.name == 'nt':
sniffing(host,1,socket.IPPROTO_IP)
else:
sniffing(host,0,socket.IPPROTO_ICMP)
if __name__ == '__main__':
main(HOST)
报错:
我上网查说是端口被占用,一开始查询80端口占用情况发现时系统进程占用,后来修改注册表后系统占用的问题解决,但是还是无法运行,依然显示这个错误。我的是Win10系统,改用Linux后就没有这个问题,请问这是为什么?如果非要在Win10上写这个程序应该怎么改?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你用管理员权限运行这个程序试试