I hope I can help you. But first three thinks;
I’m not an expert, second; I sniff on a WRT which is in Bridge-Mode, third; the kernel drops a lot of packets.
My setup; I use two WRT’s, one as router the other as bridge (pointing to the neighbor’s AP, he is sharing his DSL to me). The router routes all my Internet requests to the neighbor’s router over my bridge. In my case, the bridge is the last instance of my network; therefore I take sniff-samples from there.
I use two ways to sniff
1. I login via ssh and do
tcpdump -Al -vvv -s 1516 -i eth1
where -A is ASCII-output, -l is line buffered, -vvv is much verbose, -s 1516 is to see the payload and -i eth1 is the Wlan-Interface
If I abort tcpdump, it stops with following:
315 packets captured
1783 packets received by filter
1119 packets dropped by kernel
As you can see, nearly 50% is lost. Maybe the CPU is to slow?!
2. I have a sh-script on my powerbook, which I use to trigger to start the sniffing:
#!/bin/sh
ssh root@192.168.0.100 /usr/sbin/tcpdump -Al -vvv -s 1516 -i eth1 > /Users/admin/Desktop/fullbridge.log
Here I use the same options. The advantage to use this script is, that I save the sniff direct on my powerbook and I can look at it in real-time with the application console, which affords me to filter the entire sniff also in real-time.