создание файла pcap с использованием python

Я пытаюсь создать очень простой файл PCAP (1 сообщение UDP).
Пробовал использовать dpkt (pcap.Writer), но безуспешно, документации мало.
Может ли кто-нибудь опубликовать работающий пример?
(или любой другой вариант - я не привязан к dpkt)


person Boaz    schedule 03.06.2012    source источник


Ответы (3)


Вы можете использовать Scapy.

https://scapy.readthedocs.io/en/latest/installation.html

Если вы используете Python 3:

pip3 install scapy

Затем в Питоне:

from scapy.all import wrpcap, Ether, IP, UDP
packet = Ether() / IP(dst="1.2.3.4") / UDP(dport=123)
wrpcap('foo.pcap', [packet])
person Havok    schedule 12.03.2018

вам нужно записать пакет в формат libpcap

Global Header + Packet Header + Packet Data + Packet Header + Packet Data эта ссылка должна вам помочь

http://www.codeproject.com/Tips/612847/Generate-a-quick-and-easy-custom-pcap-file-using-P

person devesh    schedule 12.06.2015

шапка конструкции (неработающая ссылка) показывает, как использовать construct для этого. Construct также имеет рудиментарный IP-стек (ссылка не работает) пример. Преимущество Construct в том, что он симметричен, т. е. вы можете поместить в него данные, преобразовать их в набор объектов Python, а затем вы можете выгрузить объекты, чтобы снова создать исходный большой двоичный объект данных.

person synthesizerpatel    schedule 03.06.2012
comment
Я не понимаю... Мне нужно СОЗДАТЬ файл pcap, не уверен, как это мне поможет - person Boaz; 03.06.2012
comment
Довольно устарело .. все ссылки кажутся неработающими - person Cukic0d; 02.03.2019