PHP ile Ziyaretçi Gerçek IP adresi Proxy Kullanılsa Dahi Tespit Etmek

Bir çok web sitesi ziyaretçilerinin ip adreslerini güvenlik, kullanıcı filtreleme vb. işlemler için ip adresi bilgilerini ya veritabanında tutar ya da doğrudan belli ip bloklarının sitelerine erişimini engeller. Eğer ki sizde ziyaretçilerinizin IP Adresini kontrol etmek istiyorsanız bilmeniz gereken bir şey kaç şey var.

Ortak internet bağlantısı kullanan bilgisayarların IP adresleri ile Proxy üzerinden web sitenize gelen ziyaretçilerin IP adresleri farklı olabilir.

Proxy sunucu; internet üzerindeki yerel bir ağ  ile dış dünya arasındaki ilişkiyi sağlayan köprü görevini üstlenmektedir. Eğer ki kullanıcı internete çıkarken araya proxy sunucu sokuyor ise şunu bilmeniz gerekiyor ki kişi dış dünyaya açılırken kendi  ip adresini değil Proxy sunucunun ip adresini kullanmaktadır. Çoğu kimse Proxy sunucuları kullanarak ip adresinin tespitini zorlaştırmak ve kimliğini gizlemek adına bu yola başvurur. Peki bu durumu ortadan nasıl kaldırabiliriz. Aşağıdaki kod bloğu basitçe PHP ile gerçek ip adresini nasıl öğreniriz bize yol gösteriyor.

<?php
if(!empty($_SERVER["HTTP_CLIENT_IP"]))
{
 //kullanıcı direk olarak mı internete çıkıyor ?
 $ipadresi = $_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
 // kullanıcı Proxy sunucu mu kullanıyor ?
$ipadresi = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
else
{
$ipadresi = $_SERVER["REMOTE_ADDR"];
}
// Burada kullanıcının gerçek ip adresini yazdırıyoruz,
echo $ipadresi;
?>

6 Yorum

  1. Cevap yaz

    Günlerdir bu konu hakkında araştırmalar yapıyordum, gerçekten yararlı bir kod teşekkür ederim.

  2. Cevap yaz

    Bu kodu wordpress sitesinde nereye ekleyeceğiz? Mesela ben sadece belli bir sayfama gelen ziyaretçinin IP’sini öğrenmek istiyorsam yazının içinde bir yere mi yerleştirmem lazım yoksa tema kodları içine mi?

    • Cevap yaz

      Bu kod sadece İP adresini tespit emek için oluşturulmuş bir fonksiyon parçası. MSQL’e tablo oluşturarak tespit edilen ip adresini yazdırmak için sadece tespit yapıyor. PHP INSERT, UPDATE kullanarak yapabilirsiniz.

  3. Cevap yaz

    kod güncel değil sanırım çalışmıyor, kod calisiyorda proxy ip adresi çıktı meydana =)

  4. Cevap yaz

    Kodu yazıp sayfaya girin yazan IP ye bakın.
    VPN Açıp aynı sayfayı tekrar açın.

    Farklı IP’ler yazıyor.
    VPN Açılınca da aynı IP yazan kod lazım.

    • Cevap yaz

      Bu mümkün değil, sayfaya VPN ile girildiğinde VPN IP’sini görür, ana IP > VPN > Sayfa mantığı geçerli olduğu için VPN arkasına saklanan ana IP’ye ulaşmak bu tür yöntemler ile mümkün olmaz.

Bir Cevap Bırakın

Your email address will not be published. Required fields are marked *

You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>