|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Sergey V. Efimoff 2:5095/20 02 Sep 2001 00:16:27 To : All Subject : Вопрос по libpcap -------------------------------------------------------------------------------- Каким образом получается так, что когда я задаю в качестве параметра snaplen функции pcap_open_live() значение, например, 68, то при вызове callback функция pcap_loop() в качестве параметра pcap_pkthdr->len передает значение 98 (т.е. больше, чем snaplen) ? С какой стати она снапит больше, чем я сказал? (для теста по сетке гонялись пынги размером 64 байта). Понятно, что 98 - это полный размер фрейма (14+20+64), но все же интересно. Более того, в заголовке ethernet-фрейма почему-то совпадают ether_shost и ether_dhost, хотя пынги бегают между двумя разными машинами. И еще вопрос. Когда происходит пынг с localhost на localhost, поскольку lo0 не имеет mac, то ни о каких ethernet-фреймах речи идти не может. Так что же в таком случае вылавливает pcap_dispatch(), и как оттуда вытащить ip-пакет? //Risky [ICQ:3298616] <postmaster(at)atm2.micex.com> [ * The FreeBSD Evangelist * ] --- GoldED+/BSD 1.1.4.6 * Origin: FreeBSD 4.4-20010827-RC2 (MORDOR)/i586 12:16AM up 4:20 (2:5095/20) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/18173b914638.html, оценка из 5, голосов 10
|