Scapy脚本不发送数据包

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

我可能拥有最简单的Scapy脚本,但是它不起作用。请帮助:

import scapy.all as scapy

def scan(ip):
    scapy.arping(ip)
scan("192.169.11.117")

运行时,我得到了:

Begin emission:
Finished sending 1 packets.

Received 0 packets, got 0 answers, remaining 1 packets

如何解决此问题并实际获得答案?

python scapy
2个回答
0
投票

这不是您的使用方式。

看看文档:https://scapy.readthedocs.io/en/latest/usage.html#arp-ping

arping("192.169.11.*")

您应该查找什么是ARP扫描。您不仅将数据包发送到单个IP,还发送到一个范围(使用子掩码)。


0
投票

问题1

您可能使用了错误的子网。专用子网(RFC 1918)是

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

您可能打算这样做,这是一个专用IP地址

scan("192.168.11.117")

不是这个

scan("192.169.11.117")

这是一个公共IP地址。您也可能拥有此公共子网,在这种情况下,这是不相关的。

问题2

远程主机可能没有响应,因为该地址不存在该主机。确保再次检查您在arping中使用其IP的目标是否在线且可访问。

您可以在命令行上使用arp -a在* nix和Windows上检查arp映射:

$ arp -a

? (192.168.1.48) at 0:1b:78:20:ee:40 on en0 ifscope [ethernet]
? (192.168.1.66) at a4:77:33:88:92:62 on en0 ifscope [ethernet]
? (192.168.1.67) at 6c:33:a9:42:6a:18 on en0 ifscope [ethernet]
...

如果您尝试进行ARP扫描,则应查看Cukic0'ds的答案。

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