'L3PacketSocket' 使用发送命令时对象没有属性 'ins'

'L3PacketSocket' object has no attribute 'ins' when using send command

我正在尝试使用 UDP 协议发送数据包。我在 运行ning Python 3 Ubuntu 上使用 scapy。但是,我收到以下错误消息:“AttributeError:'L2Socket' 对象没有属性 'ins'”。完整的错误消息如下所示。

我在这里 https://github.com/secdev/scapy/issues/1868 读到,无法以 root 身份 运行 可能是个问题,因为 Ubuntu 是通过虚拟机 运行。任何帮助都非常受欢迎!

这些是有问题的代码行:

from scapy.all import *
packet = IP(dst="127.0.0.1")/UDP(dport=123)/Raw(load="123")
send(packet)

您需要以 root (sudo) 身份启动 Scapy。

仔细查看错误:它首先显示 "Operation not permitted"。 您引用的错误是第一个失败的结果。

已经多次报告,第二个错误已在 master 上修复:https://github.com/secdev/scapy/issues/1942

Scapy 将无法 运行 在没有 root 的情况下打开 Raw 套接字。这是一个 Linux 限制。