192.168.2.116 is the machine on my home network that I wish to contact with a web browser. 192.168.2.24 is the machine running openvpn server. From my phone (10.8.0.6), I can ping both machines fine. I can also ssh into the 116 machine without issue. In fact, I can use any application other than a browser to reach any machine on my home network (that I have added a route table entry to for the 10.8.0.x network).
Last night, I was at a location that had free wifi. When using the wifi hotspot, I could access the desired web server at 192.168.2.116 thru the VPN tunnel without issue. :? But when I build my VPN over the cell network (wifi disabled), the web browser times out. ssh and other applications accessing the other machines on the home network seem to work just fine. I ran tcpdump (tcpdump -i tun0 -n port 80) on the vpn server (192.168.2.24) and I can clearly see that no HTTP packets make it to the interface, but all other traffic destined to my home network does when monitoring their port numbers (eg. 22 for ssh)
I can live with what's happening as I will only be doing this when I have access to free wifi, but it sure does confuse me as to why everything but web browsing works.
Another strange thing that confuses me is that when using adb to shell into my phone (stock, not rooted), I can issue a "cat /proc/net/route" command and I can see the tun0 VPN tunnel interface entry, but I don't see any entry for the pushed route for the whole network.
shell@titan_umts:/ $cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric Mask MTU Window IRTT
rmnet0 00000000 71FBC40A 0003 0 0 0 00000000 0 0 0
tun0 0400080A 00000000 0001 0 0 0 FCFFFFFF 0 0 0
rmnet0 60FBC40A 00000000 0001 0 0 0 E0FFFFFF 0 0 0
rmnet0 71FBC40A 00000000 0005 0 0 0 FFFFFFFF 0 0 0
rmnet0 B38014AC 71FBC40A 0007 0 0 0 FFFFFFFF 0 0 0
rmnet0 B48014AC 71FBC40A 0007 0 0 0 FFFFFFFF 0 0 0
Shouldn't there be an entry for the home network with a little less restrictive netmask? It's routing traffic (outside of port 80) to the home network, I'm just expecting to see the pushed route for it in the table. Forgive me if I'm being dense here. I was expecting to see something like this in the routing table of the phone:
tun0 0002A8C0 00000000 0001 0 0 0 00FFFFFF 0 0 0