问题标签 [dpkt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 异常 IP6 没有属性
我正在用 python 编程,但我遇到了一个问题,事实上,当我抛出我的脚本时,它在他检测到 IP6 数据包后几秒钟就结束了。显然我必须过滤数据包并只接收 IP4 数据包以避免这个问题,我想知道我如何在开始时将它与库 dpkt 一起使用。我尝试了一些东西,但我是一个初学者,它不起作用,正如你在这一行中看到的那样:
遇到的错误说:“AttributeError:'IP6'对象没有属性'p'”。这是回溯:
这是我的代码,如果你想看看 :) 谢谢你的时间 :)
python - 使用 dpkt 从 DNS 响应中读取 IP 地址和 TTL
我正在使用 dpkt 读取 pcap 文件。
我想为每个答案读取 IP 地址和 TTL。我做到了dir(answer)
,但我找不到任何似乎返回响应的 ip 地址/TTL 的东西,而且我在文档中也找不到任何东西。
有没有办法呢?
python - Python Scapy 与 dpkt
我试图Scapy
从一开始就使用 Python 分析数据包。在最近的搜索中,我发现 python 中有另一个模块名为dpkt
. 使用这个模块,我可以解析数据包的层,创建数据包,读取.pcap
文件并写入.pcap
文件。我发现它们之间的区别是:
缺少实时数据包嗅探器
dpkt
有些字段需要使用
struct.unpack
in解包dpkt
。
我还缺少其他差异吗?
python - 带有 pcap 的 Python dpkt - 如何打印数据包数据?
我想从 pcap 文件中打印出数据包数据。下面的代码将数据包数据存储在一个数组中,但我不知道如何打印数组的每个元素,然后从那里拆分数据。数组上的 for 循环只会返回错误。
python - 在 Anaconda Python 中找不到测试模块
test
我在 Anaconda 的 Python 版本中找不到该模块。谁能帮我解决这个问题。该模块由dpkt
我尝试使用的库使用。
wireshark - 关于Wireshark pcap文件的问题
我发现在 Wireshark gui 中,有一个 info 字段描述了连接信息,例如 HTTP GET 或谁有 xxxx 只是想知道 Wireshark 是否会将 info 字段存储到 pcap 转储文件中?
我正在尝试使用 dpkt python 模块解析 pcap。不知道我应该如何检索此信息字段。感谢您的任何建议。
python - 无法使用 python dpkt 解析 tcpdump 捕获
Python dpkt 可以解析 Wireshark/pcap 文件并成功显示数据包数据:
但是当我试图解析 tcpdump 文件时,我得到了以下结果:
从 Python IDE 打印中,您可以看到 type(eth.data) 是'str'而不是类 'dpkt.ip.IP'。
有谁知道根本原因是什么以及如何使 dpkt 用于tcpdump
捕获?
python - 转换包含随机字符的 dpkt 字节字符串
我正在使用 dpkt python 模块来解析 pcap 文件。我对数据包的研究足够深入,一些数据被表示为字节流。我可以很容易地从常规字节字符串转换,但是一些字节字符串显示为:
\t\x01\x1c\x88
第一个值应该是 09,但由于某种原因,它使用了转义的制表符。(标签的十六进制代码是 09)。
它也对其他流中的其他角色执行此操作。
更多示例输出:
\x10\x00@\x00\
\x05q\x00\x00\
\x069\x9c\n\x00
所以我的问题是:我可以在没有这些额外字符的情况下将此字节流转换为一个吗?
或者,我将如何将 '\t' 之类的内容转换为十六进制以返回 '09'?
更新:
事实证明,我正在使用一个函数创建要转换的字符串,该函数将返回 \t011c88 代替第一个流。
不理会它并使用 stream.encode("hex") 工作
python - 从 mac 地址转换为十六进制字符串,反之亦然 - python 2 和 3
我有想要作为原始数据发送到 dpkt 的 MAC 地址。dpkt 包希望我将数据作为十六进制字符串传递。所以,假设我有以下mac地址: '00:de:34:ef:2e:f4'
,写成: '00de34ef2ef4'
并且我想编码成类似 '\x00\xdeU\xef.\xf4'
的东西,反向翻译将提供原始数据。
在 Python 2 上,我找到了几种使用 encode('hex')
和 decode('hex') 的方法。但是,此解决方案不适用于 Python 3。
我很难找到一个代码片段来支持这两个版本。
我会为此提供帮助。
谢谢
python - dpkt ipv6 扩展头
我正在尝试使用 dpkt 从 pcap 数据包中获取 ipv6 扩展标头并将其打印出来。但由于某种原因它没有工作。我尝试了很多不同的方法。这是导致问题的代码部分。有没有人知道如何解决这个问题?ps 缺少关于 dpkt for ipv6 的示例代码
更新:当我使用 dpkt.ip6.IP6FragmentHeader 我得到这个错误
AttributeError:“str”对象没有属性“IP6FragmentHeader”
我想从这个数据包中获取分片头,它是 ICMPv6 Wireshark 数据包