Windows'ta Mobil Proxy Yapılandırması
Windows’ta tek bir proxy ayarı yoktur; birkaç ayar vardır ve bunlar birbirleriyle iletişim kurmaz. Bu kılavuzda, her uygulamanın hangi katmanı okuduğu, hepsinin nasıl yapılandırılacağı ve hangisinin göz ardı edildiğinin nasıl tespit edileceği ele alınmaktadır.
- Bir değil, iki proxy yığını — WinINET, Ayarlar uygulamasına ve tarayıcılara hizmet verir; WinHTTP ise Windows hizmetlerine ve komut satırının büyük bir kısmına hizmet verir.
- Ayarlar sayfası sistem genelinde geçerli değildir — yalnızca WinINET’i yapılandırır; bu nedenle bir hizmet, Windows’un etkin olduğunu belirttiği bir proxy’yi göz ardı edebilir.
- netsh diğer yarıya ulaşıyor — bir komutla WinHTTP ayarlanıyor, bir komut daha ise gerçekte neyin yapılandırıldığını gösteriyor.
- Bazı uygulamalar ikisini de okumaz — curl, git ve npm yalnızca ortam değişkenlerini dikkate alır, başka hiçbir şeyi dikkate almaz.
Windows, HTTP(S) ve SOCKS5 protokollerini zaten yerel olarak desteklemektedir.
Ayarlar, netsh, ortam değişkenleri ve uygulama başına iletişim kutuları.
Windows’ta Bir Değil, İki Proxy Yığını Bulunur
Windows’ta proxy yapılandırmasının güvenilmez gelmesinin nedeni, doğru ayarlanması gereken tek bir ayarın olmamasıdır. Windows, her biri kendi proxy yapılandırmasına sahip iki tamamen ayrı HTTP yığını içerir ve bu yığınlar birbirlerini tanımaz. Yazılım, geliştiricisinin kullandığı yığını seçer ve hangisinin kullanıldığına dair hiçbir bilgi verilmez.
WinINET, daha eski olan ve kullanıcıya yönelik yığıdır. Ayarlar uygulamasını, Internet Explorer’ın eski iletişim kutusunu, Edge’i ve Chrome’u destekler. WinHTTP ise hizmet odaklı bir yığıttır; oturum açmış bir kullanıcı olmadan çalışan yazılımlar için tasarlanmıştır ve Windows hizmetlerinin yanı sıra pek çok arka plan ve kurumsal yazılımı destekler. Ayarlar'da bir proxy ayarlamak, WinINET'i yapılandırır ve WinHTTP'yi tamamen olduğu gibi bırakır.
| Katman | Bunu kim okur? | Nereye ayarladığınız |
|---|---|---|
| WinINET | Edge, Chrome, çoğu masaüstü uygulaması ve Ayarlar sayfası kendisi | Ayarlar, ardından Ağ ve İnternet, ardından Proxy |
| WinHTTP | Windows hizmetleri, arka planda çalışan güncelleyiciler, çok sayıda kurumsal yazılım | netsh winhttp set proxy yükseltilmiş bir terminalde |
| Ortam değişkenleri | curl, git, npm, pip, Python ve uyarlanmış komut satırı araçlarının çoğu | Her oturum için veya kullanıcı hesabınız için kalıcı olarak |
| Uygulama ayarları | Firefox, birçok indirme yöneticisi, tespit önleyici tarayıcılar | Uygulamanın kendi proxy iletişim kutusu |
Herhangi bir değişiklik yapmadan önce, hata veren uygulamanın hangi satıra ait olduğunu belirleyin. Aynı kimlik bilgilerini yanlış katmanda üç kez girmek, boşa geçen bir öğleden sonranın tipik örneğidir ve her denemede “bu sefer çalışmalıydı” hissi uyandırır.
Ayarlar'da ve netsh'te Proxy'yi Ayarlama
Öncelikle Ayarlar sayfasından başlayın; çünkü bu sayfa tarayıcıları ve gerçekte kullanacağınız özelliklerin çoğunu kapsamaktadır. Ayarlar’ı açın, Ağ ve İnternet’e, ardından Proxy’ye gidin. Manuel proxy kurulumu bölümünde anahtarı açın, adres alanına proxy sunucunuzu, bağlantı noktası alanına da bağlantı noktasını girin ve kaydedin. Adres alanına yalnızca ana bilgisayar adı yazılmalıdır — iki nokta üst üste ile ayrılmış bir dize veya kimlik bilgileri içeren bir URL yazılmamalıdır.
Bir uygulama proxy'yi ilk kez kullandığında Windows, kullanıcı adı ve şifre girilmesini ister. Eğer böyle bir uyarı çıkmazsa ve bunun yerine istekler başarısız olursa, bu durum proxy'nizin WinINET iletişim kutusunun toplamayı önermediği kimlik bilgilerine ihtiyaç duyduğunun işaretidir — bu durumda söz konusu uygulamayı doğrudan yapılandırın.
netsh winhttp show proxy netsh winhttp set proxy proxy-server="http=proxy.example.net:8000;https=proxy.example.net:8000" netsh winhttp set proxy proxy-server="proxy.example.net:8000" bypass-list="<local>" netsh winhttp import proxy source=ie netsh winhttp reset proxy
İçe aktarma satırını bilmekte fayda var: Ayarlar sayfasında yapılandırılan her şeyi WinHTTP’ye kopyalar; böylece tek sefer yapılandırdığınızda her iki yığın da aynı ayarlara sahip olur. Bu bir bağlantı değil, bir kopyalama işlemidir; dolayısıyla Ayarlar sayfasını değiştirdikten sonra bu satırı yeniden çalıştırmanız gerekir. Sıfırlama satırı, WinHTTP'yi "doğrudan" moduna geri döndürür; bu, daha önce çalışan bir hizmetin durması durumunda denemeniz gereken ilk şeydir.
WinHTTP yapılandırması bilgisayar düzeyinde geçerlidir; bu nedenle terminalin yönetici haklarıyla çalıştırılması gerekir. Ayarlar sayfası ise kullanıcı hesabınız için geçerlidir ve yönetici haklarına hiç gerek yoktur.
Otomatik Algılama, Manuel Proxy Ayarını Fark Edilmeden Geçersiz Kılabilir
Aynı Proxy sayfasında, manuel ayarın üzerinde bir “Otomatik proxy kurulumu” seçeneği bulunmaktadır. Bu seçeneği açık bırakırsanız, Windows her ağ değişikliğinde, manuel olarak girdiğiniz adres yerine önce WPAD’yi dener — ofis ağından gelen güncel olmayan bir WPAD girişi, eve döndükten sonra bile geçerli olmaya devam edebilir. Önce bu seçeneği kapatın.
Tarayıcılar, Terminaller ve Tekil Uygulamalar
Hem Edge hem de Chrome, WinINET’i kullanır; bu da, Ayarlar sayfasından yapılandırılabildikleri ve başka bir şey yapmaya gerek olmadığı anlamına gelir. Firefox ise akılda tutulması gereken bir istisnadır: Ağ ayarları altında kendi proxy iletişim kutusunu sunar ve varsayılan olarak sistemi takip etse de, bunu daha önce manuel olarak ayarlamış olanlar, o iletişim kutusu yeniden değiştirilene kadar Firefox’un Windows’u inatla göz ardı ettiğini göreceklerdir.
Komut satırı bambaşka bir dünyadır. Unix’ten uyarlanan araçlar — curl, git, npm, pip ve çoğu Python kodu — yalnızca ortam değişkenlerini okur, başka hiçbir şeyi okumaz. Windows’ta bunlar için “Ayarlar” sayfasına denk bir seçenek yoktur.
:: Current session only (Command Prompt) set HTTP_PROXY=http://user123:s3cret@proxy.example.net:8000 set HTTPS_PROXY=http://user123:s3cret@proxy.example.net:8000 set NO_PROXY=localhost,127.0.0.1 :: Persist for your user account setx HTTP_PROXY "http://user123:s3cret@proxy.example.net:8000" # PowerShell, current session only $env:HTTP_PROXY = "http://user123:s3cret@proxy.example.net:8000" $env:HTTPS_PROXY = "http://user123:s3cret@proxy.example.net:8000"
HTTPS_PROXY değişkeninin hâlâ http:// şemasını kabul ettiğini unutmayın. Bu şema, hedefin protokolünü değil, proxy’ye nasıl ulaşılacağını belirtir — istemci proxy üzerinden bir tünel açar ve TLS bu tünel içinde uçtan uca çalışır. Buraya https:// yazmak, sık karşılaşılan ve kafa karıştırıcı bir hatadır.
Bunları `setx` komutuyla kalıcı olarak ayarlamak, şifreyi kullanıcı ortamınıza kaydeder; bu durumda çalıştırdığınız herhangi bir işlem bu şifreyi okuyabilir. Paylaşımlı veya yönetilen bir bilgisayarda, bunları oturum başına ayarlamayı tercih edin ya da sağlayıcınızdan bilgisayarın adresini beyaz listeye eklemesini isteyin; böylece hiçbir kimlik bilgisi gerekmez. Bu mobil proxy kurulum kılavuzu Bu konudaki ödünleşimi daha ayrıntılı olarak ele almaktadır.
Windows'ta Yerleşik SOCKS5 Desteği Bulunmamaktadır
Hem Ayarlar sayfası hem de netsh winhttp komutu yalnızca HTTP proxy adresini kabul eder; ikisinde de SOCKS5 için bir alan bulunmaz. Proxy’niz yalnızca SOCKS5 ile çalışıyorsa, Windows’ta sistem genelinde bir yapılandırma seçeneği yoktur. SOCKS5'i doğrudan destekleyen her bir uygulama içinde yapılandırın — Firefox'un manuel proxy iletişim kutusunda özel bir alan bulunur ve çoğu antidetect tarayıcıda da bu alan mevcuttur — veya yalnızca HTTP proxy ayarını okuyan yazılımlar için yerel bir HTTP-SOCKS köprüsü çalıştırın.
Windows, Proxy'nin Açık Olduğunu Gösteriyor Ama Hiçbir Uygulama Onu Kullanmıyorsa
Hemen hemen her Windows proxy sorunu, kimlik bilgileri sorunundan ziyade bir katman sorunudur. Herhangi bir ayarı değiştirmeden önce, sorunun yaşandığı uygulamanın gerçekte ne gördüğünü belirleyin.
| Belirti | En olası neden |
|---|---|
| Tarayıcılar proxy üzerinden çalışıyor, ancak bir Windows hizmeti çalışmıyor | WinHTTP hiçbir zaman ayarlanmamıştır. İçe aktarma komutunu çalıştırın ya da bu ayarı açıkça yapın. |
| curl veya git gerçek IP adresini gösterir | Ortam değişkeni yok. Her iki Windows yığını da bu araçlara erişemiyor. |
| Tekrarlanan kimlik doğrulama uyarıları | Kimlik bilgileri yanlış bağlantı noktasına gönderiliyor. HTTP ve SOCKS5, ayrı oturum açma bilgilerine sahip ayrı bağlantı noktalarıdır. |
| Kurulum tamamlandıktan sonra her şey bozuluyor | Artık mevcut olmayan bir konuma yönlendiren, geçerliliğini yitirmiş bir WinHTTP girişi. Bunu sıfırlayın ve yeniden ayarlayın. |
| Yalnızca Firefox proxy ayarını göz ardı ediyor | Kendi bağlantı ayarları “manuel” veya “proxy yok” olarak ayarlanmıştır. |
Eğer uç noktayı terminal yerine bir tarayıcıda doğrulamak isterseniz, ücretsiz PXM2 proxy kontrol aracı bunu test eder ve tespit edilen proxy türünü ve çıkış ülkesini bildirir.
Windows için bir Mobil Proxy edinin
Canlı PXM2 konumları — çıkış IP’sine ihtiyacınız olan ülkeyi seçin ve bu sayfadaki adımları izleyerek yapılandırın:
Amerika Birleşik Devletleri
Birleşik Krallık
Fransa
Sık Sorulan Sorular
Windows 11'de proxy nasıl kurulur?
Ayarlar’ı açın, Ağ ve İnternet’e, ardından Proxy’ye gidin ve manuel proxy kurulumu bölümünde ana bilgisayar adresini ve bağlantı noktasını girip kaydedin. Bu ayar, Edge, Chrome ve çoğu masaüstü uygulamasını kapsar. Ancak, netsh komutuyla ayarladığınız ayrı bir yapılandırma dosyasını okuyan Windows hizmetleri veya komut satırı araçları bu kapsamın dışındadır.
Windows proxy ayarları ile netsh winhttp arasında ne fark vardır?
They configure two independent stacks. The Settings page writes the WinINET configuration used by browsers and ordinary desktop software. The netsh winhttp commands write the WinHTTP configuration used by Windows services and a good deal of background software. Setting one has no effect on the other, and this is the single most common reason a Windows proxy appears half-applied.
Neden Windows proxy'm bazı uygulamalarda çalışmıyor?
Because those applications read a configuration you did not set. Command-line tools such as curl, git and npm look at environment variables. Windows services look at WinHTTP. Firefox keeps its own proxy dialog. Each is independent of the Settings page, so the fix is to configure the layer the failing application actually reads rather than setting the same value again somewhere else.
Windows'un hangi proxy'yi kullandığını nasıl kontrol edebilirim?
WinHTTP yapılandırmasını görmek için bir terminalde `netsh winhttp show proxy` komutunu çalıştırın; WinINET yapılandırmasını görmek için ise Ayarlar > Ağ ve İnternet > Proxy bölümünü açın. Ardından, hata veren araç üzerinden bir istek gönderin ve bu isteğin çıkış IP adresini gerçek adresinizle karşılaştırın; çünkü bir yapılandırmanın mevcut olması, uygulamanın bunu kullandığı anlamına gelmez.
Windows'ta bir proxy ayarlamak için yönetici haklarına ihtiyacım var mı?
Kendi kullanıcı hesabınız için geçerli olan Ayarlar sayfası için bu durum geçerli değildir. “netsh winhttp set proxy” komutunu çalıştırmak için yönetici ayrıcalıklarına sahip bir terminal gereklidir, çünkü WinHTTP yapılandırması sistem genelindedir. Ortam değişkenleri ise yönetici ayrıcalıkları gerekmeden kullanıcı başına ayarlanabilir.
İlgili Mobil Proxy Kılavuzları
Aynı çok katmanlı sorun her işletim sisteminde mevcuttur ve çözüm her birinde farklılık gösterir.
Kurulum kılavuzları
Temel mobil proxy kılavuzları
Windows’u Gerçek Bir İletişim Sağlayıcısının IP Adresi Arkasında Çalıştırma
Sınırsız bant genişliği ve sınırsız rotasyona sahip özel 4G/5G modemler — Windows’un doğal olarak desteklediği HTTP(S) ve SOCKS5 uç noktaları; herhangi bir istemci yüklemeye gerek yoktur.
Mobil Proxy Alın