Releases: dilluti0n/dpibreak
v0.5.1
Bugfix release:
- Linux: fix BPF filter for
--fake-autottlcan match IPv6 too (previously only matched IPv4) - Linux: fix SYN/ACK rules installed on iptables fallback
- Windows: remove unneeded IP checksum calculation
Installation
Windows
- Download the
.zipfrom the below and extract it. - Double-click
dpibreak.exeto run, orstart_fake.batfor fake mode. - To run automatically on boot, run
service_install.batas administrator.
See WINDOWS_GUIDE.txt in the zip for more details. If you have trouble deleting the previous version's folder when updating, see #21.
Linux
One-liner install:
curl -fsSL https://raw.githubusercontent.com/dilluti0n/dpibreak/master/install.sh | sh
Or download the tarball from the assets below:
tar -xf DPIBreak-*.tar.gz
cd DPIBreak-*/
sudo make install
Also available via Arch AUR, Gentoo GURU and crates.io. See README.md for details.
Downloads
Build Info
DPIBreak-0.5.1-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.5.1
- Commit: ceb0c8b
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.94.0 (4a4ef493e 2026-03-02)
- Cargo: cargo 1.94.0 (85eff7c80 2026-01-15)
- Date: 2026-03-09T15:45:53Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.5.1-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.5.1
- Commit: ceb0c8b
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.94.0 (4a4ef493e 2026-03-02)
- Cargo: cargo 1.94.0 (85eff7c80 2026-01-15)
- Date: 2026-03-09T15:45:53Z
- Host: Linux 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.5.0
Performance improvement due to packet sniffing backend changes.
On Linux, SYN/ACK sniffing for --fake-autottl now uses AF_PACKET RxRing instead of nftables-based filtering. Packets are read via mmap'd ring buffer with zero copy from kernel to userspace, replacing the extra nftables rules that were needed for SYN/ACK capture.
On Windows, packet handling is now multi-threaded with separate recv/send/sniff paths, while sniff thread is only spawned when --fake-autottl is actually enabled.
Other changes:
- Windows exits immediately on Ctrl-C instead of waiting for cleanup.
- Logging defers
local_time()until the log level check passes. infer_hopsnow correctly uses 128 (was 126).- Various internal refactoring for consistency.
- Windows: service_install.bat no longer enables fake options by default. Add
--fake-autottlto ARGS manually if needed.
Installation
Windows
- Download the
.zipfrom the below and extract it. - Double-click
dpibreak.exeto run, orstart_fake.batfor fake mode. - To run automatically on boot, run
service_install.batas administrator.
See WINDOWS_GUIDE.txt in the zip for more details. If you have trouble deleting the previous version's folder when updating, see #21.
Linux
One-liner install:
curl -fsSL https://raw.githubusercontent.com/dilluti0n/dpibreak/master/install.sh | sh
Or download the tarball from the assets below:
tar -xf DPIBreak-*.tar.gz
cd DPIBreak-*/
sudo make install
Also available via Arch AUR, Gentoo GURU and crates.io. See README.md for details.
Downloads
Build Info
DPIBreak-0.5.0-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.5.0
- Commit: 212f728
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-03-02T05:59:15Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.5.0-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.5.0
- Commit: 212f728
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-03-02T05:59:15Z
- Host: Linux 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.4.3
Upgrading from v0.4.0/v0.4.1: Stop any running dpibreak instance (sudo pkill dpibreak) before upgrading. The PID file path has changed, so the new binary won't detect the old instance.
Documentation fix from v0.4.2 and add timestamp on log.
- docs: fix incorrect pathes in manual (
/tmp/dpibreak.pid->/run/dpibreak.pid,/tmp/dpibreak.log->/var/log/dpibreak.log) - log: print timestamp on log output
- windows: fix regression introduced on v0.4.2 on service mode
For new features added on v0.4 (which introduce windows service and daemonize on linux), see v0.4.0 release note.
Downloads
Build Info
DPIBreak-0.4.3-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.4.3
- Commit: 9ddfb1f
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-16T04:31:18Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.4.3-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.4.3
- Commit: 9ddfb1f
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-16T04:31:18Z
- Host: Linux 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.4.2
Fix from v0.4.1. Linux only — Windows users do not need to update from v0.4.0 or v0.4.1
NOTE for windows users: this version contains critical regression related to windows service. DO NOT USE THIS VERSION FOR WINODWS! use v0.4.3 instead.
Upgrading from v0.4.0/v0.4.1: Stop any running dpibreak instance (sudo pkill dpibreak) before upgrading. The PID file path has changed, so the new binary won't detect the old instance.
- Move PID file to
/run/dpibreak.pidand daemon log file to/var/log/dpibreak.log. (Fixes #16) - Add root privilege check on startup. (#16)
- Fix log file being truncated when daemonize fails. (#17)
For new features added on 0.4 (which introduce windows service and daemonize on linux), see v0.4.0 release note.
Downloads
Build Info
DPIBreak-0.4.2-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.4.2
- Commit: 1770222
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-15T18:18:26Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.4.2-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.4.2
- Commit: 1770222
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-15T18:18:26Z
- Host: Linux 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.4.1
NOTE: this version contains a bug; workaround is simple. See #16.
Linux only hotfix:
Fixed issue where running dpibreak again while a daemon instance was active would silently delete nftables rules and then fail with nfqueue binding error (#6, #13). Non-daemon mode now also acquires PID file lock to ensure only one dpibreak instance runs on the system at a time, whether daemon or non-daemon.
- TL;DR: Enforce single
dpibreakinstance per system on Linux.
For new features added on 0.4 (which introduce windows service and daemonize on linux), see v0.4.0 release note.
Downloads
Build Info
DPIBreak-0.4.1-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.4.1
- Commit: 3389e6f
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-15T13:52:18Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.4.1-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.4.1
- Commit: 3389e6f
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.93.1 (01f6ddf75 2026-02-11)
- Cargo: cargo 1.93.1 (083ac5135 2025-12-15)
- Date: 2026-02-15T13:52:18Z
- Host: Linux 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.4.0
Added background execution support for both platforms. On Linux, run dpibreak -D to start as a daemon. On Windows, run service_install.bat as administrator to install and start a Windows service that also runs automatically on boot.
- Add option
-D, --daemon.- linux: run as a background daemon.
- windows: run as Windows service entry point.
- windows: add
service_install.bat,service_remove.batfor Windows service management. - windows: add
WINDOWS_GUIDE.txtwith Korean translation.
Downloads
v0.3.0
Feature addition.
- Add
--fake-autottl: dynamically set fake packet’s ttl. --fake-*options (--fake-ttl, ...) now implicitly enable--fake. Manual activation of--fakeis no longer required with them.- windows: enable
--fake-autottlonstart_fake.bat.
Downloads
Full Changelog: v0.2.2...v0.3.0
Build Info
DPIBreak-0.3.0-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.3.0
- Commit: 853bfc6
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.93.0 (254b59607 2026-01-19)
- Cargo: cargo 1.93.0 (083ac5135 2025-12-15)
- Date: 2026-01-31T15:27:19Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.3.0-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.3.0
- Commit: 853bfc6
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.93.0 (254b59607 2026-01-19)
- Cargo: cargo 1.93.0 (083ac5135 2025-12-15)
- Date: 2026-01-31T15:27:19Z
- Host: Linux 6.11.0-1018-azure #18~24.04.1-Ubuntu SMP Sat Jun 28 04:46:03 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.2.2
Maintenance release; reduce binary size (on Linux, ~2.2M -> ~700K). No behavior changed.
- linux: drop iptables crate (regex dep) to reduce binary size
- Enable LTO and panic=abort to reduce binary size
Downloads
Full Changelog: v0.2.1...v0.2.2
Build Info
DPIBreak-0.2.2-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.2.2
- Commit: f5ce268
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-17T16:37:44Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.2.2-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.2.2
- Commit: f5ce268
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-17T16:37:44Z
- Host: Linux 6.11.0-1018-azure #18~24.04.1-Ubuntu SMP Sat Jun 28 04:46:03 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.2.1
Hotfix from v0.2.0:
- Revert default log level to
warnin release builds. (v0.2.0 silently changed it). - Fix unused import warnings in release builds.
Downloads
Full Changelog: v0.2.0...v0.2.1
Build Info
DPIBreak-0.2.1-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.2.1
- Commit: 9f5f14f
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-16T11:24:11Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.2.1-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.2.1
- Commit: 9f5f14f
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-16T11:24:11Z
- Host: Linux 6.11.0-1018-azure #18~24.04.1-Ubuntu SMP Sat Jun 28 04:46:03 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39
v0.2.0
Note: please update to v0.2.1 or later. (See v0.2.1 release note)
Introduce experimental --fake-badsum. This option intentionally corrupts TCP checksums, so packets likely won't pass through most routers/firewalls. Deprecated --loglevel will be usable until v1.0.0.
- Add option
--fake-badsumto inject packets with incorrect TCP checksums. - Deprecate
--loglevelin favor of--log-level. - windows: prevent
start_fake.batcomments from being echoed on startup.
Downloads
Full Changelog: v0.1.1...v0.2.0
Build Info
DPIBreak-0.2.0-x86_64-pc-windows-msvc.buildinfo
- Name: DPIBreak
- Version: 0.2.0
- Commit: 49624b7
- Target: x86_64-pc-windows-msvc
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-16T10:22:33Z
- Host: Microsoft Windows Server 2025 Datacenter / 10.0.26100
- libc: N/A (Windows/MSVC)
DPIBreak-0.2.0-x86_64-unknown-linux-musl.buildinfo
- Name: DPIBreak
- Version: 0.2.0
- Commit: 49624b7
- Target: x86_64-unknown-linux-musl
- Rustc: rustc 1.92.0 (ded5c06cf 2025-12-08)
- Cargo: cargo 1.92.0 (344c4567c 2025-10-21)
- Date: 2026-01-16T10:22:33Z
- Host: Linux 6.11.0-1018-azure #18~24.04.1-Ubuntu SMP Sat Jun 28 04:46:03 UTC 2025 x86_64 GNU/Linux
- libc: glibc 2.39