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; ?>
Günlerdir bu konu hakkında araştırmalar yapıyordum, gerçekten yararlı bir kod teşekkür ederim.
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?
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.
kod güncel değil sanırım çalışmıyor, kod calisiyorda proxy ip adresi çıktı meydana =)
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.
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.