Bir kullanıcının IP numarasından yerini ya da kimliğini nasıl tespit edebiliriz. Bu çokca karşılaşılan bir sual. Web programcılarının programladıkları sayfaları kullanan kişilerin nereden bağlandığını görüp ona göre izin verme opsiyonu açısından önemli bir soru. Özellikle para ödemeli siteler için.
Cevap şöyle; Bazı durumlarda tespit edebilirsiniz ama bazı durumlarda hayır. Sitenizden bir sayfa isteyen kullanıcının IP numarasını alabilirsiniz. Sunucu Değişkeni (ServerVariables – “REMOTE_ADDR”). Eğer Amerika içinde (ya da hangi kıtada) nerede olduğunu öğrenmek istiyorsanız bunu yapabilirsiniz çünkü hemen hemen tamamen tanımlanmış durumda.
Kaliforniya’daki Berkley Üniversitesi, ARIN, RIPE ve APNIC tarafından verilmiş her IP bloğunun hangi ülkeye ait olduğunu tanımlayan bir database oluşturdu ve devamlı bir şekilde güncelliyor. Bu yazıyı yazdığımız günlerde, bu database’i alabileceğiniz tek site Geo-ip.com idi. Bu siteden download yapabiliyorsunuz. Mevcut Ip bloklarının dağıtımı açısından en yetkin kaynak budur. Web Programcılarının kullanabileceği başka bir olanak ise, Berkeley’den, IP numarasını bulmak için XMLHTTP bileşenini kullanarak ARIN, RIPE ve APNIC’i sorgulamak. Böyle yaparsanız öncelikle elinizdeki database’i güncellemek derdinden kurtulursunuz. Çünkü, Berkeley Üniversitesi her ay database’i güncelliyerek en son halde olmasını sağlıyor.
Eğer REMOTE_ADDR sunucu değişkenini kullanıyorsanız, kullanıcının IP’sinden hangi ülkede olduğunu bulabilirsiniz.
Kullanıcının hangi ülkeden olduğunu bulmak mümkün dedik ama proxy sunucuları kullanarak internete çıkanları bulamazsınız. VPN de bunu yapıyor.
Ayrıca kullanıcılara atanan IP numaraları farklı methodlar kullanabiliyor. Mesela bazıları, interneti bir network üzerinden ve dolayısıyla bir –proxy sunucu gibi– araç üzerinden kullanabilir. O zaman gerçek kullanıcının hangisi olduğuna ulaşmak mümkün olmayabilir. Mesela www.siteniz.com web adresine, 211.58.61.0 IP adresli bir proxy sunucu üzerinden IP numaraları 192.168.0.2. ve 192.168.0.3 olan 2 farklı iş istasyonundan 2 farklı erişim sağlandığını varsayalım. www.siteniz.com bu 2 erişimi de, 211.58.61.0 olarak görecekti. Yine mesela 192.168.0.3 nolu IP’nin bu web sitesine erişim sağlandığına dair bilgi, Proxy Sunucu üzerinden anlaşılabilecekti.
Bu 192.168.0.3 nolu IP’yi görebilmiş olsaydınız bile, arkada bir network olduğundan, yine de o IP’nin kime ait olduğunu göremeyebilirsiniz. Bazı networklerde network kartının MAC adresi tanım olarak kullanılabilir, IP atanmayabilir.
Ama bireysel kullanıcı bile olsanız, internet servis sağlayıcının networkündeki yapılanma ile, mesela Trabzon’daki kullanıcı ile İstanbul’daki kullanıcı aynı IP bloğunu kullanıyor olabilir. Bunu da bilmek lazım.
Ayrıca bireysel kullanıcılar eğer kişisel mahremiyet nedeniyle anonymizer.com gibi proxy sunucular kullanırsa, yine tespit etmek zorlaşır. Çünkü bu tür servisler, trafiği mahremiyet nedeniyle, izini kaybettirmek için dünya üzerinde çevirebiliyor. Alınan IP mesela Almanya’daki bir IP olarak gözükebilir, oysa kullanıcı Trabzon’da olabilir.
Çok bilinen bir sorun ise, “eğer kullanıcının IP’sini bilemiyorsak, MAC adresini nasıl bulacağız?” Bu doğrudur. Bulamazsınız. MAC adresi makinanın network bağlantısındaki ilk temas noktasına geçirilen numaradır. Ama bu zincir boyunca gitmez. Modem üzerinden çevirmeli (Dial-Up) bağlantı kuran bir kullanıcının MAC adresi de bulunamaz. Çünkü modemler bu adresi kullanmazlar. Kullanıcının MAC adresini yakalayabileceğiniz yer ise, Ethernet bağlantı ile ulaştığı sunucudaki paketlerdir. Paylaşımlı Ethernet network üzerinden de MAC adresi ASP üzerinden bulunabilir.
Sonuç olarak, ASP, internetin kendisi kullanıcıları tanımlamaya yönelik tasarlanmamıştır. Kullanıcınızın yerini bulmanın en kolay yolu, kendilerine sormak olabilir.