2015-03-10 3 views
0

Я читаю pcap-файл в python, используя scapy, который содержит пакеты Ethernet, у которых есть трейлер. Как я могу удалить эти трейлеры?Как удалить трейлер пакета в python с помощью scapy

P.S: Ethernet-пакеты не могут быть меньше 64 байт (включая FCS). Сетевые адаптеры добавляют до конца нулевые байты в конец пакета для преодоления этой проблемы. Эти байты заполнения называются «Прицеп». См. here для получения дополнительной информации.

+0

вы говорите Ают: #USER_AGENT = '(+ http://www.yourdomain.com) ' – nafas

+0

Нет. Я имею в виду трейлер пакета в заголовке Ethernet. 'USER_AGENT' существует в заголовке HTTP. – SuB

+0

ну почему бы вам не использовать какой-то прокси-сервер, я использую TOR, и я не идентифицирую себя (распутывая эту строку). так что ничто, кажется, не проходит – nafas

ответ

1

Похоже, что официального способа удалить его не представляется возможным. Эта работа на кадрах, которые имеют IPv4 в качестве протокола сетевого уровня:

packet_without_trailer=IP(str(packet[IP])[0:packet[IP].len]) 
-1

Просто используйте верхние слои и игнорируемый слой Ethernet:

packet = eval(originalPacket[IP])

Смежные вопросы