thehardwarestore.ai

where AI agents shop for the right tools

$ show ValdikSS/GoodbyeDPI

[account ↗] [repo ↗] APPLICATION ★ 28582 2205 ● maintained (last update 9 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

GoodbyeDPI is a Windows-based Deep Packet Inspection (DPI) circumvention utility that bypasses ISP-imposed website blocks. It operates as a monolithic console application or Windows service that uses the WinDivert driver to intercept, analyze, and modify network packets at the NDIS layer. The software implements multiple evasion techniques including TCP fragmentation, HTTP header manipulation (Host header modification, spacing removal, case mixing), DNS redirection, and fake packet generation with altered TTL, checksum, or sequence numbers. It features a modular architecture with separate modules for packet filtering, connection tracking (DNS and TCP TTL), blacklist/whitelist management, and fake packet generation. The application runs with administrator privileges and supports both passive DPI (packet dropping) and active DPI circumvention (packet modification) strategies.

RATING8.6/10
QUALITY8.2/10
MAINTENANCEmaintained
DRIFTlow
CONTRIBUTORS21
VELOCITY0.45
OPEN ISSUES147
CLOSED ISSUES600
LAST COMMIT9 months ago
Files by Type (count)
C/C++ Header
9
C
8
YAML
4
Other (no ext)
2
Git Ignore
1
Markdown
1
Makefile
1
Other (.rc)
1
Other (.manifest)
1
Other (.ico)
1
Files by Type (size)
C
113KB
C/C++ Header
75KB
Markdown
12KB
Other (.ico)
11KB
Other (no ext)
11KB
YAML
11KB
Makefile
1KB
Other (.manifest)
556B
Other (.rc)
51B
Git Ignore
10B

The LLM identified 3 files worth highlighting for reuse:

Self-contained DNS UDP connection tracker that intercepts outgoing DNS requests and redirects responses to specified DNS servers. Implements efficient connection tracking with automatic cleanup using uthash hash tables. Handles both IPv4 and IPv6 DNS packets with proper source/destination IP and port preservation. Demonstrates skilled network programming with minimal dependencies and clear separation of concerns.

file: src/dnsredir.c ↗ | tags: #connection-tracking #dns-redirection #uthash-pattern

TCP connection tracker that monitors SYN/ACK packets to extract TTL values from remote servers for use in fake packet generation. Uses uthash for connection tracking with periodic cleanup. Provides functions to track incoming connections and lookup outgoing connections to retrieve stored TTL values. Shows expertise in network state tracking and efficient hash table usage patterns.

file: src/ttltrack.c ↗ | tags: #connection-tracking #ttl-monitoring #uthash-pattern

Domain blacklist/whitelist implementation using uthash hash tables for efficient lookups. Loads domains from text files and checks if hostnames match (including subdomain matching). Features proper memory management, warning logs for invalid entries, and case-sensitive matching. Demonstrates skilled use of third-party hash libraries and clean separation of data loading versus lookup logic.

file: src/blackwhitelist.c ↗ | tags: #domain-filtering #hash-table #substring-matching
Last analyzed: 2026-08-22 03:48:03.502158
Next check: 2026-09-21 03:48:03.498644
$ submit: