What's the difference between a VPN and an encrypted proxy?

I’ve read for years that a VPN creates an encrypted tunnel to the server, and from there your traffic goes to wherever you’re going.

A proxy server just sends all your traffic to the server and from there to wherever you’re going.

But if the connection to the proxy is encrypted… isn’t that the same thing as a VPN?

I’m thinking of the shadowsocks protocol, mostly. I have a DIY setup I made with Outline on a vps I pay for. The official outline app for Android doesn’t work very well, yet a shadowsocks app using the same access key works flawlessly. Wouldn’t they have to be connecting the same way…?

It’s the same thing.

The idea that they work differently is a conventions thing, not a technical difference.

At the end of the day, you’re rerouting traffic through a server.

By convention:

  • a proxy (a server) is a thing you specifically tell a piece of software to reroute through. You may or may not encrypt the traffic.

  • a vpn tunnel is a thing you setup to reroute all/most traffic through for a device to a proxy. Encryption is assumed.

A VPN is called a “virtual private network” cause it’s really just a collection of interconnected proxy servers using encryption to communicate and reroute traffic. This is where “private” and “network come from and it’s “virtual” cause the rerouting is “faking” stuff.

Communicating via an encrypted proxy (assuming the proxy server is a separate machine) than it’s not really that different other than the fact how many hops and where those hops are located.

VPN services make use of distributed data centers and may enforce a minimum number of hops for privacy reasons.

Without overly complicating the explanation, in layman’s terms, an encrypted proxy is exactly what a VPN is.

Sounds like you’re deep into tech stuff, bro. VPNs and encrypted proxies both cloak your online activity, but they work a bit differently under the hood. VPNs create a secure, encrypted connection from your device to a remote server, while encrypted proxies just encrypt the data sent between your device and the proxy server. So yeah, they’re similar, but not exactly the same.

…And then there are “proxifier” apps that create a VPN connection on a phone to redirect all its traffic through the proxy. By the way: which part of phone traffic is an exception to VPN redirection?

well, cell phones excepted

Can you go into more detail on this? I’m mostly looking at my Android device, which I obviously take with me everywhere.

Except you can do split tunneling with VPNs which effectively means only some defined traffic is using the tunnel and thus isn’t that different from the encrypted proxy

Looks like that was set to private by mods

So what’s up with shadowsocks? It sounds like it’s a homebrew VPN recipe, but people still call it a proxy.

It’s not the same thing, there are quite a few differences depending on use case.

How’s that any different? Those sound exactly the same

Old comment, but go ahead and explain the technical difference then /shrug

Not use case. Not convention.

But on a technical how it works and how one differs from the other; you’ll struggle cause it’s not different once you get to the nuts and bolts

Ever heard of the OSI networking model, or the TCP/IP networking model?

A VPN is typically a layer3 or layer2 tunnel. So it is operating at the networking layer, or in some cases the Internet layer. Because of this basically anything that can speak standard internet protocol, can usually operate over a VPN.

A proxy is working at the application layer, or data layer. So the software you are using must be designed to work with a proxy. If your software doesn’t support communicating over a proxy, then it might not work, or you might have to do some extra helper software.

Another pretty big difference is that a proxy usually is only useful in one direction. So you have software that uses the proxy to make outbound connections. But the opposite doesn’t work. Of course there is one big exception here for HTTP, where there is support for ‘reverse proxies’. This is possible because HTTP includes some metadata in the HTTP protocol that actually allows the reverse proxy to work. But you can’t really have a reverse proxy for other protocols unless the protocol specifically supports it.

Anyway if your goal is just encrypting your traffic between two points, and all your software supports using a proxy, then there really isn’t much difference.

But VPNs can be used for other things. VPNs are often uses in enterprises and businesses to build virtual networks over untrusted links. These virtual networks need to supports lots of clients, and lots of protocols that simply wouldn’t and/or couldn’t be configured to use a proxy. These networks need full bidirectional communication. VPNs give you a lot more flexibility, but as with pretty much everything that greater flexibility makes them more complicated to use.

I agree… doesn’t the word “proxy” by definition allude to different, or “remote”, from your ISP?

Sounds like rooting is not totally a bad thing: at least, you have apps that provide you with control of what the O/S can / cannot do.

I am once again reviving this thread because you are wrong, just read this.

Main use-case difference is you can’t reverse proxy the same way you can “reverse” VPN (it’s only reverse in the sense it’s the opposite direction as a proxy connection, nothing about the VPN is reversed because unlike a proxy, VPNs support their functionality bidirectionally)

So I’m hearing that proxies work on a per-app basis, and a VPN is system wide. That makes sense.

What about on Android? If an app tries to set up a VPN, my understanding is everything is sent through it unless split trafficking is enabled.

Except you can for HTTP lol Long as the protocol supports it, bidirectional isn’t a problem.

Second to last paragraph, in you’re “read this”

“If your application supports proxies they’re functionally the same” (paraphrasing)

The only actual aspect of importance in that link was

“VPNs typically act at Layer 2 or 3”

“Typically”

Again, a convention thing. No idea why you necrod a dead thread to just say effectively nothing of value?

Hell, I even mention this same difference as system level vs app level above.

Also he’s discussing the tunnel used to connect proxies within a VPN…which is basically what I said originally.