[PHP] Jak odczytać adres IP osoby korzystającej z proxy? Krzysztof Szypulski - Poniedziałek, 03 stycznia 2005 15:10:11
Często spotykam się z pytaniem, jak odczytać orginalny adres IP osoby łączącej się z internetem za pomocą serwera proxy. Poniżej funkcja realizująca to zadanie.
bw
(213.138.128.xxx) Poniedziałek, 03 stycznia 2005 16:51:56
Niestety niezawszde ten trik działa ja znalazłem taki serwer proxy że nawet po urzyciu funkcji HTTP_X_FORWARDED_FOR nie można odczytać mojego IP. Ale w większości wypadków to działa :)
Od administratora:
Tak, to prawda, nie wszystkie serwery to oferują.
Format
(195.136.71.xxx) Piątek, 28 stycznia 2005 14:59:19
A po co w przykładzie przypisywać do zmiennej ?
Od administratora:
Może dla Ciebie to jest oczywiste, ale nie każdy umie wywolać funkcję. Przypisanie do zmiennej ma na celu pokazanie jak wykorzystać tą funkcję do dalszej obróbki...
Bug
(62.121.68.xxx) Niedziela, 30 stycznia 2005 10:15:15
Wszystko zalezy od konfiguracji squid'a na serwerze
cinu
(148.81.141.xxx) Wtorek, 12 kwietnia 2005 18:05:44
a co z serwerami które nie dadza sie na ten trik nabrać, ja mam taka sytułacje i bardzo mi zależy na obejsiu tego czy ktoś z was ma jakąś propozycję ??
n0_m3rcy
(192.168.0.xxx) Niedziela, 17 kwietnia 2005 23:11:12
Musisz napisac do admina o podanie tego IP, musisz mu podac dokladny czas logowania i BARDZO DOBRZE UZASADNIC po kiego Ci ten IP inaczej sie nie da ;)
Piotrek
(80.55.142.xxx) Niedziela, 21 sierpnia 2005 01:29:27
na moim serwerku nie podaje :]
Od administratora:
Tak jak napisałem nie na każdym to działa...
Jankiel
(83.25.4.xxx) Wtorek, 23 sierpnia 2005 12:18:55
ok, ale jeżeli serwer proxy pokazuje prawdziwe ip, czyli zadziała ten trick...co zrobić żeby strona nie widziała przwdziwego ip...poza zamianą serwera proxy:)
Od administratora:
Jeżeli IP będzie prawdziwe to takie zostanie pokazane.
medyk
(62.121.64.xxx) Wtorek, 25 października 2005 23:18:39
Jednakże chyba HTTP_X_FORWARDED_FOR nie powinno być traktowane w celach weryfikacyjnych a jedynie dodatkowo informacyjnych. Druga strona przecież może mainipulować tą zmienną. Też często pod nią ukrywa się parę adresów IP, co utrudnia zadanie jeśli w odpowiedzi spodziewamy się jednego poprawnego adresu IP. Generalnie zawsze powinno się rejestrować wartość REMOTE_ADDR a dodatkowo odczytywać wartość HTTP_X_FORWARDED_FOR
Nitro
(62.87.239.xxx) Środa, 02 sierpnia 2006 00:15:24
Możecie spróbować także wykryć IP usera za pomocą tych zmiennych:
Choć wykrycie ip usera przez proxy wynosi zaledwie 10%. Ja używam wszystkich tych zmiennych i właśnie tak jest.
Qes
(83.11.238.xxx) Czwartek, 12 października 2006 19:37:55
Nitro - tzn zapisujesz wszystkie te informacje, czy odczytujesz po kolei i jeżeli znajdziesz któryś z tych nagłówków ustawiony to wtedy przyjmujesz go za prawidłowy, a jak nie znajdziesz w żadnym to wtedy dopiero HTTP_ADDR?
Piotr Ziemczyk
(82.210.131.xxx) Wtorek, 20 lutego 2007 23:18:33