无法在scapy上创建数据包

时间:2014-12-09 14:04:48

标签: python-2.7 scapy

我是scapy的新手。 我试图在脚本中结合scapy,而不是通过bash使用它。 我打算伪造一个数据包。 通过我看到的所有教程和.pdf,都解释了如何在scapy工具中进行操作(在bash中)。

我尝试了以下代码:

from scapy.all import *

a=IP()
a.src="10.0.0.30"
a.dst="10.0.0.138"
print a

我试过这个只是为了获得一个打印输出,就像我在bash中得到的那样,看起来像是:

<IP  src=10.0.0.20 dst=10.0.0.138|>

但是我得到了未知的符号,例如:

“EXX @频率@

?“

我的问题是如何获得与bash相同的输出?我的意思是查看我插入的字段。

感谢响应者。

1 个答案:

答案 0 :(得分:0)

在Scapy对象上使用Python时的print语句将输出数据包的原始字节。

您应该对您创建的数据包使用.show()函数来获得您期望的良好输出。在你的python程序中尝试以下内容。

a.show()
a.show2()

有关详情,请参阅Scapy文档中的此{​​{3}}示例。

还可以找到用于检查数据包内容的列表Send and Receive - 只需向下滚动到&#34;命令/效果&#34;表