使用SCAPY时出现的问题 (许可被拒绝)

问题描述 投票:0回答:1

我想用python3做一个简单的网络扫描器,可以扫描整个局域网的设备。这时,我听说了Scapy。然而,每当我尝试运行我的程序时,它都会返回一个错误信息"PermissionError.[Errno 13]Permission denied [Errno 13]拒绝许可"

这是我的代码。

import scapy.all as scapy


def scan(ip):

  scapy.arping(ip)

scan("192.168.43.1")

如果你们能解决这个问题,会对我有很大帮助。谢谢你的阅读。

COMPLETE OUTPUT。

          Traceback (most recent call last):
         File "network_scanner.py", line 7, in <module>
         scan("192.168.43.1")
         File "network_scanner.py", line 5, in scan
         scapy.arping(ip)
         File "/usr/local/lib/python3.8/dist- 
         packages/scapy/layers/l2.py", line 628, in arping
         ans, unans = srp(Ether(dst="ff:ff:ff:ff:ff:ff") / 
         ARP(pdst=net), verbose=verbose,  # noqa: E501
         File "/usr/local/lib/python3.8/dist- 
         packages/scapy/sendrecv.py", line 503, in srp
         s = conf.L2socket(promisc=promisc, iface=iface,
         File "/usr/local/lib/python3.8/dist- 
        packages/scapy/arch/linux.py", line 467, in __init__
        self.ins = socket.socket(socket.AF_PACKET, 
        socket.SOCK_RAW, socket.htons(type))  # noqa: E501
       File "/usr/lib/python3.8/socket.py", line 231, in __init__
       _socket.socket.__init__(self, family, type, proto, fileno)
       PermissionError: [Errno 13] Permission denied
python python-3.x networking network-programming scapy
1个回答
0
投票

我相信这个方法 scapy.arping() 打开原始套接字。尝试以root用户身份运行 sudo.

© www.soinside.com 2019 - 2024. All rights reserved.