İçeriğe geç
Glossary 7 dk okuma 913 görüntülenme

HTTP başlıkları

Temel HTTP proxy başlıklarını inceleyin: X-Forwarded-For, Via ve diğerleri. Bu başlıkların istemci IP adreslerini ve proxy yollarını nasıl açığa çıkardığını öğrenin.

HTTP
HTTP başlıkları

X-Forwarded-For ve Via gibi HTTP proxy başlıkları, proxy sunucuları tarafından; özgün istemciye, isteğin izlediği yola ve proxy'nin varlığı yüzünden başka türlü görünmeyecek diğer bağlamsal verilere ilişkin bilgileri upstream sunucuya iletmek için kullanılır.

Bir HTTP isteği bir veya daha fazla proxy sunucusundan geçtiğinde, hemen üstteki upstream sunucu genellikle özgün istemcinin değil son proxy'nin IP adresini görür. Proxy başlıkları, belirli HTTP başlıklarını ekleyerek veya değiştirerek bu sorunu çözer ve özgün istemcinin IP'sinin, protokolünün, host bilgisinin ve proxy sırasının nihai hedef sunucuya iletilmesini sağlar.

X-Forwarded-For

X-Forwarded-For (XFF) başlığı, bir HTTP proxy'si veya yük dengeleyici üzerinden web sunucusuna bağlanan istemcinin kaynak IP adresini belirlemek için kullanılan fiili standart bir başlıktır.

Amaç

Temel amacı; web sunucusunun günlük kaydı, analiz, güvenlik ve uygulamaya özgü mantık (örneğin IP tabanlı erişim denetimi, coğrafi konumlandırma) için özgün istemcinin IP adresine erişebilmesidir. XFF olmadan tüm isteklerin proxy sunucusunun IP adresinden geliyormuş gibi görünürdü.

Biçim ve örnekler

XFF başlığı, virgülle ayrılmış bir IP adresi listesi içerebilir. Bir istek birden fazla proxy'den geçtiğinde her proxy, kendisine bağlanan istemcinin IP adresini XFF başlığına ekler.

  • X-Forwarded-For: <client>, <proxy1>, <proxy2>

Örnek 1: Tek proxy
Bir istemci (192.0.2.1) bir proxy'ye (198.51.100.1) bağlanır, proxy de origin sunucuya bağlanır.
Proxy şunu ekler:

X-Forwarded-For: 192.0.2.1

Origin sunucu isteği 198.51.100.1 adresinden gelmiş olarak ve X-Forwarded-For: 192.0.2.1 başlığıyla görür.

Örnek 2: Birden fazla proxy
Bir istemci (192.0.2.1) Proxy A'ya (198.51.100.1) bağlanır, o Proxy B'ye (203.0.113.1) bağlanır, o da origin sunucuya bağlanır.
1. İstemciden Proxy A'ya: Proxy A X-Forwarded-For: 192.0.2.1 ekler.
2. Proxy A'dan Proxy B'ye: Proxy B X-Forwarded-For: 192.0.2.1 başlığını alır. Proxy B buna 198.51.100.1 değerini ekler.
Başlık şu hâle gelir: X-Forwarded-For: 192.0.2.1, 198.51.100.1.
3. Proxy B'den origin sunucuya: Origin sunucu X-Forwarded-For: 192.0.2.1, 198.51.100.1 başlığını alır.

Bir proxy zincirinde en soldaki IP adresi genellikle özgün istemcidir. En sağdaki IP adresi ise hemen üstteki upstream proxy'nin (mevcut proxy'ye bağlanan istemcinin) IP'sidir.

X-Forwarded-For için güvenlik değerlendirmeleri

X-Forwarded-For başlığı kötü niyetli bir istemci tarafından kolayca taklit edilebilir. İstemci, uydurma bir X-Forwarded-For başlığıyla istek gönderebilir.

GET / HTTP/1.1
Host: example.com
X-Forwarded-For: 10.0.0.1, 1.1.1.1

Bir proxy buna körü körüne ekleme yaparsa origin sunucunun aldığı başlık şöyle görünebilir: X-Forwarded-For: 10.0.0.1, 1.1.1.1, <proxy_ip>.
Bu nedenle downstream uygulamalar X-Forwarded-For başlığının tüm değerine doğrudan güvenmemelidir. Genel kabul gören yaklaşım; bilinen güvenilir proxy'lere ait girdileri çıkardıktan sonra listedeki en sağdaki güvenilmeyen IP adresini gerçek istemci IP'si olarak kabul etmektir. Birçok web sunucusu ve uygulama çatısı, güvenilir proxy listesi tanımlamak için mekanizmalar sunar.

Via

Via başlığı, bir isteğin (veya yanıtın) geçtiği ara proxy'leri ve ağ geçitlerini belirten standart bir HTTP başlığıdır.

Amaç

Via başlığı birkaç amaca hizmet eder:
* İzlenebilirlik: proxy zincirinin izini sunar, ağ yollarında hata ayıklamak için faydalıdır.
* Döngü tespiti: proxy zincirlerindeki istek döngülerinin saptanmasına yardımcı olabilir.
* Protokol uyumluluğu: her ara proxy'nin kullandığı protokol sürümlerini bildirir; bu, protokol dönüşümlerinde önemli olabilir.

Biçim ve örnekler

Her proxy başlığa kendi Via girdisini ekler. Her girdinin biçimi protocol-name/protocol-version host:port (comment) şeklindedir. comment alanı isteğe bağlıdır ve rastgele bilgi içerebilir.

Via: <protocol-name>/<protocol-version> <host>:<port> (comment)

Örnek:
Bir istemci, Proxy A (hostname proxy-a.example.com, port 8080) ve Proxy B (hostname proxy-b.example.com, port 80) üzerinden geçen bir istek gönderir.

  1. İstemciden Proxy A'ya: Proxy A Via: HTTP/1.1 proxy-a.example.com:8080 ekler.
  2. Proxy A'dan Proxy B'ye: Proxy B Via: HTTP/1.1 proxy-a.example.com:8080 başlığını alır. Proxy B kendi girdisini başa ekler.
    Başlık şu hâle gelir: Via: 1.1 proxy-b.example.com, 1.1 proxy-a.example.com:8080.
    (Not: Protokol HTTP olduğunda HTTP/ genellikle yazılmaz, 80/443 portları da atlanabilir.)
  3. Proxy B'den origin sunucuya: Origin sunucu tam Via başlığını alır.

Gizlilik ve operasyonel değerlendirmeler

Via başlığı iç ağ topolojisini ve hostname'leri açığa çıkarır; bazı kurulumlarda bu bir güvenlik veya gizlilik sorunu olabilir. Kurumlar, iç ağ bilgisinin dışarı sızmasını engellemek için dışa bakan proxy'lerde bu başlığı silmeyi veya değiştirmeyi tercih edebilir.

Forwarded

Forwarded başlığı, RFC 7239'da tanımlanmış standart bir başlıktır ve fiili standart olan X-Forwarded-For, X-Forwarded-Host ve X-Forwarded-Proto başlıklarının yerini almayı amaçlar.

Amaç

Özgün istemciye, proxy'nin kendisine ve özgün istek bağlamına (host, protokol) dair bilgileri upstream sunucuya iletmek için daha yapılandırılmış ve genişletilebilir bir yol sunar.

Biçim ve örnekler

Forwarded başlığı, zincirdeki her proxy'yi temsil eden, virgülle ayrılmış bir veya daha fazla parametre kümesi içerebilir. Her parametre kümesi anahtar-değer çiftleri kullanır. Yaygın parametreler:
* for: özgün istemcinin IP adresi (veya gizlenmiş tanımlayıcısı).
* by: isteği ileten proxy'nin IP adresi (veya gizlenmiş tanımlayıcısı).
* host: istemcinin talep ettiği özgün Host başlığı.
* proto: istemcinin kullandığı özgün protokol (örneğin http veya https).

Forwarded: for=<client_ip>; proto=<protocol>; host=<original_host>
Forwarded: for=<client_ip>, for=<proxy_ip>; proto=<protocol>

Örnek 1: Tek proxy
Bir istemci (192.0.2.1), example.com isteyerek HTTPS üzerinden bir proxy'ye (198.51.100.1) bağlanır.
Proxy şunu ekler:

Forwarded: for=192.0.2.1; proto=https; host=example.com

Örnek 2: Birden fazla proxy
İstemci (192.0.2.1) -> Proxy A (198.51.100.1) -> Proxy B (203.0.113.1) -> origin sunucu.
1. İstemciden Proxy A'ya: Proxy A Forwarded: for=192.0.2.1; proto=https; host=example.com ekler.
2. Proxy A'dan Proxy B'ye: Proxy B başlığı alır. Proxy B, kendisini tanımlamak üzere by dâhil olmak üzere kendi girdisini ekler.
Başlık şu hâle gelir:
Forwarded: for=192.0.2.1; proto=https; host=example.com, for=198.51.100.1; by=203.0.113.1
(Not: host ve proto parametreleri, bir proxy protokol veya host yeniden yazımı yapmadıkça genellikle yalnızca özgün istemciye ait ilk girdide yer alır.)

Karşılaştırma: X-Forwarded-For vs. Forwarded

Özellik X-Forwarded-For Forwarded
Standart durumu Fiili standart (standart olmayan X- başlığı) RFC 7239 standardı
Bilgi Yalnızca istemci IP adresleri İstemci IP'si, proxy IP'si (by), özgün host, özgün protokol (proto)
Yapı Virgülle ayrılmış IP adresi listesi Virgülle ayrılmış, yapılandırılmış anahtar-değer parametre kümeleri listesi
Genişletilebilirlik IP adresleriyle sınırlı Ek parametrelerle yüksek düzeyde genişletilebilir
Yaygınlık Mevcut yazılım ve altyapılar tarafından geniş biçimde destekleniyor Kullanımı artıyor, ancak şu an XFF kadar yaygın değil
Güvenlik Sahteciliğe açık; dikkatli ayrıştırma gerektirir Yine sahteciliğe açık; yapılandırılmış ayrıştırma sağlamlığı artırır

Diğer proxy başlıkları

X-Forwarded-Host

Bu fiili standart başlık, istemcinin Host HTTP istek başlığında talep ettiği özgün Host bilgisini belirtir. Bir proxy veya yük dengeleyici, isteği upstream sunucuya iletmeden önce Host başlığını (örneğin iç yönlendirme için) değiştirdiğinde, ancak uygulamanın mutlak URL üretmek veya sanal host'ları yönetmek gibi işler için istemcinin talep ettiği özgün host'u bilmesi gerektiğinde işe yarar.

Örnek:
İstemci example.com ister. Proxy, isteği iç host app-server-1 adresine iletir.

Host: app-server-1
X-Forwarded-Host: example.com

X-Forwarded-Proto

Bu fiili standart başlık, istemcinin proxy'ye veya yük dengeleyiciye bağlanırken kullandığı protokolü (HTTP veya HTTPS) belirtir. Proxy SSL/TLS sonlandırma yaptığında, yani istemci HTTPS ile bağlanırken proxy arka uç sunucuyla düz HTTP üzerinden haberleştiğinde bu bilgi kritiktir. Uygulamanın doğru bağlantılar üretebilmesi (örneğin http:// yerine https://) için özgün protokolü bilmesi gerekir.

Örnek:
İstemci bir yük dengeleyiciye HTTPS ile bağlanır. Yük dengeleyici arka uca HTTP ile bağlanır.

X-Forwarded-Proto: https

X-Real-IP

Bu da özgün istemcinin IP adresini iletmek için yaygın olarak NGINX tarafından kullanılan bir başka fiili standart başlıktır. X-Forwarded-For'dan farklı olarak genellikle tek bir IP adresi içerir: özgün istemcinin ya da hemen üstteki güvenilir upstream proxy'nin adresi. Çoğunlukla zincirdeki ilk proxy tarafından, X-Forwarded-For başlığı doğrulandıktan sonra ayarlanır.

Örnek:

X-Real-IP: 192.0.2.1

Pratik sonuçlar ve kullanım senaryoları

Proxy başlıkları; proxy'ler, yük dengeleyiciler ve CDN'ler içeren modern web mimarilerinde doğru çalışma ve güvenlik açısından temel öneme sahiptir.

  • Günlük kaydı ve analiz: doğru istemci IP adresleri; web sunucusu erişim günlükleri, trafik analizi ve kullanıcı davranışı takibi için şarttır.
  • Güvenlik:
    • IP tabanlı erişim denetimi: belirli kaynaklara erişimi istemci IP adreslerine göre kısıtlamak.
    • Hız sınırlama: istemci IP'si başına istekleri sınırlayarak kötüye kullanımı veya DDoS saldırılarını önlemek.
    • Web Uygulama Güvenlik Duvarları (WAF): güvenlik kurallarını özgün istemcinin kimliğine göre uygulamak.
    • Coğrafi konumlandırma: içerik özelleştirme veya mevzuata uyum için kullanıcının coğrafi konumunu belirlemek.
  • Uygulama mantığı:
    • URL üretimi: uygulamaların, istemcinin özgün isteğiyle uyumlu doğru mutlak URL'ler (örneğin yönlendirmeler veya uygulama içi bağlantılar) oluşturabilmesi için X-Forwarded-Host ve X-Forwarded-Proto başlıklarına ihtiyacı vardır.
    • Oturum yönetimi: bazı oturum mekanizmaları IP adreslerine bağlı olabilir.
    • Çok kiracılı uygulamalar: kiracıları özgün Host başlığına göre ayırt etmek.
  • Hata ayıklama ve sorun giderme: Via başlığı ve tam X-Forwarded-For zinciri, ağ yolu sorunlarını teşhis etmeye ve sorunlu proxy'leri belirlemeye yardımcı olur.

Proxy yapılandırması ve güvenlik en iyi uygulamaları

Proxy'lerin bu başlıkları doğru işleyecek şekilde yapılandırılması kritik önemdedir.

  • Güven sınırları: yalnızca bilinen ve güvenilen upstream proxy'lerden gelen X-Forwarded-For (veya Forwarded) girdilerine güvenin. Başlığı ayrıştıracak, güvenilir proxy IP'lerini tanıyacak ve gerçek istemci IP'sini en sağdaki güvenilmeyen girdiden türetecek bir mantık uygulayın.
  • Başlık silme/temizleme: dışa bakan proxy'lerde, iç ağ topolojisine dair bilgi sızmasını önlemek için Via başlıklarını ve özel iç X- başlıklarını silmeyi ya da temizlemeyi düşünün.
  • Tutarlılık: bir zincirdeki tüm proxy'lerin ve yük dengeleyicilerin bu başlıkları doğru şekilde ekleyecek veya ayarlayacak biçimde tutarlı yapılandırıldığından emin olun.
  • Standart mı, özel mi: standart olan Forwarded olsa da X-Forwarded-For, X-Forwarded-Host ve X-Forwarded-Proto hâlâ yaygın kullanılıyor. Uygulamalar çoğu zaman ikisini de destekler ya da varsa Forwarded başlığına öncelik verir.
Güncellendi: 03.03.2026
Kategoriye dön

Bunları da okuyun

Glossary 3 dk

Mobil proxy nedir? 4G/5G proxy'ler açıklandı

Mobil proxy, trafiği gerçek bir 4G/5G cihaz üzerinden yönlendirir ve size binlerce gerçek kullanıcının paylaştığı bir operatör IP'si verir — engellenmesi en zor tür. Nasıl çalıştıklarını ve ne zaman kullanılacağını anlatıyoruz.

Glossary 3 dk

ISP proxy nedir? Statik residential proxy'ler açıklandı

ISP proxy, veri merkezinde barınan ama residential bir ISP'ye kayıtlı statik bir IP'dir — residential güveni, veri merkezi hızı ve sabit IP. Nasıl çalıştıklarını ve ne zaman kullanılacağını anlatıyoruz.

Glossary 3 dk

HTTP ve HTTPS Proxy: Fark Nedir?

HTTP proxy web trafiğinizi okuyabilir; HTTPS proxy onu CONNECT ile şifreli tüneller. Gerçek fark, proxy'nin ne gördüğü ve hangisini seçmeniz gerektiği.

Glossary 4 dk

Proxy nedir? Yeni başlayanlar için eksiksiz rehber

Proxy sunucusu, trafiğinizi farklı bir IP üzerinden yönlendirerek gerçek IP adresinizi gizleyen bir aracıdır. Proxy'lerin nasıl çalıştığını, temel türlerini ve doğru olanı nasıl seçeceğinizi anlatıyoruz.

Glossary 4 dk

SOCKS5 ile HTTP Proxy: Farkları, Hızı ve Hangisi Ne Zaman Kullanılır

SOCKS5 ve HTTP proxy'ler farklı sorunları çözer. HTTP proxy web trafiğini anlar, önbelleğe alabilir veya filtreleyebilir; SOCKS5 ise herhangi bir TCP/UDP bağlantısını körlemesine iletir — yalnızca gezinmeyi değil, torrentleri, oyunları, e-postayı da. İkisi de kendi başına trafiği şifrelemez. Hangisinin ne zaman kazandığını burada bulacaksınız.

Glossary 1 dk

CDN ve proxy'ler: Nasıl çalışır

CDN ve proxy'ler — birlikte nasıl çalışır — proxy ve ağ teknolojileri alanına ait bir terim.

Proxy'lerimizi deneyin

100+ ülkede 20,000+ proxy

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.