Вопрос с использованием scapy.sniff для получения «Ethernet Frame» в файлах pcap

Цель: получить время прибытия из файлов pcap. Язык: питон3.7 Инструменты: Scapy.sniff

Прежде всего, я хочу получить данные о времени прибытия в .pcap, когда я использую wireshark, я видел данные в кадре Ethernet, но когда я использую #Scapy.sniff(offline='.pcap'), я просто получаю эфир, TCP, IP и другие, так как я могу получить эти данные? Большое спасибо!

>>from scapy.all  import *
>>a = sniff(offline = '***.pcap')
>>a[0]

[out]:
<Ether  dst=*:*:*:*:*:* src=*:*:*:*:*:* type=** |<IP  version=4 ihl=5 tos=0x20 len=52 id=14144 flags=DF frag=0 ttl=109 proto=tcp chksum=0x5e3b src=*.*.*.* dst=*.*.*.* |<TCP  sport=gcsp dport=http seq=1619409885 ack=1905830025 dataofs=8 reserved=0 flags=A window=65535 chksum=0xfdb5 urgptr=0 options=[('NOP', None), ('NOP', None), ('SAck', (1905831477, 1905831485))] |>>>
[ ]:

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
612
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Время пакета из pcap доступно в члене time:

print(a[0].time)

Он хранится как значение с плавающей запятой (стандартный формат метки времени Python). Чтобы получить его в более понятной форме, вы можете использовать модуль datetime:

>>> from datetime import datetime
>>> dt = datetime.fromtimestamp(a[0].time)
>>> print(dt)
2018-11-12 03:03:00.259780

Документация scapy не очень хороша. Использование интерактивной справки может быть очень поучительным. Например, в интерпретаторе:

$ python
>>> from scapy.all import *
>>> a = sniff(offline='mypcap.pcap')
>>> help(a[0])

Это покажет вам все методы и атрибуты объекта, представленного a[0]. В вашем случае это экземпляр class Ether(scapy.packet.Packet).

Большое спасибо! И тогда я постараюсь помочь (a[0]). Спасибо еще раз!!!

Hemico 29.05.2019 10:47

Другие вопросы по теме