I'm connecting an embedded device to a remote server via TCP/IP using HTTP. I have two layers of routers, and am having issues connecting to the remote server if both layers are in place. My upper most router is 10.0.0.X, and my lower (local) router is 192.168.1.X.
If I bypass the 192.168.1.X router, and put my device and laptop on a hub connected to the 10.0.0.X router, my device completes the handshaking sequence to the server correctly. I see my SYN go out, the server responds with a SYN/ACK, to which I respond with an ACK. HTTP takes over from there.
If I plug my device and laptop into the 192.168.1.X router, and plug this router into the 10.0.0.X router, then I still see my SYN request go out, but I get no response from the server.
It seems to me that my 192.168.1.X router is blocking either my request from leaving, or the response from getting back in. I checked the (192) router settings, and the firewall is off (wide open).
I have Wireshark available on my laptop, and have considered sniffing the other side of the 192 router, but I don't know if I can the traffic, since I would expect the 10.0.0.X router won't pass them back down to other ports, even if they're there.
My questions:
Any ideas how I can debug this to see where the breakdown is occurring? Will Wireshark pick up those packets if the laptop is connected to another port on the router?
Why would one router pass the packets in both directions, while the other is blocking them one way or the other? It seems if I can answer this philosophical question, I might be able to deduce the real problem.
Thanks,
Chris