Advanced
Troubleshooting
Sorted by symptom. One of the first three steps almost always does it, so work strictly from the top down.
What to try, in order
-
Go through the strategies by hand
The "Strategies" tab, select a row, "Apply". Try them in this order: Combo (recommended), then domestic (VK), then ALT10, ALT11, Flowseal (multisplit), Flowseal ALT, window (wssize) and finally adaptive.
After each switch, give it five or ten seconds and refresh the page: the browser may hold old connections open for a while. What each strategy does and which suits which symptom: Strategies explained.
-
Let it select and generate automatically
The "Diagnostics" tab, the "Select" button. Nothing worked? In the same place, press "Generate": it takes longer, but it assembles a strategy for your network instead of picking from ready-made ones.
Before you start, narrow the target on the main screen down to the service you actually need. Selecting for "Discord + YouTube" looks for a compromise, while selecting for Discord alone finds a more precise variant.
-
Add it to the antivirus exclusions
Settings, the "Add to exclusions" button. One click registers the program and the engine folder with Windows Defender and the firewall.
This is the most common reason the bypass "does not work" or the engine "disappears". Bypass tools regularly trigger false positives. If the engine has already been deleted, add the exclusions and then update it from Settings, or restart the program.
-
Turn QUIC off
Settings, disable QUIC and HTTP/3. If your provider is targeting that protocol specifically, YouTube and Discord will fall back to ordinary TCP, which the bypass handles better. This is the standard recipe for video that loads forever.
-
Look in the journal
The "Journal" tab. If there is a start-up error there, the problem is not the strategy but the engine itself: administrator rights, the antivirus, or an engine that has not finished downloading. The codes are decoded further down this page.
-
Check whether it really is name-based blocking
The "Diagnostics" tab, the "DPI check" button, with the bypass turned off. It answers not "does it open" but "is the provider interfering".
If the check says "no connection", the blocking is by IP address, and the bypass cannot help with that by design: only a VPN will. For Telegram there is the built-in proxy, which solves that problem another way.
The bypass will not start
| What you see | What to do |
|---|---|
| The button is greyed out, or the bypass dies right after you turn it on | Check the journal: the reason is there. Most often the program was not started as administrator, the antivirus stepped in, or the engine has not finished downloading on the first launch. |
| "winws2.exe not found. Wait for the engine to download." | The antivirus deleted winws2.exe. The program recognises this itself and
writes in the journal that the file was removed by the antivirus, then downloads the engine
again. To stop it happening again, add the exclusions. |
| Something downloads on every launch | If the exclusions are not in place, the antivirus deletes winws2.exe after
every download, and the program honestly fetches it again. The engine update itself is not
re-downloaded: when the versions match there is no download at all, and the progress bar is
only shown during a real download. |
"Installation cancelled": no sha256sum.txt |
The engine release had no checksum file, so there is nothing to verify integrity against. The program deliberately refuses to install unverified binaries — try again later or download the engine by hand from the release page. |
| "Failed to start" | Same thing. The journal will carry a line with the real reason, which is more informative than the message itself. |
| A UAC prompt on every launch | That is by design: the engine needs a driver in the kernel. Turn on autostart in Settings and the program will start elevated without a prompt. |
Discord problems
| Symptom | Cause and what to do |
|---|---|
| The login page opens, then it loads forever | The bypass gets through login but not the gateway, whose client hello is a different size. Use strategies that adapt to size: the recommended one, the domestic (VK) one, or ALT10, which does no splitting at all. |
| Text works, voice is silent or stuck on "connecting" | Voice runs over UDP on high ports, which is a separate profile. Try Discord, voice (QUIC fake), then ALT10 and ALT11 with the domestic voice blob. |
| Ping of 5000, nobody can hear anyone | Same thing. On the most stubborn networks the provider throttles voice UDP separately, and then stable voice may require a VPN specifically for it. |
| Images and attachments will not load | The Discord CDN uses HTTP/3 and high ports. Make sure the strategy is a combo one, not a narrow one. If that does not help, turn QUIC off. |
| It works only every other time | Adaptive (circular): it switches variants itself when it catches a reset from the DPI. Give it a few seconds after starting. |
YouTube problems
| Symptom | Cause and what to do |
|---|---|
| The site opens, video buffers or loads endlessly | QUIC is almost always to blame. Settings, disable QUIC and HTTP/3. The browser falls back to TCP. |
| Video plays in low quality | That is throttling, not blocking. Turn QUIC off, then try another strategy: ALT11 often helps. |
| It does not open at all | Check that the bypass target on the main screen includes YouTube, and that the youtube domain list is active on the "Host lists" tab. |
All green, but the site will not open
A special case that confuses people more than any other. Diagnostics checks availability at a low level: a connection is established and the TLS handshake completes. That is not the same as "the page opened in the browser".
A mismatch usually means one of six things.
- ECH. The browser encrypts the site name itself, and the provider cuts such connections wholesale without inspecting them. A check that runs without ECH still passes. Try another strategy or disable ECH in your browser settings.
- QUIC. The check goes over TCP, while the browser tries HTTP/3 (QUIC) first for sites
behind Cloudflare. If your provider throttles it, the page loads forever even though everything
opens fine over TCP. The tell is distinctive:
curlreturns the page instantly while the browser stalls. Two settings fix it — the domain in "Свои цели" (My targets), so that it is inside the bypass scope at all, and "Отключить QUIC" (Disable QUIC) in the settings. The order matters: the second only affects what the bypass covers. - The site does not trust your address. The connection gets through, the site answers — and refuses: an endless captcha, "access restricted", a refusal at sign-up or payment. Your provider has nothing to do with it and the bypass has nothing left to push through. That is a job for WARP: Cloudflare's addresses sit differently in reputation lists than Russian home ranges.
- Blocking by IP address. The bypass lifts name-based blocking, not address-based. The DPI check will report "no connection". WARP helps here too — it changes the address you arrive from.
- A volume limit. The handshake is short and stays under the limit, while a real page does not. The DPI check can detect this separately.
- Stale browser connections. The most harmless one. Wait ten seconds and refresh, or better, restart the browser.
It worked and then stopped
The provider updated its filters. That happens regularly and is normal in itself.
- Turn on auto-repair in Settings: the program notices the failure and picks a working variant again on its own.
- Or press "Select" or "Generate" again on the "Diagnostics" tab.
- If the network changed (mobile internet, a different Wi-Fi), nothing is broken: every network has its own provider and its own DPI. The program remembers a working strategy separately for each network.
Engine exit codes
Visible in the journal, on the line about the engine stopping.
| Code | What it means |
|---|---|
87 |
Invalid parameter. Usually a typo in a verb name, an unknown blob name, or a missing library. For example, a line like "desync function circular does not exist" means the orchestrator library was not loaded. The line above the code in the journal carries the detail. |
-1 and other negatives |
The engine was stopped or killed. Usually a normal stop or a strategy change; nothing to do. |
| Other non-zero codes | Read the text of the line above the code: that is the reason. |
If the strategy is your own, it is worth going through the list of
common format mistakes: sticky flags in the wrong place,
pos=1 without a second marker, a positive tcp_ts.
Frequent questions
Are administrator rights required
For bypassing Discord and YouTube, yes: the engine loads a network driver into the Windows kernel. For the built-in Telegram proxy, no — it runs as a normal user.
Do I need a VPN
Only if the resource is cut off by IP address, where the bypass cannot help. Against name-based blocking a VPN is not needed, and the bypass does not slow the connection down, because the traffic goes straight to the server.
Is this safe for the rest of my traffic
By default the program only touches domains from the lists plus your own targets, not all traffic. An "all sites" mode exists, but turn it on deliberately: it interferes with connections from games and applications, which may break as a result. Banks and government services are protected by a separate exclusion list even in that mode.
Why does my antivirus complain
Bypass tools work with a network driver and modify packets, and to a heuristic that behaviour looks malicious. False positives are routine here. The "Add to exclusions" button in Settings registers the required paths with Defender and the firewall.
Can I bring a strategy over from another build
From sets for the first zapret, no: the argument names there are different and simply will
not run. From sets for zapret2, usually yes, but check the blob names: tls5 and the like
do not exist here and must be replaced with tls_google. More in the
reference.
Does the program send anything to the internet
It reaches out three times: to download the engine on first launch, to check for updates, and for the availability checks themselves, which go to Discord, YouTube and Google. Per-network memory is stored locally; no addresses are sent anywhere.
How do I remove the program completely
Delete the %LOCALAPPDATA%\Zapret2UI\ folder and Zapret2UI.exe itself. If
autostart was enabled, remove the task from Task Scheduler as well. The program leaves nothing in the
registry or in Program Files.
Cannot find your case? Ask in the Telegram channel or open an issue in the repository. It helps to attach the journal output and the result of the "DPI check" run with the bypass turned off.