# Runnin4ik/dpi-detector

DPI detection tool for internet censorship testing. Identifies TLS, TCP, HTTP, DNS blocking and 16-20KB connection drops

Repository: https://github.com/Runnin4ik/dpi-detector
Canonical: https://ross.abutalabs.com/products/dpi-detector
Language: Python
License: MIT
License Family: permissive
Last push: 2026-08-26T20:37:26+00:00

## Health v2 (maintenance only)
Score: 82/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 99, longevity 14
- inputs: {"age_days": 201, "days_push": 7, "days_rel": 7, "gap_med": 2, "n_releases_24m": 16}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2005, forks 78 (observed 2026-08-28T04:06:03.834937+00:00)

## What it is
A Python CLI tool that detects and classifies Deep Packet Inspection (DPI) based internet censorship, including TCP 16-20KB connection drops, TLS/SNI blocking, HTTP blocking, and DNS hijacking by ISPs. It helps users diagnose which censorship filters their provider applies to specific domains, hostings, and CDNs.

## Use cases
- detect if my ISP blocks websites via DPI
- check why connections to CDNs drop after 16-20KB
- test whether DNS queries are being hijacked or spoofed
- find working SNI values for a hosting or CDN
- check if TLS 1.2, TLS 1.3, or HTTP access to a blocked site works
- diagnose internet censorship on my connection
- verify if my DPI bypass tool like zapret is working correctly

## When to choose
- you need to identify which censorship mechanisms (TCP RST, SNI blocking, DNS spoofing, TLS MITM) your ISP uses
- you want to test specific domains or CDN/hosting availability from your network
- you need to pick working SNI values for bypass configurations
- you want a customizable, scriptable censorship diagnostic tool

## When to avoid
- you need a censorship bypass tool rather than a detector (use zapret or GoodbyeDPI instead)
- you need censorship testing outside networks with DPI-based filtering
- you want a GUI-based testing solution
- you have active bypass tools running that would distort results

## Facets
- artifact type: cli-tool
- maturity: active
- function: security, networking, developer-tools, cli
- domain: censorship-circumvention, networking, security, privacy
- platform: python, cli, cross-platform
- tags: dpi-detection, internet-censorship, tls-blocking, dns-hijacking, traffic-analysis, russia, command-line, docker

## Member repositories
- Runnin4ik/dpi-detector (main) score 82

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:03.834937+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:01:31.526130+00:00, confidence not recorded.
  - readme: https://github.com/Runnin4ik/dpi-detector (fetched 2026-08-28T04:06:03.834937+00:00, sha 09651f6adde1)
- Data as of 2026-08-30T08:39:29.467469+00:00.
