Я получаю IP-пакеты по протоколу SLIP, и я хотел бы распечатать их так же, как tcpdump Является ли. Моя программа способна декодировать протокол SLIP и при необходимости создавать единственную строку, содержащую IP-пакет.
Я не мог найти подходящего tcpdump флаги командной строки, кроме -r
. Формат файла задокументирован на http://www.tcpdump.org/pcap/pcap.html , но это выглядит слишком сложно.
Есть ли в Linux инструмент для красивой печати необработанных IP-пакетов?
Ссылка выше предназначена для pcapng, формата файлов pcap следующего поколения. Он предоставляет замечательные функции и большую функциональность, но, вероятно, это избыточно для ваших нужд.
Предполагая, что вы просто хотите регистрировать пакеты, исходный формат файла pcap должен соответствовать вашим потребностям и его легко записать: 24 байта информации глобального заголовка, за которой следует 16-байтовый заголовок + данные пакета для каждого пакета. Tcpdump (и Wireshark, и все остальное) прекрасно его прочитает. Вы даже можете (и, возможно, должны) включить заголовок SLIP.