I am forwarding traffic to ports on eth0 and lo.
For the same traffic at the same ports and different ports, when I do a tcpdump and count the packets, for time t, I only see about half the number of packets on the loopback, lo, compared with the eth0.
I have tried this on different port numbers, with different traffic rates, and the number of packets on lo is always about half that of eth0.
Is there anything inherently different between the lo, and eth interfaces that would account for this?
Update: I am using the IP address of the loopback to send the traffic, and this is the same on all devices. Is it possible that my packets are just being split between two devices, and their loopback port?
Update 2: So what I see from the tcpdump is that for the eth0 100% of the packets are received by the filter and captured. But at the lo, only 50% of the packets received by the filter are processed. I've only been counting captured packets, not all those received by the filter.
But why is the lo only capturing 50% of the packets?