???????????????????????????????????

????• ?????????????? ?????????????????????????recvfrom??????????汾???????????????????????á?

????• ???·???????????poll????????libpcap?????????????????????libpcap?????????е???????????????????????Ч?????(?????????????)??????????????????Debian Lenny????????????

??????????????Debian Lenny??????????·?????????AF_PACKET???????????libpcap???????????ζ??tcpdump(??????libpcap)???????????????????????????

???????°汾??libpcap?????á??·??????????????????????Lenny????????÷????????????????????°汾??libpcap???????tcpdump??????????Lenny??????????????????????????bond????????豸?????????????????RX·???????????????μ?libpcap??????á???????????????????????????????RX·????????

????????ζ??????á????????????????AF_PACKET??bug??????汾??libpcap??bug??

????if???

??????????С?????????????????????if?????????libpcap??á?????????????????????

 // From pcap_read_packet in pcap-linux.c:
 
if (handle->md.ifindex != -1 &&
    from.sll_ifindex != handle->md.ifindex)
  return 0;
????????if????????????ж??????????ж??????????????????????????libpcap????????豸???????????????????????????????pcap_read_packet????????????????????libpcap????????????

??????δ??????????????п???????????????????????????????socket??????????ü????????????豸????????????AF_PACKET???????socket??bind?м?????е???????洢???????С?

???????????????????????bond?豸???????????豸????????????

?????????libpcap?????????????豸?????????????????濴?????????????????????????netif_receive_skb?е?bond?豸?????dev?????????????bond?豸?????????????豸????????????

????????if???????????????????????????????????????????tcpdump????????????????????

???????????????????????????·??????в??????????????mmap????????????????????????????????????????????????????°汾??libpcap?????tcpdump??(???????????)??????????bond???????豸?????????

???????????????汾??libpcap??????????

???????

??????????????????????????漣??