Türkiye’de DNS Hijack, DPI Bypass ve Syncthing

Türkiye’deki ISP’lerin DNS hijack’i, DPI bazlı engellemesi ve cihazlar arası dosya senkronizasyonu — Eskişehir TurkNet hattında yıllardır yaşadığım sorunlar ve denenmiş çözümler.

ISP: TurkNet (Eskişehir altyapısı çoğunlukla Türk Telekom)


1. DNS Hijack — Türk ISP’lerin DNS Manipülasyonu

Sorun: Türk ISP’leri (özellikle TurkNet/Türk Telekom altyapısı) DNS sorgularını manipüle ediyor. Engelli sitelere yapılan DNS sorguları sahte IP’ye (örn. 195.175.254.2 — TT engel sayfası) yönlendiriliyor.

Tanı:

# Linux
nslookup discord.com          # 195.175.254.2 dönerse → hijack var
nslookup discord.com 1.1.1.1  # gerçek IP dönerse → sorun DNS
# Windows PowerShell
nslookup discord.com
Resolve-DnsName discord.com -DnsOnly

Çözüm — Encrypted DNS (DoT/DoH):

Linux (systemd-resolved)

sudo nano /etc/systemd/resolved.conf
[Resolve]
DNS=1.1.1.1#cloudflare-dns.com 1.0.0.1#cloudflare-dns.com
FallbackDNS=8.8.8.8#dns.google 8.8.4.4#dns.google
DNSOverTLS=yes
sudo systemctl enable --now systemd-resolved
sudo systemctl restart systemd-resolved

Kontrol:

resolvectl status    # Cloudflare DNS görünmeli

Windows

Tarayıcı bazlı DoH daha pratik:

  • Brave: brave://settings/security → Güvenli DNS → Cloudflare
  • Firefox: Ayarlar → Gizlilik → DNS over HTTPS → Cloudflare

Önemli: DNS düzeltmesi tek başına çoğu engeli çözüyor. Türkiye’deki site engellerinin büyük kısmı DNS bazlı — DoT/DoH aktif olunca DPI bypass aracına bile gerek kalmayabiliyor.


2. DPI Bypass — GoodbyeDPI, SplitWire, Zapret

DNS hijack dışında DPI (Deep Packet Inspection) bazlı engelleme de var. DNS düzeltmesi yetmezse DPI bypass gerekir.

Windows — GoodbyeDPI

Kurulum ve çalıştırma:

cd C:\GoodbyeDPI
goodbyedpi.exe -5

Daha agresif bypass:

goodbyedpi.exe -9

Türkiye için önerilen kombinasyon:

goodbyedpi.exe -5 --set-ttl 3 --dns-addr 77.88.8.8 --dns-port 1253

Bilinen sorun — Brave ile çakışma:

GoodbyeDPI sistem seviyesinde çalışıyor ama Brave kendi DoH’unu kullanınca bypass ediyor.

Çözüm: brave://settings/security → “Güvenli DNS kullan” → kapat veya “Özel ile” seçip boş bırak.

brave://flags’ta da:

  • #brave-dns-over-https-for-all → Disabled
  • #encrypted-client-hello → Disabled

GoodbyeDPI VPN bağlantılarını da bypass edebiliyor. İş VPN’i bağlanamıyorsa GoodbyeDPI’i aktif edip dene.

Windows — SplitWire Turkey

Windows’a özel alternatif. Kurulum daha basit, GUI var.

Linux — Zapret

GoodbyeDPI’in Linux karşılığı.

CachyOS kurulumu:

paru -S zapret

blockcheck.sh ile strateji bul:

sudo /opt/zapret/blockcheck.sh

blockcheck çalıştırmadan önce DNS düzeltmesi yapılmış olmalı, yoksa “DNS HIJACK DETECTED” uyarısı verir.

Türkiye deneyimi: DNS düzeltmesi (DoT) sonrası blockcheck’te çoğu site “working without bypass” çıktı. Yani zapret’e aktif olarak ihtiyaç kalmadı.


3. Syncthing — Cihazlar Arası Senkronizasyon

Mimari: PC ↔ Hetzner VPS ↔ Telefon

VPS 7/24 açık olduğu için aracı görevi görüyor. PC ve telefonun aynı anda açık olmasına gerek yok.

VPS’te Syncthing (Coolify/Docker)

  • Container içi yazılabilir dizin: /config/obsidian (linuxserver image)
  • Web arayüz: syncthing.egebostanci.me

Windows’ta Syncthing

  • Konum: C:\Users\<user>\AppData\Local\Programs\Syncthing\
  • Web arayüz: localhost:8384

Otomatik başlatma:

Win + Rshell:startup → Syncthing kısayolunu bu klasöre kopyala.

Telefon (Android)

  • Sync dizini: /storage/emulated/0/Syncthing/obsidian
  • Obsidian mobilde bu klasörü kasa olarak göster

Cihaz eşleştirme

  1. Her cihazda Actions → Show ID → Device ID kopyala
  2. Diğer cihazda Add Remote Device → ID yapıştır
  3. Klasörü paylaş (Sharing sekmesinden)
  4. Karşı tarafta kabul et, local path belirle

Yaşanan sorunlar

“Permission denied” (VPS):

Container’ın yazma izni olmayan dizine sync etmeye çalışma. /config/obsidian kullan.

Relay üzerinden bağlantı (yavaş):

VPS firewall’inda Syncthing portlarını aç (22000 TCP, 21027 UDP).

Çakışma dosyaları (telefon):

İlk sync’te olabilir. Hepsinde VPS versiyonunu tercih et — VPS merkezi kaynak.


4. Brave/Zen Browser — Engelli Site Erişimi

Sorun: GoodbyeDPI açık olmasına rağmen bazı siteler tarayıcıda açılmıyor.

Sebep: Tarayıcının kendi DoH/Secure DNS ayarı GoodbyeDPI ile çakışıyor.

Çözüm:

  • Tarayıcıda Secure DNS’i kapat (GoodbyeDPI zaten hallediyor)
  • veya Secure DNS’i aynı DNS’e yönlendir (1.1.1.1)

5. Git Clone Zaman Aşımı (Linux — Türkiye)

Sorun: git clone git://github.com/... timeout veriyor.

Sebep: Git protocol (port 9418) Türk ISP’leri tarafından engellenebiliyor.

Çözüm: HTTPS kullan:

git clone https://github.com/REPO.git

6. Genel Ağ Debugging Komutları

Windows

nslookup DOMAIN
Test-NetConnection -ComputerName IP -Port PORT
tracert DOMAIN
ipconfig /all
ipconfig /flushdns
netsh winsock reset

Linux

nslookup DOMAIN
dig DOMAIN
resolvectl query DOMAIN
nc -zv IP PORT
ip addr show
ip route show
sudo nft list ruleset
sudo ufw status
sudo systemd-resolve --flush-caches

İlgili yazılar