Back to Blog

Türkiye'deki Erişim Engelleri ve GoodbyeDPI: Kapsamlı Bir Rehber

GoodbyeDPI Nedir?

GoodbyeDPI, internet sansürünü ve erişim engellerini aşmak için kullanılan açık kaynaklı bir yazılımdır. DPI (Deep Packet Inspection - Derin Paket İnceleme) adı verilen bir teknolojiyi etkisiz hale getirerek, kullanıcıların erişim engellenen web sitelerine ulaşmasına yardımcı olur.

DPI, genellikle internet servis sağlayıcıları (İSS) tarafından kullanılır ve kullanıcıların hangi web sitelerine eriştiğini belirlemek ve engellemek için paketleri inceleyebilir. GoodbyeDPI, bu engellemeyi aşarak sansürü bypass eder ve kullanıcılara özgür bir internet deneyimi sunar.

GoodbyeDPI Ne İşe Yarar?

GoodbyeDPI, DPI tabanlı sansür yöntemlerini aşarak internet kullanıcılarının özgürce internete erişmesini sağlar. Bu yazılım, Türkiye gibi ülkelerde sıklıkla uygulanan internet sansürünü etkisiz hale getirmek için kullanılır. GoodbyeDPI, internet paketlerini modifiye ederek, İSS'lerin paketleri tanımlamasını ve engellemesini zorlaştırır.

Temel Avantajları:

  • Ücretsiz ve açık kaynaklı
  • VPN gibi hız kaybı yaratmaz
  • Sistem kaynaklarını minimal seviyede kullanır
  • Kurulumu ve kullanımı kolaydır
  • Windows hizmeti olarak otomatik çalışabilir

Engelleme Yöntemleri ve DPI

İnternet servis sağlayıcıları, iki farklı DPI yöntemi kullanarak web sitelerini engelleyebilir:

Pasif DPI

Bu yöntemde, İSS'ler internet trafiğini pasif olarak izler ve belirli anahtar kelimelere veya URL'lere sahip paketleri tespit ederek engeller. Pasif DPI, trafiği yalnızca dinler ve analiz eder, aktif olarak müdahale etmez.

Çalışma Prensibi:

  • HTTP başlıklarındaki Host alanını okur
  • TLS/HTTPS bağlantılarında SNI (Server Name Indication) bilgisini analiz eder
  • Belirli anahtar kelimeler veya domain adlarını tespit eder
  • Eşleşme durumunda bağlantıyı bloklar

Aktif DPI

Bu yöntemde, İSS'ler internet trafiğini daha ayrıntılı olarak analiz eder ve belirli içerik türlerini veya uygulamaları aktif olarak engeller. Aktif DPI, trafiğe müdahale eder ve paketleri manipüle edebilir.

Çalışma Prensibi:

  • TCP bağlantılarına RST (Reset) paketleri gönderir
  • DNS sorgularını manipüle eder
  • Paket içeriklerini detaylı analiz eder
  • Şüpheli trafiği yavaşlatır veya engeller

GoodbyeDPI, her iki DPI türünü de atlatmak için tasarlanmış çeşitli parametreler ve stratejiler sunar.

GoodbyeDPI Kurulumu ve Kullanımı

GoodbyeDPI'yi kullanmak oldukça basittir. Aşağıda adım adım kurulum ve yapılandırma rehberini bulabilirsiniz.

1. GoodbyeDPI İndirme

GoodbyeDPI'yi GitHub üzerinden indirebilirsiniz:

Adımlar:

  1. GitHub sayfasında yer alan Releases kısmını ziyaret edin.
  2. Bu rehberde en güncel sürüm olan 0.2.3rc1 sürümünü kullanacağız. Sürümler arasında ufak farklar olsa da genel işleyişi bozan farklar olmayacaktır.
  3. Assets kısmından zip dosyasını indirin ve içindeki dosyaları çıkartın.

İndirme işleminden sonra karşınıza çeşitli .cmd dosyaları ve çalıştırılabilir dosyalar çıkacaktır.

Manuel Kullanım

Manuel kullanım için "2_any_country_dnsredir.cmd" adlı komut dosyasını yönetici olarak çalıştırın. Bu dosya, GoodbyeDPI'yi genel ülke ayarlarıyla çalıştırır. Şuan GoodbyeDPI çalışacaktır, fakat bizim istediğimiz bunu otomatik hale getirmek ve Windows ile birlikte başlamasını sağlamaktır.

2. GoodbyeDPI'yi Windows Hizmeti Olarak Kurma

GoodbyeDPI'yi bir Windows hizmeti olarak kurarak her sistem açılışında otomatik olarak çalışmasını sağlayabilirsiniz. Bu adımlar, GoodbyeDPI'nin her açılışta otomatik çalışmasını garanti altına alacaktır.

Adım 1: Hizmet Dosyasını Düzenleme

  1. GoodbyeDPI klasörü içinde bulunan "service_install_russia_blacklist.cmd" dosyasını herhangi bir metin düzenleyici (Notepad, Notepad++ vb.) ile açın.

  2. Türkiye'de çalışabilmesi için parametreleri düzenlememiz gerekiyor. Dosya içerisindeki şu satırı bulun:

    --blacklist "%CD%\russia-blacklist.txt" --blacklist "%CD%\russia-youtube.txt"
    
  3. Bu kısmı tamamen kaldırın. Rusya için hazırlanmış blacklist dosyaları Türkiye için gerekli değildir.

  4. Düzenleme sonrası dosyanız şu şekilde görünmelidir:

@ECHO OFF
PUSHD "%~dp0"
set _arch=x86
IF "%PROCESSOR_ARCHITECTURE%"=="AMD64" (set _arch=x86_64)
IF DEFINED PROCESSOR_ARCHITEW6432 (set _arch=x86_64)

echo This script should be run with administrator privileges.
echo Right click - run as administrator.
echo Press any key if you're running it as administrator.
pause
sc stop "GoodbyeDPI"
sc delete "GoodbyeDPI"
sc create "GoodbyeDPI" binPath= "\"%CD%\%_arch%\goodbyedpi.exe\" -9" start= "auto"
sc description "GoodbyeDPI" "Passive Deep Packet Inspection blocker and Active DPI circumvention utility"
sc start "GoodbyeDPI"

POPD

Adım 2: Modeset Seçimi

sc create komutunda varsayılan olarak -9 parametresi kullanılmaktadır. Bu, en kapsamlı ve stabil modlardan biridir. İsteğinize göre farklı modeset türlerini de deneyebilirsiniz.

3. Hizmet Kurulumu

  1. Düzenlediğiniz service_install_russia_blacklist.cmd dosyasını yönetici olarak çalıştırın.
  2. Ekran, dosyanın yönetici olarak çalıştırıldığını doğrulamanızı isteyecektir. Herhangi bir tuşa basarak onaylayın.
  3. Kurulum tamamlandığında, Windows Hizmetler panelinde GoodbyeDPI'yi görebileceksiniz.

Adım 3: Hizmet Ayarları

  1. Windows + R tuşlarına basın ve services.msc yazarak Hizmetler penceresini açın.
  2. Listede GoodbyeDPI hizmetini bulun.
  3. Hizmete çift tıklayın ve Başlangıç Türü'nü Otomatik olarak ayarlayın.
  4. Uygula ve Tamam butonlarına tıklayın.

Artık GoodbyeDPI, her Windows başlangıcında otomatik olarak çalışacaktır!

GoodbyeDPI Parametreleri ve Modesets

GoodbyeDPI, farklı senaryolar ve ağ yapılandırmaları için çeşitli parametreler ve hazır modeset'ler sunar.

LEGACY Mod Ayarları

Eski ve daha uyumlu modlar:

  • -1: -p -r -s -f 2 -k 2 -n -e 2 (En uyumlu mod, tüm sistemlerde çalışır)
  • -2: -p -r -s -f 2 -k 2 -n -e 40 (HTTPS için daha iyi hız, yine de uyumlu)
  • -3: -p -r -s -e 40 (HTTP ve HTTPS için daha iyi hız)
  • -4: -p -r -s (En iyi hız)

Modern Mod Ayarları

Daha stabil, daha uyumlu ve daha hızlı:

  • -5: -f 2 -e 2 --auto-ttl --reverse-frag --max-payload
  • -6: -f 2 -e 2 --wrong-seq --reverse-frag --max-payload
  • -7: -f 2 -e 2 --wrong-chksum --reverse-frag --max-payload
  • -8: -f 2 -e 2 --wrong-seq --wrong-chksum --reverse-frag --max-payload
  • -9: -f 2 -e 2 --wrong-seq --wrong-chksum --reverse-frag --max-payload -q (Varsayılan ve önerilen)

Detaylı Parametre Listesi

goodbyedpi.exe [SEÇENEK...]

Temel Parametreler:
  -p                Pasif DPI'yi engelle
  -q                QUIC/HTTP3 protokolünü engelle
  -r                Host başlığını hoSt şeklinde değiştir
  -s                Host başlığı ile değeri arasındaki boşluğu kaldır
  -m                Host başlığını büyük/küçük harf karışımı yap (test.com -> tEsT.cOm)
  -f <değer>        HTTP paket parçalanmasını belirtilen değere ayarla
  -k <değer>        HTTP kalıcı (keep-alive) parçalanmasını etkinleştir
  -n                -k etkinken ilk segmentin ACK'ini bekleme
  -e <değer>        HTTPS paket parçalanmasını belirtilen değere ayarla
  -a                Method ve Request-URI arasında ek boşluk ekle
  -w                İşlenmiş tüm portlarda HTTP trafiğini analiz et

Port ve IP Yönetimi:
  --port <değer>    Parçalama yapılacak ek TCP portu
  --ip-id <değer>   Ek IP ID'yi işle (bu ID'li yönlendirmeleri atla)

DNS Yönlendirme:
  --dns-addr <değer>     UDP DNS isteklerini belirtilen IP'ye yönlendir
  --dns-port <değer>     UDP DNS isteklerini belirtilen porta yönlendir (varsayılan: 53)
  --dnsv6-addr <değer>   UDPv6 DNS isteklerini belirtilen IPv6 adresine yönlendir
  --dnsv6-port <değer>   UDPv6 DNS isteklerini belirtilen porta yönlendir
  --dns-verb             Ayrıntılı DNS yönlendirme mesajlarını göster

Blacklist Yönetimi:
  --blacklist <txtfile>  Sadece belirtilen dosyadaki domain'ler için bypass uygula
  --allow-no-sni         TLS SNI algılanamazsa bile bypass uygula
  --frag-by-sni          SNI algılandığında paketi SNI'den önce parçala

TTL Manipülasyonu:
  --set-ttl <değer>      Sahte paketleri belirtilen TTL değeriyle gönder
  --auto-ttl [a1-a2-m]   TTL'yi otomatik algıla ve ayarla
  --min-ttl <değer>      Minimum TTL uzaklığı (128/64 - TTL)

Paket Manipülasyonu:
  --wrong-chksum         Yanlış TCP checksum ile sahte paket gönder
  --wrong-seq            Geçmiş TCP SEQ/ACK değeriyle sahte paket gönder
  --native-frag          Paketleri daha küçük parçalara böl
  --reverse-frag         Paketleri ters sırayla parçala
  --max-payload [değer]  Belirtilen boyuttan büyük paketleri işleme (varsayılan: 1200)

Hangi Modu Seçmeliyim?

Önerilen yaklaşım:

  1. İlk deneme: -9 (varsayılan) ile başlayın
  2. Sorun varsa: -8 veya -7 modlarını deneyin
  3. Hız problemi: -3 veya -4 legacy modlarını test edin
  4. DNS sorunları: --dns-addr parametresi ile DNS yönlendirme ekleyin

Örnek özel yapılandırma:

sc create "GoodbyeDPI" binPath= "\"%CD%\%_arch%\goodbyedpi.exe\" -9 --dns-addr 1.1.1.1" start= "auto"

Sorun Giderme ve İpuçları

1. GoodbyeDPI Çalışmıyorsa

DNS Değiştirme:

  • Cloudflare DNS: 1.1.1.1 ve 1.0.0.1
  • Google DNS: 8.8.8.8 ve 8.8.4.4
  • Quad9 DNS: 9.9.9.9 ve 149.112.112.112

Windows'ta DNS değiştirme:

  1. Denetim Masası > Ağ ve İnternet > Ağ ve Paylaşım Merkezi
  2. Bağlantınıza tıklayın > Özellikler
  3. Internet Protocol Version 4 (TCP/IPv4) seçin > Özellikler
  4. "Aşağıdaki DNS sunucu adreslerini kullan" seçeneğini işaretleyin
  5. Tercih edilen ve alternatif DNS adreslerini girin

2. Farklı Modeset Denemeleri

Bazı İSS'ler farklı DPI teknolojileri kullanabilir. Bir modeset çalışmıyorsa, listedeki diğer modları sırayla deneyin.

3. Güvenlik Duvarı Ayarları

Windows Defender Firewall, GoodbyeDPI'yi engelleyebilir. Gerekirse GoodbyeDPI için izin kuralı ekleyin:

  1. Windows Defender Güvenlik Duvarı > Gelişmiş ayarlar
  2. Gelen Kurallar > Yeni Kural
  3. Program > GoodbyeDPI yolunu seçin > Bağlantıya izin ver

4. Antivirüs Uyumluluğu

Bazı antivirüs programları GoodbyeDPI'yi şüpheli bulabilir. Güvenilir kaynaklardan indirdiğinizden emin olun ve gerekirse antivirüs istisna listesine ekleyin.

Yasal Uyarı ve Sorumluluk Reddi

ÖNEMLİ: Bu yazı yalnızca eğitim ve bilgilendirme amaçlıdır. İnternet sansürünü aşmak bazı ülkelerde yasal olmayabilir veya hizmet şartlarını ihlal edebilir.

Sorumluluk Reddi:

  • GoodbyeDPI'yi kullanmadan önce ülkenizdeki yasal düzenlemeleri kontrol edin
  • Bu yazıda anlatılan yöntemler yalnızca meşru amaçlar için kullanılmalıdır
  • Yasadışı içeriklere erişim veya siber suç faaliyetleri kesinlikle yasaktır
  • Yazarın bu bilgilerin kötüye kullanımından herhangi bir sorumluluğu yoktur
  • İnternet servis sağlayıcınızın hizmet şartlarını ihlal etmekten kaçının

Etik Kullanım:

  • Bilgiye erişim özgürlüğünü savunun
  • Başkalarının haklarını ihlal etmeyin
  • Yerel yasalara ve düzenlemelere uyun
  • Sorumlu ve bilinçli bir internet kullanıcısı olun

Sonuç

GoodbyeDPI, internet özgürlüğü ve erişim hakları açısından önemli bir araçtır. DPI tabanlı sansürü aşarak kullanıcıların engellenmiş içeriklere erişmesine yardımcı olur. Ancak, bu aracın kullanımı yasal ve etik sorumluluklarla birlikte gelir.

Türkiye'de internet erişim engelleri yaygın olarak kullanılmaktadır ve GoodbyeDPI gibi araçlar, kullanıcıların bilgiye özgürce erişim haklarını korumalarına yardımcı olabilir. Ancak, bu araçları kullanırken yasal düzenlemelere dikkat etmek ve sorumlu davranmak önemlidir.

Kurulumunuz tamamlandıktan sonra:

  • GoodbyeDPI'nin düzgün çalıştığını kontrol edin
  • Farklı web sitelerinde test yapın
  • Sorun yaşarsanız farklı modeset'leri deneyin
  • DNS ayarlarınızı optimize edin

İyi günler dilerim ve özgür bir internet deneyiminin tadını çıkarın!


Ek Kaynaklar

  • GoodbyeDPI GitHub Sayfası: github.com/ValdikSS/GoodbyeDPI
  • Detaylı Dokümantasyon: Proje GitHub sayfasında README dosyasını inceleyin
  • Topluluk Desteği: GitHub Issues bölümünde sorularınızı sorabilirsiniz

Güncellemeler

GoodbyeDPI aktif olarak geliştirilen bir projedir. Düzenli olarak GitHub sayfasını kontrol ederek yeni sürümleri ve özellikleri takip edebilirsiniz. Her güncelleme, yeni bypass teknikleri ve performans iyileştirmeleri içerebilir.


NOT: Bu yazının orijinal hali LinkedIn'de yayınlanmıştır. Sizlerle bu bilgileri paylaşmaktan mutluluk duyuyorum. Sorularınız için benimle iletişime geçebilirsiniz.