Port forwarding would be quicker, but it would be less secure, in the sense that there is no confidentiality, or integrity. If you don't care then it is not a problem. Any VPN or tunnelling will add overhead, both in terms of the Packet header, and processing on the gateway that is encrypting and encapsulating your data. Different VPN technologies can use ...
I don't think you'd have a relevant performance gain for this specific example. Nonetheless, bear in mind a layer 2 to VPN would handle more traffic, like broadcasts, ARP packets, and NetBIOS packets.
If your need is just forwarding a specific service/port, I'd rather go with port forwarding and denying incoming packets to anything else that doesn't need to ...
In general two different services can’t run on the same TCP port.
The web server will be running on a different port than the one ssh uses, so pointing your web browser at http://x.x.x.x:2215 was the wrong thing to do.
I would start by simply connecting to the default http port, http://x.x.x.x and then if that doesn’t show any content , then simply ...
1. Check if PI uses the 3g
First you have to ensure, that the PI is using the 3g ppp0 connection for outgoing packets.
Should output something like:
default via XXXXXX dev ppp0
Also, doing that curl you mentioned (with the proxy ip set to localhost) on the pi should give you the 3g address.
2. Check if local proxying works
After this: Try if ...
Your DNAT rules are too generic. They attempt to forward all DNS traffic to your VM, rather than just what should apply to, DNS traffic originating from outside. Thus when your guest DNS server sends its own DNS queries, they get redirected back to itself.
To fix the problem, also specify the interface on which incoming DNS traffic will arrive from the ...
You could use rinetd to acomplish what you want:
apt install rinetd
Then you edit /etc/rinetd.conf, and add your configuration at the end:
SERVER_A_IP SERVER_A_PORT SERVER_B_IP SERVER_B_PORT
# Server A IP: 192.168.0.1
# Server B IP: 184.108.40.206
# Listen on port 8080 on local server and redirect to 22 on remote server
192.168.0.1 8080 1....