A VPN that worked yesterday and fails today has almost never been broken into. It has been fingerprinted. Deep packet inspection is the default censorship tool in China, Iran and Russia in 2026, and it does not need to decrypt anything to stop you — it only needs to recognise the shape of your traffic, or the address you send it to.
That distinction decides the fix. If the censor blocked your protocol, another server changes nothing. If it blocked the IP, another protocol changes nothing. On a commercial VPN you are usually hit by both, because thousands of customers share one address range and one handshake signature. Your own endpoint is the only arrangement where you control both. This guide covers what DPI detects, which of the five protocols that still work in 2026 answers which block, and how to deploy one.
What deep packet inspection actually sees
Deep packet inspection is a misleading name. A modern censor is not reading your encrypted session — it cannot. It classifies the session from what stays visible when the payload does not: packet sizes, inter-packet timing, the byte pattern of the opening handshake, the destination address and port, and how the connection behaves when something pokes it.
Four techniques do the work, and each fails to a different countermeasure. Knowing which one hit you is the whole diagnosis:
- Protocol fingerprinting. Every VPN protocol has a recognisable opening handshake. OpenVPN's first packet carries a fixed opcode; WireGuard's is a 148-byte message with a constant type field in a predictable position. A classifier matches either in one packet, without decrypting anything.
- Active probing. The Great Firewall's signature move. Having seen a suspicious session, the censor later connects to that address itself and speaks a proxy protocol at it. If the server answers like a proxy, it is blocked — so looking like TLS is not enough, the server has to survive interrogation.
- IP and range blocklisting. The crudest method and by far the most common. Ranges known to host commercial VPNs are blocked wholesale, with no inspection at all. This is what kills a consumer VPN app overnight.
- Throttling rather than blocking. Iran's preferred method. The connection is not dropped but degraded until useless — induced loss and latency that break TCP congestion control. Nothing looks blocked, so users blame their own hardware.

Why your own VPS endpoint survives a blocklist wave
Commercial VPNs fail in censored countries for a structural reason no engineering fixes: they are public. Their address ranges are published, scraped and enumerated. Anyone can buy a subscription, note the exit addresses and submit them — and censors do exactly that. One blocklist entry costs thousands of users their access at once.
A proxy on your own VPS inverts that. Your endpoint is a single unknown address, on no list until somebody finds it, and finding it means fingerprinting your protocol or already knowing where to look. You also gain what no subscription offers: root. You pick the protocol, port, obfuscation and camouflage domain, and can run several at once.
The honest trade-off is that you become the operator. Nobody rotates the address for you, patches the box, or notices at 3am that the daemon died. If you want an app and a support desk, this is the wrong architecture — the censorship-resistant hosting pages state the same trade-off from the product side. What you get instead is an endpoint whose fate is not shared with strangers.
Why plain WireGuard and OpenVPN get caught by DPI
Both are excellent protocols and both are, by design, trivially identifiable. WireGuard optimised for cryptographic simplicity and speed, not concealment: its handshake initiation is a fixed-length message with a constant type byte. OpenVPN in its default configuration is equally distinctive. Neither was meant to be unrecognisable — that was simply not a design goal.
This does not make them bad choices, as our comparison of WireGuard versus OpenVPN says plainly. For privacy from your ISP, for linking your own machines, for a VPN in a country that does not perform DPI, WireGuard is the right answer and our WireGuard setup guide stands. Put bluntly: WireGuard solves privacy; it does not solve censorship.
Obfuscation layers exist for both — wrappers for OpenVPN, forks that randomise WireGuard's handshake. They work, and against a censor that only fingerprints they may be enough. They are weaker where active probing is in play, because scrambling a handshake does not teach a server to behave convincingly when a censor connects and asks it questions. That is what the next five protocols were built for.
The five protocols that still work in 2026
There is no single best protocol — only the best one for the blocking method you face and the network you are on. These five are worth deploying today, each with its own setup page.
| Protocol | How it hides | Port | RAM | Strongest for |
|---|---|---|---|---|
| VLESS + REALITY | Borrows a real site's TLS 1.3 handshake — no certificate, no domain of its own | 443 TCP | ~50 MB | China, Iran, Russia — the 2026 default |
| Shadowsocks-2022 | AEAD-2022 ciphers; resists active probing and replay | Any high TCP/UDP | ~30 MB | China; low-power and older devices |
| Hysteria2 | QUIC/UDP with Salamander obfuscation; looks like ordinary HTTP/3 | 443 UDP | ~40 MB | Throttled, lossy links — notably Iranian mobile |
| V2Ray / VMess | WebSocket over TLS, frontable behind a CDN so the origin never shows | 443 via WS+TLS | ~60 MB | Hiding the origin IP; existing VMess configs |
| MTProto | Fake-TLS secret; mimics an ordinary HTTPS site | 443 TCP | ~20 MB | Telegram specifically, in Iran and Russia |
VLESS+REALITY is the one to reach for first. Its trick differs from ordinary TLS camouflage: rather than presenting a certificate of its own, it relays the real TLS handshake of a genuine, popular website. An active probe sees an authentic certificate chain for a real domain, because that is what it is being shown. No self-signed certificate to flag, no obscure domain to correlate.
Shadowsocks-2022 is the lightest and most battle-tested; its cipher suite closed the replay and probing weaknesses that made earlier versions detectable. Hysteria2 answers throttling rather than blocking — its congestion control is built for deliberately lossy links. V2Ray behind a CDN hides the origin: the censor sees traffic to a large CDN, not to you. An MTProto proxy solves exactly one problem, but solves Telegram access so cleanly that it is worth running alongside whatever else you deploy.
Choosing the jurisdiction and the IP
Two properties matter and they pull against each other: how fresh the address range is, and how far the server is from you. Freshness usually wins. A new address on a range never used for circumvention passes the wholesale block that stops most people, and no amount of protocol sophistication recovers an address that is already listed. This is why recycled "anonymous VPN" addresses stop working — they were burned before you rented them.
Latency matters second. Of the seven jurisdictions we operate in, the Netherlands, Romania and Moldova sit closest to users in Iran, Russia and Central Asia, and the Netherlands adds world-class peering through AMS-IX. Iceland, Panama and Switzerland are further away but legally stronger — Panama has no mutual legal assistance treaty with most Western countries and no data retention obligation, and Iceland has no mandatory retention at all.
For a circumvention endpoint the advice is unromantic: pick for latency and range freshness first, jurisdiction second. You are moving your own traffic, not hosting content that attracts takedowns, so the legal profile matters less here than for publishing. Compare the seven on the locations page, or work through the trade-offs with the jurisdiction selector and our jurisdiction guide. Every server ships a dedicated IPv4 that is yours alone — a shared address would defeat the point.
Paying for the server from a censored country
This is where most guides quietly stop being useful, because it is the step that actually fails. In Iran or Russia, card processors decline you on sanctions grounds before the host ever sees the order, and mainstream providers demand identity documents you may have good reasons not to hand over. A technical guide is worthless if the checkout cannot complete.
Crypto is the rail that survives, which is why no-KYC hosting and censorship circumvention end up being the same product: no bank in the path to refuse the transaction, no identity check to fail. We accept Bitcoin, Monero, Ethereum, Litecoin, TRON, Solana and Tether on either the ERC-20 or TRC-20 network. Monero leaves no public transaction graph tying your funding to your server, and our Monero walkthrough covers it step by step; USDT on TRC-20 is the pragmatic alternative, with low fees and easy regional liquidity. A small VPS starts at $7.50 a month.
Deploying a VLESS + REALITY endpoint on your VPS, step by step
The deployment takes about fifteen minutes on a blank Debian or Ubuntu server. What follows is its shape; the VLESS+REALITY page carries the commands.
- Secure the server first. Key-only SSH, password authentication disabled, a firewall permitting only what you intend to expose. Do this before the proxy is live — our first-hour hardening checklist is the short version, and it matters more here than on an ordinary server.
- Install the Xray core and a panel. The 3x-ui panel wraps Xray in a web interface and takes a single installer command. Bind it to localhost and reach it through an SSH tunnel rather than exposing it — an administration panel on an open port is a fingerprint in itself.
- Create the inbound. Add an inbound with protocol VLESS and security REALITY on port 443. The decision carrying real weight is the camouflage
SNI: pick a popular HTTPS site that is reachable and unblocked from inside the censored network. If your camouflage domain is itself blocked, your traffic to it is anomalous and you have made things worse. - Import the client link. The panel emits a
vless://share link and a QR code carrying the full configuration. Import it into v2rayN on Windows, v2rayNG on Android, Streisand or FoXray on iOS, or sing-box anywhere — no client certificate, no config file holding a secret if a device is inspected. - Verify from outside. From a network that is not the server, confirm the endpoint answers a normal TLS handshake for your chosen SNI — a
curl -sIagainst the address with the SNI resolved to it is enough. If it looks like an ordinary HTTPS site to you, it looks like one to a probe.
Add a fallback before you need it. A second protocol on a second port costs ten minutes while everything works, and is painful or impossible from behind an active block. Hysteria2 on 443 UDP is the natural companion to REALITY on 443 TCP — different transport, port and failure mode. Keep both share links on your devices so recovery is a client-side switch.
Hardening the box so the proxy is not the leak
A working proxy and a safe proxy are different things. The endpoint now knows every destination you visit, and it is exposed on a port you have advertised to your own devices.
- Expose only what must be exposed. The proxy port, and SSH. Panels, metrics and databases belong on localhost, reachable through a tunnel.
- Turn off logging you do not need. Xray and most proxy daemons record every connection to disk by default. On a circumvention endpoint that file is the most sensitive object on the server.
- Do not co-locate. Resist running a personal website or mail server on the same box. Every extra service is another fingerprint, another certificate, another way to correlate the endpoint with you.
- Administer it carefully. Reaching the server over SSH from the censored network you are trying to escape ties your real address to it at the network layer. Server OpSec covers this discipline properly, and it is the part people skip.
- Keep it patched and boring. Unattended security updates, nothing exotic installed, no abandoned test configurations left listening.
When the IP gets burned
Assume it will. An endpoint used by one careful person can last a long time; one shared with forty people in a group chat will not. The response is mechanical: confirm the block is at the address level by testing the same protocol from a fresh server, redeploy in a different jurisdiction, re-import the new share link on your devices.
Because no identity was ever attached to the first server, nothing connects the new address to the old one — the practical payoff of no-KYC, usually described as an ideological position but really an operational one. What is worth changing at the same time is the sharing discipline that burned it. Addresses spread through screenshots and group chats, and censors read those channels too. If you support other people, give each their own credentials so one compromised user can be removed without rebuilding everything.
Eight mistakes that get an endpoint blocked within a week
- Using a recycled address range. The cheapest servers often sit on ranges that have carried circumvention traffic for years. Freshness is the property you are really buying.
- Choosing a camouflage SNI that is blocked locally. REALITY only works if the site it imitates is one your network sees ordinary traffic to. Imitating something already censored is worse than not camouflaging at all.
- Running the management panel on a public port. A 3x-ui login page on an open port identifies the server as a proxy to anyone who scans it, and scanning is cheap.
- Sharing one endpoint with a large group. Traffic volume becomes anomalous, and the address leaks through whatever channel you shared it in.
- Leaving verbose logs on. Useful for one evening of debugging, a liability every day after.
- Reusing an address after it is blocked. Once listed, an address rarely comes back. Redeploy rather than waiting it out.
- Running only one protocol. A single point of failure you can only fix from behind the block you are trying to escape.
- Rotating the server but not the credentials. Carrying the same keys, ports and identifiers across deployments rebuilds the correlation you just destroyed.
Is running your own proxy legal, and what we log
On our side the answer is straightforward. Renting a server and running a proxy on it is legal in all seven jurisdictions we operate in. Circumvention software is ordinary software, used daily by journalists and researchers. We do not log traffic, connections or DNS, we do not inspect payloads and we do not throttle protocols. The VPS is a bare Linux box with full root; what runs on it and what it connects to is visible to you and not to us.
The part we cannot answer is the part that matters most to you. Several countries that deploy deep packet inspection also regulate circumvention on the user's side, and the exposure of the person connecting is a question of local law no hosting provider is competent to advise on. We can tell you what happens on the server; we cannot tell you what happens where you are sitting.
It is worth being equally clear about what this architecture does not give you. A private proxy defeats censorship — it does not make you anonymous to an adversary who can watch both ends of the connection. Traffic entering and leaving your endpoint can be correlated by timing alone, and the server's address is known to your network. If your threat model is a state investigating you specifically rather than a filter blocking you generically, you want Tor and its multi-hop design, not a single-hop proxy. Matching the tool to the real threat is the difference between privacy and the appearance of it.