Я могу прочитать пакет из файла .pcap
, используя pyshark
.Вот мой код:
import pyshark
cap = pyshark.FileCapture(pcap_dir) # pcap_dir is the directory of my pcap file
print(cap[0]) # Print a packet
print(cap[0]['IP'].src) # Print some header value
Теперь мне нужно отправить этот пакет на некоторый интерфейс (например, eth0
).Я попробовал следующее:
from socket import socket, AF_PACKET, SOCK_RAW
sock = socket(AF_PACKET, SOCK_RAW)
sock.bind(('eth0', 0))
sock.send(cap[0])
Но я получаю ошибку:
sock.send(cap[0])
TypeError: a bytes-like object is required, not 'Packet'
Может кто-нибудь помочь?