Bypass DPI Blocking
NoDPI is a utility designed to bypass DPI (Deep Packet Inspection) blocking. It modifies network packets to "trick" DPI systems and restore access to blocked websites and services.
About NoDPI
NoDPI is a utility designed to bypass DPI (Deep Packet Inspection). DPI is a technology for inspecting network packets based on their content to regulate and filter traffic. It is often used by internet service providers to censor and block access to certain web resources and protocols.
The goal of this program is to "trick" DPI by modifying network packets. This utility was developed primarily for Russian users as a simpler (but less powerful) replacement for similar tools. In most cases, it gets the job done; in particular, it allows you to use YouTube without any problems.
Open Source
NoDPI is completely open source, licensed under GPL-3.0. The entire code is written in Python using only the standard library.
Cross-Platform
Works on Windows, Linux, and macOS. An Android version is also available separately. No administrator rights required.
Safe & Private
NoDPI does not collect or send any data about you, does not use third-party programs, and does not interfere with system processes.
How It Works
NoDPI launches a proxy server on your computer through which you direct HTTP(S) traffic. The program intercepts ClientHello of outgoing connections and fragments them according to one of the following methods:
Random Fragmentation
ClientHello is divided into several parts of random length. Each part is glued with the prefixes of the type of ClientHello and then all this is sent in one package.
Fragmentation by SNI
ClientHello is divided into 4 parts: to SNI, the first and second half of SNI, and all that is after it. The header indicating the type ClientHello is attached to each part and then all this is sent in one bag.
Regardless of the method, the TLS version is replaced by version 1.3. All this together allows you to bypass DPI blocking. Apparently DPI does not yet have the necessary capacities to unravel this "ball" and simply ignores such traffic.
Quick Installation Guide
Follow these simple steps to get NoDPI up and running:
Download the Latest Release
Download the latest version for your OS from the Releases page and unzip it.
Run NoDPI
Go to the directory with the unzipped utility and run it with the appropriate command:
nodpi.exe --blacklist blacklist.txt # Windows./nodpi --blacklist ./blacklist.txt # Linux/Mac
If the blacklist file is not specified, the program will search for the file
blacklist.txt in the current directory by default.
Configure Proxy Settings
In your browser or system settings, set the proxy to:
127.0.0.1:8881
Enjoy Unrestricted Access!
You should now be able to access blocked websites. Test by visiting a site that was previously blocked.
Add to Startup (Optional)
You can add NoDPI to startup on Windows or Linux:
nodpi --install
This will add the program to startup via the Windows registry or via systemd in
Linux. Make sure the file blacklist.txt is located next to the executable file.
Links & Alternatives
Useful Links
Alternative DPI Bypass Tools
If NoDPI doesn't work for your specific case, consider these alternatives:
GoodbyeDPI
by @ValdikSS (for Windows)
zapret
by @bol-van (for macOS, Linux and Windows)
Green Tunnel
by @SadeghHayeri (for macOS, Linux and Windows)
PowerTunnel
by @krlvm (for Windows, macOS and Linux)