Proxy sunucusu yanıt vermiyor: zaman aşımları, portlar ve güvenlik duvarı için adım adım teşhis
Makale içeriği
- Giriş: bu rehberden ne kazanacaksınız
- Ön hazırlık: araçlar ve veriler
- Temel kavramlar: proxy yanıt vermediğinde ne olur
- Adım 1: bağlantının nerede koptuğunu belirleyelim
- Adım 2: proxy adresini ve portunu kontrol edelim
- Adım 3: yazılımınızdaki zaman aşımlarını ele alalım
- Adım 4: cihazınızdaki güvenlik duvarını ve antivirüsü kontrol edelim
- Adım 5: yönlendiriciyi, kurumsal ağı ve sağlayıcıyı kontrol edelim
- Adım 6: proxy tarafındaki ayarları kontrol edelim
- Sonucu kontrol edelim: istikrarlı bağlantı için kontrol listesi
- Tipik hatalar ve çözümleri
- İ̇leri düzey kullanıcılar için ek imkânlar
- Sss: teşhisle ilgili sık sorulan sorular
- Sonuç
Giriş: bu rehberden ne kazanacaksınız
Proxy ile çalışan herkesin bildiği bir durum: dün her şey uçuyordu, bugün tarayıcı yükleme çemberini döndürüyor, kazıma betiği ilk istekte takılıyor, antidetect tarayıcı proxy sunucusunun yanıt vermediğini söylüyor. Anlaşılır hiçbir mesaj yok, sadece bekleyiş ve sessizlik. Hemen desteğe yazmak ya da sağlayıcıyı değiştirmek istiyorsunuz, ama çoğu durumda sorun sizin tarafınızda oluyor ve on dakikada çözülüyor.
Bu pratik rehber, "hiçbir şey çalışmıyor" noktasından "bağlantı istikrarlı" noktasına tahmin yürütmeden gitmenizi sağlayacak. En sık karşılaşılan üç ağ suçlusunu ele alacağız: zaman aşımları, kapalı veya yanlış portlar ve güvenlik duvarı. Bilgisayarınız ile proxy arasındaki zincirin tam olarak nerede koptuğunu nasıl belirleyeceğinizi öğrenecek ve sorunun kaynağını bir dakikada gösteren komut setine sahip olacaksınız.
Önemli sınır: burada yalnızca bağlantının hiç kurulmadığı veya askıda kaldığı ağ kaynaklı nedenlerden bahsediyoruz. Proxy'nin yanıt verdiği ama 407 veya 502 gibi bir hata kodu döndürdüğü durumlar ayrı bir konudur ve bunlara değinmiyoruz. Yanıtta belirli bir HTTP kodu görüyorsanız, proxy canlıdır ve sizin durumunuz bu makaleyle ilgili değildir.
Bu rehber kimler için
- Mobil proxy üzerinden birden fazla hesap yöneten ve tarayıcının bağlanmadığı sorunuyla karşılaşan pazarlamacılar ve SMM uzmanları.
- Kurguları aniden çalışmayı bırakan ve reklam hesapları proxy üzerinden açılmayan arbitrajcılar.
- Python, Node.js veya Go betikleri yanıt yerine zaman aşımı alan geliştiriciler.
- Çalışanları için proxy kuran ve birinde çalışıp diğerinde neden çalışmadığını anlamak isteyen işletme sahipleri.
Önceden bilmeniz gerekenler
Neredeyse hiçbir özel bilgi gerekmiyor. Komut satırını veya terminali açabilmek, komutları kopyalayabilmek ve çıktılarını okuyabilmek yeterli. Tüm terimleri yol boyunca açıklayacağız. Terminali hiç açmadıysanız endişelenmeyin: her adım "şu tuşa basın, şu metni yazın" düzeyinde anlatılmıştır.
Ne kadar zaman gerekir
Tüm adımların tam teşhisi 30 ila 60 dakika sürer. Çoğu zaman sorun birinci veya ikinci adımda ortaya çıkar ve o zaman 10-15 dakikada bitirirsiniz. Sondaki ileri düzey bölümü, temel bağlantı zaten kurulduğunda ayrıca inceleyebilirsiniz.
Ön hazırlık: araçlar ve veriler
Başlamadan önce gerekli her şeyi tek bir yerde toplayın. Bu, zaman kazandırır ve en uygunsuz anda sekmeler arasında koşturmanızı önler.
Proxy verileriniz
Sağlayıcının kontrol panelini açın ve aşağıdaki parametreleri bir metin dosyasına yazın. Neredeyse her adımda bunlara ihtiyaç duyacaksınız.
- Sunucu adresi (host). Bu ya proxy.example.net gibi bir alan adı ya da 185.10.20.30 gibi bir IP adresidir.
- HTTP bağlantısı için port. Mobil proxy'lerde bu genellikle beş haneli bir sayıdır, örneğin 30001 veya 51234.
- SOCKS5 için port, sağlayıcı ayrı veriyorsa. Bazen HTTP portundan bir veya birkaç bin farklı olur.
- Kullanıcı adı ve şifre, kimlik bilgileriyle yetkilendirme kullanıyorsanız.
- İzin verilen IP listesi, IP adresiyle yetkilendirme açıksa. Orada hangi adresin yazılı olduğunu kontrol edin.
- IP değiştirme bağlantısı ve rotasyon modu bilgisi: zamanlamaya göre, bağlantıyla veya her istekte.
İpucu: bu verileri yalnızca şifre yöneticisinde değil, teşhis süresince normal bir metin dosyasında da saklayın. Komutlara onlarca kez yapıştıracaksınız ve sürekli pencereler arasında geçiş yapmak yorucudur.
Sisteminizde zaten bulunan araçlar
İyi haber: gerekli olanların neredeyse tamamı işletim sisteminde yerleşik olarak bulunuyor. Hiçbir şey satın almanıza gerek yok.
- Windows 10 ve 11: PowerShell (Başlat menüsünde arayarak bulun) ve cmd komut satırı. PowerShell'de ayrı araçların yerini alacak Test-NetConnection komutu var.
- macOS: Terminal uygulaması (Programlar, Yardımcı Programlar klasörü). nc ve curl araçları zaten kurulu.
- Linux (Ubuntu, Debian, Fedora): herhangi bir terminal. curl, netcat ve mtr paketlerini sisteminizin paket yöneticisiyle kurmanız gerekebilir.
Ayrıca kurmanız önerilenler
- Windows için curl. Windows 10 sürüm 1803 ve sonrasında, ayrıca Windows 11'de curl zaten var. Kontrol edin: cmd'yi açın ve curl --version yazın. Sürüm numarasını görürseniz her şey yolunda.
- Karşılaştırma için ikinci cihaz: akıllı telefon, ikinci bir dizüstü bilgisayar veya sanal makine. Bu bir program değil, ama ilk adımda konuşacağımız çok faydalı bir araç.
- Yönlendirici ayarlarına erişim: panel adresi (çoğunlukla 192.168.0.1 veya 192.168.1.1) ve yönetici şifresi. Beşinci adımda gerekli olacak.
Başlamadan önce yedekler
Güvenlik duvarı ve muhtemelen yönlendirici ayarlarını değiştireceğiz. Bunu yapmadan önce, her zaman başlangıç durumuna dönebilmeniz için iki şey yapın.
- Windows'ta bir geri yükleme noktası oluşturun: aramayı açın, "Geri yükleme noktası oluştur" yazın, Oluştur düğmesine basın ve anlaşılır bir ad verin, örneğin "Proxy ayarlarından önce".
- Mevcut Windows güvenlik duvarı kurallarını dışa aktarın. PowerShell'i yönetici olarak açın ve şu komutu çalıştırın: netsh advfirewall export "C:/firewall-backup.wfw". Dosya C sürücüsünün kökünde görünecek.
- Yönlendirici panelinde "Sistem", "Bakım" veya "Yedekleme" gibi bir bölüm bulun ve yapılandırma dosyasını bilgisayara kaydedin.
Dikkat: güvenlik duvarını "her ihtimale karşı" tamamen kapatmayın ve kapalı bırakmayın. Teşhis sırasında korumayı en fazla iki dakika kapatıp hipotezi test edeceğiz, sonra her şeyi geri açıp noktasal bir kural oluşturacağız.
Temel kavramlar: proxy yanıt vermediğinde ne olur
Teşhisin kaotik bir deneme yanılma yerine anlamlı olması için bağlantı zincirinin nasıl çalıştığını anlamak önemlidir. O zaman rehberdeki her adım bu zincirin belirli bir bölümünü test edecektir.
İsteğin sizden siteye yolculuğu
Mobil proxy üzerinden çalıştığınızda istek şu yolu izler. Önce uygulamanız (tarayıcı, betik, antidetect) veriyi işletim sistemine gönderir. Sistem bunları kendi güvenlik duvarından geçirir ve yönlendiriciye iletir. Yönlendirici trafiği internet sağlayıcınıza verir. Sağlayıcı paketleri proxy sunucusuna ulaştırır. Proxy sunucusu isteği SIM kartlı mobil modem üzerinden hücresel operatörün ağına yönlendirir. Ancak ondan sonra istek hedef siteye gider. Yanıt aynı yol boyunca ters sırayla geri döner.
Kopma bu bölümlerin herhangi birinde olabilir. "Proxy sunucusu yanıt vermiyor" ifadesi aslında tek bir şey anlamına gelir: yanıt, ayrılan süre içinde uygulamanıza ulaşmadı. Tam olarak nerede kaybolduğunu bulmak gerekiyor.
Port: sunucuya açılan kapı
Her sunucunun tek bir IP adresi vardır ama 1'den 65535'e kadar numaralanmış çok sayıda portu vardır. Tek adresli ve binlerce daireli çok katlı bir bina düşünün. Proxy hizmeti belirli bir dairede "yaşar", yani belirli bir portu dinler. Başka bir portu çalarsanız kimse açmaz ve zaman aşımı dolana kadar beklersiniz. Üstelik sunucu tamamen sağlamdır.
Portlar açık, kapalı ve filtrelenmiş olabilir. Açık port bağlantı isteğine onay verir. Kapalı port hemen ret yanıtı verir ve "connection refused" gibi anlık bir hata alırsınız. Filtrelenmiş port sessiz kalır: paketleriniz yol boyunca atılır ve siz hiçbir şey almazsınız. İşte filtreleme, yanıtsız askıda kalmanın klasik tablosunu verir ve bundan neredeyse her zaman bir güvenlik duvarı sorumludur.
Zaman aşımı: pes etmeden önce ne kadar beklemeli
Zaman aşımı, uygulamanın denemeyi bıraktığı ve hata bildirdiği bekleme sınırıdır. Birkaç zaman aşımı türü vardır ve bunları karıştırmamak gerekir.
- Bağlantı zaman aşımı (connect timeout). Sunucu bağlantı kurmayı kabul edene kadar ne kadar bekleneceği. Bu dolduysa, proxy portuna hiç ulaşamadınız demektir.
- Okuma zaman aşımı (read timeout). Bağlantı kurulduktan sonra verinin ne kadar bekleneceği. Bu dolduysa, proxy sizi kabul etti ama hedef site veya mobil ağ çok yavaş yanıt verdi demektir.
- Toplam istek zaman aşımı. Hepsi için üst sınır.
Mobil proxy'ler hücresel ağ üzerinden çalışır ve gecikmeler doğal olarak veri merkezi proxy'lerinden daha yüksektir. Yazılımınız 5 saniyelik zaman aşımına ayarlıysa, tamamen sağlıklı bir mobil proxy'de yanıt altıncı saniyede geldiği için kopabilir.
Güvenlik duvarı: neyin geçeceğine karar veren filtre
Güvenlik duvarı (firewall), ağ paketlerini inceleyen ve geçirip geçirmemeye karar veren bir program veya cihazdır. Zincirinizde üç veya dört güvenlik duvarı olabilir: Windows veya macOS'a gömülü olan, antivirüsün içindeki, yönlendiricideki ve kurumsal yöneticideki. Bunlardan herhangi biri standart dışı bir porta giden paketleri sessizce atabilir ve siz sadece askıda kalma görürsünüz.
IP ile yetkilendirme: proxy tarafındaki görünmez güvenlik duvarı
Birçok mobil proxy sağlayıcısında kullanıcı adı ve şifre yerine beyaz IP listesi kullanılan bir mod vardır. Sunucu yalnızca listedeki adreslerden gelen bağlantıları kabul eder, diğer denemeleri yok sayabilir. Ev IP'niz değiştiyse (çoğu sağlayıcıda yönlendirici yeniden başlatıldığında bu olur), proxy sizi tanımayı bırakır. Dışarıdan bu tam olarak engellenmiş bir port gibi görünür.
Artık tablo netleştiğine göre pratiğe geçelim. Sonraki her adım zincirin bir bölümünü kontrol eder ve ya ondan şüpheyi kaldırır ya da suçluyu bulur.
Adım 1: Bağlantının nerede koptuğunu belirleyelim
Bu aşamanın amacı: beş dakikada sorunun sizin tarafınızda, ağ tarafında mı yoksa proxy tarafında mı olduğunu anlamak. Bu en önemli adımdır çünkü olası nedenlerin yarısını hemen eler.
Proxysiz interneti kontrol edelim
- Tarayıcıyı açın ve ayarlarından proxy'yi geçici olarak devre dışı bırakın. Chrome'da bu Ayarlar, Sistem bölümü, "Bilgisayarınızın proxy ayarlarını aç" maddesidir. Antidetect tarayıcıda proxysiz bir profil oluşturun veya profil ayarlarında "Proxysiz" modunu seçin.
- Büyük bir site açın, örneğin bir arama motorunun sayfası. Bir-iki saniyede yüklenmelidir.
- Site proxysiz de açılmıyorsa sorun proxy'de değildir. Yönlendiriciyi yeniden başlatın, kabloyu veya Wi-Fi'yi kontrol edin ve bu rehbere daha sonra dönün.
Proxy'yi başka bir cihazdan kontrol edelim
- Akıllı telefonunuzu alın ve Wi-Fi'yi kapatın, böylece mobil internet üzerinden çalışsın. Bu şekilde yönlendiricinizi ve sağlayıcınızı atlayarak tamamen farklı bir ağda olursunuz.
- Telefona proxy destekli herhangi bir tarayıcı kurun veya sistem ayarlarını kullanın: Android'de erişim noktası özelliklerinde bu APN üzerinden yapılır, ama manuel proxy girişi olan bir tarayıcı uygulaması kurmak daha kolaydır.
- Proxy'nizin adresini, portunu, kullanıcı adını ve şifresini girin ve IP adresinizi gösteren herhangi bir siteyi açın.
- Telefondan proxy çalışıyorsa, proxy canlıdır ve sorun bilgisayarınızla internet arasındadır: güvenlik duvarı, yönlendirici veya yazılım ayarları. 2, 3, 4 ve 5. adımlara gidin.
- Telefondan da çalışmıyorsa sorun ya proxy'nin kendisinde ya da yetkilendirme ayarlarındadır. 6. adıma, ardından desteğe gidin.
İpucu: ikinci cihazınız yoksa, bilgisayarı telefondan mobil erişim noktasına bağlamayı deneyin. Ağı değiştirmek, başka bir cihazdan kontrol etmekle aynı etkiyi verir.
Kontrol panelinden proxy durumunu kontrol edelim
- Mobil proxy sağlayıcının kontrol panelinde oturum açın.
- Proxy'nizin kartını bulun ve durum göstergesine bakın. Çoğu hizmette modem ağda mı ve son etkinlik ne zamandı gösterir.
- Gösterge proxy'nin bağlantısının kesildiğini veya modemin ağda olmadığını gösteriyorsa, daha fazla teşhis yapmayın: sorun donanım tarafındadır ve destek çözer.
Kontrol: bu adımın sonunda tek bir sorunun yanıtı olmalı: proxy en az bir yerden çalışıyor mu, yoksa hiçbir yerden çalışmıyor mu. Bu sonucu not edin. Sonraki adımlardan hangilerinin ana olacağını bu belirler.
Bu adımda olası sorunlar
Bazen telefondan proxy çalışır ama bir dakika sonra durur. Bu, proxy'deki IP rotasyonu veya modemin kararsız hücresel ağı olabilir. Tek bir denemeden yanlış sonuç çıkarmamak için kontrolü birer dakika arayla iki-üç kez tekrarlayın.
Adım 2: Proxy adresini ve portunu kontrol edelim
Bu aşamanın amacı: proxy portunun açık olduğundan ve tam olarak bilgisayarınızdan erişilebilir olduğundan emin olmak. Bu kilit kontroldür: port yanıt vermiyorsa geri kalan her şey anlamsızdır.
Ping neden uygun değil
Çoğu kişinin ilk düşüncesi: sunucuya ping atmak. Ama ping yalnızca ICMP protokolü üzerinden IP adresinin erişilebilirliğini kontrol eder, belirli bir portun açık olup olmadığını değil. Birçok proxy sunucusu güvenlik nedeniyle ping'e hiç yanıt vermez. Yani başarılı bir ping hiçbir şeyi garanti etmez, başarısız bir ping de hiçbir anlam taşımaz. Bize tam olarak TCP portu kontrolü gerekiyor.
Windows'ta port kontrolü
- Windows tuşuna basın, PowerShell yazın ve açın.
- Kendi adresinizi ve portunuzu yerleştirerek şu komutu girin:
Test-NetConnection -ComputerName proxy.example.net -Port 30001 - Enter'a basın ve bekleyin. Komut 20 saniye kadar düşünebilir.
- Çıktıda TcpTestSucceeded satırını bulun. True değeri portun açık olduğu ve bağlantıları kabul ettiği anlamına gelir. False değeri porta ulaşılamadığı anlamına gelir.
- PingSucceeded satırına da dikkat edin. False ama TcpTestSucceeded True ise her şey yolunda: sunucu sadece ping'e yanıt vermiyordur.
macOS ve Linux'ta port kontrolü
- Terminali açın.
- Şu komutu girin:
nc -zv proxy.example.net 30001 - -z parametresi araca veri göndermemesi, yalnızca bağlantıyı kontrol etmesi gerektiğini söyler. -v parametresi ayrıntılı çıktı verir.
- succeeded veya Connection to ... port 30001 succeeded! şeklinde bir yanıt başarı demektir. Connection refused yanıtı portun kapalı olduğu ve sunucunun hemen reddettiği anlamına gelir. Komut yanıt vermeden takılıp sonra timed out yazarsa port yol boyunca bir yerde filtreleniyordur.
Her sistemde curl ile kontrol
curl yalnızca portu kontrol etmekle kalmaz, aynı anda proxy üzerinden bir istek de yapabilir. Bu bir sonraki kontrol düzeyidir.
- Kendi verilerinizi yerleştirerek şu komutu girin:
curl -x http://login:password@proxy.example.net:30001 --connect-timeout 15 -v https://api.ipify.org - -x parametresi proxy'yi belirtir. -v tüm bağlantı aşamalarını gösterir. --connect-timeout bağlantı kurma beklemesini 15 saniyeyle sınırlar.
- Çıktıyı yukarıdan aşağı okuyun. Connected to proxy.example.net satırı portun açık olduğu anlamına gelir. CONNECT api.ipify.org:443 satırı curl'ün proxy'den bir tünel kurmasını istediğini gösterir. Bundan sonra 200 yanıtı gelirse ve sonda IP adresini görürseniz, proxy tamamen çalışıyor.
- Çıktı Trying 185.10.20.30:30001... satırında durup 15 saniye sonra Connection timed out yazarsa, port bilgisayarınızdan erişilemez durumdadır.
İpucu: şifrenizde @ veya # gibi özel karakterler varsa curl adresi yanlış ayrıştırabilir. Kimlik bilgileri için ayrı -U parametresini kullanın: curl -x http://proxy.example.net:30001 -U login:password ... Böylece şifre adresle karışmaz.
Protokolü ve SOCKS5 portunu kontrol edelim
Sık yapılan hata: yazılımın SOCKS5 beklediği yere HTTP portu vermek veya tersini yapmak. Bağlantı kurulur ama veri gitmez ve uygulama zaman aşımı verebilir.
- Sağlayıcının panelinde HTTP ve SOCKS5 için hangi portların verildiğini kontrol edin.
- SOCKS5 protokolüyle curl üzerinden kontrol yapın:
curl -x socks5://login:password@proxy.example.net:30002 --connect-timeout 15 https://api.ipify.org - Uygulamanızda başarılı curl komutundaki protokolle aynı olanı seçtiğinizden emin olun.
Kontrol: bu adımdan sonra üç şeyden birini kesin olarak biliyorsunuz: port açık ve proxy curl üzerinden yanıt veriyor (o zaman sorun uygulamanızın ayarlarında, 3. adıma gidin); port açık ama proxy üzerinden istek askıda kalıyor (yetkilendirme veya proxy tarafında sorun, 6. adım); port yanıt vermiyor (güvenlik duvarı veya ağ sorunu, 4 ve 5. adımlar).
Bu adımda olası sorunlar
Test-NetConnection ad çözümleme hatası veriyorsa, bilgisayar alan adını IP adresine çeviremiyordur. Kontrol panelindeki IP adresini ad yerine koymayı deneyin. IP ile çalışıp adla çalışmıyorsa DNS sorununuz var: ağ bağdaştırıcısı ayarlarında DNS sunucusunu genel bir sunucuyla değiştirin ve tekrarlayın.
Adım 3: Yazılımınızdaki zaman aşımlarını ele alalım
Bu aşamanın amacı: uygulamanın mobil proxy'ye yanıt için yeterli zaman verdiğinden emin olmak ve bağlantı zaman aşımını okuma zaman aşımından ayırt etmeyi öğrenmek.
Gerçek yanıt süresini ölçelim
- Zamanlama çıktısıyla curl komutunu çalıştırın:
Windows'ta /dev/null yerine NUL kullanın.curl -x http://login:password@proxy.example.net:30001 -o /dev/null -s -w "connect: %{time_connect}s total: %{time_total}s" https://api.ipify.org - connect değeri proxy ile TCP bağlantısının ne kadar sürede kurulduğunu gösterir. Mobil proxy'ler için normal: 0,05 ile 0,5 saniye arası.
- total değeri tüm isteğin süresini gösterir. Mobil proxy'ler için 1-4 saniye görmek normaldir, hücresel ağın yoğun saatlerinde 6-8 saniyeye kadar da çıkabilir.
- Komutu beş kez tekrarlayın ve dağılımı kaydedin. connect sürekli düşükse ama total bazen 10 saniyeye zıplıyorsa, yazılımınız bu gecikmelere hazır olmalıdır.
Popüler araçlarda zaman aşımlarını ayarlayalım
Python ve requests kütüphanesi
timeout parametresi iki değerli bir demet alır: bağlantı zaman aşımı ve okuma zaman aşımı. Mobil proxy'ler için önerilen değerler: bağlantı için 10 saniye, okuma için 30 saniye.
proxies = {"http": "http://login:password@proxy.example.net:30001", "https": "http://login:password@proxy.example.net:30001"}
response = requests.get("https://api.ipify.org", proxies=proxies, timeout=(10, 30))Tek bir sayı verirseniz, örneğin timeout=5, bu her iki zaman aşımına da uygulanır ve proxy sunucusunun yanıt vermediğine dair yanlış mesajların sık nedeni budur.
Node.js ve axios
axios'ta timeout parametresi tek ve geneldir. En az 30000 milisaniye olarak ayarlayın. Proxy için https-proxy-agent paketinden bir ajan kullanın ve httpsAgent parametresine aktarın.
Antidetect tarayıcılar
- Profil ayarlarını, proxy bölümünü açın.
- Bağlantı kontrolü düğmesini bulun. Neredeyse tüm modern antidetect'lerde vardır.
- Sonucun ne kadar sürede geldiğine dikkat edin. Kontrol 10 saniyeden uzun sürüp başarısızlıkla bitiyorsa ama curl çalışıyorsa, tarayıcının genel ayarlarında proxy zaman aşımı parametresine bakın ve artırın.
- Protokol alanında, 2. adımda kontrolü geçen porta uygun olarak HTTP veya SOCKS5 seçildiğinden emin olun.
Kazıma ve otomasyon araçları
Scrapy'de DOWNLOAD_TIMEOUT parametresi sorumludur, varsayılan 180 saniyedir ve nadiren sorun olur. Puppeteer ve Playwright'ta varsayılan gezinme zaman aşımı 30 saniyedir, ancak yavaş hücresel ağ üzerinden çalışırken ağır sayfalar yetişemeyebilir: goto metodundaki timeout parametresiyle 60 saniyeye çıkarın.
İpucu: zaman aşımlarını çok büyük yapmayın. Okuma için 30-60 saniye makul bir sınırdır. 300 saniye koyarsanız, betiğiniz ölü bağlantılarda hızla istek tekrarlamak yerine saatlerce askıda kalır.
Bağlantı zaman aşımını okuma zaman aşımından ayırt edelim
Bu önemlidir çünkü ikisi farklı şekilde tedavi edilir.
- Bağlantı zaman aşımı curl'de Trying satırından hemen sonra "Connection timed out after 15001 milliseconds" olarak görünür. Python requests'te bu ConnectTimeout istisnasıdır. Tedavi: 4, 5 ve 6. adımlar, çünkü porta ulaşamadınız.
- Okuma zaman aşımı curl'de Connected satırından sonra "Operation timed out after 30000 milliseconds with 0 bytes received" olarak görünür. Python'da bu ReadTimeout'tur. Tedavi: okuma zaman aşımını artırın, o anda proxy'de IP rotasyonu olup olmadığını kontrol edin ve hedef sitenin genel olarak erişilebilir olduğundan emin olun.
Kontrol: bu adımdan sonra curl üzerinden proxy yanıt süresi, uygulamanızın zaman aşımlarına en az iki katı payla sığıyor. curl 3 saniyede yanıt veriyorsa, yazılımda okuma için en az 10 saniye olmalıdır.
Adım 4: Cihazınızdaki güvenlik duvarını ve antivirüsü kontrol edelim
Bu aşamanın amacı: bilgisayardaki koruyucu yazılımın proxy portuna giden bağlantıları engellemediğinden emin olmak ve gerekirse noktasal bir izin kuralı oluşturmak.
Hızlı test: geçici olarak devre dışı bırakma
Kuralları karıştırmadan önce hipotezi en basit şekilde test edelim. Korumayı bir dakika kapatıyoruz, port kontrolünü tekrarlıyoruz, geri açıyoruz.
- Windows'ta aramayı açın, "Windows Defender Güvenlik Duvarı" yazın ve açın.
- Solda "Windows Defender Güvenlik Duvarı'nı aç veya kapat" seçeneğine tıklayın.
- Geçerli etkin ağ profili için (genellikle Özel veya Genel ağ) "Kapat" seçeneğini seçin ve Tamam'a basın.
- Hemen 2. adımdaki Test-NetConnection komutunu çalıştırın.
- Anahtarı hemen "Aç" konumuna getirin ve Tamam'a basın.
Dikkat: güvenlik duvarını kapalıyken bir kontrolden fazlası için bırakmayın. Tek bir komut saniyeler alır ama ağda açık bir sistem gerçek bir risktir. Geri açmayı unutursanız Windows bildirimle hatırlatır, ama buna güvenmemek daha iyidir.
Güvenlik duvarı kapalıyken port erişilebilir hale geldiyse suçlu bulundu. Gelmediyse antivirüsü aynı şekilde kontrol ederiz: çoğu üründe tepsi simgesinin bağlam menüsünde "Korumayı 5 dakika duraklat" maddesi vardır. Port kontrolünü tekrarlayın ve korumayı geri açın.
Windows güvenlik duvarında izin kuralı oluşturalım
Güvenlik duvarını kalıcı olarak kapatmak olmaz. Bunun yerine tam olarak uygulamanıza giden bağlantılara izin veren bir kural oluşturacağız.
- "Windows Defender Güvenlik Duvarı"nı açın ve solda "Gelişmiş ayarlar" seçeneğine tıklayın. Genişletilmiş ayarlar penceresi açılacak.
- Sol sütunda "Giden Kuralı" seçeneğini seçin.
- Sağ sütunda "Yeni Kural" seçeneğine tıklayın.
- Tür olarak "Program" seçin ve İleri'ye basın.
- "Bu program yolu" seçeneğini seçin ve Gözat düğmesiyle uygulamanızın yürütülebilir dosyasını gösterin: tarayıcı, antidetect veya Python yorumlayıcısı. İleri'ye basın.
- "Bağlantıya izin ver" seçeneğini seçin ve İleri'ye basın.
- Üç profili de işaretleyin: Etki Alanı, Özel, Ortak. İleri'ye basın.
- Kurala anlaşılır bir ad verin, örneğin "Antidetect tarayıcı için proxy'ye izin ver" ve Son'a basın.
Uygulama çoksa alternatif bir yol: "Bağlantı noktası" türünde bir kural oluşturun, TCP protokolünü seçin, belirli uzak proxy portunu girin ve tüm programlar için izin verin. Bunun için dördüncü maddede "Özel" seçeneğini seçin, "Protokol ve bağlantı noktaları" bölümünde TCP belirtin ve "Uzak bağlantı noktası" alanına proxy port numarasını girin.
Engelleyen kural olup olmadığını kontrol edelim
Bazen sorun izin eksikliği değil, antivirüsün veya kurumsal politikanın oluşturduğu bir yasaktır.
- Aynı genişletilmiş ayarlar penceresinde "Giden Kuralı"nı açın.
- "Eylem" sütun başlığına tıklayarak listeyi sıralayın. "Engelle" eylemli kurallar yan yana gelir.
- Bunları inceleyin. Uygulamanızı veya proxy portunuzu içeren bir aralığı engelleyen bir kural görürseniz, sağ tıklayıp "Kuralı devre dışı bırak" seçeneğini seçin.
- Port kontrolünü tekrarlayın.
macOS'ta güvenlik duvarı
- Sistem Ayarları'nı, Ağ bölümünü, ardından Güvenlik Duvarı'nı açın.
- Güvenlik duvarı açıksa Seçenekler'e basın.
- Uygulamanızın listede "Gelen bağlantılara izin ver" durumunda olduğundan emin olun. İlgi alanımız giden bağlantılar olsa da bazı uygulamalar proxy ile çalışmak için yerel bir port açar.
- "Tüm gelen bağlantıları engelle" işaretliyse kaldırın ve kontrolü tekrarlayın.
Little Snitch veya LuLu gibi üçüncü taraf araçları ayrıca kontrol edin: bunlar tam olarak giden trafiği denetler ve bir zamanlar izin isteğinize verdiğiniz reddi hatırlamış olabilirler. Kural listelerinde uygulamanızı bulun ve proxy adresine bağlantılara izin verin.
Linux'ta güvenlik duvarı
- sudo ufw status verbose komutuyla durumu kontrol edin. Default: satırına dikkat edin: giden için deny yazıyorsa giden bağlantılar varsayılan olarak engelleniyordur.
- Proxy portuna giden bağlantıya izin verin:
sudo ufw allow out to 185.10.20.30 port 30001 proto tcp - Doğrudan iptables kullanıyorsanız, sudo iptables -L OUTPUT -n -v komutuyla kurallara bakın ve trafiğinizi kapsayan DROP veya REJECT satırlarını bulun.
- Docker'lı sunucularda konteynerlerin ayrı bir ağ alt sistemi kullandığını unutmayın. Portun erişilebilirliğini yalnızca ana makineden değil konteynerin içinden de kontrol edin.
İpucu: güvenlik duvarı kurallarını değiştirdiğiniz tam saati not edin. Bir hafta sonra bir şey bozulursa hangi değişikliğin neden olabileceğini hızla hatırlar ve hazırlık aşamasında dışa aktardığınız dosyayla geri alırsınız.
Kontrol: bu adımdan sonra Test-NetConnection veya nc, güvenlik duvarı açık ve antivirüs etkinken başarılı bağlantı gösteriyor. Port hâlâ erişilemezse ve koruma kapalıyken de açılmadıysa, sorun daha yukarıda, yönlendirici veya ağ düzeyindedir. 5. adıma gidin.
Adım 5: Yönlendiriciyi, kurumsal ağı ve sağlayıcıyı kontrol edelim
Bu aşamanın amacı: bilgisayarınız ile proxy sunucusu arasındaki donanımın trafiğinizi atıp atmadığını bulmak ve gerekirse yönlendirici ayarlarını düzeltmek veya ağı değiştirmek.
Paketlerin tam olarak nerede kaybolduğuna bakalım
İzleme aracı, paketlerin sunucuya giderken geçtiği düğümlerin listesini gösterir. Paketler bir düğüme kadar ulaşıp sonra kaybolursa, bu düğümün kime ait olduğunu görürsünüz: yönlendiriciniz, sağlayıcınız veya daha ötesi.
- Windows'ta cmd'yi açın ve proxy IP'sini yerleştirerek tracert 185.10.20.30 komutunu çalıştırın.
- macOS'ta traceroute 185.10.20.30 komutunu çalıştırın. Linux'ta mtr -n 185.10.20.30 kullanmak daha iyidir: gerçek zamanlı istatistik ve her düğümdeki kayıpları gösterir.
- İlk satır yönlendiricinizdir. İkinci ve üçüncü genellikle sağlayıcı donanımıdır. Sonrası omurga düğümleri ve sonunda proxy sunucusu.
- Son düğüm hariç tüm düğümlerden yanıt geliyorsa bu normaldir: proxy sunucuları genellikle bu tür isteklere yanıt vermez. Yolun ortasındaki kayıplara bakın.
- Yıldızlar ilk düğümden hemen sonra başlıyorsa, yönlendiriciniz veya sağlayıcınız bu adrese giden trafiği geçirmiyordur.
Unutmayın: izleme, gerekli porta TCP değil ICMP veya UDP kullanır, bu nedenle rotanın genel erişilebilirliğini gösterir, portun açıklığını değil. Bu, 2. adımdaki kontrolün yerine değil, ek bir araçtır.
Yönlendiriciyi kontrol edelim
- Tarayıcıyı açın ve adres çubuğuna yönlendirici adresini girin, genellikle 192.168.0.1 veya 192.168.1.1. Kullanıcı adı ve şifre, değiştirmediyseniz cihazın altındaki etikette yazılıdır.
- "Güvenlik", "Güvenlik Duvarı", "Filtreleme" veya "Ebeveyn Kontrolü" gibi bir bölüm bulun.
- Port veya URL filtrelemenin açık olup olmadığına bakın. Bazı yönlendiricilerde "Yüksek koruma düzeyi" gibi ön tanımlı profiller vardır ve 80 ile 443 dışındaki tüm portları engeller. Standart düzeye geçin.
- "Erişim kontrolü" veya "Zamanlama" bölümünü kontrol edin: cihazınız için belirli saatlerde interneti kısıtlayan bir kural olabilir.
- SPI Firewall veya "DoS koruması" ayarını bulun. Bazen aşırı agresif koruma, tek bir adrese çok sayıda paralel bağlantıyı saldırı olarak algılar ve kesmeye başlar. Onlarca kazıma akışınız varsa bu korumayı geçici olarak kapatıp kontrolü tekrarlayın.
- Değişiklikleri kaydedin ve gerekirse yönlendiriciyi yeniden başlatın.
Dikkat: amacını anlamadığınız yönlendirici ayarlarını, özellikle WAN ve DHCP bölümlerinde değiştirmeyin. Oradaki bir hata tüm evi veya ofisi internetsiz bırakır. Şüpheniz varsa hazırlıkta anlatıldığı gibi yapılandırma yedeği alın ve her seferinde yalnızca bir parametreyi değiştirin.
MTU'yu kontrol edelim
MTU, tek bir veri paketinin maksimum boyutudur. Yanlış ayarlanırsa küçük istekler geçer ama büyük yanıtlar kaybolur. Belirti karakteristiktir: proxy ile bağlantı kurulur, küçük sayfalar açılır ama büyükler askıda kalır.
- Windows'ta cmd'de şunu çalıştırın: ping -f -l 1472 8.8.8.8. Paketler geçiyorsa MTU 1500 sorunsuzdur. "Bölünmesi gerekiyor" yazarsa geçene kadar 10'luk adımlarla sayıyı azaltın.
- Yönlendiricide MTU ayarını bulun (genellikle WAN veya İnternet bölümünde) ve bulduğunuz değere 28 ekleyerek girin.
- Tipik değerler: normal kablolu bağlantı için 1500, PPPoE için 1492, bazı mobil ve uydu kanalları için 1400-1450.
Kurumsal ağ ve halka açık Wi-Fi
Ofiste, ortak çalışma alanında veya otelde çalışıyorsanız, sizinle internet arasında neredeyse kesinlikle kendi güvenlik duvarı olan kurumsal bir ağ geçidi vardır. Bu tür ağ geçitleri çoğu zaman yalnızca 80 ve 443 portlarına izin verir, gerisini keser. Mobil proxy'nin beş haneli portu bu durumda geçemez.
- Telefondan mobil erişim noktasına bağlanın ve port kontrolünü tekrarlayın. Çalışırsa suçlu kurumsal ağ geçididir.
- Sistem yöneticisine somut bir taleple başvurun: belirli bir IP ve porta giden TCP bağlantılarına izin verilsin. Talep ne kadar kesinse o kadar hızlı yerine getirilir.
- Proxy sağlayıcınıza standart aralıktan, örneğin 443 veya 8080'den port alma imkânı olup olmadığını sorun. Birçok hizmette bu ayarlanabilir.
Ev sağlayıcısı
Ev sağlayıcıları giden portları nadiren engeller, ama bazıları torrent veya posta sunucularıyla ilişkili bilinen aralıkları keser. Tüm kontrollerden sonra port ev ağından yanıt vermiyor ama mobil internetten yanıt veriyorsa, sağlayıcınızın desteğini arayın ve doğrudan belirtilen porta giden bağlantıları filtreleyip filtrelemediklerini sorun.
İpucu: ağınızdan ve mobil ağdan aldığınız izleme ile port kontrolü çıktısını tek bir dosyaya kaydedin. Sağlayıcıya veya yöneticiye yazarken iki sonucu da ekleyin. Bu, diyaloğu bir haftadan bir güne indirir.
Kontrol: proxy portu 2. adımdaki komutla ağınızdan erişilebilir, izleme sağlayıcı düğümlerinde kayıp göstermiyor ve -f parametreli ping 1472 boyutunda geçiyor. Üç koşul da sağlanıyorsa ve proxy hâlâ yanıt vermiyorsa iş kendi ayarlarındadır. 6. adıma geçiyoruz.
Adım 6: Proxy tarafındaki ayarları kontrol edelim
Bu aşamanın amacı: proxy sunucusunun tam olarak sizi kabul ettiğinden emin olmak: IP'niz beyaz listede, modem ağda, rotasyon isteklerinizle çakışmıyor ve bağlantı limiti aşılmamış.
IP ile yetkilendirmeyi kontrol edelim
Bu, proxy'nin telefondan çalışıp bilgisayardan çalışmadığı veya dün çalışıp bugün çalışmadığı durumun en sık nedenidir.
- Mevcut dış IP'nizi öğrenin. Proxysiz olarak IP gösteren herhangi bir siteyi açın veya terminalde curl https://api.ipify.org çalıştırın.
- Proxy sağlayıcının kontrol panelinde yetkilendirme ayarları bölümünü açın.
- Beyaz listedeki adresle mevcut adresinizi karşılaştırın. Farklılarsa neden bulundu: sağlayıcınız yönlendirici yeniden başlatıldıktan sonra veya zamanlamaya göre yeni bir adres verdi.
- Listedeki adresi güncelleyin veya kullanıcı adı ve şifreyle yetkilendirmeye geçin. Dış IP'niz değişiyorsa ikinci seçenek daha güvenilirdir.
- Bir-iki dakika bekleyin: proxy sunucusunda ayarlar anında uygulanmaz.
- 2. adımdaki curl kontrolünü tekrarlayın.
İpucu: dinamik IP'li evden çalışıyorsanız, kullanıcı adı ve şifreyle yetkilendirme bu sorundan sizi sonsuza dek kurtarır. Beyaz liste statik adresli sunucular için uygundur, ev bilgisayarları için değil.
Modem durumunu ve rotasyonu kontrol edelim
- Kontrol panelinde mevcut proxy IP'si ve son değişim zamanı bilgisini bulun.
- Birkaç dakikada bir otomatik rotasyon ayarlıysa dikkat edin: IP değişimi anında modem hücresel ağa yeniden bağlanır ve 5-20 saniye boyunca proxy gerçekten yanıt vermez. Bu normal davranıştır, arıza değil.
- İstekleriniz düzenli olarak tam rotasyon anında zaman aşımına giriyorsa rotasyon aralığını artırın veya yeniden bağlanma anını kendiniz kontrol etmek için bağlantıyla IP değiştirmeye geçin.
- Paneldeki bağlantı üzerinden IP'yi zorla değiştirmeyi deneyin. Değişimden sonra proxy çalışırsa sorun belirli bir IP veya takılı kalmış modem bağlantısıydı.
Eşzamanlı bağlantı limitini kontrol edelim
Mobil proxy'lerde tek porttan paralel bağlantı sayısına bir sınır vardır. Kazıyıcınız yüz akış açtıysa ve limit elliyse, fazla bağlantılar kuyrukta bekler ve zaman aşımıyla düşer.
- Limiti tarife açıklamasında veya panelde kontrol edin.
- Proxy kullanan tüm uygulamaları kapatın ve curl üzerinden tek bir istek yapın. Tek istek geçip yük altında zaman aşımları başlıyorsa limite takılıyorsunuz.
- Kazıyıcı veya antidetect ayarlarında akış sayısını limitin altına düşürün. Mobil proxy'ler için makul başlangıç: port başına 5-10 paralel bağlantı.
Saat dilimlerini ve hücresel ağı kontrol edelim
Proxy'nin modemi fiziksel olarak belirli bir şehirde ve belirli bir operatöre bağlıdır. Hücresel ağların yoğun olduğu akşam saatlerinde gecikmeler kat kat artar. Zaman aşımları yalnızca proxy bölgesinin saatine göre 19:00-23:00 arasında görünüyorsa bu hücresel ağdır, sizin yapılandırmanız değil. Çözüm: bu saatlerde zaman aşımlarını artırın veya yükü diğer saatlere dağıtın.
Kontrol: mevcut IP'niz beyaz listeyle eşleşiyor veya şifreyle yetkilendirme kullanılıyor, panelde modem "ağda" durumunu gösteriyor, curl üzerinden tek istek geçiyor ve yazılımdaki akış sayısı limiti aşmıyor. Bunların hepsi sağlanıyorsa ve proxy sunucusu hâlâ yanıt vermiyorsa altı adımın tüm sonuçlarını ekleyerek sağlayıcı desteğine yazma zamanı gelmiştir.
Sonucu kontrol edelim: istikrarlı bağlantı için kontrol listesi
Tüm adımları geçtiniz. Şimdi sonucun tesadüfen ve bir dakikalığına elde edilmediğinden emin olalım. Kontrol listesini gözden geçirin ve her maddeyi işaretleyin.
Kontrol listesi
- Test-NetConnection veya nc, güvenlik duvarı ve antivirüs açıkken proxy portuna başarılı TCP bağlantısı gösteriyor.
- curl proxy üzerinden mobil operatörün IP adresini üst üste beş denemede en fazla 5 saniyede döndürüyor.
- Yazılımınızda bağlantı zaman aşımı en az 10 saniye, okuma zaman aşımı en az 30 saniye.
- Uygulamadaki protokol (HTTP veya SOCKS5) curl üzerinden kontrolü geçen portla eşleşiyor.
- Güvenlik duvarında korumayı tamamen kapatmak yerine noktasal izin kuralı oluşturuldu.
- Dış IP'niz beyaz listeyle eşleşiyor veya şifreyle yetkilendirme kullanılıyor.
- Uygulamadaki paralel bağlantı sayısı tarife limitinin altında.
- Geri alma durumu için güvenlik duvarı ve yönlendirici ayarlarının yedekleri kayıtlı.
Yük testi
Tek istek bir şeydir, gerçek iş ise arka arkaya onlarca istektir. Kısa bir test yapalım.
- Terminalde 20 istekten oluşan bir döngü çalıştırın. macOS ve Linux'ta:
PowerShell'de 1..20 | ForEach-Object döngüsünü aynı curl komutuyla kullanın.for i in $(seq 1 20); do curl -x http://login:password@proxy.example.net:30001 -s -o /dev/null -w "%{http_code} %{time_total}\n" https://api.ipify.org; done - Çıktıda yanıt kodu ve süre içeren 20 satır göreceksiniz. Tüm kodlar 200 olmalı ve süre 5-6 saniyeyi aşmamalı.
- Yirmi istekten bir-ikisi daha uzun sürdüyse bu mobil ağ için kabul edilebilir. Her üç istekten biri zaman aşımına giriyorsa 6. adıma dönün ve bağlantı limiti ile rotasyonu kontrol edin.
Gerçek uygulamada test
- Proxy ayarlı antidetect tarayıcı profilini açın ve bağlantı kontrolüne basın. Sonuç 2-4 saniyede gelmeli ve mobil operatörün IP'sini göstermelidir.
- Ağır bir sayfa açın, örneğin bir sosyal ağ akışı. 10-15 saniyede tamamen yüklenmelidir.
- Sekmeyi 10 dakika açık bırakın ve sayfayı yenileyin. Yüklenirse bağlantı duraklamaları atlatıyor ve hareketsizlikten kopmuyor.
- Betikler için: 50-100 istekli bir iş görevi başlatın ve başarı yüzdesine bakın. Başarı göstergesi: tekrarsız en az yüzde 95.
Başarılı yürütme göstergeleri: port erişilebilir, yanıt süresi öngörülebilir, uygulama 30 dakikalık çalışma boyunca zaman aşımından şikâyet etmiyor ve altı adımdan hangisinin sorunun nedeni olduğunu tam olarak biliyorsunuz. Sonuncusu özellikle değerlidir: bir dahaki sefere teşhise tam olarak ondan başlayacaksınız.
Tipik hatalar ve çözümleri
Burada mobil proxy kullanıcılarının en sık karşılaştığı durumlar toplanmıştır. Biçim: ne görüyorsunuz, neden böyle oluyor, ne yapmalı.
Proxy telefondan çalışıyor ama bilgisayardan çalışmıyor
Neden: bilgisayardaki güvenlik duvarı veya antivirüs standart dışı porta giden bağlantıyı engelliyor ya da ev IP'niz beyaz listeyle eşleşmiyor ve telefon başka bir şekilde yetkileniyor.
Çözüm: 4. adımdaki güvenlik duvarını kapatma hızlı testini yapın. İşe yaramadıysa 6. adım talimatıyla bilgisayarın dış IP'sini beyaz listeyle karşılaştırın.
Bağlantı kuruluyor ama sayfa yüklenmiyor
Neden: uygulamanın SOCKS5 beklediği yere HTTP portu verdiniz veya tersini yaptınız. Bağlantı açılıyor ama uygulama ile proxy farklı diller konuşuyor ve veri gitmiyor.
Çözüm: http:// ve socks5:// anahtarlarıyla her iki protokolü curl üzerinden kontrol edin ve uygulamada çalışanı seçin.
Bir hafta çalıştı, sonra sizin tarafınızda değişiklik olmadan durdu
Neden: internet sağlayıcınızın dış IP'si değişti ve proxy panelinde IP ile yetkilendirme ayarlı. İkinci olasılık: antivirüs güncellemesi yeni bir engelleme kuralı ekledi.
Çözüm: beyaz listeyi güncelleyin veya şifreyle yetkilendirmeye geçin. 4. adım talimatıyla güvenlik duvarındaki engelleme kurallarını kontrol edin.
Zaman aşımları yalnızca akşam saatlerinde
Neden: proxy modeminin bulunduğu bölgede hücresel ağın aşırı yüklenmesi. Bu mobil internetin bir özelliğidir, arıza değil.
Çözüm: akşam saatleri için okuma zaman aşımını 45-60 saniyeye çıkarın, istek tekrarları ekleyin ve mümkünse ağır görevleri sabaha kaydırın.
Her on istekten biri zaman aşımıyla düşüyor
Neden: isteklerin otomatik IP rotasyonu anıyla çakışması ya da paralel bağlantı limitinin aşılması.
Çözüm: rotasyonu bağlantıyla değiştirmeye geçin ve istek grupları arasında çağırın. Akış sayısını 5-10'a düşürün.
Ofiste çalışmıyor, evde çalışıyor
Neden: kurumsal ağ geçidi yalnızca 80 ve 443 portlarını geçiriyor.
Çözüm: yöneticiden belirli bir IP ve port için izin isteyin veya proxy sağlayıcınızdan standart aralıktan bir port alın.
Test-NetConnection True gösteriyor ama tarayıcı hâlâ askıda
Neden: port açık ama tarayıcıda başka bir port, başka bir adres ayarlı ya da trafiğin proxy'yi atlamasına neden olan sistemsel bir istisna açık. Ayrıca proxy için kullanılan uzantı sistem ayarlarıyla çakışıyor olabilir.
Çözüm: tarayıcıdaki adres ve portu komutla kontrol ettiğinizle karakter karakter karşılaştırın. Proxy ile ilgili tüm uzantıları kapatın ve proxy'yi tek bir yöntemle ayarlayın.
Küçük sayfalar açılıyor, büyükler askıda kalıyor
Neden: yönlendiricide veya sağlayıcıda yanlış MTU. Büyük paketler geçmiyor.
Çözüm: 5. adımdaki -f parametreli ping komutuyla MTU'yu belirleyin ve yönlendiricide ayarlayın.
İleri düzey kullanıcılar için ek imkânlar
Temel bağlantı kurulduysa ve daha fazla kontrol istiyorsanız bu bölüm sizin için. Burada tek seferlik teşhisi sürekli izlemeye dönüştüren araçlar ve yaklaşımlar var.
Paketlere bakalım: Wireshark ve tcpdump
Temel adımlardaki komutlar net bir yanıt vermediğinde ağ trafiğine doğrudan bakabilirsiniz.
- Linux veya macOS'ta şunu çalıştırın:
Windows'ta Wireshark kurun ve görüntüleme filtresine ip.addr == 185.10.20.30 and tcp.port == 30001 yazın.sudo tcpdump -i any host 185.10.20.30 and port 30001 -nn - 2. adımdaki port kontrolünü başlatın ve yakalanan paketlere bakın.
- SYN işaretli giden paketler görüyor ama karşılık gelen SYN-ACK gelmiyorsa paketleriniz gidiyor ama yanıt dönmüyor. Engelleme bilgisayarın dışında bir yerde.
- SYN paketleri hiç yoksa, bunları yerel güvenlik duvarı ağa çıkmadan önce atıyordur.
- Yanıt olarak RST geliyorsa sunucudaki port kapalı veya sunucu tam olarak size ret veriyor.
Artan duraklamayla otomatik tekrarlar
Mobil ağ doğası gereği kararsızdır. İlk zaman aşımında düşmek yerine, üstel gecikmeli tekrarlar ayarlayın: ilk deneme 1 saniye sonra, ikincisi 2, üçüncüsü 4. Python'da bu urllib3'ün Retry sınıfıyla bir adaptör aracılığıyla yapılır, Node.js'te axios-retry paketiyle. Bu şemayla üç tekrar, veri kaybetmeden rastgele zaman aşımlarının yüzde 90'ını ortadan kaldırır.
Kalıcı bağlantılar ve havuzlar
Mobil proxy üzerinden her yeni TCP bağlantısı kurulum için 100-500 milisaniyeye mal olur. Betiğiniz her istek için yeni bağlantı açıyorsa zaman kaybediyor ve limite daha hızlı takılıyorsunuz. Oturumlar kullanın: Python'da requests.Session, Node.js'te keepAlive: true olan bir ajan. Tek bağlantı onlarca istek için yeniden kullanılır.
Erişilebilirlik izleme
Dakikada bir basit kontrol ayarlayın: betik proxy üzerinden bir istek yapar ve yanıt süresini ve kodunu kaydeder. Bir hafta içinde proxy'nin hangi saatlerde daha hızlı, ne zaman zaman aşımına girdiğine dair bir tablo elde edersiniz. Bu, yükü planlamanıza ve bozulmayı bozulan görevlerden öğrenmek yerine önceden görmenize olanak tanır.
*/1 * * * * curl -x http://login:password@proxy.example.net:30001 -s -o /dev/null -m 20 -w "$(date +%H:%M) %{http_code} %{time_total}\n" https://api.ipify.org >> /var/log/proxy-check.logProxy üzerinden DNS
Varsayılan olarak bazı uygulamalar alan adlarını proxy üzerinden değil yerel olarak çözer. Bu, bilgi sızıntısına ve yerel DNS'in mobil ağdan erişilemeyen bir adres vermesi gibi durumlara yol açabilir. Tarayıcı ve antidetect ayarlarında "Proxy üzerinden DNS" seçeneğini arayın veya curl ve Python'da socks5 yerine socks5h protokolünü kullanın: h harfi adları proxy'nin kendisinin çözeceği anlamına gelir.
Portu standart bir porta değiştirme
Farklı ağlardan sık çalışıyorsanız sağlayıcınıza proxy portu 443 veya 8080 olarak atama imkânı olup olmadığını sorun. Bu portlar neredeyse her yerde açıktır ve her seferinde kurumsal güvenlik duvarlarıyla uğraşmanız gerekmez.
Rotasyonu ince ayarlama
İleri düzey senaryo: IP değişimini uygulama mantığına bağlamak. Yeni bir istek grubuna başlamadan önce betik IP değiştirme bağlantısını çağırır, 10-15 saniye bekler, api.ipify.org üzerinden adresin gerçekten değiştiğini kontrol eder ve ancak ondan sonra çalışmaya başlar. Böylece isteğin rotasyonla tesadüfen çakışmasından kaynaklanan zaman aşımlarını tamamen ortadan kaldırırsınız.
İpucu: her isteğin günlüğüne yalnızca zamanı değil, mevcut proxy IP'sini de ekleyin. Bir ay sonra göstergelerin neden düştüğünü incelerken, belirli IP'lerle zaman aşımları arasındaki korelasyon hangi operatör adreslerinin sorunlu olduğunu hemen söyler.
SSS: teşhisle ilgili sık sorulan sorular
Proxy sunucusu yanıt vermiyor ama ping geçiyor. Bu ne demek?
Ping yalnızca ICMP protokolü üzerinden IP erişilebilirliğini kontrol eder, portun açıklığını değil. Sunucu canlı olup ping'e yanıt verebilir ama proxy portu güvenlik duvarı tarafından filtreleniyor veya üzerindeki hizmet çalışmıyor olabilir. Her zaman 2. adımdaki komutlarla tam olarak TCP portunu kontrol edin.
Proxy'nin yanıt vermediğini varsaymadan önce ne kadar beklemeli?
Mobil proxy ile bağlantı kurulumu için normal süre 1 saniyeye kadar, sınır 10 saniyedir. Veri alımı için normal süre 5 saniyeye kadar, sınır 30-45 saniyedir. Bağlantı 10 saniyede kurulmadıysa daha fazla beklemek anlamsızdır: yanıt gelmeyecektir.
Güvenlik duvarını kapatıp öyle çalışabilir miyim?
Hayır. Korumayı kapatmak yalnızca hipotezi test etmek için bir dakika kabul edilebilir. Sonra 4. adımda anlatıldığı gibi belirli bir uygulama veya port için noktasal kural oluşturun ve güvenlik duvarını geri açın. Ağda korumasız bir bilgisayar hesaplarınız ve verileriniz için risktir.
Proxy neden bir tarayıcıda çalışıp diğerinde çalışmıyor?
Genellikle bir tarayıcı sistem proxy ayarlarını kullanırken diğeri kendi ayarlarını kullanıyordur ve bunlarda farklı veriler yazılıdır. İkinci olasılık: güvenlik duvarı bir yürütülebilir dosyaya izin verip diğerine vermemiştir. Her iki tarayıcının ayarlarını ve güvenlik duvarı kural listesini kontrol edin.
Sorunun rotasyonda olduğunu, ayarlarımda olmadığını nasıl anlarım?
Bir saat boyunca her zaman aşımının saatini kaydedin ve paneldeki rotasyon aralığıyla karşılaştırın. Zaman aşımları IP değişimiyle aynı periyodiklikte geliyorsa bu rotasyondur. Bağlantıyla değiştirmeye geçin ve sorun kaybolur.
Terminal kullanmak zorunlu mu? Grafik araçlar yok mu?
Terminal daha hızlı ve daha kesindir ama alternatifler var. Antidetect tarayıcılarda yanıt süresini gösteren yerleşik proxy kontrolü vardır. Proxy listelerini açık port göstergesiyle kontrol eden masaüstü programları var. Ancak sorunun tam olarak sizdeki nedenini bulmak için terminal vazgeçilmezdir: bağlantının hangi aşamada durduğunu gösterir.
Altı adımın hepsi geçildi ama sorun devam ediyorsa ne yapmalı?
Proxy sağlayıcınızın desteğine yazın ve şunları ekleyin: Test-NetConnection veya nc çıktısı, -v parametreli curl çıktısı, izleme sonucu, dış IP'niz, deneme saatleri ve proxy'nin başka bir ağdan çalışıp çalışmadığı bilgisi. Bu verilerle uzman nedeni beş açıklayıcı soru yerine tek yanıtta bulur.
Güvenlik duvarı kurallarını değiştirdikten sonra bilgisayarı yeniden başlatmak gerekir mi?
Hayır, Windows, macOS ve Linux güvenlik duvarı kuralları anında uygulanır. Yeniden başlatma yalnızca MTU veya güvenlik profilleri değiştirildikten sonra yönlendirici için gerekir, o da tüm modellerde değil.
Aynı yaklaşımı veri merkezi proxy'leri için de kullanabilir miyim?
Evet, 1'den 5'e kadar olan adımlar her tür proxy için evrenseldir. 3. adım farklıdır: veri merkezi proxy'leri daha hızlı yanıt verir ve zaman aşımları daha düşük ayarlanabilir. 6. adım da farklıdır: veri merkezi proxy'lerde modem yeniden bağlanmasıyla rotasyon yoktur, bu nedenle IP değişimi anında duraklama olmaz.
Sonuç
Özetleyelim. Proxy sunucusunun yanıt vermediği mesajını görünce panik yapmamayı, durumu zincir boyunca çözmeyi öğrendiniz. Önce proxy'nin en az bir yerden çalışıp çalışmadığını belirlediniz. Sonra portun tam olarak cihazınızdan açık olup olmadığını kontrol ettiniz. Zaman aşımlarını ele aldınız ve bağlantı zaman aşımı ile okuma zaman aşımı arasındaki farkı anladınız. Güvenlik duvarını ve antivirüsü kontrol ettiniz ve korumayı kapatmak yerine noktasal bir kural oluşturdunuz. Yönlendiriciyi, MTU'yu ve kurumsal ağ geçidini incelediniz. Ve son olarak proxy'nin tam olarak sizi kabul ettiğinden emin oldunuz: beyaz liste, modem, rotasyon, limitler.
Asıl sonuç bağlantının kurulmuş olması bile değil. Asıl sonuç artık bir yönteminizin olması. Bir dahaki sefere bir şey askıda kaldığında tahmin yürütmeyip ayarları rastgele değiştirmeyeceksiniz. Terminali açacak, iki komut çalıştıracak ve bir dakikada zincirin hangi bölümünde kopma olduğunu öğreneceksiniz.
Bundan sonra ne yapmalı
- Çalışan komutların ve proxy verilerinizin olduğu dosyayı kolay ulaşılır bir yerde saklayın. Bu sizin ilk yardım setiniz.
- Ev bilgisayarından hâlâ beyaz liste kullanıyorsanız yetkilendirmeyi kullanıcı adı ve şifreye geçirin.
- Mobil proxy üzerinden çalışan tüm uygulamalardaki zaman aşımlarını kontrol edin ve önerilen değerlere getirin.
- Bir hafta sonra gerçek istikrar tablosunu görmek için ileri düzey bölümdeki dakikalık izlemeyi en az bir proxy'de kurun.
Nereye geliştirmeli
Bir sonraki seviye arıza işlemeyi otomatikleştirmektir: artan duraklamayla tekrarlar, yönetilebilir rotasyon, bağlantı havuzları ve her isteği IP ile ilişkilendirerek günlüğe kaydetme. Bunları öğrendiğinizde tek tek zaman aşımlarını hiç fark etmeyeceksiniz: sisteminiz onları kendisi atlatacak, siz yalnızca nihai metrikleri göreceksiniz. Çalışmalarınızda kolay gelsin ve proxy'leriniz her zaman ilk seferde yanıt versin.