Я использую «tcpdump port 1025 -w out.pcap -s 4000» и все пакеты, отправленные с локального хоста, я вижу «XXX байт на проводе, 54 байта захвачено» (захватываются только заголовки ethernet и tcp, данные не захватили).
Очевидно, что snaplen равен 4000, поэтому я не могу понять, почему пакет обрезается посередине.
Я также написал программу, которая использует libpcap напрямую, и произошло то же самое явление.
Это произошло как на libpcap 1.1.1, так и на 1.2.0rc1, однако на libpcap 0.9.8 это сработало!
Я использую SLE10 с пакетом обновления 3 (SP3), и у меня установлен другой компьютер с точно такой же ОС и программами, где он прекрасно работает.
Вот образец захвата .