I'd like to know how to best achieve the following: Use my Android phone in the USA as if I were navigating the internet from my Android phone in France.
I'm already able to accomplish simple HTTP proxying by connecting all the mobile devices via a Wireguard server and running the Every Proxy app on the France Android phone.* However some apps don't respect proxy settings so I'm looking for a more robust option.
I assume apps have no choice but to respect VPN settings, so my plan is to force all traffic from the US device over the Wireguard interface (AllowedIPs = 0.0.0.0/0
), instruct the Wireguard server to route traffic from the US device to the France device, then set up the France device to enable routing and masquerading so that the US phone reaches the France mobile network.
I don't know how to accomplish the last task (enabling routing and masquerading on the France device.) Can it be accomplished? It seems that I'll need to root the device. Is it as easy as doing
iptables -F -t filter
iptables -P FORWARD ACCEPT
according to this post?
Any tips? Thanks!
ProxyDroid claims to force all app traffic through a proxy on a rooted device however I'm not sure it works well and I didn't really want to root the US device. Some apps which I want to observe might check whether they are on a rooted device and act differently.
*In the HTTP proxying setup, Wireguard clients are only routing LAN traffic over the VPN (AllowedIPs = 192.168.1.0/24
)