Skip to main content

Quick Start

TurkeyDPI provides a simple command-line interface to bypass DPI-based censorship in Turkey. The easiest way to get started is with the bypass command.
1

Start the bypass proxy

Run TurkeyDPI with the default aggressive preset:
turkeydpi bypass
This starts a SOCKS proxy on 127.0.0.1:8844 using the aggressive preset (recommended for most users).
2

Configure your system proxy

Set your system’s HTTP/HTTPS proxy to:
127.0.0.1:8844
System Preferences → Network → Advanced → Proxies → SOCKS Proxy
  • Server: 127.0.0.1
  • Port: 8844
3

Test your connection

Try accessing a blocked website like Discord or Twitter. The proxy will fragment TLS/HTTP packets to evade DPI inspection.

CLI Commands

TurkeyDPI offers several commands for different use cases.

bypass

Quick bypass mode - starts a SOCKS proxy with pre-configured ISP settings.
turkeydpi bypass [OPTIONS]
FlagDescriptionDefault
-l, --listen <ADDRESS>Listen address for the proxy127.0.0.1:8844
-p, --preset <PRESET>ISP preset configurationaggressive
-v, --verboseEnable verbose loggingfalse
Examples:
turkeydpi bypass

run

Advanced mode - runs the full engine with custom configuration.
turkeydpi run [OPTIONS]
FlagDescriptionDefault
--proxyEnable proxy backendfalse
--listen <ADDRESS>Listen address127.0.0.1:1080
-c, --config <FILE>Configuration file pathNone
--log-level <LEVEL>Log level (trace, debug, info, warn, error)info
--json-logsOutput logs in JSON formatfalse
--socket <PATH>Unix socket for control server/tmp/turkeydpi.sock
Examples:
turkeydpi run --proxy

Control Commands

When running in daemon mode with turkeydpi run, you can control the engine using these commands:
Check the current status of the engine:
turkeydpi status
Output:
Status:
  State: Running
  Running: true
  Active flows: 42
  Packets processed: 15823
  Bytes processed: 8.45 MB
  Errors: 0

Utility Commands

Generate an example configuration file:
turkeydpi gen-config --output config.toml
Generate JSON format:
turkeydpi gen-config --format json --output config.json
Validate a configuration file:
turkeydpi validate config.toml
Output:
✓ Configuration is valid: config.toml
Reset all statistics counters:
turkeydpi reset-stats

Common Use Cases

For Discord

turkeydpi bypass --preset aggressive
Then set your system proxy to 127.0.0.1:8844.

For Twitter/X

Use the same approach as Discord:
turkeydpi bypass -v
The verbose flag helps troubleshoot connection issues.

For Testing Different ISPs

If one preset doesn’t work, try others:
# Try each preset
turkeydpi bypass --preset aggressive
turkeydpi bypass --preset turk-telekom
turkeydpi bypass --preset vodafone
turkeydpi bypass --preset superonline
See ISP Presets for detailed information about each preset.
Tip: Start with the aggressive preset. It works for most users and ISPs. Only switch to ISP-specific presets if you experience issues.
TurkeyDPI only bypasses DPI-based censorship. It does not provide anonymity or encryption. For privacy, use a VPN or Tor.

Troubleshooting

Proxy not working

  1. Check if TurkeyDPI is running:
    # You should see output indicating the proxy is listening
    
  2. Enable verbose logging:
    turkeydpi bypass -v
    
    This shows detailed information about each connection.
  3. Try a different preset: Different ISPs use different DPI techniques. See ISP Presets.
  4. Verify system proxy settings: Ensure your system proxy is set to 127.0.0.1:8844 (or your custom port).

High latency

Some presets add artificial delays to evade DPI buffering. If you experience high latency:
# Try presets without delays
turkeydpi bypass --preset turk-telekom  # no delay
turkeydpi bypass --preset superonline   # no delay
See the Configuration guide to customize timing parameters.

Connection drops

If connections drop frequently:
  1. Check stats for errors:
    turkeydpi stats
    
    Look for high error counts.
  2. Increase fragment size: Edit your configuration file and adjust transforms.fragment.max_size.
  3. Disable jitter: Set global.enable_jitter = false in your config.

Next Steps

ISP Presets

Learn about preset configurations for different Turkish ISPs

Configuration

Customize TurkeyDPI with advanced configuration options

macOS App

Use the native macOS menu bar application

Build docs developers (and LLMs) love