I'm trying to figure out why my MacBook is unable to reach the web page served by my Raspberry Pi while other computers on my local network (or on external networks) have no problems seeing the web page. So I set up tcpdump on both the Mac and Pi and captured an attempt from both sides.
My first question is the following: (in two parts)
A) If an outgoing packet shows up in tcpdump, does that guarantee that the packet was actually transmitted? (i.e. can there be anything downstream of the tap point that could prevent the packet from being sent?)
B) If an expected incoming packet doesn't show up in tcpdump, does that guarantee that the packet was never received? (i.e. can there be anything upstream of the tap point that could discard a received packet before tcpdump sees it?)
These questions come from my observations of the tcpdump logs:
- The Mac sends a short packet to the Pi
- The Pi receives that packet and sends a short packet back to the Mac
- The Mac receives that packet and sends two packets to the Pi; the 2nd packet has the browser info etc.
- Neither of those packets is ever received by the Pi.
If both my assumptions A & B above are correct, then this means my router is for some reason treating packets for the Mac differently from, e.g., packets for my WinXP machine. (I'm assuming it must be at my router because, outside of there there's no way of knowing what machine on the internal network the packet belongs to and therefore no way to treat different machines differently.)
So if all of my assumptions are correct, any ideas on what's going wrong, or what I should look at next?