我想在不使用 Raw 选项的情况下使用 scapy 在线发送特定的十六进制序列,例如 FF FF FF FF FF FF。找到与这些十六进制序列等效的字符串并将它们用作数据包有效载荷是否会产生相同的效果,因为 scapy 会将它们转换为十六进制并发送?
在 python 2.x 中,您可以使用binascii模块从十六进制字符串创建二进制数据。我已经使用它在 DHCPv6 请求中正确设置了 duid,只是将它传递给数据包类型的选项。
例如
>>> import binascii
>>> binascii.unhexlify('FFFFFFFFFFFF')
'\xff\xff\xff\xff\xff\xff'
Run Code Online (Sandbox Code Playgroud)
将该字符串传递给有效负载应该就是您所需要的。当然,您可以\x像上面一样键入带有转义符的字符串,但是将其表示为一个不错的十六进制字符串并unhexlify在需要正确的二进制数据时调用会更容易。
| 归档时间: |
|
| 查看次数: |
7643 次 |
| 最近记录: |