Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie adresu IP użytkownika
umatik
post
Post #1





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 17.05.2002
Skąd: lodz

Ostrzeżenie: (0%)
-----


Chodzi mi o prostą rzecz:
Użytkownik loguje się, a do bazy danych zapisuje się informacja :
- data i godzina logowania
- login użytkownika
- IP komputera z którego użytkownik się logował
- czy logowanie się powiodło

No i natrafiłem na problem, ponieważ $_SERVER['REMOTE_ADDR'] pokazuje mi IP wewnętrzne. Wyczytałem gdzieś że nie da się sprawdzić adresu IP.
To w jaki sposób mam pobrać informację o prawdziwym IP użytkownika ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
netmare
post
Post #2





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

Ostrzeżenie: (0%)
-----


No pokazuje Ci takie jakie widoczne jest z punktu widzenia serwera. Jak masz serwer wewnątrz to Ci pokaże wewnętrzne, jak masz na zewnątrz to zewnętrzne. Nie da się sprawdzić wewnętrznego z zewnątrz i dlatego spośród IP które zalogujesz może wychodzić wielu użytkowników.
Go to the top of the page
+Quote Post
umatik
post
Post #3





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 17.05.2002
Skąd: lodz

Ostrzeżenie: (0%)
-----


hmm ....
To jak mam zidentyfikować z jakiego IP nastąpiło logowanie ? Ale tak, żeby w razie potrzeby można było namierzyć komputer z jakiego ktoś się zalogował i np. namieszał coś w systemie do którego się zalogował.
Go to the top of the page
+Quote Post
sowiq
post
Post #4





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat
To w jaki sposób mam pobrać informację o prawdziwym IP użytkownika ?

A dlaczego uważasz, że IP wewnętrzne nie jest prawdziwym IP użytkownika? Jest to po prostu IP z (pod)sieci, z której wychodzi request. Jeśli klient i serwer znajdują się w jednej sieci (np. jedna firma, mieszkanie), to widoczne dla serwera IP będzie jednocześnie IP klienta z tej samej sieci. Możesz np. zbanować to IP, bo adresy zewnętrzne i wewnętrzne mają różne klasy (różne zakresy "numerków"). Więc nie ma możliwości, że jakiś komputer spoza Twojej sieci będzie miał takie samo IP jak komputer wewnątrz niej.

http://pl.wikipedia.org/wiki/IPv4 -> Prywatne adresy IPv4

Ten post edytował sowiq 7.02.2013, 16:39:10
Go to the top of the page
+Quote Post
umatik
post
Post #5





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 17.05.2002
Skąd: lodz

Ostrzeżenie: (0%)
-----


Do serwera będą się logować ludzie z poza sieci wewnętrznej. Ponieważ w systemie będą przechowywane dosyć ważne informacje, potrzebuję wiedzieć kto i z jakiego IP logował się do systemu.

Czy zatem $_SERVER['REMOTE_ADDR'] jest wystarczające, aby w przypadku zaistnienia konieczności, namierzyć skąd dany użytkownik się logował ?
Go to the top of the page
+Quote Post
netmare
post
Post #6





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Nigdy nie będziesz miał 100% pewności skąd się ktoś logował. Poczytaj co to jest proxy, anonymous proxy, high anonimity proxy, cgi-proxy, to może Ci się wyklaruje dlaczego. Możesz szukać na w $_SERVER['X_FORWARDED_FOR'] i tym podobnych, ale obawiam się że zamaist wyłapać informacje których poszukujesz to zostawisz sobie dziurę (IMG:style_emoticons/default/haha.gif) , a power user nawet jeśli nie będzie chciał jej wykorzystać to wprowadzi Cię w błąd.
Go to the top of the page
+Quote Post
umatik
post
Post #7





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 17.05.2002
Skąd: lodz

Ostrzeżenie: (0%)
-----


Nie no jasne, że dla chcącego nic trudnego i zdaje dobrze sobie z tego sprawę. Chodzi mi o podstawowe informacje o logującym się użytkowniku.

Ok zostawiam zatem $_SERVER['REMOTE_ADDR'] jako informację o IP użytkownika.
Go to the top of the page
+Quote Post
netmare
post
Post #8





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Może inaczej, jeśli spodziewasz się poważnych naruszeń, zamierzasz składać doniesienia do prokuratury i liczysz na to że ktoś tam będzie temat drążył to loguj sobie cały nawet cały $_SERVER. Musisz jednak pamiętać że dane mogą być spreparowane przez użytkownika więc odpowiednio je zabezpieczyć przy zapisie do bazy i wyświetlaniu na stronie. Jeśli natomiast chcesz prewencyjnie banować adres na godzinę i masz w nosie innych użytkowników którzy mogą wychodzić z tego adresu to REMOTE_ADDR wygląda sensownie.
Go to the top of the page
+Quote Post
umatik
post
Post #9





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 17.05.2002
Skąd: lodz

Ostrzeżenie: (0%)
-----


Może być taka sytuacja ....

Ale dalej muszę podrążyć temat ...

np.:
na forum GW, jak nie zaloguje się, to przy poście widać z jakiego adresu IP gość zostawił wpis. Na nie jednej stronie typu rapidshare, też jest identyfikacja adresu IP: "Z pańskiego IP adresu idzie pobranie IP=85.XX.XX.XX";

To w jaki sposób jest sprawdzane IP ?

używam zewnętrznego serwera www

ps. w moim przypadku: mam stały adres IP, ale komputer z którego się łącze z internetem jest podłączony do Switcha, dlatego REMOTE_ADDR pokazuje mi wewnętrzny adres IP

Ten post edytował umatik 9.02.2013, 12:32:55
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 14:07