- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个问题。
如何通过对 pcap 文件中的每个主机名使用 dpkt 库和 ts 来获得 GET 和 HTTP/1.0 200 OK 之间的响应时间差(我的意思是网络服务器的时间延迟)?
我的初步代码:
#!/usr/bin/env python
import dpkt
f = open('mycapture.cap')
pcap = dpkt.pcap.Reader(f)
for ts, buf in pcap:
eth = dpkt.ethernet.Ethernet(buf)
ip = eth.data
tcp = ip.data
if tcp.dport == 80 and len(tcp.data) > 0:
http = dpkt.http.Request(tcp.data)
print ts, http.headers['host']
f.close()
但它仍然只输出时间戳 GET 请求。
它看起来像:
tcpdump -i eth0 -w pcapfile; python (command).py pcapfile
google.com 0.488183
facebook.com 0.045466
quora.com 0.032777
最佳答案
看起来你已经成功获取了请求的第一个数据包,现在你需要获取响应的第一个数据包......像这样:
if tcp.sport == 80 and len(tcp.data) > 0:
# Here you can save the timestamp of the response and calculate the difference
祝你好运
关于python、dpkt 和时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13122758/
我正在使用 dpkt 来解析一些 ieee80211 数据包。 我看到创建的 ieee80211 对象有错误的值。 深入挖掘,我发现 ieee80211 将数据视为大端,而实际上我提供的数据包是小端。
我有一个问题。 如何通过对 pcap 文件中的每个主机名使用 dpkt 库和 ts 来获得 GET 和 HTTP/1.0 200 OK 之间的响应时间差(我的意思是网络服务器的时间延迟)? 我的初步代
我正在尝试创建一个 Python 脚本,我在其中解析 pcap 文件并将流量突发性测量到亚毫秒级。问题是 dpkt 提供的时间戳似乎没有提供足够好的分辨率。以下脚本 #!/usr/bin/python
所以我试图创建自己的 pcap 文件,我使用 dpkt 创建了一个 msg,但我不明白如何操纵时间戳,从我所看到的来看,它是 writepkt 中的第三个参数,但我不知道了解如何初始化变量..这是我代
我正在使用 dpkt python 模块来解析 pcap 文件。我对数据包进行了足够深入的研究,其中一些数据被表示为字节流。我可以很容易地从常规字节字符串进行转换,但是某些字节字符串显示为: \t\x
我正在尝试从一开始就使用 Python 的 Scapy 来分析数据包。通过最近的搜索,我发现在 python 中还有一个名为 dpkt 的模块。使用此模块,我可以解析数据包的层、创建数据包、读取 .p
如何解析 ICMP 数据包(使用 dpkt)来检查它是从 A 到 B 的请求还是响应? 我找到了一些 TCP 和 UDP 数据包的示例(如下),但我找不到 IP 数据包的任何内容。 import dp
我正在尝试使用 dpkt 从 pcap 数据包中获取 ipv6 扩展 header 并将其打印出来。但由于某种原因它不起作用。我尝试了很多不同的方法。这是导致问题的代码部分。有人知道如何解决这个问题吗
我想从 pcap 文件中打印出数据包数据。下面的代码将数据包数据存储在一个数组中,但我不知道如何打印数组的每个元素,然后从那里拆分数据。数组上的 for 循环只返回一个错误。 import dpkt
我正在尝试使用可用的 dpkt 库 here 从 pcap 文件生成所有域名及其相应 IP 地址的列表 我的代码主要基于 this filename = raw_input('Type filenam
我有一个实验室,我需要为一个巨大的 pcap 文件的每个数据包找到协议(protocol)。我打算制作一本字典来保存它们,但我的第一步只是使用 dpkt 提取信息。看起来 ip.get_proto 是
我有一个实验室,我需要为一个巨大的 pcap 文件的每个数据包找到协议(protocol)。我打算制作一本字典来保存它们,但我的第一步只是使用 dpkt 提取信息。看起来 ip.get_proto 是
我正在尝试在 python 3 上安装 dpkt,但在安装时出现以下错误: (venv)[root@miura dpkt-1.8]# python setup.py install Traceback
我有这个 python 代码: import sys import dpkt f = file("pcaop.Pcap") pcap = dpkt.pcap.Reader(f) i = 0 for t
我已将 Cisco 路由器配置为转储 pcap 文件以获取我尝试使用 dpkt 和 Python (2.7) 解析的特定接口(interface)上的流量。基本代码是: f = open('pktra
我正在使用 dpkt 解析 pcap 文件,但是我对如何提取目标 IP 地址感到困惑。我正在使用 eth = dpkt.ethernet.Ethernet(buf) 解析数据包,它返回一个以太网对象,
我收到以下代码的 ValueError: Invalid tcpdump header error。任何帮助表示赞赏 import dpkt f = open('a.pcap') pcap = dpk
我正在尝试使用 dpkt 模块解析先前捕获的 HTTP header 跟踪: import dpkt import sys f=file(sys.argv[1],"rb") pcap=dpkt.pca
我在我的机器上运行此代码时遇到问题,但它在我学校的 linux 机器上运行良好。 我得到的错误是: Traceback (most recent call last): File "wireshar
我有一个 python 脚本,它使用 dpkt 捕获以太网上的数据包,但我如何区分哪些数据包是 tcp,哪些是 udp。 最终,我希望获得在时间间隔内建立的每个 tcp 连接的数据包列表。 我的代码是
我是一名优秀的程序员,十分优秀!