Прочитать сырой пакет Ethernet с помощью Python на Raspberry - PullRequest
0 голосов
/ 03 мая 2018

У меня есть устройство, которое отправляет пакет со своей специфической конструкцией (заголовок, данные, crc) через свой порт Ethernet.

То, что я хотел бы сделать, это связаться с этим устройством, используя Raspberry и Python 3.x.

Я уже могу отправлять пакеты Raw ethernet с помощью библиотеки «socket», я проверил с помощью wireshark на моем компьютере, и все, кажется, передается как ожидалось.

Но теперь я хотел бы прочитать входящий необработанный пакет, отправленный устройством, и сохранить его где-нибудь на моем RPI, чтобы использовать его позже. Я не знаю, как использовать библиотеку «сокетов» для чтения необработанных пакетов (я имею в виду пакет уровня 2), я нахожу учебники только для чтения пакетов более высокого уровня, таких как TCP / IP.

Я хотел бы сделать что-то похожее на то, что делает Wireshark на моем компьютере, то есть читать все необработанные пакеты, проходящие через порт Ethernet.

Спасибо, Alban

1 Ответ

0 голосов
/ 04 мая 2018

Вы пробовали использовать пакет ettercap (ettercap-graphic)? Это должно быть доступно с apt.

В качестве альтернативы вы можете попробовать использовать TCPDump (инструмент Java) или даже проверить таблицы ip

...