繁体   English   中英

简单的scapy脚本不发送数据包

[英]Simple scapy script not sending packet

我有最简单的 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

我该如何解决这个问题并真正得到答案?

这不是你使用它的方式。

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

arping("192.169.11.*")

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

问题 #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 中使用的arping的目标是否在线且可访问。

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

$ arp -a

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

为目标 IP 确保一个 scapy arping应该解决。


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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM